a
    kÄ#d  ã                   @   sÀ   d dl mZmZ d dlmZmZmZmZmZm	Z	 d dl
mZmZ d dlmZ G dd„ dƒZdddd	d
œZG dd„ deƒZG dd„ deƒZeeedd� eeedd� eeedd� eeeƒ dS )é    )ÚPacketÚbind_layers)ÚBitEnumFieldÚBitFieldÚBitFieldLenFieldÚ	ByteFieldÚ
ShortFieldÚStrLenField)ÚIPÚUDP)ÚIPv6c                   @   s    e Zd ZdZdZdZdZdZdS )Ú
BIERLengthr   é   é   é   é   N)Ú__name__Ú
__module__Ú__qualname__ZBIER_LEN_64ZBIER_LEN_128ÚBIER_LEN_256ZBIER_LEN_512ZBIER_LEN_1024© r   r   úI/var/www/html/gsl.tools/lib/python3.9/site-packages/scapy/contrib/bier.pyr      s
   r   ZMPLSZIPv4r   )r   r   r   é   c                   @   sP   e Zd Zd Zedejdƒedddƒedddƒedddƒed	d
d
ƒeddƒgZdS )ÚBIFTZbslr   Úsdr   é   ÚsetÚcosr   Úsr   ÚttlN)	r   r   r   Únamer   r   r   r   Úfields_descr   r   r   r   r      s   



ûr   c                   @   sˆ   e Zd Zd Zedddƒedddƒedejddd„ d	�ed
ddƒedddƒedddƒedddƒeddde	ƒe
ddƒedddd„ d�g
ZdS )ÚBIERÚidr   r   Úversionr   Úlengthc                 C   s
   | j d? S ©Nr   )Ú	BitString©Úxr   r   r   Ú<lambda>,   ó    zBIER.<lambda>)Z	length_ofZentropyé   ZOAMr   ZRSVZDSCPé   ÚProtoZBFRIDr'   Ú c                 C   s
   d| j > S r&   )r%   r(   r   r   r   r*   5   r+   )Zlength_fromN)r   r   r   r    r   r   r   r   r   Ú	BIERnhclsr   r	   r!   r   r   r   r   r"   '   s"   


ÿ



þör"   r   )r.   r   iÊ  )ÚdportN)Zscapy.packetr   r   Zscapy.fieldsr   r   r   r   r   r	   Zscapy.layers.inetr
   r   Zscapy.layers.inet6r   r   r0   r   r"   r   r   r   r   Ú<module>   s    ý
