daemon: Make EMANE event service file descriptors close-on-exec.

This commit is contained in:
Tom Goff 2016-01-29 18:43:54 -05:00
parent a102c46d37
commit 23f7995eab

View file

@ -15,7 +15,7 @@ from xml.dom.minidom import parseString, Document
from core.constants import * from core.constants import *
from core.api import coreapi from core.api import coreapi
from core.misc.ipaddr import MacAddr from core.misc.ipaddr import MacAddr
from core.misc.utils import maketuplefromstr, cmdresult from core.misc.utils import maketuplefromstr, cmdresult, closeonexec
from core.misc.xmlutils import addtextelementsfromtuples, addparamlisttoparent from core.misc.xmlutils import addtextelementsfromtuples, addparamlisttoparent
from core.conf import ConfigurableManager, Configurable from core.conf import ConfigurableManager, Configurable
from core.mobility import WirelessModel from core.mobility import WirelessModel
@ -122,6 +122,10 @@ class Emane(ConfigurableManager):
try: try:
self.service = EventService(eventchannel=eventchannel, self.service = EventService(eventchannel=eventchannel,
otachannel=None) otachannel=None)
for f in self.service._socket, self.service._readFd, \
self.service._writeFd, self.service._socketOTA:
if f:
closeonexec(f)
except Exception, e: except Exception, e:
msg = "Error instantiating EMANE event service: %s" % e msg = "Error instantiating EMANE event service: %s" % e
self.session.exception(coreapi.CORE_EXCP_LEVEL_ERROR, self.session.exception(coreapi.CORE_EXCP_LEVEL_ERROR,