Registry Management¶
This module (pcapkit.foundation.registry) provides the registry
management for pcapkit, as the module contains various registry
points.
Foundation Registries¶
Engine Registries¶
- pcapkit.foundation.registry.foundation.register_extractor_engine(name, module, class_='(null)')[source]¶
Registered a new engine class.
Notes
The full qualified class name of the new engine class should be as
{module}.{class_}.The function will register the given engine class to the
pcapkit.foundation.extraction.Extractor.__engine__registry.
Dumper Registries¶
- pcapkit.foundation.registry.foundation.register_dumper(format, module, class_='(null)', *, ext)[source]¶
Registered a new dumper class.
Notes
The full qualified class name of the new dumper class should be as
{module}.{class_}.The function will register the given dumper class to the
pcapkit.foundation.traceflow.traceflow.TraceFlow.__output__andpcapkit.foundation.extraction.Extractor.__output__registry.
- pcapkit.foundation.registry.foundation.register_extractor_dumper(format, module, class_='(null)', *, ext)[source]¶
Registered a new dumper class.
Notes
The full qualified class name of the new dumper class should be as
{module}.{class_}.The function will register the given dumper class to the
pcapkit.foundation.extraction.Extractor.__output__registry.
- pcapkit.foundation.registry.foundation.register_traceflow_dumper(format, module, class_='(null)', *, ext)[source]¶
Registered a new dumper class.
Notes
The full qualified class name of the new dumper class should be as
{module}.{class_}.The function will register the given dumper class to the
pcapkit.foundation.traceflow.traceflow.TraceFlow.__output__registry.
Callback Registries¶
- pcapkit.foundation.registry.foundation.register_reassembly_ipv4_callback(callback)[source]¶
Registered a new callback function.
The function will register the given callback function to the
IPv4.__callback_fn__registry.- Parameters:
callback (Reasm_CallbackFn) – callback function
- Return type:
None
- pcapkit.foundation.registry.foundation.register_reassembly_ipv6_callback(callback)[source]¶
Registered a new callback function.
The function will register the given callback function to the
IPv6.__callback_fn__registry.- Parameters:
callback (Reasm_CallbackFn) – callback function
- Return type:
None
- pcapkit.foundation.registry.foundation.register_reassembly_tcp_callback(callback)[source]¶
Registered a new callback function.
The function will register the given callback function to the
TCP.__callback_fn__registry.- Parameters:
callback (Reasm_CallbackFn) – callback function
- Return type:
None
- pcapkit.foundation.registry.foundation.register_traceflow_tcp_callback(callback)[source]¶
Registered a new callback function.
The function will register the given callback function to the
TCP.__callback_fn__registry.- Parameters:
callback (Trace_CallbackFn) – callback function
- Return type:
None
Extractor Registries¶
- pcapkit.foundation.registry.foundation.register_extractor_reassembly(protocol, module, class_='(null)')[source]¶
Registered a new reassembly class.
Notes
The full qualified class name of the new reassembly class should be as
{module}.{class_}.The function will register the given reassembly class to the
pcapkit.foundation.extraction.Extractor.__reassembly__registry.- Parameters:
protocol (
str) – protocol namemodule (
Union[str,ModuleDescriptor[Reassembly],Type[Reassembly]]) – module name or module descriptor or aReassemblysubclassclass_ (
str) – class name
- Return type:
- pcapkit.foundation.registry.foundation.register_extractor_traceflow(protocol, module, class_='(null)')[source]¶
Registered a new flow tracing class.
Notes
The full qualified class name of the new flow tracing class should be as
{module}.{class_}.The function will register the given flow tracing class to the
pcapkit.foundation.extraction.Extractor.__traceflow__registry.
Protocol Registries¶
- pcapkit.foundation.registry.protocols.register_protocol(protocol)[source]¶
Registered protocol class.
The protocol class must be a subclass of
Protocol, and will be registered to thepcapkit.protocols.__proto__registry.- Parameters:
protocol (
Type[ProtocolBase]) – Protocol class.- Return type:
Top-Level Registries¶
- pcapkit.foundation.registry.protocols.register_linktype(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the following registries:
- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
- pcapkit.foundation.registry.protocols.register_pcap(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.misc.pcap.frame.Frame.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
- pcapkit.foundation.registry.protocols.register_pcapng(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.misc.pcapng.PCAPNG.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
Link Layer Registries¶
- pcapkit.foundation.registry.protocols.register_ethertype(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.link.link.Link.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
Internet Layer Registries¶
- pcapkit.foundation.registry.protocols.register_transtype(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.internet.internet.Internet.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
- pcapkit.foundation.registry.protocols.register_ipv4_option(code, meth, *, schema=None)[source]¶
Register an option parser.
The function will register the given option parser to the
pcapkit.protocols.internet.internet.IPv4internal registry.- Parameters:
code (IPv4_OptionNumber) –
IPv4option code as inOptionNumber.meth (str | tuple[IPv4_OptionParser, IPv4_OptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_IPv4_Option]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.internet.ipv4.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_hip_parameter(code, meth, *, schema=None)[source]¶
Register a parameter parser.
The function will register the given parameter parser to the
pcapkit.protocols.internet.hip.HIPinternal registry.- Parameters:
meth (str | tuple[HIP_ParameterParser, HIP_ParameterConstructor]) – Method name or callable to parse and/or construct the parameter.
schema (Optional[Type[Schema_HIP_Parameter]]) –
Schemaclass for the parameter. It should be a subclass ofpcapkit.protocols.schema.internet.hip.Parameter.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_hopopt_option(code, meth, *, schema=None)[source]¶
Register an option parser.
The function will register the given option parser to the
pcapkit.protocols.internet.hopopt.HOPOPT.__option__registry.- Parameters:
meth (str | tuple[HOPOPT_OptionParser, HOPOPT_OptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_HOPOPT_Option]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.internet.hopopt.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_ipv6_opts_option(code, meth, *, schema=None)[source]¶
Register an option parser.
The function will register the given option parser to the
pcapkit.protocols.internet.ipv6_opts.IPv6_Opts.__option__registry.- Parameters:
meth (str | tuple[IPv6_Opts_OptionParser, IPv6_Opts_OptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_IPv6_Opts_Option]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.internet.ipv6_opts.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_ipv6_route_routing(code, meth, *, schema=None)[source]¶
Register a routing data parser.
The function will register the given routing data parser to the
pcapkit.protocols.internet.ipv6_route.IPv6_Route.__routing__registry.- Parameters:
code (IPv6_Routing) –
IPv6-Routedata type code as inRouting.meth (str | tuple[IPv6_Route_TypeParser, IPv6_Route_TypeConstructor]) – Method name or callable to parse and/or construct the data.
schema (Optional[Type[Schema_IPv6_Route_RoutingType]]) –
Schemaclass for the routing data. It should be a subclass ofpcapkit.protocols.schema.internet.ipv6_route.RoutingType.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_mh_message(code, meth, *, schema=None)[source]¶
Register a MH message type parser.
The function will register the given message type parser to the
pcapkit.protocols.internet.mh.MH.__message__registry.- Parameters:
code (MH_Packet) –
MH>data type code as inPacket.meth (str | tuple[MH_PacketParser, MH_PacketConstructor]) – Method name or callable to parse and/or construct the data.
schema (Optional[Type[Schema_MH_Packet]]) –
Schemaclass for the message type. It should be a subclass ofpcapkit.protocols.schema.internet.mh.Packet.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_mh_option(code, meth, *, schema=None)[source]¶
Register a MH option parser.
The function will register the given option parser to the
pcapkit.protocols.internet.mh.MH.__option__registry.- Parameters:
code (MH_Option) –
MH>data type code as inOption.meth (str | tuple[MH_OptionParser, MH_OptionConstructor]) – Method name or callable to parse and/or construct the data.
schema (Optional[Type[Schema_MH_Option]]) –
Schemaclass for the message type. It should be a subclass ofpcapkit.protocols.schema.internet.mh.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_mh_extension(code, meth, schema=None)[source]¶
Register a CGA extension parser.
The function will register the given CGA extension to the
pcapkit.protocols.internet.mh.MH.__extension__registry.- Parameters:
code (MH_CGAExtension) –
MH>data type code as inCGAExtension.meth (str | tuple[MH_ExtensionParser, MH_ExtensionConstructor]) – Method name or callable to parse and/or construct the data.
schema (Optional[Type[Schema_MH_CGAExtension]]) –
Schemaclass for the message type. It should be a subclass ofpcapkit.protocols.schema.internet.mh.CGAExtension.
- Return type:
None
Transport Layer Registries¶
- pcapkit.foundation.registry.protocols.register_apptype(code, module, class_='(null)', *, proto='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.transport.tcp.TCP.__proto__and/orpcapkit.protocols.transport.udp.UDP.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class nameproto (
TransportProtocol|str) – protocol name (must be a valid transport protocol)
- Return type:
See also
pcapkit.foundation.registry.register_tcp()pcapkit.foundation.registry.register_udp()
- pcapkit.foundation.registry.protocols.register_tcp(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.transport.tcp.TCP.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
- pcapkit.foundation.registry.protocols.register_tcp_option(code, meth, *, schema=None)[source]¶
Register an option parser.
The function will register the given option parser to the
pcapkit.protocols.transport.tcp.TCP.__option__registry.- Parameters:
meth (str | tuple[TCP_OptionParser, TCP_OptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_TCP_Option]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.transport.tcp.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_tcp_mp_option(code, meth, *, schema=None)[source]¶
Register an MPTCP option parser.
The function will register the given option parser to the
pcapkit.protocols.transport.tcp.TCP.__mp_option__registry.- Parameters:
code (TCP_MPTCPOption) – Multipath
TCPoption code as inMPTCPOption.meth (str | tuple[TCP_MPOptionParser, TCP_MPOptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_TCP_MPTCP]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.transport.tcp.MPTCP.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_udp(code, module, class_='(null)')[source]¶
Register a new protocol class.
Notes
The full qualified class name of the new protocol class should be as
{module}.{class_}.The function will register the given protocol class to the
pcapkit.protocols.transport.udp.UDP.__proto__registry.- Parameters:
module (
Union[str,ModuleDescriptor[ProtocolBase],Type[ProtocolBase]]) – module name or module descriptor or aProtocolsubclassclass_ (
str) – class name
- Return type:
Application Layer Registries¶
- pcapkit.foundation.registry.protocols.register_http_frame(code, meth, *, schema=None)[source]¶
Registered a frame parser.
The function will register the given frame parser to the
pcapkit.protocols.application.httpv2.HTTP.__frame__registry.- Parameters:
meth (str | tuple[HTTP_FrameParser, HTTP_FrameConstructor]) – Method name or callable to parse and/or construct the frame.
schema (Optional[Type[Schema_HTTP_FrameType]]) –
Schemaclass for the frame. It should be a subclass ofpcapkit.protocols.schema.application.httpv2.FrameType.
- Return type:
None
Miscellaneous Protocol Registries¶
- pcapkit.foundation.registry.protocols.register_pcapng_block(code, meth, *, schema=None)[source]¶
Registered a block parser.
The function will register the given block parser to the
pcapkit.protocols.misc.pcapng.PCAPNG.__block__registry.- Parameters:
code (PCAPNG_BlockType) –
HTTP/2block type code as inBlockType.meth (str | tuple[PCAPNG_BlockParser, PCAPNG_BlockConstructor]) – Method name or callable to parse and/or construct the block.
schema (Optional[Type[Schema_PCAPNG_BlockType]]) –
Schemaclass for the block. It should be a subclass ofpcapkit.protocols.schema.misc.pcapng.BlockType.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_pcapng_option(code, meth, *, schema=None)[source]¶
Registered a option parser.
The function will register the given option parser to the
pcapkit.protocols.misc.pcapng.PCAPNG.__option__registry.- Parameters:
code (PCAPNG_OptionType) –
PCAPNGoption type code as inOptionType.meth (str | tuple[PCAPNG_OptionParser, PCAPNG_OptionConstructor]) – Method name or callable to parse and/or construct the option.
schema (Optional[Type[Schema_PCAPNG_Option]]) –
Schemaclass for the option. It should be a subclass ofpcapkit.protocols.schema.misc.pcapng.Option.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_pcapng_record(code, meth, *, schema=None)[source]¶
Registered a name resolution record parser.
The function will register the given name resolution record parser to the
pcapkit.protocols.misc.pcapng.PCAPNG.__record__registry.- Parameters:
code (PCAPNG_RecordType) –
PCAPNGname resolution record type code as inRecordType.meth (str | tuple[PCAPNG_RecordParser, PCAPNG_RecordConstructor]) – Method name or callable to parse and/or construct the name resolution record.
schema (Optional[Type[Schema_PCAPNG_NameResolutionRecord]]) –
Schemaclass for the name resolution record. It should be a subclass ofpcapkit.protocols.schema.misc.pcapng.NameResolutionRecord.
- Return type:
None
- pcapkit.foundation.registry.protocols.register_pcapng_secrets(code, meth, *, schema=None)[source]¶
Registered a decryption secrets parser.
The function will register the given decryption secrets parser to the
pcapkit.protocols.misc.pcapng.PCAPNG.__secrets__registry.- Parameters:
code (PCAPNG_SecretsType) –
PCAPNGdecryption secrets type code as inSecretsType.meth (str | tuple[PCAPNG_SecretsParser, PCAPNG_SecretsConstructor]) – Method name or callable to parse and/or construct the decryption secrets.
schema (Optional[Type[Schema_PCAPNG_DSBSecrets]]) –
Schemaclass for the decryption secrets. It should be a subclass ofpcapkit.protocols.schema.misc.pcapng.DSBSecrets.
- Return type:
None