X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=gui%2Ftinc-gui;h=75afd294a5f6f6db3d10c31b9515a864c1c8d4a5;hb=e717e424c22233aa728b75c4c8bb047e13b0107a;hp=64b738ebaee196076f3dea2a3633b7417fb176f1;hpb=ab583f7e8c550822c63a1a6b73a7a329f622d9e0;p=tinc diff --git a/gui/tinc-gui b/gui/tinc-gui index 64b738eb..75afd294 100755 --- a/gui/tinc-gui +++ b/gui/tinc-gui @@ -130,7 +130,11 @@ class VPN: else: # otherwise connect via TCP print(unixfile + " does not exist."); - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + if ':' in info[2]: + af = socket.AF_INET6 + else: + af = socket.AF_INET + s = socket.socket(af, socket.SOCK_STREAM) s.connect((info[2], int(info[4]))) self.sf = s.makefile() @@ -234,9 +238,15 @@ class VPN: def __init__(self, netname = None, pidfile = None): if platform.system() == 'Windows': + sam = _winreg.KEY_READ + if platform.machine().endswith('64'): + sam = sam | _winreg.KEY_WOW64_64KEY try: reg = _winreg.ConnectRegistry(None, _winreg.HKEY_LOCAL_MACHINE) - key = _winreg.OpenKey(reg, "SOFTWARE\\tinc") + try: + key = _winreg.OpenKey(reg, "SOFTWARE\\tinc", 0, sam) + except WindowsError: + key = _winreg.OpenKey(reg, "SOFTWARE\\Wow6432Node\\tinc", 0, sam) VPN.confdir = _winreg.QueryValue(key, None) except WindowsError: pass