autofs: make dev ioctl version and ismountpoint user accessible
Some of the autofs miscellaneous device ioctls need to be accessable to user space applications without CAP_SYS_ADMIN to get information about autofs mounts. Link: http://lkml.kernel.org/r/150216642517.11652.2338933266137331637.stgit@pluto.themaw.net Signed-off-by: Ian Kent <raven@themaw.net> Cc: Colin Walters <walters@redhat.com> Cc: Ondrej Holy <oholy@redhat.com> Cc: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
e54c7bcbf1
Коммит
3dd8f7c3b7
|
@ -628,10 +628,6 @@ static int _autofs_dev_ioctl(unsigned int command,
|
|||
ioctl_fn fn = NULL;
|
||||
int err = 0;
|
||||
|
||||
/* only root can play with this */
|
||||
if (!capable(CAP_SYS_ADMIN))
|
||||
return -EPERM;
|
||||
|
||||
cmd_first = _IOC_NR(AUTOFS_DEV_IOCTL_IOC_FIRST);
|
||||
cmd = _IOC_NR(command);
|
||||
|
||||
|
@ -640,6 +636,14 @@ static int _autofs_dev_ioctl(unsigned int command,
|
|||
return -ENOTTY;
|
||||
}
|
||||
|
||||
/* Only root can use ioctls other than AUTOFS_DEV_IOCTL_VERSION_CMD
|
||||
* and AUTOFS_DEV_IOCTL_ISMOUNTPOINT_CMD
|
||||
*/
|
||||
if (cmd != AUTOFS_DEV_IOCTL_VERSION_CMD &&
|
||||
cmd != AUTOFS_DEV_IOCTL_ISMOUNTPOINT_CMD &&
|
||||
!capable(CAP_SYS_ADMIN))
|
||||
return -EPERM;
|
||||
|
||||
/* Copy the parameters into kernel space. */
|
||||
param = copy_dev_ioctl(user);
|
||||
if (IS_ERR(param))
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#define AUTOFS_DEVICE_NAME "autofs"
|
||||
|
||||
#define AUTOFS_DEV_IOCTL_VERSION_MAJOR 1
|
||||
#define AUTOFS_DEV_IOCTL_VERSION_MINOR 0
|
||||
#define AUTOFS_DEV_IOCTL_VERSION_MINOR 1
|
||||
|
||||
#define AUTOFS_DEV_IOCTL_SIZE sizeof(struct autofs_dev_ioctl)
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче