scapy.layers.radius

RADIUS (Remote Authentication Dial In User Service)

class scapy.layers.radius.Radius

Bases: scapy.packet.Packet

Implements a RADIUS packet (RFC 2865).

aliastypes
compute_authenticator(packed_request_auth, shared_secret)

Computes the authenticator field (RFC 2865 - Section 3)

fields_desc
Radius fields

code

ByteEnumField

1

id

ByteField

0

len

FieldLenField

None

authenticator

XStrFixedLenField

b''

attributes

PacketListField

[]

post_build(p, pay)
class scapy.layers.radius.RadiusAttr_ARAP_Security(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2869

aliastypes
fields_desc
RadiusAttr_ARAP_Security fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 73
class scapy.layers.radius.RadiusAttr_Acct_Delay_Time(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Delay_Time fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 41
class scapy.layers.radius.RadiusAttr_Acct_Input_Gigawords(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2869

aliastypes
fields_desc
RadiusAttr_Acct_Input_Gigawords fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 52
class scapy.layers.radius.RadiusAttr_Acct_Input_Octets(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Input_Octets fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 42
class scapy.layers.radius.RadiusAttr_Acct_Input_Packets(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Input_Packets fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 47
class scapy.layers.radius.RadiusAttr_Acct_Interim_Interval(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2869

aliastypes
fields_desc
RadiusAttr_Acct_Interim_Interval fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 85

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

RadiusAttr_Acct_Link_Count fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

class scapy.layers.radius.RadiusAttr_Acct_Output_Gigawords(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2869

aliastypes
fields_desc
RadiusAttr_Acct_Output_Gigawords fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 53
class scapy.layers.radius.RadiusAttr_Acct_Output_Octets(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Output_Octets fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 43
class scapy.layers.radius.RadiusAttr_Acct_Output_Packets(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Output_Packets fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 48
class scapy.layers.radius.RadiusAttr_Acct_Session_Time(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2866

aliastypes
fields_desc
RadiusAttr_Acct_Session_Time fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 46
class scapy.layers.radius.RadiusAttr_Acct_Tunnel_Packets_Lost(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2867

aliastypes
fields_desc
RadiusAttr_Acct_Tunnel_Packets_Lost fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 86
class scapy.layers.radius.RadiusAttr_EAP_Message

Bases: scapy.layers.radius.RadiusAttribute

Implements the “EAP-Message” attribute (RFC 3579).

aliastypes
fields_desc
RadiusAttr_EAP_Message fields

type

ByteEnumField

79

len

FieldLenField

None

value

_EAPPacketField

b''

class scapy.layers.radius.RadiusAttr_Egress_VLANID(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 4675

aliastypes
fields_desc
RadiusAttr_Egress_VLANID fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 56

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_AppleTalk_Link fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 37
class scapy.layers.radius.RadiusAttr_Framed_AppleTalk_Network(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_AppleTalk_Network fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 38
class scapy.layers.radius.RadiusAttr_Framed_IPX_Network(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_IPX_Network fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 23
class scapy.layers.radius.RadiusAttr_Framed_IP_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_IP_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 8
class scapy.layers.radius.RadiusAttr_Framed_IP_Netmask(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_IP_Netmask fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 9
class scapy.layers.radius.RadiusAttr_Framed_MTU(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_MTU fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 12
class scapy.layers.radius.RadiusAttr_Framed_Protocol(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntEnumVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Framed_Protocol fields

type

ByteEnumField

6

len

ByteField

6

value

MultiEnumField (Depends on type)

0

val = 7
class scapy.layers.radius.RadiusAttr_Idle_Timeout(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Idle_Timeout fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 28
class scapy.layers.radius.RadiusAttr_Login_IP_Host(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Login_IP_Host fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 14
class scapy.layers.radius.RadiusAttr_Login_TCP_Port(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Login_TCP_Port fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 16
class scapy.layers.radius.RadiusAttr_Management_Privilege_Level(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 5607

aliastypes
fields_desc
RadiusAttr_Management_Privilege_Level fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 136
class scapy.layers.radius.RadiusAttr_Message_Authenticator(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrHexStringVal

RFC 2869

aliastypes
static compute_message_authenticator(radius_packet, packed_req_authenticator, shared_secret)

Computes the “Message-Authenticator” of a given RADIUS packet. (RFC 2869 - Page 33)

fields_desc
RadiusAttr_Message_Authenticator fields

type

ByteEnumField

24

len

FieldLenField

18

value

XStrFixedLenField

b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

val = 80
class scapy.layers.radius.RadiusAttr_Mobility_Domain_Id(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_Mobility_Domain_Id fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 177
class scapy.layers.radius.RadiusAttr_NAS_IP_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_NAS_IP_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 4
class scapy.layers.radius.RadiusAttr_NAS_Port(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_NAS_Port fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 5
class scapy.layers.radius.RadiusAttr_NAS_Port_Type(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntEnumVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_NAS_Port_Type fields

type

ByteEnumField

6

len

ByteField

6

value

MultiEnumField (Depends on type)

0

val = 61
class scapy.layers.radius.RadiusAttr_PMIP6_Home_DHCP4_Server_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Home_DHCP4_Server_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 157
class scapy.layers.radius.RadiusAttr_PMIP6_Home_IPv4_Gateway(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Home_IPv4_Gateway fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 161
class scapy.layers.radius.RadiusAttr_PMIP6_Home_LMA_IPv4_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Home_LMA_IPv4_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 149
class scapy.layers.radius.RadiusAttr_PMIP6_Visited_DHCP4_Server_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Visited_DHCP4_Server_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 158
class scapy.layers.radius.RadiusAttr_PMIP6_Visited_IPv4_Gateway(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Visited_IPv4_Gateway fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 162
class scapy.layers.radius.RadiusAttr_PMIP6_Visited_LMA_IPv4_Address(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIPv4AddrVal

RFC 6572

aliastypes
fields_desc
RadiusAttr_PMIP6_Visited_LMA_IPv4_Address fields

type

ByteEnumField

4

len

ByteField

6

value

IPField

'0.0.0.0'

val = 150
class scapy.layers.radius.RadiusAttr_Password_Retry(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2869

aliastypes
fields_desc
RadiusAttr_Password_Retry fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 75
class scapy.layers.radius.RadiusAttr_Port_Limit(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Port_Limit fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 62
class scapy.layers.radius.RadiusAttr_Preauth_Timeout(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_Preauth_Timeout fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 178
class scapy.layers.radius.RadiusAttr_Service_Type(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntEnumVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_Service_Type fields

type

ByteEnumField

6

len

ByteField

6

value

MultiEnumField (Depends on type)

0

val = 6
class scapy.layers.radius.RadiusAttr_Session_Timeout(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2865

aliastypes
fields_desc
RadiusAttr_Session_Timeout fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 27
class scapy.layers.radius.RadiusAttr_State(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrHexStringVal

RFC 2865

aliastypes
fields_desc
RadiusAttr_State fields

type

ByteEnumField

24

len

FieldLenField

None

value

XStrLenField

b''

val = 24
class scapy.layers.radius.RadiusAttr_Tunnel_Preference(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 2868

aliastypes
fields_desc
RadiusAttr_Tunnel_Preference fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 83
class scapy.layers.radius.RadiusAttr_Vendor_Specific

Bases: scapy.layers.radius.RadiusAttribute

Implements the “Vendor-Specific” attribute, as described in RFC 2865.

aliastypes
fields_desc
RadiusAttr_Vendor_Specific fields

type

ByteEnumField

26

len

FieldLenField

None

vendor_id

IntField

0

vendor_type

ByteField

0

vendor_len

FieldLenField

None

value

StrLenField

b''

class scapy.layers.radius.RadiusAttr_WLAN_AKM_Suite(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_AKM_Suite fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 188
class scapy.layers.radius.RadiusAttr_WLAN_Group_Cipher(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_Group_Cipher fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 187
class scapy.layers.radius.RadiusAttr_WLAN_Group_Mgmt_Cipher(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_Group_Mgmt_Cipher fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 189
class scapy.layers.radius.RadiusAttr_WLAN_Pairwise_Cipher(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_Pairwise_Cipher fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 186
class scapy.layers.radius.RadiusAttr_WLAN_RF_Band(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_RF_Band fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 190
class scapy.layers.radius.RadiusAttr_WLAN_Reason_Code(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_Reason_Code fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 185
class scapy.layers.radius.RadiusAttr_WLAN_Venue_Info(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)

Bases: scapy.layers.radius._RadiusAttrIntValue

RFC 7268

aliastypes
fields_desc
RadiusAttr_WLAN_Venue_Info fields

type

ByteEnumField

5

len

ByteField

6

value

IntField

0

val = 182
class scapy.layers.radius.RadiusAttribute

Bases: scapy.packet.Packet

Implements a RADIUS attribute (RFC 2865). Every specific RADIUS attribute class should inherit from this one.

aliastypes
classmethod dispatch_hook(_pkt=None, *args, **kargs)

Returns the right RadiusAttribute class for the given data.

fields_desc
RadiusAttribute fields

type

ByteEnumField

1

len

FieldLenField

None

value

StrLenField

b''

getlayer(cls, nb=1, _track=None, _subclass=True, **flt)
guess_payload_class(_)
haslayer(cls)
post_build(p, pay)
classmethod register_variant()

Registers the RADIUS attributes defined in this module.

registered_attributes = {1: <class 'scapy.layers.radius.RadiusAttribute'>, <member 'val' of '_SpecificRadiusAttr' objects>: <class 'scapy.layers.radius._RadiusAttrIntValue'>, 5: <class 'scapy.layers.radius.RadiusAttr_NAS_Port'>, 12: <class 'scapy.layers.radius.RadiusAttr_Framed_MTU'>, 16: <class 'scapy.layers.radius.RadiusAttr_Login_TCP_Port'>, 27: <class 'scapy.layers.radius.RadiusAttr_Session_Timeout'>, 28: <class 'scapy.layers.radius.RadiusAttr_Idle_Timeout'>, 37: <class 'scapy.layers.radius.RadiusAttr_Framed_AppleTalk_Link'>, 38: <class 'scapy.layers.radius.RadiusAttr_Framed_AppleTalk_Network'>, 41: <class 'scapy.layers.radius.RadiusAttr_Acct_Delay_Time'>, 42: <class 'scapy.layers.radius.RadiusAttr_Acct_Input_Octets'>, 43: <class 'scapy.layers.radius.RadiusAttr_Acct_Output_Octets'>, 46: <class 'scapy.layers.radius.RadiusAttr_Acct_Session_Time'>, 47: <class 'scapy.layers.radius.RadiusAttr_Acct_Input_Packets'>, 48: <class 'scapy.layers.radius.RadiusAttr_Acct_Output_Packets'>, 51: <class 'scapy.layers.radius.RadiusAttr_Acct_Link_Count'>, 52: <class 'scapy.layers.radius.RadiusAttr_Acct_Input_Gigawords'>, 53: <class 'scapy.layers.radius.RadiusAttr_Acct_Output_Gigawords'>, 56: <class 'scapy.layers.radius.RadiusAttr_Egress_VLANID'>, 62: <class 'scapy.layers.radius.RadiusAttr_Port_Limit'>, 73: <class 'scapy.layers.radius.RadiusAttr_ARAP_Security'>, 75: <class 'scapy.layers.radius.RadiusAttr_Password_Retry'>, 83: <class 'scapy.layers.radius.RadiusAttr_Tunnel_Preference'>, 85: <class 'scapy.layers.radius.RadiusAttr_Acct_Interim_Interval'>, 86: <class 'scapy.layers.radius.RadiusAttr_Acct_Tunnel_Packets_Lost'>, 136: <class 'scapy.layers.radius.RadiusAttr_Management_Privilege_Level'>, 177: <class 'scapy.layers.radius.RadiusAttr_Mobility_Domain_Id'>, 178: <class 'scapy.layers.radius.RadiusAttr_Preauth_Timeout'>, 182: <class 'scapy.layers.radius.RadiusAttr_WLAN_Venue_Info'>, 185: <class 'scapy.layers.radius.RadiusAttr_WLAN_Reason_Code'>, 186: <class 'scapy.layers.radius.RadiusAttr_WLAN_Pairwise_Cipher'>, 187: <class 'scapy.layers.radius.RadiusAttr_WLAN_Group_Cipher'>, 188: <class 'scapy.layers.radius.RadiusAttr_WLAN_AKM_Suite'>, 189: <class 'scapy.layers.radius.RadiusAttr_WLAN_Group_Mgmt_Cipher'>, 190: <class 'scapy.layers.radius.RadiusAttr_WLAN_RF_Band'>, <member 'val' of '_RadiusAttrHexStringVal' objects>: <class 'scapy.layers.radius._RadiusAttrHexStringVal'>, 24: <class 'scapy.layers.radius.RadiusAttr_State'>, 80: <class 'scapy.layers.radius.RadiusAttr_Message_Authenticator'>, <member 'val' of '_RadiusAttrIPv4AddrVal' objects>: <class 'scapy.layers.radius._RadiusAttrIPv4AddrVal'>, 4: <class 'scapy.layers.radius.RadiusAttr_NAS_IP_Address'>, 8: <class 'scapy.layers.radius.RadiusAttr_Framed_IP_Address'>, 9: <class 'scapy.layers.radius.RadiusAttr_Framed_IP_Netmask'>, 14: <class 'scapy.layers.radius.RadiusAttr_Login_IP_Host'>, 23: <class 'scapy.layers.radius.RadiusAttr_Framed_IPX_Network'>, 149: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Home_LMA_IPv4_Address'>, 150: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Visited_LMA_IPv4_Address'>, 157: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Home_DHCP4_Server_Address'>, 158: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Visited_DHCP4_Server_Address'>, 161: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Home_IPv4_Gateway'>, 162: <class 'scapy.layers.radius.RadiusAttr_PMIP6_Visited_IPv4_Gateway'>, <member 'val' of '_RadiusAttrIntEnumVal' objects>: <class 'scapy.layers.radius._RadiusAttrIntEnumVal'>, 6: <class 'scapy.layers.radius.RadiusAttr_Service_Type'>, 7: <class 'scapy.layers.radius.RadiusAttr_Framed_Protocol'>, 61: <class 'scapy.layers.radius.RadiusAttr_NAS_Port_Type'>, 79: <class 'scapy.layers.radius.RadiusAttr_EAP_Message'>, 26: <class 'scapy.layers.radius.RadiusAttr_Vendor_Specific'>}
scapy.layers.radius.prepare_packed_data(radius_packet, packed_req_authenticator)

Pack RADIUS data prior computing the authentication MAC