Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib64/python3.7/site-packages/twisted/pair/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/site-packages/twisted/pair/__pycache__/rawudp.cpython-37.pyc

B

:��]�@s^dZddlZddlmZddlmZddlmZGdd�d�Zeej	�Gdd	�d	ej
��ZdS)
z1
Implementation of raw packet interfaces for UDP
�N)�protocol)�raw)�implementerc@seZdZdd�ZdS)�	UDPHeadercCs(t�d|dd��\|_|_|_|_dS)Nz!HHHH�)�struct�unpack�source�dest�len�check)�self�data�r�F/opt/alt/python37/lib64/python3.7/site-packages/twisted/pair/rawudp.py�__init__szUDPHeader.__init__N)�__name__�
__module__�__qualname__rrrrrrsrc@s$eZdZdd�Zdd�Zdd�ZdS)�RawUDPProtocolcCs
i|_dS)N)�	udpProtos)r
rrrrszRawUDPProtocol.__init__cCs\t|tj�std��|dkr$td��|dkr4td��||jkrHg|j|<|j|�|�dS)Nz6Added protocol must be an instance of DatagramProtocolrz'Added protocol must be positive or zeroiz"Added protocol must fit in 16 bits)�
isinstancerZDatagramProtocol�	TypeErrorr�append)r
�num�protorrr�addProtos

zRawUDPProtocol.addProtocCs@t|�}x2|j�|jd�D]}|�|dd�||jf�qWdS)Nrr)rr�getr
�datagramReceivedr	)r
r�partialr	r
r�versionZihlZtosZtot_lenZfragment_idZfragment_offsetZ
dont_fragmentZmore_fragmentsZttl�headerrrrrr)szRawUDPProtocol.datagramReceivedN)rrrrrrrrrrrsr)�__doc__rZtwisted.internetrZtwisted.pairrZzope.interfacerrZIRawDatagramProtocolZAbstractDatagramProtocolrrrrr�<module>s