From 011b5486c5951e376af43539be542c04b62fef87 Mon Sep 17 00:00:00 2001 From: Craig Rodrigues Date: Thu, 7 Dec 2006 03:24:43 +0000 Subject: [PATCH] Pass a char buffer parameter with name "errmsg" to nmount(). For filesystems which use vfs_mount_error() to log an error, this char buffer will be populated with a string error message. If nmount() fails, in addition to printing out strerror(errno), print out the "errmsg" populated by vfs_mount_error(). --- sbin/mount/mount_fs.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sbin/mount/mount_fs.c b/sbin/mount/mount_fs.c index d9b0b3cae307..6ab15a3b364f 100644 --- a/sbin/mount/mount_fs.c +++ b/sbin/mount/mount_fs.c @@ -84,10 +84,12 @@ mount_fs(const char *vfstype, int argc, char *argv[]) int ch; char *dev, *dir, mntpath[MAXPATHLEN]; char fstype[32]; + char errmsg[255]; char *p, *val; int ret; strncpy(fstype, vfstype, sizeof(fstype)); + memset(errmsg, 0, sizeof(errmsg)); getmnt_silent = 1; iov = NULL; @@ -126,10 +128,11 @@ mount_fs(const char *vfstype, int argc, char *argv[]) build_iovec(&iov, &iovlen, "fstype", fstype, (size_t)-1); build_iovec(&iov, &iovlen, "fspath", mntpath, (size_t)-1); build_iovec(&iov, &iovlen, "from", dev, (size_t)-1); + build_iovec(&iov, &iovlen, "errmsg", errmsg, sizeof(errmsg)); ret = nmount(iov, iovlen, mntflags); if (ret < 0) - err(1, "%s", dev); + err(1, "%s %s", dev, errmsg); return (ret); }