On 18/10/2014 3:07 AM, Arthur Ramsey wrote:
> Hello,
>
> I want to disable SSLv3 for a tomcat / tcnative deployment on
> Windows.  Tomcat lacks the ability to disable SSLv3 while retaining
> TLSv1.1 and TLSv1.2, so I'm attempting to disable SSLv3 at build time
> with no-ssl3.  This was successful on Linux, but not on Windows.  I
> was able to build on Windows with the following procedure.
>
> 1.
>     Install Strawbery perl
> 2.
>     Open Visual Studio x64 Cross Tools Command prompt
>     %comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio 
> 9.0\VC\vcvarsall.bat" x86_amd64
> 3.
>     Change to the directory containing openssl sources
>     cd C:\openssl-1.0.1j
> 4.
>     Configure the openssl build
>     perl Configure VC-WIN64A no-ssl2
> 5.
>     Prepare the target environment
>     ms\do_win64a
> 6.
>     Clean up previous compliation
>     nmake -f ms\nt.mak clean
> 7.
>     Build
>     nmake -f ms\nt.mak
> 8.
>     Test the build
>     nmake -f ms\nt.mak test
>
> Once I add the no-ssl3 option, compilation of the 64-bit static
> library fails with the following.
>
> Building OpenSSL
>         lib /nologo /out:out32\ssleay32.lib 
> @C:\Users\arthurr\AppData\Local\Temp\nm96B5.tmp
>         link /nologo /subsystem:console /opt:ref /debug 
> /out:out32\constant_time_test.exe 
> @C:\Users\arthurr\AppData\Local\Temp\nm96D5.tmp
> LINK : fatal error LNK1181: cannot open input file 'out32\ssleay32.lib'
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 
> 9.0\VC\BIN\x86_amd64\link.EXE"' : return code '0x49d'
> Stop.
>
> I see there was a fix for no-ssl3 in 1.0.1j, but it may still be an
> issue with Windows builds?  The error isn't descriptive, but perhaps a
> openssl-dev could try reproducing the issue.  I feel pretty confident
> this a issue with the build scripts for Windows.  I initially tried
> the openssl-users list, but didn't get any responses.

Thanks for the detailed bug report!
Applying this temporary patch to util/mk1mf.pl will resolve this issue.

Tim.

diff --git a/util/mk1mf.pl b/util/mk1mf.pl
index f0c2df0..4d2bbb2 100755
--- a/util/mk1mf.pl
+++ b/util/mk1mf.pl
@@ -671,11 +671,11 @@ foreach (values %lib_nam)
        $lib_obj=$lib_obj{$_};
        local($slib)=$shlib;

-       if (($_ eq "SSL") && $no_ssl2 && $no_ssl3)
-               {
-               $rules.="\$(O_SSL):\n\n";
-               next;
-               }
+#      if (($_ eq "SSL") && $no_ssl2 && $no_ssl3)
+#              {
+#              $rules.="\$(O_SSL):\n\n";
+#              next;
+#              }

        $defs.=&do_defs(${_}."OBJ",$lib_obj,"\$(OBJ_D)",$obj);
        $lib=($slib)?" \$(SHLIB_CFLAGS)".$shlib_ex_cflags{$_}:"
\$(LIB_CFLAGS)";



______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to