route.py (718B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\datadog\dogstatsd\route.py 2 import socket 3 import struct 4 5 class UnresolvableDefaultRoute(Exception): 6 pass 7 8 9 def get_default_route(): 10 try: 11 with open('/proc/net/route') as f: 12 for line in f.readlines(): 13 fields = line.strip().split() 14 if fields[1] == '00000000': 15 return socket.inet_ntoa(struct.pack('<L', int(fields[2], 16))) 16 17 except IOError: 18 raise NotImplementedError(u'Unable to open `/proc/net/route`. `use_default_route` option is available on Linux only.') 19 20 raise UnresolvableDefaultRoute(u"Unable to resolve the system default's route.")