diff options
author | Joao Eduardo Luis <joao.luis@inktank.com> | 2012-11-29 16:42:16 +0000 |
---|---|---|
committer | Joao Eduardo Luis <joao.luis@inktank.com> | 2012-11-29 21:01:46 +0000 |
commit | c6cc476f18648ffeeacd21f45e5695580103f92b (patch) | |
tree | e8336312e8b80197095c5a983f76dbd094a44a80 | |
parent | 78286b1403a5e0f14f95fe6b92f2fdb163e909f1 (diff) | |
download | ceph-c6cc476f18648ffeeacd21f45e5695580103f92b.tar.gz |
mon: OSDMonitor: return -EINVAL on not-a-uuid during 'osd create'
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
-rw-r--r-- | src/mon/OSDMonitor.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index e72929b7d43..2b1b48b605d 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -2445,7 +2445,11 @@ bool OSDMonitor::prepare_command(MMonCommand *m) // optional uuid provided? uuid_d uuid; - if (m->cmd.size() > 2 && uuid.parse(m->cmd[2].c_str())) { + if (m->cmd.size() > 2) { + if (!uuid.parse(m->cmd[2].c_str())) { + err = -EINVAL; + goto out; + } dout(10) << " osd create got uuid " << uuid << dendl; i = osdmap.identify_osd(uuid); if (i >= 0) { |