def __setitem__(self, key, value): if key == 'asData': value = value #+ '\x00' array = list() for letter in value: encoded = letter.encode('utf-16le') array.append(unpack('<H', encoded)[0]) self.fields[key]['Data'] = array self['cBytes'] = len(value) * 2 self['clSize'] = len(value) self.data = None # force recompute else: return NDRSTRUCT.__setitem__(self, key, value)
def __setitem__(self, key, value): if key == "asData": value = value # + '\x00' array = list() for letter in value: encoded = letter.encode("utf-16le") array.append(unpack("<H", encoded)[0]) self.fields[key]["Data"] = array self["cBytes"] = len(value) * 2 self["clSize"] = len(value) self.data = None # force recompute else: return NDRSTRUCT.__setitem__(self, key, value)
def __setitem__(self, key, value): if key == 'Data' and isinstance(value, NDR) is False: self['Length'] = len(value)*2 self['MaximumLength'] = len(value)*2 return NDRSTRUCT.__setitem__(self, key, value)