From 151a82d9c80315caff7081f16916d1913a67033a Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 3 Aug 2011 15:12:53 -0400 Subject: [PATCH] mount: fix for libmount from util-linux >= 2.20 The function mnt_fs_set_fs_options() has been removed from the final version of the libmount API. Signed-off-by: Karel Zak Signed-off-by: Steve Dickson --- utils/mount/mount_libmount.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/utils/mount/mount_libmount.c b/utils/mount/mount_libmount.c index 6dd6484..cf6e58c 100644 --- a/utils/mount/mount_libmount.c +++ b/utils/mount/mount_libmount.c @@ -61,10 +61,19 @@ int nomtab; * managed by libmount at all. We have to use "mount attributes" that are * private for mount. helpers. */ -static void store_mount_options(struct libmnt_fs *fs, const char *opts) +static void store_mount_options(struct libmnt_fs *fs, const char *nfs_opts) { - mnt_fs_set_fs_options(fs, opts); /* for mtab */ - mnt_fs_set_attributes(fs, opts); /* for non-mtab systems */ + char *o = NULL; + + mnt_fs_set_attributes(fs, nfs_opts); /* for non-mtab systems */ + + /* for mtab create a new options list */ + mnt_optstr_append_option(&o, mnt_fs_get_vfs_options(fs), NULL); + mnt_optstr_append_option(&o, nfs_opts, NULL); + mnt_optstr_append_option(&o, mnt_fs_get_user_options(fs), NULL); + + mnt_fs_set_options(fs, o); + free(o); } /* -- 2.39.5