Base Protocol¶
pcapkit.protocols.internet.internet contains Internet,
which is a base class for internet layer protocols, eg. AH,
IPsec, IPv4,
IPv6, IPX, and etc.
- class pcapkit.protocols.internet.internet.Internet(file=None, length=None, **kwargs)[source]¶
Bases:
Protocol[PT],Generic[PT]Abstract base class for internet layer protocol family.
This class currently supports parsing of the following protocols, which are registered in the
self.__proto__attribute:Index
Protocol
- Parameters
*args (Any) – Arbitrary positional arguments.
**kwargs (Any) – Arbitrary keyword arguments.
- Return type
Protocol[PT]
- classmethod register(code, module, class_)[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.
- _decode_next_layer(dict_, proto=None, length=None, *, version=4, ipv6_exthdr=None)[source]¶
Decode next layer extractor.
- Parameters
- Return type
TypeVar(PT, bound= Info)- Returns
Current protocol with next layer extracted.
- _import_next_layer(proto, length=None, *, version=4, extension=False)[source]¶
Import next layer extractor.
- __layer__: Optional[Literal['Link', 'Internet', 'Transport', 'Application']] = 'Internet'¶
Layer of protocol.
- __proto__: DefaultDict[int, tuple[str, str]]¶
Protocol index mapping for decoding next layer, c.f.
self._decode_next_layer&self._import_next_layer.