File: //proc/self/root/lib/python3/dist-packages/twisted/pair/__pycache__/tuntap.cpython-38.pyc
U
��W[�0 � @ s� d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z m
Z
ddlmZm
Z
mZ ddlmZmZ ddlmZ ddlmZ dd lmZ dd
lmZ ddlmZmZmZmZmZ ddl m!Z!m"Z" d
ddgZ#dZ$dZ%dZ&dZ'G dd
� d
e �Z(eej)�G dd� deee*��Z+G dd� dedd��Z,G dd� de
�Z-G dd� de*�Z.eej/�G dd� dej0��Z1eedddd�e1j2�e1j3�e1_3dS ) zc
Support for Linux ethernet and IP tunnel devices.
@see: U{https://en.wikipedia.org/wiki/TUN/TAP}
� N)�
namedtuple)�Flags�FlagConstant)� Attribute� Interface�implementer)�FancyEqMixin�
FancyStrMixin)�Version)�fullyQualifiedName)�
deprecated)�log)�abstract�error�task�
interfaces�defer)�ethernet�raw�TunnelFlags�
TunnelAddress�
TuntapPort� i�T@l �T s /dev/net/tunc @ sp e Zd ZdZed�Zed�Zed�Zed�Zed�Z ed�Z
ed�Zed �Zed
�Z
ed�Zed�Zed
�ZdS )r a~
L{TunnelFlags} defines more flags which are used to configure the behavior
of a tunnel device.
@cvar IFF_TUN: This indicates a I{tun}-type device. This type of tunnel
carries IP datagrams. This flag is mutually exclusive with C{IFF_TAP}.
@cvar IFF_TAP: This indicates a I{tap}-type device. This type of tunnel
carries ethernet frames. This flag is mutually exclusive with C{IFF_TUN}.
@cvar IFF_NO_PI: This indicates the I{protocol information} header will
B{not} be included in data read from the tunnel.
@see: U{https://www.kernel.org/doc/Documentation/networking/tuntap.txt}
� � r � �@ � � i i � i @ i � N)�__name__�
__module__�__qualname__�__doc__r �IFF_TUN�IFF_TAPZ
TUN_FASYNCZTUN_NOCHECKSUMZ TUN_NO_PIZ
TUN_ONE_QUEUEZTUN_PERSISTZTUN_VNET_HDR� IFF_NO_PIZ
IFF_ONE_QUEUEZIFF_VNET_HDRZIFF_TUN_EXCL� r'