From: Abhishek Lekshmanan Date: Thu, 28 Mar 2019 12:41:23 +0000 (+0100) Subject: rgw: beast: set a default port for endpoints X-Git-Tag: v15.0.0~43^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9e5d4bd1a5d74490268e4dc16e885a64a1c2644c;p=ceph.git rgw: beast: set a default port for endpoints if no port is specified we don't set one(or set to 0), and don't exactly error out, so rgw keeps running without being bound to a port. Set the port to default in these cases Fixes: http://tracker.ceph.com/issues/39000 Signed-off-by: Abhishek Lekshmanan --- diff --git a/src/rgw/rgw_asio_frontend.cc b/src/rgw/rgw_asio_frontend.cc index b0b66edef91a..89306c0caa9d 100644 --- a/src/rgw/rgw_asio_frontend.cc +++ b/src/rgw/rgw_asio_frontend.cc @@ -329,6 +329,8 @@ tcp::endpoint parse_endpoint(boost::asio::string_view input, auto port_str = input.substr(addr_end + 2); endpoint.port(parse_port(port_str.data(), ec)); } + } else { + endpoint.port(default_port); } auto addr = input.substr(addr_begin, addr_end - addr_begin); endpoint.address(boost::asio::ip::make_address_v6(addr, ec)); @@ -340,6 +342,8 @@ tcp::endpoint parse_endpoint(boost::asio::string_view input, if (ec) { return endpoint; } + } else { + endpoint.port(default_port); } auto addr = input.substr(0, colon); endpoint.address(boost::asio::ip::make_address_v4(addr, ec));