1059 @param redirect flag indicating redirection of stdin, stdout and stderr (boolean) |
1059 @param redirect flag indicating redirection of stdin, stdout and stderr (boolean) |
1060 """ |
1060 """ |
1061 if remoteAddress is None: # default: 127.0.0.1 |
1061 if remoteAddress is None: # default: 127.0.0.1 |
1062 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
1062 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
1063 sock.connect((DebugProtocol.DebugAddress, port)) |
1063 sock.connect((DebugProtocol.DebugAddress, port)) |
1064 elif ":" in remoteAddress: # IPv6 |
1064 else: |
1065 sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) |
1065 if "@@i" in remoteAddress: |
1066 sock.connect((remoteAddress, port)) |
1066 remoteAddress, index = remoteAddress.split("@@i") |
1067 else: # IPv4 |
1067 else: |
1068 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
1068 index = 0 |
1069 sock.connect((remoteAddress, port)) |
1069 if ":" in remoteAddress: # IPv6 |
|
1070 printerr(type(remoteAddress)) |
|
1071 printerr(type(port)) |
|
1072 sockaddr = socket.getaddrinfo( |
|
1073 remoteAddress, port, 0, 0, socket.SOL_TCP)[0][-1] |
|
1074 sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) |
|
1075 sockaddr = sockaddr[:-1] + (int(index),) |
|
1076 sock.connect(sockaddr) |
|
1077 else: # IPv4 |
|
1078 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
|
1079 sock.connect((remoteAddress, port)) |
1070 |
1080 |
1071 self.readstream = AsyncFile(sock, sys.stdin.mode, sys.stdin.name) |
1081 self.readstream = AsyncFile(sock, sys.stdin.mode, sys.stdin.name) |
1072 self.writestream = AsyncFile(sock, sys.stdout.mode, sys.stdout.name) |
1082 self.writestream = AsyncFile(sock, sys.stdout.mode, sys.stdout.name) |
1073 self.errorstream = AsyncFile(sock, sys.stderr.mode, sys.stderr.name) |
1083 self.errorstream = AsyncFile(sock, sys.stderr.mode, sys.stderr.name) |
1074 |
1084 |
1870 self.noencoding = True |
1880 self.noencoding = True |
1871 del sys.argv[1] |
1881 del sys.argv[1] |
1872 if sys.argv[1] == '': |
1882 if sys.argv[1] == '': |
1873 del sys.argv[1] |
1883 del sys.argv[1] |
1874 try: |
1884 try: |
1875 port = long(sys.argv[1]) |
1885 port = int(sys.argv[1]) |
1876 except (ValueError, IndexError): |
1886 except (ValueError, IndexError): |
1877 port = -1 |
1887 port = -1 |
1878 try: |
1888 try: |
1879 redirect = int(sys.argv[2]) |
1889 redirect = int(sys.argv[2]) |
1880 except (ValueError, IndexError): |
1890 except (ValueError, IndexError): |