--- /dev/null Tue May 5 13:32:27 1998 +++ linux/include/linux/auto_fs4.h Fri Feb 4 20:19:31 2000 @@ -0,0 +1,45 @@ +/* -*- c-mode -*- + * linux/include/linux/auto_fs4.h + * + * Copyright 1999-2000 Jeremy Fitzhardinge + * + * This file is part of the Linux kernel and is made available under + * the terms of the GNU General Public License, version 2, or at your + * option, any later version, incorporated herein by reference. + */ + +#ifndef _LINUX_AUTO_FS4_H +#define _LINUX_AUTO_FS4_H + +/* Include common v3 definitions */ +#include + +/* autofs v4 definitions */ +#undef AUTOFS_PROTO_VERSION +#define AUTOFS_PROTO_VERSION 4 + +#undef AUTOFS_MAX_PROTO_VERSION +#define AUTOFS_MAX_PROTO_VERSION AUTOFS_PROTO_VERSION + +/* New message type */ +#define autofs_ptype_expire_multi 2 /* Expire entry (umount request) */ + +/* v4 multi expire (via pipe) */ +struct autofs_packet_expire_multi { + struct autofs_packet_hdr hdr; + autofs_wqt_t wait_queue_token; + int len; + char name[NAME_MAX+1]; +}; + +union autofs_packet_union { + struct autofs_packet_hdr hdr; + struct autofs_packet_missing missing; + struct autofs_packet_expire expire; + struct autofs_packet_expire_multi expire_multi; +}; + +#define AUTOFS_IOC_EXPIRE_MULTI _IOW(0x93,0x66,int) + + +#endif /* _LINUX_AUTO_FS4_H */ --- 2.3/include/linux/auto_fs.h Wed Feb 2 18:08:15 2000 +++ linux/include/linux/auto_fs.h Fri Feb 4 20:19:15 2000 @@ -14,20 +14,21 @@ #ifndef _LINUX_AUTO_FS_H #define _LINUX_AUTO_FS_H +#ifdef __KERNEL__ #include #include #include -#include #include +#endif /* __KERNEL__ */ + +#include -/* This header file describes a range of autofs interface versions; - the new implementation ("autofs4") supports them all, but the old - implementation only supports v3. */ -#define AUTOFS_MIN_PROTO_VERSION 3 /* Min version we support */ -#define AUTOFS_MAX_PROTO_VERSION 4 /* Max (current) version */ +/* This file describes autofs v3 */ +#define AUTOFS_PROTO_VERSION 3 -/* Backwards compat for autofs v3; it just implements a version */ -#define AUTOFS_PROTO_VERSION 3 /* v3 version */ +/* Range of protocol versions defined */ +#define AUTOFS_MAX_PROTO_VERSION AUTOFS_PROTO_VERSION +#define AUTOFS_MIN_PROTO_VERSION AUTOFS_PROTO_VERSION /* * Architectures where both 32- and 64-bit binaries can be executed @@ -50,15 +51,13 @@ typedef unsigned long autofs_wqt_t; #endif -enum autofs_packet_type { - autofs_ptype_missing, /* Missing entry (mount request) */ - autofs_ptype_expire, /* Expire entry (umount request) */ - autofs_ptype_expire_multi, /* Expire entry (umount request) */ -}; +/* Packet types */ +#define autofs_ptype_missing 0 /* Missing entry (mount request) */ +#define autofs_ptype_expire 1 /* Expire entry (umount request) */ struct autofs_packet_hdr { - int proto_version; /* Protocol version */ - enum autofs_packet_type type; /* Type of packet */ + int proto_version; /* Protocol version */ + int type; /* Type of packet */ }; struct autofs_packet_missing { @@ -75,28 +74,12 @@ char name[NAME_MAX+1]; }; -/* v4 multi expire (via pipe) */ -struct autofs_packet_expire_multi { - struct autofs_packet_hdr hdr; - autofs_wqt_t wait_queue_token; - int len; - char name[NAME_MAX+1]; -}; - -union autofs_packet_union { - struct autofs_packet_hdr hdr; - struct autofs_packet_missing missing; - struct autofs_packet_expire expire; - struct autofs_packet_expire_multi expire_multi; -}; - #define AUTOFS_IOC_READY _IO(0x93,0x60) #define AUTOFS_IOC_FAIL _IO(0x93,0x61) #define AUTOFS_IOC_CATATONIC _IO(0x93,0x62) #define AUTOFS_IOC_PROTOVER _IOR(0x93,0x63,int) #define AUTOFS_IOC_SETTIMEOUT _IOWR(0x93,0x64,unsigned long) #define AUTOFS_IOC_EXPIRE _IOR(0x93,0x65,struct autofs_packet_expire) -#define AUTOFS_IOC_EXPIRE_MULTI _IOW(0x93,0x66,int) #ifdef __KERNEL__ diff -X ../diffexcl -Nur 2.3/fs/autofs4/autofs_i.h abulafia-2.3/fs/autofs4/autofs_i.h --- 2.3/fs/autofs4/autofs_i.h Sat Jan 29 14:47:39 2000 +++ linux/fs/autofs4/autofs_i.h Fri Feb 4 19:57:35 2000 @@ -12,7 +12,7 @@ /* Internal header file for autofs */ -#include +#include #include /* This is the range of ioctl() numbers we claim as ours */ diff -X ../diffexcl -Nur 2.3/fs/autofs4/waitq.c abulafia-2.3/fs/autofs4/waitq.c --- 2.3/fs/autofs4/waitq.c Sat Jan 29 14:47:39 2000 +++ linux/fs/autofs4/waitq.c Fri Feb 4 19:50:49 2000 @@ -86,7 +86,7 @@ static void autofs4_notify_daemon(struct autofs_sb_info *sbi, struct autofs_wait_queue *wq, - enum autofs_packet_type type) + int type) { union autofs_packet_union pkt; size_t pktsz;