diff options
author | Dan Mick <dan.mick@inktank.com> | 2013-04-08 13:52:32 -0700 |
---|---|---|
committer | Dan Mick <dmick@danceorelse.org> | 2013-04-09 01:38:01 -0700 |
commit | 1d0bf61da98bec7318f44b95a49298e13b792b70 (patch) | |
tree | 87e1ec367896625986f448ab314d716b6d6f8508 | |
parent | 3769250acf42a751ee8dfa95207a4ffafd25574a (diff) | |
download | ceph-1d0bf61da98bec7318f44b95a49298e13b792b70.tar.gz |
mon: Use _daemon version of argparse functions
Allow argparse functions to fail if no argument given by using
special versions that avoid the default CLI behavior of "cerr/exit"
Fixes: #4678
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit be801f6c506d9fbfb6c06afe94663abdb0037be5)
Conflicts:
src/mon/Monitor.cc
-rw-r--r-- | src/mon/MDSMonitor.cc | 3 | ||||
-rw-r--r-- | src/mon/MonmapMonitor.cc | 3 | ||||
-rw-r--r-- | src/mon/OSDMonitor.cc | 3 | ||||
-rw-r--r-- | src/mon/PGMonitor.cc | 7 |
4 files changed, 10 insertions, 6 deletions
diff --git a/src/mon/MDSMonitor.cc b/src/mon/MDSMonitor.cc index 72168ac9638..be6738a0323 100644 --- a/src/mon/MDSMonitor.cc +++ b/src/mon/MDSMonitor.cc @@ -539,7 +539,8 @@ bool MDSMonitor::preprocess_command(MMonCommand *m) for (std::vector<const char*>::iterator i = args.begin()+1; i != args.end(); ) { if (ceph_argparse_double_dash(args, i)) break; - else if (ceph_argparse_witharg(args, i, &val, "-f", "--format", (char*)NULL)) + else if (ceph_argparse_witharg_daemon(args, i, &val, "-f", "--format", + (char*)NULL)) format = val; else if (!epoch) { long l = parse_pos_long(*i++, &ss); diff --git a/src/mon/MonmapMonitor.cc b/src/mon/MonmapMonitor.cc index 196edeee476..523782aed3b 100644 --- a/src/mon/MonmapMonitor.cc +++ b/src/mon/MonmapMonitor.cc @@ -181,7 +181,8 @@ bool MonmapMonitor::preprocess_command(MMonCommand *m) for (std::vector<const char*>::iterator i = args.begin()+1; i != args.end(); ) { if (ceph_argparse_double_dash(args, i)) break; - else if (ceph_argparse_witharg(args, i, &val, "-f", "--format", (char*)NULL)) + else if (ceph_argparse_witharg_daemon(args, i, &val, "-f", "--format", + (char*)NULL)) format = val; else if (!epoch) { long l = parse_pos_long(*i++, &ss); diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 4ac50c0f554..786ccd1929a 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -1721,7 +1721,8 @@ bool OSDMonitor::preprocess_command(MMonCommand *m) for (std::vector<const char*>::iterator i = args.begin()+1; i != args.end(); ) { if (ceph_argparse_double_dash(args, i)) break; - else if (ceph_argparse_witharg(args, i, &val, "-f", "--format", (char*)NULL)) + else if (ceph_argparse_witharg_daemon(args, i, &val, "-f", "--format", + (char*)NULL)) format = val; else if (!epoch) { long l = parse_pos_long(*i++, &ss); diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index 7e9b83ba5e0..1baaa59e28c 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -919,7 +919,8 @@ bool PGMonitor::preprocess_command(MMonCommand *m) for (std::vector<const char*>::iterator i = args.begin()+1; i != args.end(); ) { if (ceph_argparse_double_dash(args, i)) { break; - } else if (ceph_argparse_witharg(args, i, &val, "-f", "--format", (char*)NULL)) { + } else if (ceph_argparse_witharg_daemon(args, i, &val, "-f", + "--format", (char*)NULL)) { format = val; } else { what = *i++; @@ -1395,14 +1396,14 @@ int PGMonitor::dump_stuck_pg_stats(ostream& ss, i != args.end(); ) { if (ceph_argparse_double_dash(args, i)) { break; - } else if (ceph_argparse_witharg(args, i, &val, + } else if (ceph_argparse_witharg_daemon(args, i, &val, "-f", "--format", (char*)NULL)) { if (val != "json" && val != "plain") { ss << "format must be json or plain"; return -EINVAL; } format = val; - } else if (ceph_argparse_withint(args, i, &seconds, &err, + } else if (ceph_argparse_withint_daemon(args, i, &seconds, &err, "-t", "--threshold", (char*)NULL)) { if (!err.str().empty()) { ss << err.str(); |