.format(type, base_types[type]))
def pack(self, data, kwargs=None):
.format(type, base_types[type]))
def pack(self, data, kwargs=None):
return self.packer.pack(data)
def unpack(self, data, offset, result=None):
return self.packer.pack(data)
def unpack(self, data, offset, result=None):
def pack(self, list, kwargs):
"""Packs a fixed length bytestring. Left-pads with zeros
if input data is too short."""
def pack(self, list, kwargs):
"""Packs a fixed length bytestring. Left-pads with zeros
if input data is too short."""
self.size = self.packer.size * num
def pack(self, list, kwargs):
self.size = self.packer.size * num
def pack(self, list, kwargs):
if len(list) != self.num:
raise ValueError('Fixed list length error, got: {} expected: {}'
.format(len(list), self.num))
if len(list) != self.num:
raise ValueError('Fixed list length error, got: {} expected: {}'
.format(len(list), self.num))
self.length_field = len_field_name
def pack(self, list, kwargs=None):
self.length_field = len_field_name
def pack(self, list, kwargs=None):
if len(list) != kwargs[self.length_field]:
raise ValueError('Variable length error, got: {} expected: {}'
.format(len(list), kwargs[self.length_field]))
if len(list) != kwargs[self.length_field]:
raise ValueError('Variable length error, got: {} expected: {}'
.format(len(list), kwargs[self.length_field]))
return b
def unpack(self, data, offset=0, result=None):
return b
def unpack(self, data, offset=0, result=None):
self.size = self.packer.size
def pack(self, list, kwargs=None):
self.size = self.packer.size
def pack(self, list, kwargs=None):
raise ValueError('Legacy Variable Length Array length mismatch.')
elements = int((len(data) - offset) / self.packer.size)
r = []
raise ValueError('Legacy Variable Length Array length mismatch.')
elements = int((len(data) - offset) / self.packer.size)
r = []
for e in range(elements):
x = self.packer.unpack(data, offset)
r.append(x)
for e in range(elements):
x = self.packer.unpack(data, offset)
r.append(x)
return types['u32'].pack(data, kwargs)
def unpack(self, data, offset=0, result=None):
return types['u32'].pack(data, kwargs)
def unpack(self, data, offset=0, result=None):
logger.debug('Adding union {}'.format(name))
def pack(self, data, kwargs=None):
logger.debug('Adding union {}'.format(name))
def pack(self, data, kwargs=None):
for k, v in data.items():
logger.debug("Key: {} Value: {}".format(k, v))
b = self.packers[k].pack(v, kwargs)
for k, v in data.items():
logger.debug("Key: {} Value: {}".format(k, v))
b = self.packers[k].pack(v, kwargs)
return r
def unpack(self, data, offset=0, result=None):
r = []
for k, p in self.packers.items():
return r
def unpack(self, data, offset=0, result=None):
r = []
for k, p in self.packers.items():