mirror of
https://github.com/SystemRage/py-kms.git
synced 2024-11-22 08:15:38 +01:00
61 lines
1.0 KiB
Python
61 lines
1.0 KiB
Python
import struct
|
|
import uuid
|
|
|
|
class rpcBase:
|
|
packetType = {
|
|
'request' : 0,
|
|
'ping' : 1,
|
|
'response' : 2,
|
|
'fault' : 3,
|
|
'working' : 4,
|
|
'nocall' : 5,
|
|
'reject' : 6,
|
|
'ack' : 7,
|
|
'clCancel' : 8,
|
|
'fack' : 9,
|
|
'cancelAck' : 10,
|
|
'bindReq' : 11,
|
|
'bindAck' : 12,
|
|
'bindNak' : 13,
|
|
'alterContext' : 14,
|
|
'alterContextResp' : 15,
|
|
'shutdown' : 17,
|
|
'coCancel' : 18,
|
|
'orphaned' : 19
|
|
}
|
|
|
|
packetFlags = {
|
|
'firstFrag' : 1, # 0x01
|
|
'lastFrag' : 2, # 0x02
|
|
'cancelPending' : 4, # 0x04
|
|
'reserved' : 8, # 0x08
|
|
'multiplex' : 16, # 0x10
|
|
'didNotExecute' : 32, # 0x20
|
|
'maybe' : 64, # 0x40
|
|
'objectUuid' : 128 # 0x80
|
|
}
|
|
|
|
def __init__(self, data, config):
|
|
self.data = data
|
|
self.config = config
|
|
|
|
def populate(self):
|
|
self.requestData = self.parseRequest()
|
|
self.responseData = self.generateResponse()
|
|
return self
|
|
|
|
def getConfig(self):
|
|
return self.config
|
|
|
|
def getOptions(self):
|
|
return self.config
|
|
|
|
def getData(self):
|
|
return self.data
|
|
|
|
def parseRequest(self):
|
|
return {}
|
|
|
|
def getResponse(self):
|
|
return self.responseData
|