From: Daniel Lenski Date: Thu, 2 Apr 2020 04:46:42 +0000 (-0700) Subject: recent tncc.jar looks for files in ~/.pulse_secure rather than ~/.juniper_networks X-Git-Tag: v8.09~14^2~9 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f09cf4a8b1a65bcb9e983aa264d25979013d3f90;p=users%2Fdwmw2%2Fopenconnect.git recent tncc.jar looks for files in ~/.pulse_secure rather than ~/.juniper_networks Signed-off-by: Daniel Lenski --- diff --git a/trojans/tncc-wrapper.py b/trojans/tncc-wrapper.py index 8e5c263c..95b11885 100755 --- a/trojans/tncc-wrapper.py +++ b/trojans/tncc-wrapper.py @@ -23,6 +23,14 @@ import zipfile import urllib.request import ssl +# In order to run this, you will need to build tncc_preload.so (from +# https://github.com/russdill/ncsvc-socks-wrapper) and place it in this +# directory. +# +# Very old versions of the TNCC Java binary expect to find files in +# ~/.juniper_networks instead of ~/.pulse_secure +TNCC_DIRECTORY = "~/.pulse_secure" + ssl._create_default_https_context = ssl._create_unverified_context class Tncc: @@ -34,19 +42,19 @@ class Tncc: print('WARNING: no IcedTea Java web plugin JAR found at %s' % self.plugin_jar, file=sys.stderr) self.plugin_jar = None self.user_agent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1' - + def tncc_init(self): class_names = ('net.juniper.tnc.NARPlatform.linux.LinuxHttpNAR', 'net.juniper.tnc.HttpNAR.HttpNAR') self.class_name = None - self.tncc_jar = os.path.expanduser('~/.juniper_networks/tncc.jar') + self.tncc_jar = os.path.expanduser(os.path.join(TNCC_DIRECTORY, 'tncc.jar')) try: if zipfile.ZipFile(self.tncc_jar, 'r').testzip() is not None: raise Exception() except: print('Downloading tncc.jar...') - os.makedirs(os.path.expanduser('~/.juniper_networks'), exist_ok=True) + os.makedirs(os.path.expanduser(TNCC_DIRECTORY), exist_ok=True) urllib.request.urlretrieve('https://' + self.vpn_host + '/dana-cached/hc/tncc.jar', self.tncc_jar) @@ -62,7 +70,7 @@ class Tncc: raise Exception('Could not find class name for', self.tncc_jar) self.tncc_preload = \ - os.path.expanduser('~/.juniper_networks/tncc_preload.so') + os.path.expanduser(os.path.join(TNCC_DIRECTORY, 'tncc_preload.so')) if not os.path.isfile(self.tncc_preload): print('WARNING: no tncc_preload found at %s' % self.tncc_preload, file=sys.stderr) self.tncc_preload = None @@ -91,12 +99,12 @@ class Tncc: ], env={'LD_PRELOAD': self.tncc_preload} if self.tncc_preload else {}) - + if __name__ == "__main__": if len(sys.argv) <= 1: print("Usage: %s [vpn-host]" % sys.argv[0]) raise SystemExit(1) - + tncc = Tncc(sys.argv[1]) tncc.tncc_init() tncc.tncc_start() diff --git a/www/changelog.xml b/www/changelog.xml index 2d2dc070..7def3d43 100644 --- a/www/changelog.xml +++ b/www/changelog.xml @@ -17,6 +17,7 @@
  • OpenConnect v8.06