Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 40 additions & 3 deletions docs/source/pcapkit/const/reg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,47 @@ Application Layer Protocol Numbers

.. module:: pcapkit.const.reg.apptype

This module contains the constant enumeration for **Application Layer Protocol Numbers**,
which is automatically generated from :class:`pcapkit.vendor.reg.apptype.AppType`.
This package contains the constant enumerations for **Application Layer Protocol
Numbers**, which are automatically generated from :mod:`pcapkit.vendor.reg.apptype`.
IANA keys every assignment on a ``(service, port, transport)`` triple, so the
registry is one enumeration per transport protocol sharing a memberless base.

.. autoclass:: pcapkit.const.reg.apptype.AppType
.. module:: pcapkit.const.reg.apptype.apptype

.. autoclass:: pcapkit.const.reg.apptype.apptype.TransportProtocol
:members:
:undoc-members:
:show-inheritance:

.. autoclass:: pcapkit.const.reg.apptype.apptype.AppType
:members:
:undoc-members:
:show-inheritance:

.. module:: pcapkit.const.reg.apptype.tcp

.. autoclass:: pcapkit.const.reg.apptype.tcp.TCP
:members:
:undoc-members:
:show-inheritance:

.. module:: pcapkit.const.reg.apptype.udp

.. autoclass:: pcapkit.const.reg.apptype.udp.UDP
:members:
:undoc-members:
:show-inheritance:

.. module:: pcapkit.const.reg.apptype.sctp

.. autoclass:: pcapkit.const.reg.apptype.sctp.SCTP
:members:
:undoc-members:
:show-inheritance:

.. module:: pcapkit.const.reg.apptype.dccp

.. autoclass:: pcapkit.const.reg.apptype.dccp.DCCP
:members:
:undoc-members:
:show-inheritance:
Expand Down
37 changes: 33 additions & 4 deletions docs/source/pcapkit/vendor/reg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,40 @@ Application Layer Protocol Numbers

.. module:: pcapkit.vendor.reg.apptype

This module contains the vendor crawler for **Application Layer Protocol Numbers**,
which is automatically generating :class:`pcapkit.const.reg.apptype.AppType`.
This package contains the vendor crawlers for **Application Layer Protocol
Numbers**, which are automatically generating :mod:`pcapkit.const.reg.apptype`.
IANA keys every assignment on a ``(service, port, transport)`` triple, so the
registry is one crawler per transport protocol alongside the base they all
render against.

.. autoclass:: pcapkit.vendor.reg.apptype.AppType
:members: FLAG, LINK
.. module:: pcapkit.vendor.reg.apptype.apptype

.. autoclass:: pcapkit.vendor.reg.apptype.apptype.AppType
:members: FLAG, LINK, TRANSPORT
:show-inheritance:

.. module:: pcapkit.vendor.reg.apptype.tcp

.. autoclass:: pcapkit.vendor.reg.apptype.tcp.TCP
:members: TRANSPORT
:show-inheritance:

.. module:: pcapkit.vendor.reg.apptype.udp

.. autoclass:: pcapkit.vendor.reg.apptype.udp.UDP
:members: TRANSPORT
:show-inheritance:

.. module:: pcapkit.vendor.reg.apptype.sctp

.. autoclass:: pcapkit.vendor.reg.apptype.sctp.SCTP
:members: TRANSPORT
:show-inheritance:

.. module:: pcapkit.vendor.reg.apptype.dccp

.. autoclass:: pcapkit.vendor.reg.apptype.dccp.DCCP
:members: TRANSPORT
:show-inheritance:

.. rubric:: Footnotes
Expand Down
10 changes: 9 additions & 1 deletion pcapkit/const/reg/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,17 @@
- Ethertype IEEE 802 Numbers [*]_
* - :class:`TRANSTYPE <pcapkit.const.reg.transtype.TransType>`
- Transport Layer Protocol Numbers [*]_
* - :class:`APPTYPE <pcapkit.const.reg.apptype.AppType>`
* - :class:`APPTYPE <pcapkit.const.reg.apptype.apptype.AppType>`
- Application Layer Protocol Numbers (Service Name and Transport Protocol Port Number Registry) [*]_

The application layer registry is a package rather than a single enumeration:
IANA keys every assignment on a ``(service, port, transport)`` triple, so it is
one enumeration per transport protocol -- :class:`TCP <pcapkit.const.reg.apptype.tcp.TCP>`,
:class:`UDP <pcapkit.const.reg.apptype.udp.UDP>`,
:class:`SCTP <pcapkit.const.reg.apptype.sctp.SCTP>` and
:class:`DCCP <pcapkit.const.reg.apptype.dccp.DCCP>` -- sharing the memberless
base ``APPTYPE`` they all subclass. See :mod:`pcapkit.const.reg.apptype`.

.. [*] http://www.tcpdump.org/linktypes.html
.. [*] https://www.iana.org/assignments/ieee-802-numbers/ieee-802-numbers.xhtml#ieee-802-numbers-1
.. [*] https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml#protocol-numbers-1
Expand Down
Loading
Loading