From 9e5d4bd1a5d74490268e4dc16e885a64a1c2644c Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Thu, 28 Mar 2019 13:41:23 +0100 Subject: [PATCH] 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 --- src/rgw/rgw_asio_frontend.cc | 4 ++++ 1 file changed, 4 insertions(+) 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)); -- 2.47.3