Repository URL to install this package:
|
Version:
1.0.9-1 ▾
|
wlanpi-profiler
/
opt
/
wlanpi-profiler
/
lib
/
python3.7
/
site-packages
/
scapy
/
__pycache__
/
route6.cpython-37.pyc
|
|---|
B
±á\©Ø@Lã @ sâ d Z ddlmZ ddlZddlmZ ddlmZmZ ddl m
Z
mZmZm
Z
mZmZmZmZmZmZmZ ddlmZmZ ddlmZmZ dd lmZmZ dd
lmZ ddl m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' G dd
d
Z(e( e_)dS )z2
Routing and network interface handling for IPv6.
é )Úabsolute_importN)Úconf)Ú
resolve_ifaceÚNetworkInterface)Úin6_ptopÚ
in6_cidr2maskÚin6_andÚin6_islladdrÚ
in6_ismlladdrÚin6_isincludedÚin6_isgladdrÚin6_isaddr6to4Úin6_ismaddrÚconstruct_source_candidate_setÚ"get_source_addr_from_candidate_set)Úread_routes6Ú
in6_getifaddr)Ú inet_ptonÚ inet_ntop)ÚwarningÚlog_loading)Úpretty_list)ÚAnyÚDictÚListÚOptionalÚSetÚTupleÚUnionc @ s e Zd Zdd Zdd Zdd Zdd Zd d
Zddd
Zdd Z dd Z
dddZdd Zdd Z
dd ZddejfddZdS )ÚRoute6c C s | ¡ | ¡ d S )N)ÚresyncÚinvalidate_cache)Úself© r# ú/build/wlanpi-profiler-8o1rr4/wlanpi-profiler-1.0.9/debian/wlanpi-profiler/opt/wlanpi-profiler/lib/python3.7/site-packages/scapy/route6.pyÚ__init__+ s zRoute6.__init__c C s
i | _ d S )N)Úcache)r" r# r# r$ r! 0 s zRoute6.invalidate_cachec C s | ¡ t | _g | _d S )N)r! ÚsetÚipv6_ifacesÚroutes)r" r# r# r$ Úflush4 s zRoute6.flushc C sP | ¡ t | _t | _x| jD ]}| j |d ¡ q W | jg krLt d¡ d S )Né zNo IPv6 support in kernel)r! r r) r' r( Úaddr Úinfo)r" Úrouter# r# r$ r : s
z
Route6.resyncc C sZ g }xD| j D ]:\}}}}}}t|j}| d||f |||t|f¡ qW t|dgddS )Nz%s/%i)ZDestinationzNext HopZIfacezSrc candidatesZMetricé )ZsortBy)r) r ÚdescriptionÚappendÚstrr ) r" ZrtlstÚnetZmskÚgwÚifaceÚcsetÚmetricZif_reprr# r# r$ Ú__repr__F s
zRoute6.__repr__Nc s | d¡dg dd
\}}t|}|dkr0d} dkrP| |¡\ }}|g} n$t }
fdd|
D }t|||} | j ¡ ||| | dfS ) z?Internal function : create a route for 'dst' via 'gw'.
ú/Ú128Né z::c 3 s | ]}|d kr|V qdS )r; Nr# )Ú.0Úx)Údevr# r$ ú <genexpr>k s z$Route6.make_route.<locals>.<genexpr>r/ )ÚsplitÚintr. r r r( r, )r" Údstr4 r>