From b75b76697ffeb529469562a33d1cc7a4254e45bc Mon Sep 17 00:00:00 2001 From: xie xingguo Date: Mon, 30 May 2016 20:43:16 +0800 Subject: [PATCH] common/admin_socket: fix socket fd leak Signed-off-by: xie xingguo --- src/common/admin_socket.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/common/admin_socket.cc b/src/common/admin_socket.cc index 40fa12fd36f7c..28c5620927b79 100644 --- a/src/common/admin_socket.cc +++ b/src/common/admin_socket.cc @@ -322,7 +322,7 @@ bool AdminSocket::do_accept() if (ret <= 0) { lderr(m_cct) << "AdminSocket: error reading request code: " << cpp_strerror(ret) << dendl; - close(connection_fd); + VOID_TEMP_FAILURE_RETRY(close(connection_fd)); return false; } //ldout(m_cct, 0) << "AdminSocket read byte " << (int)cmd[pos] << " pos " << pos << dendl; @@ -365,6 +365,7 @@ bool AdminSocket::do_accept() cmdvec.push_back(cmd); if (!cmdmap_from_json(cmdvec, &cmdmap, errss)) { ldout(m_cct, 0) << "AdminSocket: " << errss.rdbuf() << dendl; + VOID_TEMP_FAILURE_RETRY(close(connection_fd)); return false; } cmd_getval(m_cct, cmdmap, "format", format); -- 2.39.5