From: Kefu Chai Date: Mon, 5 Apr 2021 03:11:03 +0000 (+0800) Subject: src: use entity_addr_t::parse(string_view) when possible X-Git-Tag: v17.1.0~2361^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F40587%2Fhead;p=ceph.git src: use entity_addr_t::parse(string_view) when possible for better readability Signed-off-by: Kefu Chai --- diff --git a/src/ceph_mon.cc b/src/ceph_mon.cc index a468d8b9d16d..306d663d33a8 100644 --- a/src/ceph_mon.cc +++ b/src/ceph_mon.cc @@ -747,7 +747,7 @@ int main(int argc, const char **argv) if (g_conf().get_val_from_conf_file(my_sections, "mon addr", mon_addr_str, true) == 0) { entity_addr_t conf_addr; - if (conf_addr.parse(mon_addr_str.c_str())) { + if (conf_addr.parse(mon_addr_str)) { entity_addrvec_t conf_addrs = make_mon_addrs(conf_addr); if (ipaddrs != conf_addrs) { derr << "WARNING: 'mon addr' config option " << conf_addrs diff --git a/src/common/cmdparse.cc b/src/common/cmdparse.cc index b8cf316340de..f1756a292a52 100644 --- a/src/common/cmdparse.cc +++ b/src/common/cmdparse.cc @@ -526,7 +526,7 @@ bool validate_str_arg(std::string_view value, { if (type == "CephIPAddr") { entity_addr_t addr; - if (addr.parse(string(value).c_str())) { + if (addr.parse(value)) { return true; } else { os << "failed to parse addr '" << value << "', should be ip:[port]"; diff --git a/src/common/options.cc b/src/common/options.cc index 4a70c85dbf22..73b7a8c0e9e8 100644 --- a/src/common/options.cc +++ b/src/common/options.cc @@ -178,7 +178,7 @@ int Option::parse_value( } } else if (type == Option::TYPE_ADDR) { entity_addr_t addr; - if (!addr.parse(val.c_str())){ + if (!addr.parse(val)){ return -EINVAL; } *out = addr; diff --git a/src/common/pick_address.cc b/src/common/pick_address.cc index ff7c32c4b7a4..47f8875e0ced 100644 --- a/src/common/pick_address.cc +++ b/src/common/pick_address.cc @@ -303,8 +303,7 @@ static int fill_in_one_address( } entity_addr_t addr; - const char *end = 0; - bool r = addr.parse(buf, &end); + bool r = addr.parse(buf); if (!r) { return -1; } diff --git a/src/librados/RadosClient.cc b/src/librados/RadosClient.cc index 47b928058c4f..29f240440aea 100644 --- a/src/librados/RadosClient.cc +++ b/src/librados/RadosClient.cc @@ -773,7 +773,7 @@ int librados::RadosClient::blocklist_add(const string& client_address, uint32_t expire_seconds) { entity_addr_t addr; - if (!addr.parse(client_address.c_str(), 0)) { + if (!addr.parse(client_address)) { lderr(cct) << "unable to parse address " << client_address << dendl; return -EINVAL; } diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc index a4bef49690f2..6126db9caa60 100644 --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@ -1280,8 +1280,7 @@ bool Monitor::_add_bootstrap_peer_hint(std::string_view cmd, << addrstr << "'" << dendl; entity_addr_t addr; - const char *end = 0; - if (!addr.parse(addrstr.c_str(), &end, entity_addr_t::TYPE_ANY)) { + if (!addr.parse(addrstr, entity_addr_t::TYPE_ANY)) { ss << "failed to parse addrs '" << addrstr << "'; syntax is 'add_bootstrap_peer_hint ip[:port]'"; return false; diff --git a/src/mon/MonmapMonitor.cc b/src/mon/MonmapMonitor.cc index ec72f410d1fc..daeb4b572fd7 100644 --- a/src/mon/MonmapMonitor.cc +++ b/src/mon/MonmapMonitor.cc @@ -584,7 +584,7 @@ bool MonmapMonitor::prepare_command(MonOpRequestRef op) entity_addr_t addr; bufferlist rdata; - if (!addr.parse(addrstr.c_str())) { + if (!addr.parse(addrstr)) { err = -EINVAL; ss << "addr " << addrstr << "does not parse"; goto reply; diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 521d57899e05..656499c59d0f 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -12520,7 +12520,7 @@ bool OSDMonitor::prepare_command_impl(MonOpRequestRef op, string addrstr; cmd_getval(cmdmap, "addr", addrstr); entity_addr_t addr; - if (!addr.parse(addrstr.c_str(), 0)) { + if (!addr.parse(addrstr)) { ss << "unable to parse address " << addrstr; err = -EINVAL; goto reply; diff --git a/src/tools/rbd/action/Kernel.cc b/src/tools/rbd/action/Kernel.cc index 3ed8e59037b0..55bd23ba6df1 100644 --- a/src/tools/rbd/action/Kernel.cc +++ b/src/tools/rbd/action/Kernel.cc @@ -41,9 +41,7 @@ static std::string map_option_uuid_cb(const char *value_char) static std::string map_option_ip_cb(const char *value_char) { entity_addr_t a; - const char *endptr; - if (!a.parse(value_char, &endptr) || - endptr != value_char + strlen(value_char)) { + if (!a.parse(value_char)) { return ""; }