From d5f6aa5f2476723f1e2d96506931951f29af7d71 Mon Sep 17 00:00:00 2001 From: Mike Pritchard Date: Mon, 11 Mar 1996 20:01:17 +0000 Subject: [PATCH] Backout my changes to disallow "mount /mnt /mnt" until I can verify that nfs mounts work again (I locked up my home machine testing it and can't see what happened until I get home from work tonight). --- sbin/mount/mount.c | 22 ---------------------- sbin/mount_ifs/mount.c | 22 ---------------------- 2 files changed, 44 deletions(-) diff --git a/sbin/mount/mount.c b/sbin/mount/mount.c index d5de5601feeb..1be00ec7d26c 100644 --- a/sbin/mount/mount.c +++ b/sbin/mount/mount.c @@ -262,7 +262,6 @@ mountfs(vfstype, spec, name, flags, options, mntopts) pid_t pid; int argc, i, status; char *optbuf, execname[MAXPATHLEN + 1], mntpath[MAXPATHLEN]; - char specpath[MAXPATHLEN]; if (realpath(name, mntpath) != NULL && stat(mntpath, &sb) == 0) { if (!S_ISDIR(sb.st_mode)) { @@ -274,27 +273,6 @@ mountfs(vfstype, spec, name, flags, options, mntopts) return (1); } - /* - * The following check is a kludge to prevent the caller from - * accidently using the file as the special device file and - * the mount point. This will cause a panic due to a recursive - * vnode lock. After some of the planned reworking of the - * file system code is done, the kernel can be fixed properly - * and this stupid check can be removed. - */ - if (realpath(spec, specpath) == NULL) { - warn("%s", 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) mntopts = ""; diff --git a/sbin/mount_ifs/mount.c b/sbin/mount_ifs/mount.c index d5de5601feeb..1be00ec7d26c 100644 --- a/sbin/mount_ifs/mount.c +++ b/sbin/mount_ifs/mount.c @@ -262,7 +262,6 @@ mountfs(vfstype, spec, name, flags, options, mntopts) pid_t pid; int argc, i, status; char *optbuf, execname[MAXPATHLEN + 1], mntpath[MAXPATHLEN]; - char specpath[MAXPATHLEN]; if (realpath(name, mntpath) != NULL && stat(mntpath, &sb) == 0) { if (!S_ISDIR(sb.st_mode)) { @@ -274,27 +273,6 @@ mountfs(vfstype, spec, name, flags, options, mntopts) return (1); } - /* - * The following check is a kludge to prevent the caller from - * accidently using the file as the special device file and - * the mount point. This will cause a panic due to a recursive - * vnode lock. After some of the planned reworking of the - * file system code is done, the kernel can be fixed properly - * and this stupid check can be removed. - */ - if (realpath(spec, specpath) == NULL) { - warn("%s", 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) mntopts = "";