def wait_for_connect(self,client_args={}): (clientsocket, address) = self.serversocket.accept() self.logger.info("Starting client thread %s:%d" % address) commands = self._server_commands() args = dict(client_args) if args.has_key('commands'): args['commands'].update(commands) else: args['commands'] = commands ct = ClientThread(sock=clientsocket, address=address, logger=self.logger, args=args) ct.cleanup_func = self._client_stopped ct.broadcast_func = self._broadcast with self.lock: self.clientthreads.append(ct) ct.start()