diff options
author | Karel Zak | 2011-03-15 13:59:55 +0100 |
---|---|---|
committer | Karel Zak | 2011-03-15 13:59:55 +0100 |
commit | b8729267134df1f70e5fe9a3763d805a6cbd767c (patch) | |
tree | ae4a0de456db06b1b792d7a3f3ded2ed9d3a7e13 /mount | |
parent | umount: call /sbin/umount.<uhelper> for root user too (diff) | |
download | kernel-qcow2-util-linux-b8729267134df1f70e5fe9a3763d805a6cbd767c.tar.gz kernel-qcow2-util-linux-b8729267134df1f70e5fe9a3763d805a6cbd767c.tar.xz kernel-qcow2-util-linux-b8729267134df1f70e5fe9a3763d805a6cbd767c.zip |
Revert "umount: call /sbin/umount.<uhelper> for root user too"
This reverts commit c56226697342ddd663492f77768e7a7cb8e579a1.
Diffstat (limited to 'mount')
-rw-r--r-- | mount/umount.8 | 4 | ||||
-rw-r--r-- | mount/umount.c | 33 |
2 files changed, 21 insertions, 16 deletions
diff --git a/mount/umount.8 b/mount/umount.8 index b2d8c8569..3606caae9 100644 --- a/mount/umount.8 +++ b/mount/umount.8 @@ -155,6 +155,10 @@ where the <suffix> is filesystem type or a value from "uhelper=" mtab option. The \-t option is used for filesystems with subtypes support (for example /sbin/mount.fuse -t fuse.sshfs). +The uhelper (unprivileged umount helper) is possible to used when non-root user +wants to umount a mountpoint which is not defined in the /etc/fstab file (e.g +devices mounted by HAL). + .SH FILES .I /etc/mtab table of mounted file systems diff --git a/mount/umount.c b/mount/umount.c index 3e4dc337b..42671f465 100644 --- a/mount/umount.c +++ b/mount/umount.c @@ -559,22 +559,6 @@ umount_file (char *arg) { if (!mc && verbose) printf(_("Could not find %s in mtab\n"), file); - /* - * uhelper - umount helper - * -- external umount (for example HAL mounts) - */ - if (external_allowed && mc) { - char *uhelper = NULL; - - if (mc->m.mnt_opts) - uhelper = get_option_value(mc->m.mnt_opts, "uhelper="); - if (uhelper) { - int status = 0; - if (check_special_umountprog(arg, arg, uhelper, &status)) - return status; - } - } - if (restricted) { char *mtab_user = NULL; @@ -582,6 +566,23 @@ umount_file (char *arg) { die(2, _("umount: %s is not mounted (according to mtab)"), file); + /* + * uhelper - unprivileged umount helper + * -- external umount (for example HAL mounts) + */ + if (external_allowed) { + char *uhelper = NULL; + + if (mc->m.mnt_opts) + uhelper = get_option_value(mc->m.mnt_opts, + "uhelper="); + if (uhelper) { + int status = 0; + if (check_special_umountprog(arg, arg, + uhelper, &status)) + return status; + } + } /* The 2.4 kernel will generally refuse to mount the same filesystem on the same mount point, but will accept NFS. |