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