HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //proc/thread-self/root/lib/python3/dist-packages/twisted/pair/__pycache__/rawudp.cpython-38.pyc
U


W[�@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�)�structZunpack�source�dest�lenZcheck)�self�data�r
�5/usr/lib/python3/dist-packages/twisted/pair/rawudp.py�__init__s�zUDPHeader.__init__N)�__name__�
__module__�__qualname__rr
r
r
rrsrc@s$eZdZdd�Zdd�Zdd�ZdS)�RawUDPProtocolcCs
i|_dS)N)�	udpProtos)rr
r
rrszRawUDPProtocol.__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)rZnum�protor
r
r�addProtos

zRawUDPProtocol.addProtocCs<t|�}|j�|jd�D]}|�|dd�||jf�qdS)Nr
r)rr�getr	�datagramReceivedr)rr�partialrr	r�versionZihlZtosZtot_lenZfragment_idZfragment_offsetZ
dont_fragmentZmore_fragmentsZttl�headerrr
r
rr)s
�zRawUDPProtocol.datagramReceivedN)rrrrrrr
r
r
rrsr)�__doc__rZtwisted.internetrZtwisted.pairrZzope.interfacerrZIRawDatagramProtocolZAbstractDatagramProtocolrr
r
r
r�<module>s