1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import json
- import config as cfg
- from connection.socketClient import Socket
- LenFunc = cfg.LenFunc
- class Worker():
- def __init__(self,child,parent):
- self.child = child
- self.parent = parent
- self.bearer = None
- self.crypter = None
- self.connector = None
- self.connectorIP = None
- self.connectorPort = None
- self.id = None
- self.server = None
- self.key_exchange = None
- def toJSON(self, data):
- return json.loads(data)
- def toSTRING(self, data):
- return json.dumps(data)
- def toSEND(self, data):
- j = json.dumps(data)
- l = LenFunc - len(str(len(j)))
- self.send("0000"[0:l]+str(len(j))+j)
- def send(self,Message):
- Message=bytes(Message,'utf-8')
- self.connector.sendall(Message)
- print("Send",Message)
- def receive(self):
- while True:
- len = self.connector.recv(LenFunc)
- if not len:
- break
- data = self.connector.recv(int(len))
- print("receive",data)
- self.parser(data)
- def parser(self,data,conn):
- data = self.toJSON(data)
- print(data)
- if (data["type"] == "init" ):
- self.id = data["id"]
- self.connectorIP = data["connectorIP"]
- self.connectorPort = data["connectorPort"]
- self.server = data["server"]
- self.child.start(data)
- elif (data["type"] == "oracleInit" ):
- if data["oracle"] == "Cryptor":
- self.crypter = conn
- elif data["oracle"] == "Bearer":
- self.bearer = conn
- else:
- print("Wrong INITIAL ORACLE")
- elif (data["type"] == "key_exchange" ):
- self.key_exchange = data["key_exchange"]
- self.child.createConnection()
|