Menu

#16 SSL channel "sockxxxx": error: tlsv1 alert protocol version`

closed
None
Bug
important
non-debugger
windows
unknown
always
2019-11-10
2019-11-10
No

error message pops up:

SSL channel "sock2220": error: tlsv1 alert protocol version

Reported in the mailing list for Win10 with Scipad-8.76

Discussion

  • Francois VOGEL

    Francois VOGEL - 2019-11-10

    High-level (user) analysis:

    This error message is shown when Scipad checks on the internet whether a new version of itself is available or not (to let the user know he can upgrade his Scipad version).

    By default Scipad does this check periodically (once a week) automatically. The user can change this setting through the "Options/Scipad updates" menu. Also the user can manually request such a check through the "Help/Check fro newer Scipad versions" menu. By default the user therefore will see this error message at first Scipad startup after installation, and then once a week only.

    As a workaround, to prevent this error message from poping up just disable the feature: from the "Options / Scipad updates / Check for Scipad updates" menu, select "Never".

     
  • Francois VOGEL

    Francois VOGEL - 2019-11-10

    Developer-level analysis and fix:

    Debug notes from my analysis of the problem (this is mostly directed to myself), all with Scipad-8.76 running on Vista:

    I do not reproduce the issue when Scipad runs in standalone mode (tweaked to allow the requested check in that standalone mode) under ActiveState Tcl/Tk 8.5.16 (64bits since tcl_platform(pointerSize) is 8).

    The issue triggers with Scilab-6.0.2(64 bits) and Scilab-5.5.2(64bits). Both embed Tcl/Tk 8.5.9 (64bits).

    The line triggering the issue is the http::geturl line in proc launch_getlatestscipadversioninfofrominternet. This line is catched in the source code but this does not prevent the error because http::geturl has a -command option specifying a callback that is invoked when the HTTP transaction completes, therefore http::getur returns immediately. However, the error still happens before entering the callback proc callback_getlatestscipadversioninfofrominternet.

    Scipad-8.76 ships with tls1.6 precompiled binaries (for Win at least). These precompiled binaries are used if Scipad cannot find an already installed tls version already present on the host system.

    In Scilab-6.0.2 Scipad finds tls 1.6 64bits (therefore the version shipped wih Scipad). This tls 1.6 version triggers the error message.

    In standalone mode, Scipad finds tls 1.6.3.1 from the Tcl/Tk 8.5.16 ActiveState version installed on my system. This is all 64bits and is found because in standalone mode auto_path contains the path to the teapot repository on my PC (C:\Program Files\Tcl\lib\teapot\package\win32-x86_64\lib, with tls1.6.3.1 present in there). So in standalone mode Scipad does not use the 1.6 version provided with Scipad, and this is why it works in standalone mode: 1.6.3.1 does not trigger the error message we're after.

    Conclusion: upgrading the tls version provided with Scipad should fix the issue, as long as the 'package require' requires at least 1.6.3.1 (currently 'package require tls' does not specify any version in the Scipad source code).

    I have found tls 1.6.7.1 precompiled binaries for all the major platforms in the ActiveState teapot repository:
    http://teapot.activestate.com/entity/name/tls/index

    Using these versions works: there is no error message any more. I will from now on be shipping this with Scipad, and require 1.6.3.1 at least (no need to require 1.6.7.1 since 1.6.3.1 already prevents the error message from happening).

    Last note: I have found even more recent (1.7) precompiled tls binaries at https://sourceforge.net/projects/irrational-numbers/files/
    From there I have downloaded tls-multiplatform-1.7.16.0.2.zip. This works with Scipad when running in standalone mode but loading of the dll fails (load command in the pkgIndex.tcl script) when attempted from Scipad running in Scilab-6.0.2. No idea why but since the issue is fixed by tls 1.6.3.2 I will ship this from now on with Scipad and won't dig any further.

     
  • Francois VOGEL

    Francois VOGEL - 2019-11-10

    Revision 795 of Scipad fixes this problem.

     
  • Francois VOGEL

    Francois VOGEL - 2019-11-10
    • status: open --> closed
     

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.