import of ftp.dlink.com/GPL/DSMG-600_reB/ppclinux.tar.gz
[linux-2.4.21-pre4.git] / include / linux / ncp_mount.h
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
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
25 struct ncp_mount_data {
26         int version;
27         unsigned int ncp_fd;    /* The socket to the ncp port */
28         __kernel_uid_t mounted_uid;     /* Who may umount() this filesystem? */
29         __kernel_pid_t wdog_pid;                /* Who cares for our watchdog packets? */
30
31         unsigned char mounted_vol[NCP_VOLNAME_LEN + 1];
32         unsigned int time_out;  /* How long should I wait after
33                                    sending a NCP request? */
34         unsigned int retry_count;       /* And how often should I retry? */
35         unsigned int flags;
36
37         __kernel_uid_t uid;
38         __kernel_gid_t gid;
39         __kernel_mode_t file_mode;
40         __kernel_mode_t dir_mode;
41 };
42
43 #define NCP_MOUNT_VERSION_V4    (4)
44
45 struct ncp_mount_data_v4 {
46         int version;
47         unsigned long flags;    /* NCP_MOUNT_* flags */
48         /* MIPS uses long __kernel_uid_t, but... */
49         /* we neever pass -1, so it is safe */
50         unsigned long mounted_uid;      /* Who may umount() this filesystem? */
51         /* MIPS uses long __kernel_pid_t */
52         long wdog_pid;          /* Who cares for our watchdog packets? */
53
54         unsigned int ncp_fd;    /* The socket to the ncp port */
55         unsigned int time_out;  /* How long should I wait after
56                                    sending a NCP request? */
57         unsigned int retry_count;       /* And how often should I retry? */
58
59         /* MIPS uses long __kernel_uid_t... */
60         /* we never pass -1, so it is safe */
61         unsigned long uid;
62         unsigned long gid;
63         /* MIPS uses unsigned long __kernel_mode_t */
64         unsigned long file_mode;
65         unsigned long dir_mode;
66 };
67
68 #ifdef __KERNEL__
69
70 struct ncp_mount_data_kernel {
71         unsigned long    flags;         /* NCP_MOUNT_* flags */
72         unsigned int     int_flags;     /* internal flags */
73 #define NCP_IMOUNT_LOGGEDIN_POSSIBLE    0x0001
74         __kernel_uid32_t mounted_uid;   /* Who may umount() this filesystem? */
75         __kernel_pid_t   wdog_pid;              /* Who cares for our watchdog packets? */
76         unsigned int     ncp_fd;        /* The socket to the ncp port */
77         unsigned int     time_out;      /* How long should I wait after
78                                            sending a NCP request? */
79         unsigned int     retry_count;   /* And how often should I retry? */
80         unsigned char    mounted_vol[NCP_VOLNAME_LEN + 1];
81         __kernel_uid32_t uid;
82         __kernel_gid32_t gid;
83         __kernel_mode_t  file_mode;
84         __kernel_mode_t  dir_mode;
85 };
86
87 #endif /* __KERNEL__ */
88
89 #endif