Replace white space with underscore in XML elements displayed from admin
socket commands. <config get>...</config get> becomes
<config_get>...</config_get>
http://tracker.ceph.com/issues/10199 Fixes: #10199
Signed-off-by: Loic Dachary <ldachary@redhat.com>
#include <time.h>
+#include <boost/algorithm/string.hpp>
+
#include "common/admin_socket.h"
#include "common/perf_counters.h"
#include "common/Thread.h"
_perf_counters_collection->dump_formatted(f, true);
}
else {
- f->open_object_section(command.c_str());
+ string section = command;
+ boost::replace_all(section, " ", "_");
+ f->open_object_section(section.c_str());
if (command == "config show") {
_conf->show_config(f);
}
bufferlist out;
cct->do_command("config get", cmdmap, "xml", &out);
string s(out.c_str(), out.length());
- EXPECT_EQ("<config get><key>" + value + "</key></config get>", s);
+ EXPECT_EQ("<config_get><key>" + value + "</key></config_get>", s);
}
{