MCPcopy Index your code
hub / github.com/Bitmessage/PyBitmessage / run

Method run

src/bitmessagemain.py:168–189  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

166 pass
167
168 def run(self):
169 port = BMConfigParser().getint('bitmessagesettings', 'apiport')
170 try:
171 from errno import WSAEADDRINUSE
172 except (ImportError, AttributeError):
173 errno.WSAEADDRINUSE = errno.EADDRINUSE
174 for attempt in range(50):
175 try:
176 if attempt > 0:
177 port = randint(32767, 65535)
178 se = StoppableXMLRPCServer((BMConfigParser().get('bitmessagesettings', 'apiinterface'), port),
179 MySimpleXMLRPCRequestHandler, True, True)
180 except socket.error as e:
181 if e.errno in (errno.EADDRINUSE, errno.WSAEADDRINUSE):
182 continue
183 else:
184 if attempt > 0:
185 BMConfigParser().set("bitmessagesettings", "apiport", str(port))
186 BMConfigParser().save()
187 break
188 se.register_introspection_functions()
189 se.serve_forever()
190
191# This is a list of current connections (the thread pointers at least)
192selfInitiatedConnections = {}

Callers 1

startMethod · 0.45

Calls 6

serve_foreverMethod · 0.95
BMConfigParserClass · 0.90
setMethod · 0.80
getMethod · 0.45
saveMethod · 0.45

Tested by

no test coverage detected