def run(self): from app import APP APP.Functions.set_process_name ( "0@TFTPD" ) logger = APP.LoggingClient ( name="TFTPD" ) controller = APP.Controller( APP.BE.CONTROLLER.tftpd ) logger ( "Initializing the server." ) server_process = Process ( name="TFTPD_LISTEN", target=ProvisioningTFTPServer ) server_process.start() while True: action = APP.ControllerWait ( controller ) if action == "STOP": break logger ("Terminating the server.") os.kill ( server_process.pid, signal.SIGHUP ) logger ("Waiting for all children to exit.") server_process.join() logger ( "Finished." ) #config = ProvCon.Configuration() #TFTPD = pcTFTPD() #time.sleep(2) #ProvCon.ControllerAction ( config.get ( "CONTROLLER", "tftpd"), "STOP" ) #TFTPD.join()