summaryrefslogtreecommitdiff
path: root/pysnmp/carrier/sockfix.py
blob: 02480bb24897ff04071456b46d8b744248baf4e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#
# This file is part of pysnmp software.
#
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
import socket

from pysnmp import debug


SYMBOLS = {
    'IP_PKTINFO': 8,
    'IP_TRANSPARENT': 19,
    'SOL_IPV6': 41,
    'IPV6_RECVPKTINFO': 49,
    'IPV6_PKTINFO': 50
}

for symbol, value in SYMBOLS.items():
    if not hasattr(socket, symbol):
        setattr(socket, symbol, value)

        debug.logger & debug.flagIO and debug.logger(
            'WARNING: the socket module on this platform misses option %s. '
            'Assuming its value is %d.' % (symbol, value)
        )