in reply to Object is to be passed between different version of scripts

I see an XY problem here. You might be able to get perl 5.6 to speak TLS1.2 by upgrading Net::SSLeay with a new version linked against a current OpenSSL. That would certainly be easier than trying to mix interpreter versions.

Replies are listed 'Best First'.
Re^2: Object is to be passed between different version of scripts
by Fletch (Bishop) on Apr 11, 2020 at 03:09 UTC
Re^2: Object is to be passed between different version of scripts
by maria80e (Novice) on Apr 11, 2020 at 03:25 UTC
    Just upgrading Net::SSLeay is enough or code change required? Is there any procedure to upgrade Net::SSLeay? detail explaination required to proceed futher.

      You say you are using Perl 5.6, Net::SSLeay requires v5.8.1 as of v1.86_05, but supports TLS v1.2 as of release 1.59. Without knowing why you are stuck with a 20 year old perl calling a much more modern perl it's hard to understand why you simply just don't do everything with the modern version.

      Procedure to upgrade Net::SSLeay:

      1. Find versions of Net::SSLeay and OpenSSL that support perl-5.6 and TLS1.2 and each other. Use the latest version of OpenSSL that you can.
      2. Install upgraded OpenSSL where the build procedure for Net::SSLeay can find it.
      3. Unpack a new Net::SSLeay and run perl Makefile.PL && make && make test. If tests fail, try another nearby version of Net::SSLeay until you find one for which the tests pass. After your new Net::SSLeay has passed its tests, use make install to install it.
      4. Perl programs should now be able to use TLS1.2.

      Then get a migration path for moving the entire program to a modern perl interpreter planned, because there is probably no combination of Net::SSLeay and OpenSSL that provides TLS1.3 support in a perl-5.6 installation.