a
    kÄ#dˆ  ã                   @   s°   d dl mZmZmZ d dlmZmZmZmZm	Z	m
Z
mZmZmZ d dlm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d� eeeƒ eeeƒ dS )é    )ÚPacketÚbind_layersÚbind_bottom_up)	ÚByteEnumFieldÚ	ByteFieldÚFieldLenFieldÚIPFieldÚIntEnumFieldÚIntFieldÚMACFieldÚMultipleTypeFieldÚStrLenField)ÚUDPc                
   @   s\   e Zd Zd Zeddƒedddddddœƒed	d
dddddœƒedddddœƒedd
ƒgZdS )ÚVQPÚconsté   ÚtypeZrequestPortZresponseVLANZrequestReconfirmZresponseReconfirm)r   é   é   é   Zerrorcodeactionr   ÚnoneZaccessDeniedZshutdownPortZwrongDomain)r   r   r   é   Úunknownr   ZinGoodResponseZ
inRequests)r   é   ÚseqN)Ú__name__Ú
__module__Ú__qualname__Únamer   r   r
   Úfields_desc© r    r    úH/var/www/html/gsl.tools/lib/python3.9/site-packages/scapy/contrib/vqp.pyr      s   þþÿór   c                   @   st   e Zd Zd Zeddddddddd	d
dœƒeddddd�eeddƒdd„ feddƒdd„ fge	dddd„ d�ƒgZ
dS )ÚVQPEntryÚdatatyper   ZclientIPAddressZportNameZVLANNameÚDomainZethernetPacketZReqMACAddressr   ZResMACAddress)é  i  i  i  i  é  i  é  ÚlenNÚdataÚH)Z	length_ofÚfmtz0.0.0.0c                 C   s
   | j dkS )Nr%   ©r#   ©Úpr    r    r!   Ú<lambda>7   ó    zVQPEntry.<lambda>z00:00:00:00:00:00c                 C   s
   | j dv S )N)r&   r'   r,   r-   r    r    r!   r/   9   r0   c                 C   s   | j S )N)r(   r-   r    r    r!   r/   ;   r0   )Zlength_from)r   r   r   r   r	   r   r   r   r   r   r   r    r    r    r!   r"   *   s&   üÿÿýùør"   i5  )Úsport)Údport)r1   r2   N)Zscapy.packetr   r   r   Zscapy.fieldsr   r   r   r   r	   r
   r   r   r   Zscapy.layers.inetr   r   r"   r    r    r    r!   Ú<module>   s   ,
