From: Danny Al-Gaaf Date: Wed, 12 Nov 2014 10:51:29 +0000 (+0100) Subject: net_handler.cc: close another socket leak X-Git-Tag: v0.90~25^2~9 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4814cf7b627f7729f46e75b5f5f140b667d1f0d6;p=ceph.git net_handler.cc: close another socket leak Close socket if ::setsockopt() fails before return. Fix for: CID 1249632 (#1 of 1): Resource leak (RESOURCE_LEAK) 9. leaked_handle: Handle variable s going out of scope leaks the handle. Signed-off-by: Danny Al-Gaaf --- diff --git a/src/msg/async/net_handler.cc b/src/msg/async/net_handler.cc index c047c36194b3..afe3909b2009 100644 --- a/src/msg/async/net_handler.cc +++ b/src/msg/async/net_handler.cc @@ -44,6 +44,7 @@ int NetHandler::create_socket(int domain, bool reuse_addr) if (::setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)) == -1) { lderr(cct) << __func__ << " setsockopt SO_REUSEADDR failed: %s" << strerror(errno) << dendl; + close(s); return -errno; } }