def test_bad_option_length(self): with self.assertRaisesRegex(ValueError, 'length does not match'): VendorClassOption.parse( bytes.fromhex('0010000a00009d10') + b'\x00\x05Class') with self.assertRaisesRegex(ValueError, 'length does not match'): VendorClassOption.parse( bytes.fromhex('0010000d00009d10') + b'\x00\x05Class\x00\x01X')
options=[ IAPrefixOption( prefix=IPv6Network('::/0')), ]), ReconfigureAcceptOption(), OptionRequestOption(requested_options=[ OPTION_DNS_SERVERS, OPTION_NTP_SERVER, OPTION_SNTP_SERVERS, OPTION_IA_PD, OPTION_IA_NA, OPTION_VENDOR_OPTS, OPTION_SOL_MAX_RT, OPTION_INF_MAX_RT, ]), VendorClassOption(enterprise_number=872), ], )), InterfaceIdOption(interface_id=b'Fa2/3'), RemoteIdOption(enterprise_number=9, remote_id=bytes.fromhex( '020023000001000a0003000100211c7d486e')), ])), InterfaceIdOption(interface_id=b'Gi0/0/0'), RemoteIdOption( enterprise_number=9, remote_id=bytes.fromhex('020000000000000a0003000124e9b36e8100')), ], ) relayed_solicit_packet = codecs.decode(
def test_bad_option_length(self): with self.assertRaisesRegex(ValueError, 'length does not match'): VendorClassOption.parse(bytes.fromhex('0010000a00009d10') + b'\x00\x05Class') with self.assertRaisesRegex(ValueError, 'length does not match'): VendorClassOption.parse(bytes.fromhex('0010000d00009d10') + b'\x00\x05Class\x00\x01X')
def setUp(self): self.option_bytes = bytes.fromhex( '0010001a00009d10') + b'\x00\x05Class' + b'\x00\x0dAnother Class' self.option_object = VendorClassOption(40208, [b'Class', b'Another Class']) self.parse_option()