diff options
author | Alexandru DAMIAN <alexandru.damian@intel.com> | 2013-08-31 23:46:06 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-01 15:51:11 +0100 |
commit | 6d9e3a19384cbd737fdac729c6c0de5b06f8ec12 (patch) | |
tree | c172e619b3cafb92b8489c5e827d9ae4e3f0cf31 /bitbake | |
parent | c7b342903208cfb4cefaa0ec339c6ddfcd590acc (diff) | |
download | ast2050-yocto-poky-6d9e3a19384cbd737fdac729c6c0de5b06f8ec12.zip ast2050-yocto-poky-6d9e3a19384cbd737fdac729c6c0de5b06f8ec12.tar.gz |
bitbake: server/xmlrpc: stop server on client exit
If the server only expects a single client to connect (i.e.
no bind parameter set, so there is no way for the
clients to get the server port), stop the server after
the first client exits.
(Bitbake rev: eb6bae56f62082bf147045311154cbae4bca0f4c)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/server/xmlrpc.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/bitbake/lib/bb/server/xmlrpc.py b/bitbake/lib/bb/server/xmlrpc.py index cca569d..a28672c 100644 --- a/bitbake/lib/bb/server/xmlrpc.py +++ b/bitbake/lib/bb/server/xmlrpc.py @@ -133,6 +133,8 @@ class BitBakeServerCommands(): if self.has_client: self.server.set_connection_token(None) self.has_client = False + if self.server.single_use: + self.server.quit = True # This request handler checks if the request has a "Bitbake-token" header # field (this comes from the client side) and compares it with its internal @@ -239,6 +241,9 @@ class XMLRPCServer(SimpleXMLRPCServer, BaseImplServer): self.commands = BitBakeServerCommands(self) self.autoregister_all_functions(self.commands, "") self.interface = interface + self.single_use = False + if (interface[1] == 0): # anonymous port, not getting reused + self.single_use = True def addcooker(self, cooker): BaseImplServer.addcooker(self, cooker) |