diff options
author | Sven Eckelmann <sven.eckelmann@gmx.de> | 2010-09-26 21:18:15 +0200 |
---|---|---|
committer | Karel Zak <kzak@redhat.com> | 2010-09-30 22:32:50 +0200 |
commit | d4ac6657c5ff8b3a29cdf236ab787558aab8fbb1 (patch) | |
tree | 7c2fd63d11be8857de0818892cc4946bc0e3301b /mount/mount.c | |
parent | 320e5b73a2f2ae9ad57d0de27d8e82e676d7d027 (diff) | |
download | util-linux-old-d4ac6657c5ff8b3a29cdf236ab787558aab8fbb1.tar.gz |
mount: Don't call canonicalize_*(SPEC) for 9p
When calling "mount -t 9p -o trans=virtio foobar /mnt/bar" and foobar
exists in the current path, the 9p virtio transport driver will be
called with $CWD/foobar and fail with "9p: no channels available".
Similar problems exist with remote file servers
"mount -t 9p 23.42.08.15 /mnt/bar"
and Plan 9 From User Space applications
"mount -t 9p -o trans=unix,uname=$USER `namespace`/acme /mnt/bar"
A similar exception like for nfs, cifs and smbfs must be added for 9p.
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Diffstat (limited to 'mount/mount.c')
-rw-r--r-- | mount/mount.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/mount/mount.c b/mount/mount.c index 22828b4e..0567418d 100644 --- a/mount/mount.c +++ b/mount/mount.c @@ -1805,7 +1805,8 @@ mount_one (const char *spec, const char *node, const char *types, } /* Handle possible LABEL= and UUID= forms of spec */ - if (types == NULL || (strncmp(types, "nfs", 3) && + if (types == NULL || (strncmp(types, "9p", 2) && + strncmp(types, "nfs", 3) && strncmp(types, "cifs", 4) && strncmp(types, "smbfs", 5))) { nspec = spec_to_devname(spec); |