
    h                        d Z ddlmZmZmZmZmZmZ ddlm	Z	m
Z
mZ ddlmZmZ  G d de	          Z G d de	          Z G d	 d
e	          Z G d de	          Z eeed            eeed            e
eedd            e
eed            e
eed            e
eed            e
eed           dS )z
Mobile IP.
    )ByteEnumField	ByteFieldIPField	LongField
ShortField
XByteField)Packetbind_layersbind_bottom_up)IPUDPc                   4    e Zd ZdZ eddddd          gZdS )MobileIPzMobile IP (RFC3344)type   RRQRRP)r      N)__name__
__module____qualname__namer   fields_desc     Y/mounts/lovelace/software/anaconda3/lib/python3.11/site-packages/scapy/layers/mobileip.pyr   r      s1         D =%,@,@AABKKKr   r   c            	           e Zd ZdZ edd           edd           edd           edd           ed	d           ed
d          gZdS )MobileIPRRQz(Mobile IP Registration Request (RFC3344)flagsr   lifetime   homeaddr0.0.0.0haaddrcoaddridN)	r   r   r   r   r   r   r   r   r   r   r   r   r   r      st        5D:gq)):j#..7:y1178Y//78Y//9T1%%)KKKr   r   c                       e Zd ZdZ edd           edd           edd           edd           ed	d          gZd
S )MobileIPRRPz&Mobile IP Registration Reply (RFC3344)coder   r    r!   r"   r#   r$   r&   N)	r   r   r   r   r   r   r   r   r   r   r   r   r(   r(      se        3D9VQ'':j#..7:y1178Y//9T1%%	)KKKr   r(   c                   B    e Zd ZdZ edd           edd          gZdS )MobileIPTunnelDataz'Mobile IP Tunnel Data Message (RFC3519)nexthdr   resr   N)r   r   r   r   r   r   r   r   r   r   r+   r+   (   s8        4D9Y**:eQ'')KKKr   r+   i  )dport)sport)r0   r/   r   )r   r   r-   )r,   N)__doc__scapy.fieldsr   r   r   r   r   r   scapy.packetr	   r
   r   scapy.layers.inetr   r   r   r   r(   r+   r   r   r   <module>r5      s                   < < < < < < < < < < % % % % % % % %C C C C Cv C C C
) ) ) ) )& ) ) )) ) ) ) )& ) ) )) ) ) ) ) ) ) ) sHC ( ( ( ( sHC ( ( ( ( CC 0 0 0 0 Hk * * * * Hk * * * * H(q 1 1 1 1 A . . . . . .r   