scapy.dadict

Direct Access dictionary.

class scapy.dadict.DADict(_name='DADict', **kargs)[source]

Bases: Generic[scapy.dadict._K, scapy.dadict._V]

Direct Access Dictionary

This acts like a dict, but it provides a direct attribute access to its keys through its values. This is used to store protocols, manuf…

For instance, scapy fields will use a DADict as an enum:

ETHER_TYPES[2048] -> IPv4

Whereas humans can access:

ETHER_TYPES.IPv4 -> 2048
ident(v)[source]

Return value that is used as key for the direct access

iterkeys()[source]
itervalues()[source]
keys()[source]
update(*args, **kwargs)[source]
values()[source]
exception scapy.dadict.DADict_Exception[source]

Bases: scapy.error.Scapy_Exception

scapy.dadict.fixname(x)[source]

Modifies a string to make sure it can be used as an attribute name.