|  | /* | 
|  | *  ncp_mount.h | 
|  | * | 
|  | *  Copyright (C) 1995, 1996 by Volker Lendecke | 
|  | * | 
|  | */ | 
|  |  | 
|  | #ifndef _LINUX_NCP_MOUNT_H | 
|  | #define _LINUX_NCP_MOUNT_H | 
|  |  | 
|  | #include <linux/types.h> | 
|  | #include <linux/ncp.h> | 
|  |  | 
|  | #define NCP_MOUNT_VERSION 3	/* Binary */ | 
|  |  | 
|  | /* Values for flags */ | 
|  | #define NCP_MOUNT_SOFT		0x0001 | 
|  | #define NCP_MOUNT_INTR		0x0002 | 
|  | #define NCP_MOUNT_STRONG	0x0004	/* enable delete/rename of r/o files */ | 
|  | #define NCP_MOUNT_NO_OS2	0x0008	/* do not use OS/2 (LONG) namespace */ | 
|  | #define NCP_MOUNT_NO_NFS	0x0010	/* do not use NFS namespace */ | 
|  | #define NCP_MOUNT_EXTRAS	0x0020 | 
|  | #define NCP_MOUNT_SYMLINKS	0x0040	/* enable symlinks */ | 
|  | #define NCP_MOUNT_NFS_EXTRAS	0x0080	/* Enable use of NFS NS meta-info */ | 
|  |  | 
|  | struct ncp_mount_data { | 
|  | int version; | 
|  | unsigned int ncp_fd;	/* The socket to the ncp port */ | 
|  | __kernel_uid_t mounted_uid;	/* Who may umount() this filesystem? */ | 
|  | __kernel_pid_t wdog_pid;		/* Who cares for our watchdog packets? */ | 
|  |  | 
|  | unsigned char mounted_vol[NCP_VOLNAME_LEN + 1]; | 
|  | unsigned int time_out;	/* How long should I wait after | 
|  | sending a NCP request? */ | 
|  | unsigned int retry_count;	/* And how often should I retry? */ | 
|  | unsigned int flags; | 
|  |  | 
|  | __kernel_uid_t uid; | 
|  | __kernel_gid_t gid; | 
|  | __kernel_mode_t file_mode; | 
|  | __kernel_mode_t dir_mode; | 
|  | }; | 
|  |  | 
|  | #define NCP_MOUNT_VERSION_V4	(4)	/* Binary or text */ | 
|  |  | 
|  | struct ncp_mount_data_v4 { | 
|  | int version; | 
|  | unsigned long flags;	/* NCP_MOUNT_* flags */ | 
|  | /* MIPS uses long __kernel_uid_t, but... */ | 
|  | /* we neever pass -1, so it is safe */ | 
|  | unsigned long mounted_uid;	/* Who may umount() this filesystem? */ | 
|  | /* MIPS uses long __kernel_pid_t */ | 
|  | long wdog_pid;		/* Who cares for our watchdog packets? */ | 
|  |  | 
|  | unsigned int ncp_fd;	/* The socket to the ncp port */ | 
|  | unsigned int time_out;	/* How long should I wait after | 
|  | sending a NCP request? */ | 
|  | unsigned int retry_count;	/* And how often should I retry? */ | 
|  |  | 
|  | /* MIPS uses long __kernel_uid_t... */ | 
|  | /* we never pass -1, so it is safe */ | 
|  | unsigned long uid; | 
|  | unsigned long gid; | 
|  | /* MIPS uses unsigned long __kernel_mode_t */ | 
|  | unsigned long file_mode; | 
|  | unsigned long dir_mode; | 
|  | }; | 
|  |  | 
|  | #define NCP_MOUNT_VERSION_V5	(5)	/* Text only */ | 
|  |  | 
|  | #ifdef __KERNEL__ | 
|  |  | 
|  | struct ncp_mount_data_kernel { | 
|  | unsigned long    flags;		/* NCP_MOUNT_* flags */ | 
|  | unsigned int	 int_flags;	/* internal flags */ | 
|  | #define NCP_IMOUNT_LOGGEDIN_POSSIBLE	0x0001 | 
|  | __kernel_uid32_t mounted_uid;	/* Who may umount() this filesystem? */ | 
|  | struct pid      *wdog_pid;	/* Who cares for our watchdog packets? */ | 
|  | unsigned int     ncp_fd;	/* The socket to the ncp port */ | 
|  | unsigned int     time_out;	/* How long should I wait after | 
|  | sending a NCP request? */ | 
|  | unsigned int     retry_count;	/* And how often should I retry? */ | 
|  | unsigned char	 mounted_vol[NCP_VOLNAME_LEN + 1]; | 
|  | __kernel_uid32_t uid; | 
|  | __kernel_gid32_t gid; | 
|  | __kernel_mode_t  file_mode; | 
|  | __kernel_mode_t  dir_mode; | 
|  | int		 info_fd; | 
|  | }; | 
|  |  | 
|  | #endif /* __KERNEL__ */ | 
|  |  | 
|  | #endif |