DebugClients/Python/DebugClientBase.py

changeset 6847
5150e076014b
parent 6735
31e263d49c04
child 6849
cf82e985940a
equal deleted inserted replaced
6843:5e1afd1577b9 6847:5150e076014b
17 import json 17 import json
18 import imp 18 import imp
19 import re 19 import re
20 import atexit 20 import atexit
21 import signal 21 import signal
22 import time
22 23
23 24
24 import DebugClientCapabilities 25 import DebugClientCapabilities
25 import DebugVariables 26 import DebugVariables
26 from DebugBase import setRecursionLimit, printerr # __IGNORE_WARNING__ 27 from DebugBase import setRecursionLimit, printerr # __IGNORE_WARNING__
1985 version = 'v4' 1986 version = 'v4'
1986 if version == 'v4': 1987 if version == 'v4':
1987 family = socket.AF_INET 1988 family = socket.AF_INET
1988 else: 1989 else:
1989 family = socket.AF_INET6 1990 family = socket.AF_INET6
1990 return socket.getaddrinfo(host, None, family, 1991
1991 socket.SOCK_STREAM)[0][4][0] 1992 retryCount = 0
1993 while retryCount < 10:
1994 try:
1995 addrinfo = socket.getaddrinfo(
1996 host, None, family, socket.SOCK_STREAM)
1997 return addrinfo[0][4][0]
1998 except Exception:
1999 retryCount += 1
2000 time.sleep(3)
2001 return None
1992 2002
1993 def main(self): 2003 def main(self):
1994 """ 2004 """
1995 Public method implementing the main method. 2005 Public method implementing the main method.
1996 """ 2006 """
2071 try: 2081 try:
2072 redirect = int(sys.argv[2]) 2082 redirect = int(sys.argv[2])
2073 except (ValueError, IndexError): 2083 except (ValueError, IndexError):
2074 redirect = True 2084 redirect = True
2075 2085
2076 try: 2086 ipOrHost = sys.argv[3]
2077 ipOrHost = sys.argv[3] 2087 if ':' in ipOrHost:
2078 if ':' in ipOrHost: 2088 remoteAddress = ipOrHost
2079 remoteAddress = ipOrHost 2089 elif ipOrHost[0] in '0123456789':
2080 elif ipOrHost[0] in '0123456789': 2090 remoteAddress = ipOrHost
2081 remoteAddress = ipOrHost 2091 else:
2082 else: 2092 remoteAddress = self.__resolveHost(ipOrHost)
2083 remoteAddress = self.__resolveHost(ipOrHost)
2084 except Exception:
2085 remoteAddress = None
2086 2093
2087 sys.argv = [''] 2094 sys.argv = ['']
2088 if '' not in sys.path: 2095 if '' not in sys.path:
2089 sys.path.insert(0, '') 2096 sys.path.insert(0, '')
2090 2097

eric ide

mercurial