1*8d67ca89SAndroid Build Coastguard Worker /* 2*8d67ca89SAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*8d67ca89SAndroid Build Coastguard Worker * 4*8d67ca89SAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*8d67ca89SAndroid Build Coastguard Worker * for more information. 6*8d67ca89SAndroid Build Coastguard Worker */ 7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_AUTO_FS_H 8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI_LINUX_AUTO_FS_H 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <linux/limits.h> 11*8d67ca89SAndroid Build Coastguard Worker #include <sys/ioctl.h> 12*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_PROTO_VERSION 5 13*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_MIN_PROTO_VERSION 3 14*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_MAX_PROTO_VERSION 5 15*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_PROTO_SUBVERSION 5 16*8d67ca89SAndroid Build Coastguard Worker #if defined(__ia64__) || defined(__alpha__) 17*8d67ca89SAndroid Build Coastguard Worker typedef unsigned long autofs_wqt_t; 18*8d67ca89SAndroid Build Coastguard Worker #else 19*8d67ca89SAndroid Build Coastguard Worker typedef unsigned int autofs_wqt_t; 20*8d67ca89SAndroid Build Coastguard Worker #endif 21*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_missing 0 22*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_expire 1 23*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr { 24*8d67ca89SAndroid Build Coastguard Worker int proto_version; 25*8d67ca89SAndroid Build Coastguard Worker int type; 26*8d67ca89SAndroid Build Coastguard Worker }; 27*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_missing { 28*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 29*8d67ca89SAndroid Build Coastguard Worker autofs_wqt_t wait_queue_token; 30*8d67ca89SAndroid Build Coastguard Worker int len; 31*8d67ca89SAndroid Build Coastguard Worker char name[NAME_MAX + 1]; 32*8d67ca89SAndroid Build Coastguard Worker }; 33*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_expire { 34*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 35*8d67ca89SAndroid Build Coastguard Worker int len; 36*8d67ca89SAndroid Build Coastguard Worker char name[NAME_MAX + 1]; 37*8d67ca89SAndroid Build Coastguard Worker }; 38*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOCTL 0x93 39*8d67ca89SAndroid Build Coastguard Worker enum { 40*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_READY_CMD = 0x60, 41*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_FAIL_CMD, 42*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_CATATONIC_CMD, 43*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_PROTOVER_CMD, 44*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_SETTIMEOUT_CMD, 45*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_EXPIRE_CMD, 46*8d67ca89SAndroid Build Coastguard Worker }; 47*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_READY _IO(AUTOFS_IOCTL, AUTOFS_IOC_READY_CMD) 48*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_FAIL _IO(AUTOFS_IOCTL, AUTOFS_IOC_FAIL_CMD) 49*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_CATATONIC _IO(AUTOFS_IOCTL, AUTOFS_IOC_CATATONIC_CMD) 50*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_PROTOVER _IOR(AUTOFS_IOCTL, AUTOFS_IOC_PROTOVER_CMD, int) 51*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_SETTIMEOUT32 _IOWR(AUTOFS_IOCTL, AUTOFS_IOC_SETTIMEOUT_CMD, compat_ulong_t) 52*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_SETTIMEOUT _IOWR(AUTOFS_IOCTL, AUTOFS_IOC_SETTIMEOUT_CMD, unsigned long) 53*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_EXPIRE _IOR(AUTOFS_IOCTL, AUTOFS_IOC_EXPIRE_CMD, struct autofs_packet_expire) 54*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_EXP_NORMAL 0x00 55*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_EXP_IMMEDIATE 0x01 56*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_EXP_LEAVES 0x02 57*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_EXP_FORCED 0x04 58*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_TYPE_ANY 0U 59*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_TYPE_INDIRECT 1U 60*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_TYPE_DIRECT 2U 61*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_TYPE_OFFSET 4U 62*8d67ca89SAndroid Build Coastguard Worker enum autofs_notify { 63*8d67ca89SAndroid Build Coastguard Worker NFY_NONE, 64*8d67ca89SAndroid Build Coastguard Worker NFY_MOUNT, 65*8d67ca89SAndroid Build Coastguard Worker NFY_EXPIRE 66*8d67ca89SAndroid Build Coastguard Worker }; 67*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_expire_multi 2 68*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_missing_indirect 3 69*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_expire_indirect 4 70*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_missing_direct 5 71*8d67ca89SAndroid Build Coastguard Worker #define autofs_ptype_expire_direct 6 72*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_expire_multi { 73*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 74*8d67ca89SAndroid Build Coastguard Worker autofs_wqt_t wait_queue_token; 75*8d67ca89SAndroid Build Coastguard Worker int len; 76*8d67ca89SAndroid Build Coastguard Worker char name[NAME_MAX + 1]; 77*8d67ca89SAndroid Build Coastguard Worker }; 78*8d67ca89SAndroid Build Coastguard Worker union autofs_packet_union { 79*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 80*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_missing missing; 81*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_expire expire; 82*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_expire_multi expire_multi; 83*8d67ca89SAndroid Build Coastguard Worker }; 84*8d67ca89SAndroid Build Coastguard Worker struct autofs_v5_packet { 85*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 86*8d67ca89SAndroid Build Coastguard Worker autofs_wqt_t wait_queue_token; 87*8d67ca89SAndroid Build Coastguard Worker __u32 dev; 88*8d67ca89SAndroid Build Coastguard Worker __u64 ino; 89*8d67ca89SAndroid Build Coastguard Worker __u32 uid; 90*8d67ca89SAndroid Build Coastguard Worker __u32 gid; 91*8d67ca89SAndroid Build Coastguard Worker __u32 pid; 92*8d67ca89SAndroid Build Coastguard Worker __u32 tgid; 93*8d67ca89SAndroid Build Coastguard Worker __u32 len; 94*8d67ca89SAndroid Build Coastguard Worker char name[NAME_MAX + 1]; 95*8d67ca89SAndroid Build Coastguard Worker }; 96*8d67ca89SAndroid Build Coastguard Worker typedef struct autofs_v5_packet autofs_packet_missing_indirect_t; 97*8d67ca89SAndroid Build Coastguard Worker typedef struct autofs_v5_packet autofs_packet_expire_indirect_t; 98*8d67ca89SAndroid Build Coastguard Worker typedef struct autofs_v5_packet autofs_packet_missing_direct_t; 99*8d67ca89SAndroid Build Coastguard Worker typedef struct autofs_v5_packet autofs_packet_expire_direct_t; 100*8d67ca89SAndroid Build Coastguard Worker union autofs_v5_packet_union { 101*8d67ca89SAndroid Build Coastguard Worker struct autofs_packet_hdr hdr; 102*8d67ca89SAndroid Build Coastguard Worker struct autofs_v5_packet v5_packet; 103*8d67ca89SAndroid Build Coastguard Worker autofs_packet_missing_indirect_t missing_indirect; 104*8d67ca89SAndroid Build Coastguard Worker autofs_packet_expire_indirect_t expire_indirect; 105*8d67ca89SAndroid Build Coastguard Worker autofs_packet_missing_direct_t missing_direct; 106*8d67ca89SAndroid Build Coastguard Worker autofs_packet_expire_direct_t expire_direct; 107*8d67ca89SAndroid Build Coastguard Worker }; 108*8d67ca89SAndroid Build Coastguard Worker enum { 109*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_EXPIRE_MULTI_CMD = 0x66, 110*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_PROTOSUBVER_CMD, 111*8d67ca89SAndroid Build Coastguard Worker AUTOFS_IOC_ASKUMOUNT_CMD = 0x70, 112*8d67ca89SAndroid Build Coastguard Worker }; 113*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_EXPIRE_MULTI _IOW(AUTOFS_IOCTL, AUTOFS_IOC_EXPIRE_MULTI_CMD, int) 114*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_PROTOSUBVER _IOR(AUTOFS_IOCTL, AUTOFS_IOC_PROTOSUBVER_CMD, int) 115*8d67ca89SAndroid Build Coastguard Worker #define AUTOFS_IOC_ASKUMOUNT _IOR(AUTOFS_IOCTL, AUTOFS_IOC_ASKUMOUNT_CMD, int) 116*8d67ca89SAndroid Build Coastguard Worker #endif 117