Source code for pcapkit.foundation.reassembly.ipv6

# -*- coding: utf-8 -*-
"""IPv6 Datagram Reassembly
==============================

:mod:`pcapkit.foundation.reassembly.ipv6` contains
:class:`~pcapkit.foundation.reassembly.ipv6.IPv6_Reassembly`
only, which reconstructs fragmented IPv6 packets back to
origin. Please refer to :doc:`ip` for more information.

"""
from typing import TYPE_CHECKING

from pcapkit.foundation.reassembly.ip import IP_Reassembly
from pcapkit.protocols.internet.ipv6 import IPv6

if TYPE_CHECKING:
    from ipaddress import IPv6Address
    from typing import Type

    from typing_extensions import Literal

__all__ = ['IPv6_Reassembly']


[docs]class IPv6_Reassembly(IP_Reassembly['IPv6Address']): """Reassembly for IPv6 payload. Example: >>> from pcapkit.reassembly import IPv6_Reassembly # Initialise instance: >>> ipv6_reassembly = IPv6_Reassembly() # Call reassembly: >>> ipv6_reassembly(packet_dict) # Fetch result: >>> result = ipv6_reassembly.datagram """ ########################################################################## # Properties. ########################################################################## @property def name(self) -> 'Literal["Internet Protocol version 6"]': """Protocol of current packet.""" return 'Internet Protocol version 6' @property def protocol(self) -> 'Type[IPv6]': """Protocol of current reassembly object.""" return IPv6