mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 02:39:48 +00:00
![Eric W. Biederman](/assets/img/avatar_default.png)
This patch converts the tracking of the user space watchdog process from using a pid_t to use struct pid. This makes us safe from pid wrap around issues and prepares the way for the pid namespace. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Cc: Petr Vandrovec <VANDROVE@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
93 lines
2.8 KiB
C
93 lines
2.8 KiB
C
/*
|
|
* 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
|