def SvcDoRun(self): servicemanager.LogMsg( servicemanager.EVENTLOG_INFORMATION_TYPE, servicemanager.PYS_SERVICE_STARTED, (self._svc_name_, '') ) ip, port, key = getconfig() self.packet = n2packet(key) source = win32(self.packet) s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) while True: sleeptime = 27 try: source.run() except: servicemanager.LogErrorMsg("error in main loop, retrying in 5 seconds\n\n%s" % traceback.format_exc()) sleeptime = 5 s.sendto(self.packet.packet(), (ip, port)) ret = win32event.WaitForSingleObject(self.hWaitStop, sleeptime*1000) if ret == win32event.WAIT_OBJECT_0: servicemanager.LogMsg( servicemanager.EVENTLOG_INFORMATION_TYPE, servicemanager.PYS_SERVICE_STOPPED, (self._svc_name_, '') ) sys.exit(0)
def run(args=None): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.bind(("0.0.0.0", 4444)) packet = n2packet('dontcare') while True: pdata = s.recv(4096) packet.frompacket(pdata) pprint.pprint(packet.__dict__) sys.stdout.flush()
def run(args=None): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.bind(("0.0.0.0",4444)) packet = n2packet('dontcare') while True: pdata = s.recv(4096) packet.frompacket(pdata) pprint.pprint(packet.__dict__) sys.stdout.flush()