[openssl-dev] [openssl.org #3605] bug report: compilation error and fix for OpenSSL on Cygwin64

Francis ANDRE via RT rt at openssl.org
Sat Dec 6 12:24:16 EST 2014


Hi Corinna

See my comments thru the mail.


Le 06/12/2014 13:53, Corinna Vinschen via RT a écrit :
> On Dec  5 18:06, Andy Polyakov via RT wrote:
>>> OpenSSL is currently not supported under Cygwin64.
>> Support for Cygwin64 will appear in 1.0.2, so that I'd like to hear a
>> little bit more about what kind of problem does it cause. The Cygwin64
>> support was submitted by Cygwin maintainer, and no additional issues
>> were reported.
> So far we didn't encounter any issues, but the OP is right.  The
> __CYGWIN32__ definition is very old and was already deprecated in the
> late 1990's in favor of __CYGWIN__.  As long as there was only a 32 bit
> Cygwin anyway, that was no problem, but it's now.
>
> I inspected the remaining two places where __CYGWIN32__ is used, and
> both shouldn't result in problems:
>
> e_os2.h:
>
>    # if defined(__CYGWIN32__) || defined(OPENSSL_SYSNAME_CYGWIN32)
>
> OPENSSL_SYSNAME_CYGWIN32 is set anyway, so the additional check for
> __CYGWIN32__ is redundant.
Not exactly true. In the package OpenSSL_Win32 delivered by 
http://slproweb.com/products/Win32OpenSSL.html, the 
OPENSSL_SYSNAME_CYGWIN32 is never defined, thus the conditional 
expression of the #if statement is alxays false which leads to the 
compile error.
>
> crypto/des/read_pwd.c:
>
>    #if defined(OPENSSL_SYS_MSDOS) && !defined(__CYGWIN32__) && !defined(OPENSSL_SYS_WINCE)
>
> OPENSSL_SYS_MSDOS is never set for Cygwin, so the test for !__CYGWIN32__
> is redundant as well.
>
> I suggest to remove both.  Along the same lines, I'd like to suggest to
> replace OPENSSL_SYSNAME_CYGWIN32 with OPENSSL_SYSNAME_CYGWIN, and to get
> rid of old, unused Cygwin targets in Configure.
>
> Patch attached.
>
> I'm just not sure about "debug-ulf".  If that's not required anymore, it
> should be removed, but that's not part of my patch.
>
> As a sidenote, the Cygwin 64 bit patch has also been backported to
> 1.0.1, and it's currently used in the official Cygwin OpenSSH package
> available as part of the Cygwin distro, see
>
>    https://cygwin.com/ml/cygwin-announce/2014-10/msg00027.html
>    https://cygwin.com/packages/x86_64/openssl/
>
>
> Corinna
>




More information about the openssl-dev mailing list