From: liushi Date: Mon, 23 Dec 2019 09:09:29 +0000 (+0800) Subject: mgr: close restful socket after exec X-Git-Tag: v15.1.0~357^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ec3a696a5d328936b611b2a19fc9ab12ae183b48;p=ceph.git mgr: close restful socket after exec Signed-off-by: liushi --- diff --git a/src/pybind/mgr/restful/module.py b/src/pybind/mgr/restful/module.py index 0f8257b7bed3..098258b06ff5 100644 --- a/src/pybind/mgr/restful/module.py +++ b/src/pybind/mgr/restful/module.py @@ -13,6 +13,7 @@ import threading import traceback import six import socket +import fcntl from . import common from . import context @@ -331,6 +332,10 @@ class Module(MgrModule): ), ssl_context=(cert_fname, pkey_fname), ) + sock_fd_flag = fcntl.fcntl(self.server.socket.fileno(), fcntl.F_GETFD) + if not (sock_fd_flag & fcntl.FD_CLOEXEC): + self.log.debug("set server socket close-on-exec") + fcntl.fcntl(self.server.socket.fileno(), fcntl.F_SETFD, sock_fd_flag | fcntl.FD_CLOEXEC) if self.stop_server: self.log.debug('made server, but stop flag set') else: