2018-10-08 20:47:37 +02:00
|
|
|
import typing
|
|
|
|
|
|
|
|
|
|
|
|
AF_APPLETALK = 5
|
|
|
|
AF_ASH = 18
|
|
|
|
AF_ATMPVC = 8
|
|
|
|
AF_ATMSVC = 20
|
|
|
|
AF_AX25 = 3
|
|
|
|
AF_BLUETOOTH = 31
|
|
|
|
AF_BRIDGE = 7
|
|
|
|
AF_DECnet = 12
|
|
|
|
AF_ECONET = 19
|
|
|
|
AF_FILE = 1
|
|
|
|
AF_INET = 2
|
|
|
|
AF_INET6 = 10
|
|
|
|
AF_IPX = 4
|
|
|
|
AF_IRDA = 23
|
|
|
|
AF_ISDN = 34
|
|
|
|
AF_KEY = 15
|
|
|
|
AF_LINK = 17
|
|
|
|
AF_NETBEUI = 13
|
|
|
|
AF_NETLINK = 16
|
|
|
|
AF_NETROM = 6
|
|
|
|
AF_PACKET = 17
|
|
|
|
AF_PPPOX = 24
|
|
|
|
AF_ROSE = 11
|
|
|
|
AF_ROUTE = 16
|
|
|
|
AF_SECURITY = 14
|
|
|
|
AF_SNA = 22
|
|
|
|
AF_UNIX = 1
|
|
|
|
AF_UNSPEC = 0
|
|
|
|
AF_WANPIPE = 25
|
|
|
|
AF_X25 = 9
|
|
|
|
|
|
|
|
version = '0.10.7'
|
|
|
|
|
|
|
|
|
|
|
|
# functions
|
2019-05-22 00:17:17 +02:00
|
|
|
def gateways(*args, **kwargs) -> typing.Dict[typing.Union[str, int],
|
|
|
|
typing.Union[typing.Dict[int, typing.Tuple[str, str]],
|
|
|
|
typing.List[typing.Tuple[str, str, bool]]]]:
|
2018-10-08 20:47:37 +02:00
|
|
|
"""
|
|
|
|
Obtain a list of the gateways on this machine.
|
|
|
|
|
|
|
|
Returns a dict whose keys are equal to the address family constants,
|
|
|
|
e.g. netifaces.AF_INET, and whose values are a list of tuples of the
|
|
|
|
format (<address>, <interface>, <is_default>).
|
|
|
|
|
|
|
|
There is also a special entry with the key 'default', which you can use
|
|
|
|
to quickly obtain the default gateway for a particular address family.
|
|
|
|
|
|
|
|
There may in general be multiple gateways; different address
|
|
|
|
families may have different gateway settings (e.g. AF_INET vs AF_INET6)
|
|
|
|
and on some systems it's also possible to have interface-specific
|
|
|
|
default gateways.
|
|
|
|
"""
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
2019-05-22 00:17:17 +02:00
|
|
|
def ifaddresses(*args, **kwargs) -> typing.Dict[int, typing.List[typing.Dict[str, str]]]:
|
2018-10-08 20:47:37 +02:00
|
|
|
"""
|
|
|
|
Obtain information about the specified network interface.
|
|
|
|
|
|
|
|
Returns a dict whose keys are equal to the address family constants,
|
|
|
|
e.g. netifaces.AF_INET, and whose values are a list of addresses in
|
|
|
|
that family that are attached to the network interface.
|
|
|
|
"""
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
2019-05-22 00:17:17 +02:00
|
|
|
def interfaces(*args, **kwargs) -> typing.List[str]:
|
2018-10-08 20:47:37 +02:00
|
|
|
""" Obtain a list of the interfaces available on this machine. """
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
# no classes
|
|
|
|
# variables with complex values
|
|
|
|
|
|
|
|
address_families = {
|
|
|
|
0: 'AF_UNSPEC',
|
|
|
|
1: 'AF_FILE',
|
|
|
|
2: 'AF_INET',
|
|
|
|
3: 'AF_AX25',
|
|
|
|
4: 'AF_IPX',
|
|
|
|
5: 'AF_APPLETALK',
|
|
|
|
6: 'AF_NETROM',
|
|
|
|
7: 'AF_BRIDGE',
|
|
|
|
8: 'AF_ATMPVC',
|
|
|
|
9: 'AF_X25',
|
|
|
|
10: 'AF_INET6',
|
|
|
|
11: 'AF_ROSE',
|
|
|
|
12: 'AF_DECnet',
|
|
|
|
13: 'AF_NETBEUI',
|
|
|
|
14: 'AF_SECURITY',
|
|
|
|
15: 'AF_KEY',
|
|
|
|
16: 'AF_NETLINK',
|
|
|
|
17: 'AF_PACKET',
|
|
|
|
18: 'AF_ASH',
|
|
|
|
19: 'AF_ECONET',
|
|
|
|
20: 'AF_ATMSVC',
|
|
|
|
22: 'AF_SNA',
|
|
|
|
23: 'AF_IRDA',
|
|
|
|
24: 'AF_PPPOX',
|
|
|
|
25: 'AF_WANPIPE',
|
|
|
|
31: 'AF_BLUETOOTH',
|
|
|
|
34: 'AF_ISDN',
|
|
|
|
}
|
|
|
|
|
|
|
|
__loader__ = None # (!) real value is ''
|
|
|
|
|
|
|
|
__spec__ = None # (!) real value is ''
|
|
|
|
|