Home | History | Annotate | Download | only in linux
      1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2 /*
      3  *  ncp_mount.h
      4  *
      5  *  Copyright (C) 1995, 1996 by Volker Lendecke
      6  *
      7  */
      8 
      9 #ifndef _LINUX_NCP_MOUNT_H
     10 #define _LINUX_NCP_MOUNT_H
     11 
     12 #include <linux/types.h>
     13 #include <linux/ncp.h>
     14 
     15 #define NCP_MOUNT_VERSION 3	/* Binary */
     16 
     17 /* Values for flags */
     18 #define NCP_MOUNT_SOFT		0x0001
     19 #define NCP_MOUNT_INTR		0x0002
     20 #define NCP_MOUNT_STRONG	0x0004	/* enable delete/rename of r/o files */
     21 #define NCP_MOUNT_NO_OS2	0x0008	/* do not use OS/2 (LONG) namespace */
     22 #define NCP_MOUNT_NO_NFS	0x0010	/* do not use NFS namespace */
     23 #define NCP_MOUNT_EXTRAS	0x0020
     24 #define NCP_MOUNT_SYMLINKS	0x0040	/* enable symlinks */
     25 #define NCP_MOUNT_NFS_EXTRAS	0x0080	/* Enable use of NFS NS meta-info */
     26 
     27 struct ncp_mount_data {
     28 	int version;
     29 	unsigned int ncp_fd;	/* The socket to the ncp port */
     30 	__kernel_uid_t mounted_uid;	/* Who may umount() this filesystem? */
     31 	__kernel_pid_t wdog_pid;		/* Who cares for our watchdog packets? */
     32 
     33 	unsigned char mounted_vol[NCP_VOLNAME_LEN + 1];
     34 	unsigned int time_out;	/* How long should I wait after
     35 				   sending a NCP request? */
     36 	unsigned int retry_count;	/* And how often should I retry? */
     37 	unsigned int flags;
     38 
     39 	__kernel_uid_t uid;
     40 	__kernel_gid_t gid;
     41 	__kernel_mode_t file_mode;
     42 	__kernel_mode_t dir_mode;
     43 };
     44 
     45 #define NCP_MOUNT_VERSION_V4	(4)	/* Binary or text */
     46 
     47 struct ncp_mount_data_v4 {
     48 	int version;
     49 	unsigned long flags;	/* NCP_MOUNT_* flags */
     50 	/* MIPS uses long __kernel_uid_t, but... */
     51 	/* we neever pass -1, so it is safe */
     52 	unsigned long mounted_uid;	/* Who may umount() this filesystem? */
     53 	/* MIPS uses long __kernel_pid_t */
     54 	long wdog_pid;		/* Who cares for our watchdog packets? */
     55 
     56 	unsigned int ncp_fd;	/* The socket to the ncp port */
     57 	unsigned int time_out;	/* How long should I wait after
     58 				   sending a NCP request? */
     59 	unsigned int retry_count;	/* And how often should I retry? */
     60 
     61 	/* MIPS uses long __kernel_uid_t... */
     62 	/* we never pass -1, so it is safe */
     63 	unsigned long uid;
     64 	unsigned long gid;
     65 	/* MIPS uses unsigned long __kernel_mode_t */
     66 	unsigned long file_mode;
     67 	unsigned long dir_mode;
     68 };
     69 
     70 #define NCP_MOUNT_VERSION_V5	(5)	/* Text only */
     71 
     72 #endif
     73