From: Chuck Lever Date: Mon, 24 Sep 2007 15:29:15 +0000 (-0400) Subject: mount.nfs: Add error messages for errors reported by text-based mount(2) X-Git-Tag: nfs-utils-1-1-1~45 X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=commitdiff_plain;h=bf3527ba9bf181ff07337b7183ad28894deb8b13;ds=sidebyside mount.nfs: Add error messages for errors reported by text-based mount(2) The text-based mount(2) system call API can return some additional errors that we would like to report correctly to our users. These should be safe to use with the legacy mount(2) ABI as well. Signed-off-by: Chuck Lever Signed-off-by: Neil Brown --- diff --git a/utils/mount/error.c b/utils/mount/error.c index 480c944..10d4ed2 100644 --- a/utils/mount/error.c +++ b/utils/mount/error.c @@ -185,7 +185,7 @@ void sys_mount_errors(char *server, int error, int will_retry, int bg) fprintf(stderr, "%s\n", errbuf); } -/* +/** * mount_error - report a foreground mount error * @spec: C string containing the device name being mounted * @mount_point: C string containing the pathname of the local mounted on dir @@ -195,12 +195,24 @@ void sys_mount_errors(char *server, int error, int will_retry, int bg) void mount_error(const char *spec, const char *mount_point, int error) { switch(error) { + case EACCES: + nfs_error(_("%s: access denied by server while mounting %s"), + progname, spec); + break; + case EINVAL: + nfs_error(_("%s: an incorrect mount option was specified"), progname); + break; + case EOPNOTSUPP: + nfs_error(_("%s: requested NFS version or transport" + " protocol is not supported"), + progname); + break; case ENOTDIR: nfs_error(_("%s: mount point %s is not a directory"), progname, mount_point); break; case EBUSY: - nfs_error(_("%s: %s is already mounted or busy"), + nfs_error(_("%s: %s is busy or already mounted"), progname, mount_point); break; case ENOENT: @@ -212,6 +224,10 @@ void mount_error(const char *spec, const char *mount_point, int error) nfs_error(_("%s: mount point %s does not exist"), progname, mount_point); break; + case EIO: + case EFAULT: + nfs_error(_("%s: internal error"), progname); + break; default: nfs_error(_("%s: %s"), progname, strerror(error));