diff options
-rw-r--r-- | sbin/mountd/mountd.c | 7 | ||||
-rw-r--r-- | sys/kern/vfs_export.c | 2 | ||||
-rw-r--r-- | usr.sbin/mountd/mountd.c | 7 |
3 files changed, 9 insertions, 7 deletions
diff --git a/sbin/mountd/mountd.c b/sbin/mountd/mountd.c index 0c08f40..35ea7da 100644 --- a/sbin/mountd/mountd.c +++ b/sbin/mountd/mountd.c @@ -950,9 +950,10 @@ get_exportlist() targs.ua.fspec = NULL; targs.ua.export.ex_flags = MNT_DELEXPORT; if (mount(fsp->f_fstypename, fsp->f_mntonname, - fsp->f_flags | MNT_UPDATE, - (caddr_t)&targs) < 0) - syslog(LOG_ERR, "can't delete exports for %s", + fsp->f_flags | MNT_UPDATE, (caddr_t)&targs) < 0 && + errno != ENOENT) + syslog(LOG_ERR, + "can't delete exports for %s: %m", fsp->f_mntonname); } fsp++; diff --git a/sys/kern/vfs_export.c b/sys/kern/vfs_export.c index 64677cb..53e67fa 100644 --- a/sys/kern/vfs_export.c +++ b/sys/kern/vfs_export.c @@ -207,7 +207,7 @@ vfs_export(mp, argp) nep = mp->mnt_export; if (argp->ex_flags & MNT_DELEXPORT) { if (nep == NULL) - return (EINVAL); + return (ENOENT); if (mp->mnt_flag & MNT_EXPUBLIC) { vfs_setpublicfs(NULL, NULL, NULL); mp->mnt_flag &= ~MNT_EXPUBLIC; diff --git a/usr.sbin/mountd/mountd.c b/usr.sbin/mountd/mountd.c index 0c08f40..35ea7da 100644 --- a/usr.sbin/mountd/mountd.c +++ b/usr.sbin/mountd/mountd.c @@ -950,9 +950,10 @@ get_exportlist() targs.ua.fspec = NULL; targs.ua.export.ex_flags = MNT_DELEXPORT; if (mount(fsp->f_fstypename, fsp->f_mntonname, - fsp->f_flags | MNT_UPDATE, - (caddr_t)&targs) < 0) - syslog(LOG_ERR, "can't delete exports for %s", + fsp->f_flags | MNT_UPDATE, (caddr_t)&targs) < 0 && + errno != ENOENT) + syslog(LOG_ERR, + "can't delete exports for %s: %m", fsp->f_mntonname); } fsp++; |