~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/linux/auto_dev-ioctl.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/linux/auto_dev-ioctl.h (Version linux-6.12-rc7) and /include/linux/auto_dev-ioctl.h (Version linux-4.4.302)


  1 /* SPDX-License-Identifier: GPL-2.0-or-later * << 
  2 /*                                                  1 /*
  3  * Copyright 2008 Red Hat, Inc. All rights res      2  * Copyright 2008 Red Hat, Inc. All rights reserved.
  4  * Copyright 2008 Ian Kent <raven@themaw.net>       3  * Copyright 2008 Ian Kent <raven@themaw.net>
                                                   >>   4  *
                                                   >>   5  * This file is part of the Linux kernel and is made available under
                                                   >>   6  * the terms of the GNU General Public License, version 2, or at your
                                                   >>   7  * option, any later version, incorporated herein by reference.
  5  */                                                 8  */
  6                                                     9 
  7 #ifndef _LINUX_AUTO_DEV_IOCTL_H                    10 #ifndef _LINUX_AUTO_DEV_IOCTL_H
  8 #define _LINUX_AUTO_DEV_IOCTL_H                    11 #define _LINUX_AUTO_DEV_IOCTL_H
  9                                                    12 
 10 #include <uapi/linux/auto_dev-ioctl.h>         !!  13 #include <linux/auto_fs.h>
                                                   >>  14 
                                                   >>  15 #ifdef __KERNEL__
                                                   >>  16 #include <linux/string.h>
                                                   >>  17 #else
                                                   >>  18 #include <string.h>
                                                   >>  19 #endif /* __KERNEL__ */
                                                   >>  20 
                                                   >>  21 #define AUTOFS_DEVICE_NAME              "autofs"
                                                   >>  22 
                                                   >>  23 #define AUTOFS_DEV_IOCTL_VERSION_MAJOR  1
                                                   >>  24 #define AUTOFS_DEV_IOCTL_VERSION_MINOR  0
                                                   >>  25 
                                                   >>  26 #define AUTOFS_DEVID_LEN                16
                                                   >>  27 
                                                   >>  28 #define AUTOFS_DEV_IOCTL_SIZE           sizeof(struct autofs_dev_ioctl)
                                                   >>  29 
                                                   >>  30 /*
                                                   >>  31  * An ioctl interface for autofs mount point control.
                                                   >>  32  */
                                                   >>  33 
                                                   >>  34 struct args_protover {
                                                   >>  35         __u32   version;
                                                   >>  36 };
                                                   >>  37 
                                                   >>  38 struct args_protosubver {
                                                   >>  39         __u32   sub_version;
                                                   >>  40 };
                                                   >>  41 
                                                   >>  42 struct args_openmount {
                                                   >>  43         __u32   devid;
                                                   >>  44 };
                                                   >>  45 
                                                   >>  46 struct args_ready {
                                                   >>  47         __u32   token;
                                                   >>  48 };
                                                   >>  49 
                                                   >>  50 struct args_fail {
                                                   >>  51         __u32   token;
                                                   >>  52         __s32   status;
                                                   >>  53 };
                                                   >>  54 
                                                   >>  55 struct args_setpipefd {
                                                   >>  56         __s32   pipefd;
                                                   >>  57 };
                                                   >>  58 
                                                   >>  59 struct args_timeout {
                                                   >>  60         __u64   timeout;
                                                   >>  61 };
                                                   >>  62 
                                                   >>  63 struct args_requester {
                                                   >>  64         __u32   uid;
                                                   >>  65         __u32   gid;
                                                   >>  66 };
                                                   >>  67 
                                                   >>  68 struct args_expire {
                                                   >>  69         __u32   how;
                                                   >>  70 };
                                                   >>  71 
                                                   >>  72 struct args_askumount {
                                                   >>  73         __u32   may_umount;
                                                   >>  74 };
                                                   >>  75 
                                                   >>  76 struct args_ismountpoint {
                                                   >>  77         union {
                                                   >>  78                 struct args_in {
                                                   >>  79                         __u32   type;
                                                   >>  80                 } in;
                                                   >>  81                 struct args_out {
                                                   >>  82                         __u32   devid;
                                                   >>  83                         __u32   magic;
                                                   >>  84                 } out;
                                                   >>  85         };
                                                   >>  86 };
                                                   >>  87 
                                                   >>  88 /*
                                                   >>  89  * All the ioctls use this structure.
                                                   >>  90  * When sending a path size must account for the total length
                                                   >>  91  * of the chunk of memory otherwise is is the size of the
                                                   >>  92  * structure.
                                                   >>  93  */
                                                   >>  94 
                                                   >>  95 struct autofs_dev_ioctl {
                                                   >>  96         __u32 ver_major;
                                                   >>  97         __u32 ver_minor;
                                                   >>  98         __u32 size;             /* total size of data passed in
                                                   >>  99                                  * including this struct */
                                                   >> 100         __s32 ioctlfd;          /* automount command fd */
                                                   >> 101 
                                                   >> 102         /* Command parameters */
                                                   >> 103 
                                                   >> 104         union {
                                                   >> 105                 struct args_protover            protover;
                                                   >> 106                 struct args_protosubver         protosubver;
                                                   >> 107                 struct args_openmount           openmount;
                                                   >> 108                 struct args_ready               ready;
                                                   >> 109                 struct args_fail                fail;
                                                   >> 110                 struct args_setpipefd           setpipefd;
                                                   >> 111                 struct args_timeout             timeout;
                                                   >> 112                 struct args_requester           requester;
                                                   >> 113                 struct args_expire              expire;
                                                   >> 114                 struct args_askumount           askumount;
                                                   >> 115                 struct args_ismountpoint        ismountpoint;
                                                   >> 116         };
                                                   >> 117 
                                                   >> 118         char path[0];
                                                   >> 119 };
                                                   >> 120 
                                                   >> 121 static inline void init_autofs_dev_ioctl(struct autofs_dev_ioctl *in)
                                                   >> 122 {
                                                   >> 123         memset(in, 0, sizeof(struct autofs_dev_ioctl));
                                                   >> 124         in->ver_major = AUTOFS_DEV_IOCTL_VERSION_MAJOR;
                                                   >> 125         in->ver_minor = AUTOFS_DEV_IOCTL_VERSION_MINOR;
                                                   >> 126         in->size = sizeof(struct autofs_dev_ioctl);
                                                   >> 127         in->ioctlfd = -1;
                                                   >> 128         return;
                                                   >> 129 }
                                                   >> 130 
                                                   >> 131 /*
                                                   >> 132  * If you change this make sure you make the corresponding change
                                                   >> 133  * to autofs-dev-ioctl.c:lookup_ioctl()
                                                   >> 134  */
                                                   >> 135 enum {
                                                   >> 136         /* Get various version info */
                                                   >> 137         AUTOFS_DEV_IOCTL_VERSION_CMD = 0x71,
                                                   >> 138         AUTOFS_DEV_IOCTL_PROTOVER_CMD,
                                                   >> 139         AUTOFS_DEV_IOCTL_PROTOSUBVER_CMD,
                                                   >> 140 
                                                   >> 141         /* Open mount ioctl fd */
                                                   >> 142         AUTOFS_DEV_IOCTL_OPENMOUNT_CMD,
                                                   >> 143 
                                                   >> 144         /* Close mount ioctl fd */
                                                   >> 145         AUTOFS_DEV_IOCTL_CLOSEMOUNT_CMD,
                                                   >> 146 
                                                   >> 147         /* Mount/expire status returns */
                                                   >> 148         AUTOFS_DEV_IOCTL_READY_CMD,
                                                   >> 149         AUTOFS_DEV_IOCTL_FAIL_CMD,
                                                   >> 150 
                                                   >> 151         /* Activate/deactivate autofs mount */
                                                   >> 152         AUTOFS_DEV_IOCTL_SETPIPEFD_CMD,
                                                   >> 153         AUTOFS_DEV_IOCTL_CATATONIC_CMD,
                                                   >> 154 
                                                   >> 155         /* Expiry timeout */
                                                   >> 156         AUTOFS_DEV_IOCTL_TIMEOUT_CMD,
                                                   >> 157 
                                                   >> 158         /* Get mount last requesting uid and gid */
                                                   >> 159         AUTOFS_DEV_IOCTL_REQUESTER_CMD,
                                                   >> 160 
                                                   >> 161         /* Check for eligible expire candidates */
                                                   >> 162         AUTOFS_DEV_IOCTL_EXPIRE_CMD,
                                                   >> 163 
                                                   >> 164         /* Request busy status */
                                                   >> 165         AUTOFS_DEV_IOCTL_ASKUMOUNT_CMD,
                                                   >> 166 
                                                   >> 167         /* Check if path is a mountpoint */
                                                   >> 168         AUTOFS_DEV_IOCTL_ISMOUNTPOINT_CMD,
                                                   >> 169 };
                                                   >> 170 
                                                   >> 171 #define AUTOFS_IOCTL 0x93
                                                   >> 172 
                                                   >> 173 #define AUTOFS_DEV_IOCTL_VERSION \
                                                   >> 174         _IOWR(AUTOFS_IOCTL, \
                                                   >> 175               AUTOFS_DEV_IOCTL_VERSION_CMD, struct autofs_dev_ioctl)
                                                   >> 176 
                                                   >> 177 #define AUTOFS_DEV_IOCTL_PROTOVER \
                                                   >> 178         _IOWR(AUTOFS_IOCTL, \
                                                   >> 179               AUTOFS_DEV_IOCTL_PROTOVER_CMD, struct autofs_dev_ioctl)
                                                   >> 180 
                                                   >> 181 #define AUTOFS_DEV_IOCTL_PROTOSUBVER \
                                                   >> 182         _IOWR(AUTOFS_IOCTL, \
                                                   >> 183               AUTOFS_DEV_IOCTL_PROTOSUBVER_CMD, struct autofs_dev_ioctl)
                                                   >> 184 
                                                   >> 185 #define AUTOFS_DEV_IOCTL_OPENMOUNT \
                                                   >> 186         _IOWR(AUTOFS_IOCTL, \
                                                   >> 187               AUTOFS_DEV_IOCTL_OPENMOUNT_CMD, struct autofs_dev_ioctl)
                                                   >> 188 
                                                   >> 189 #define AUTOFS_DEV_IOCTL_CLOSEMOUNT \
                                                   >> 190         _IOWR(AUTOFS_IOCTL, \
                                                   >> 191               AUTOFS_DEV_IOCTL_CLOSEMOUNT_CMD, struct autofs_dev_ioctl)
                                                   >> 192 
                                                   >> 193 #define AUTOFS_DEV_IOCTL_READY \
                                                   >> 194         _IOWR(AUTOFS_IOCTL, \
                                                   >> 195               AUTOFS_DEV_IOCTL_READY_CMD, struct autofs_dev_ioctl)
                                                   >> 196 
                                                   >> 197 #define AUTOFS_DEV_IOCTL_FAIL \
                                                   >> 198         _IOWR(AUTOFS_IOCTL, \
                                                   >> 199               AUTOFS_DEV_IOCTL_FAIL_CMD, struct autofs_dev_ioctl)
                                                   >> 200 
                                                   >> 201 #define AUTOFS_DEV_IOCTL_SETPIPEFD \
                                                   >> 202         _IOWR(AUTOFS_IOCTL, \
                                                   >> 203               AUTOFS_DEV_IOCTL_SETPIPEFD_CMD, struct autofs_dev_ioctl)
                                                   >> 204 
                                                   >> 205 #define AUTOFS_DEV_IOCTL_CATATONIC \
                                                   >> 206         _IOWR(AUTOFS_IOCTL, \
                                                   >> 207               AUTOFS_DEV_IOCTL_CATATONIC_CMD, struct autofs_dev_ioctl)
                                                   >> 208 
                                                   >> 209 #define AUTOFS_DEV_IOCTL_TIMEOUT \
                                                   >> 210         _IOWR(AUTOFS_IOCTL, \
                                                   >> 211               AUTOFS_DEV_IOCTL_TIMEOUT_CMD, struct autofs_dev_ioctl)
                                                   >> 212 
                                                   >> 213 #define AUTOFS_DEV_IOCTL_REQUESTER \
                                                   >> 214         _IOWR(AUTOFS_IOCTL, \
                                                   >> 215               AUTOFS_DEV_IOCTL_REQUESTER_CMD, struct autofs_dev_ioctl)
                                                   >> 216 
                                                   >> 217 #define AUTOFS_DEV_IOCTL_EXPIRE \
                                                   >> 218         _IOWR(AUTOFS_IOCTL, \
                                                   >> 219               AUTOFS_DEV_IOCTL_EXPIRE_CMD, struct autofs_dev_ioctl)
                                                   >> 220 
                                                   >> 221 #define AUTOFS_DEV_IOCTL_ASKUMOUNT \
                                                   >> 222         _IOWR(AUTOFS_IOCTL, \
                                                   >> 223               AUTOFS_DEV_IOCTL_ASKUMOUNT_CMD, struct autofs_dev_ioctl)
                                                   >> 224 
                                                   >> 225 #define AUTOFS_DEV_IOCTL_ISMOUNTPOINT \
                                                   >> 226         _IOWR(AUTOFS_IOCTL, \
                                                   >> 227               AUTOFS_DEV_IOCTL_ISMOUNTPOINT_CMD, struct autofs_dev_ioctl)
                                                   >> 228 
 11 #endif  /* _LINUX_AUTO_DEV_IOCTL_H */             229 #endif  /* _LINUX_AUTO_DEV_IOCTL_H */
 12                                                   230 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php