Skip to content

Commit

Permalink
ceph: fix, clean up string mount arg parsing
Browse files Browse the repository at this point in the history
Clearly demark int and string argument options, and do not try to convert
string arguments to ints.

Signed-off-by: Sage Weil <sage@newdream.net>
  • Loading branch information
Sage Weil committed Oct 27, 2009
1 parent 6ca874e commit e53c2fe
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions fs/ceph/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -264,9 +264,11 @@ enum {
Opt_caps_wanted_delay_min,
Opt_caps_wanted_delay_max,
Opt_readdir_max_entries,
Opt_last_int,
/* int args above */
Opt_snapdirname,
Opt_secret,
Opt_last_string,
/* string args above */
Opt_ip,
Opt_noshare,
Expand Down Expand Up @@ -386,14 +388,19 @@ static int parse_mount_args(struct ceph_client *client,
pr_err("bad mount option at '%s'\n", c);
goto out;
}
if (token < Opt_ip) {
if (token < Opt_last_int) {
ret = match_int(&argstr[0], &intval);
if (ret < 0) {
pr_err("bad mount option arg (not int) "
"at '%s'\n", c);
continue;
}
dout("got token %d intval %d\n", token, intval);
dout("got int token %d val %d\n", token, intval);
} else if (token > Opt_last_int && token < Opt_last_string) {
dout("got string token %d val %s\n", token,
argstr[0].from);
} else {
dout("got token %d\n", token);
}
switch (token) {
case Opt_fsidmajor:
Expand Down

0 comments on commit e53c2fe

Please sign in to comment.