# -*- coding: utf-8 -*-"""IPsec - Internet Protocol Security========================================.. module:: pcapkit.protocols.internet.ipsec:mod:`pcapkit.protocols.internet.ipsec` contains:class:`~pcapkit.protocols.internet.ipsec.IPsec`only, which is a base class for Internet ProtocolSecurity (IPsec) protocol family [*]_, eg.:class:`~pcapkit.protocols.internet.ah.AH` and:class:`~pcapkit.protocols.internet.esp.ESP` [*]_... [*] https://en.wikipedia.org/wiki/IPsec.. [*] :class:`~pcapkit.protocols.internet.esp.ESP` class is currently **NOT** implemented."""fromtypingimportTYPE_CHECKING,Genericfrompcapkit.protocols.internet.internetimportInternetfrompcapkit.protocols.protocolimport_PT,_STifTYPE_CHECKING:fromtyping_extensionsimportLiteral__all__=['IPsec']
[docs]classIPsec(Internet[_PT,_ST],Generic[_PT,_ST]):# pylint: disable=abstract-method"""Abstract base class for IPsec protocol family. - Authentication Header (:class:`~pcapkit.protocols.internet.ah.AH`) [:rfc:`4302`] - Encapsulating Security Payload (:class:`~pcapkit.protocols.internet.esp.ESP`) [:rfc:`4303`] """########################################################################### Data models.##########################################################################
[docs]@classmethoddefid(cls)->'tuple[Literal["AH"], Literal["ESP"]]':"""Index ID of the protocol. Returns: Index ID of the protocol. """return('AH','ESP')