diff options
-rw-r--r-- | sbin/mount/mount.c | 11 | ||||
-rw-r--r-- | sbin/mount_ifs/mount.c | 11 |
2 files changed, 14 insertions, 8 deletions
diff --git a/sbin/mount/mount.c b/sbin/mount/mount.c index 075ffcf..d5de560 100644 --- a/sbin/mount/mount.c +++ b/sbin/mount/mount.c @@ -286,10 +286,13 @@ mountfs(vfstype, spec, name, flags, options, mntopts) warn("%s", specpath); return (1); } - if (strcmp(mntpath, specpath) == 0) { - warnx("%s: Special device file and mount point may not be the same", - specpath); - return (1); + if (strcmp(vfstype, "ufs") == 0 || strcmp(vfstype, "msdos") == 0 || + strcmp(vfstype, "cd9660") == 0) { + if (strcmp(mntpath, specpath) == 0) { + warnx("%s: Special device file and mount point may not be the same", + specpath); + return (1); + } } if (mntopts == NULL) diff --git a/sbin/mount_ifs/mount.c b/sbin/mount_ifs/mount.c index 075ffcf..d5de560 100644 --- a/sbin/mount_ifs/mount.c +++ b/sbin/mount_ifs/mount.c @@ -286,10 +286,13 @@ mountfs(vfstype, spec, name, flags, options, mntopts) warn("%s", specpath); return (1); } - if (strcmp(mntpath, specpath) == 0) { - warnx("%s: Special device file and mount point may not be the same", - specpath); - return (1); + if (strcmp(vfstype, "ufs") == 0 || strcmp(vfstype, "msdos") == 0 || + strcmp(vfstype, "cd9660") == 0) { + if (strcmp(mntpath, specpath) == 0) { + warnx("%s: Special device file and mount point may not be the same", + specpath); + return (1); + } } if (mntopts == NULL) |