|
Server : Apache System : Linux ecngx264.inmotionhosting.com 4.18.0-553.77.1.lve.el8.x86_64 #1 SMP Wed Oct 8 14:21:00 UTC 2025 x86_64 User : lonias5 ( 3576) PHP Version : 7.3.33 Disable Function : NONE Directory : /proc/self/root/proc/thread-self/root/opt/saltstack/salt/extras-3.10/pyroute2/ |
Upload File : |
import struct
import sys
##
#
# Logging setup
#
# See the history:
# * https://github.com/svinota/pyroute2/issues/246
# * https://github.com/svinota/pyroute2/issues/255
# * https://github.com/svinota/pyroute2/issues/270
# * https://github.com/svinota/pyroute2/issues/573
# * https://github.com/svinota/pyroute2/issues/601
#
from pyroute2.config import log
##
#
# Windows platform specific: socket module monkey patching
#
# To use the library on Windows, run::
# pip install win-inet-pton
#
if sys.platform.startswith('win'): # noqa: E402
import win_inet_pton # noqa: F401
def init():
try:
# probe, if the bytearray can be used in struct.unpack_from()
struct.unpack_from('I', bytearray((1, 0, 0, 0)), 0)
except Exception:
if sys.version_info[0] < 3:
# monkeypatch for old Python versions
log.warning('patching struct.unpack_from()')
def wrapped(fmt, buf, offset=0):
return struct._u_f_orig(fmt, str(buf), offset)
struct._u_f_orig = struct.unpack_from
struct.unpack_from = wrapped
else:
raise