mount: -o parm1 -o parm2 should accumulate

This commit is contained in:
Denis Vlasenko 2008-10-18 19:15:57 +00:00
parent 1dfeeeb651
commit f9dde919d6

View File

@ -1754,7 +1754,7 @@ int mount_main(int argc UNUSED_PARAM, char **argv)
char *cmdopts = xstrdup(""); char *cmdopts = xstrdup("");
char *fstype = NULL; char *fstype = NULL;
char *storage_path; char *storage_path;
char *opt_o; llist_t *lst_o = NULL;
const char *fstabname; const char *fstabname;
FILE *fstab; FILE *fstab;
int i, j, rc = 0; int i, j, rc = 0;
@ -1776,10 +1776,10 @@ int mount_main(int argc UNUSED_PARAM, char **argv)
// Parse remaining options // Parse remaining options
// Max 2 params; -v is a counter // Max 2 params; -v is a counter
opt_complementary = "?2" USE_FEATURE_MOUNT_VERBOSE(":vv"); opt_complementary = "?2o::" USE_FEATURE_MOUNT_VERBOSE(":vv");
opt = getopt32(argv, OPTION_STR, &opt_o, &fstype opt = getopt32(argv, OPTION_STR, &lst_o, &fstype
USE_FEATURE_MOUNT_VERBOSE(, &verbose)); USE_FEATURE_MOUNT_VERBOSE(, &verbose));
if (opt & OPT_o) append_mount_options(&cmdopts, opt_o); // -o while (lst_o) append_mount_options(&cmdopts, llist_pop(&lst_o)); // -o
if (opt & OPT_r) append_mount_options(&cmdopts, "ro"); // -r if (opt & OPT_r) append_mount_options(&cmdopts, "ro"); // -r
if (opt & OPT_w) append_mount_options(&cmdopts, "rw"); // -w if (opt & OPT_w) append_mount_options(&cmdopts, "rw"); // -w
argv += optind; argv += optind;