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