[openssl.org #2459] ecdsa_method declaration prevents use in implementing a dynamic engine

2013-09-19 Thread Alon Bar-Lev via RT
Hi,

Any ETA for this?

Just wanted to note that finish is also required to allow cleaning up resources.

Any ETA on this? very important if we want to use ec based hardware
cryptography.

Thanks,
Alon Bar-Lev


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


[openssl.org #2459] ecdsa_method declaration prevents use in implementing a dynamic engine

2013-09-18 Thread Alon Bar-Lev via RT
Hi,

Just wanted to note that finish is also required to allow cleaning up resources.

Any ETA on this? very important if we want to use ec based hardware
cryptography.

Thanks,
Alon Bar-Lev

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


Re: [openssl.org #2282] AutoReply: [PATCH] Add PVK to usage of rsa and dsa commands

2012-03-17 Thread Alon Bar-Lev via RT
ping?
this should be trivial.


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


[openssl.org #2282] [PATCH] Add PVK to usage of rsa and dsa commands

2010-06-02 Thread Alon Bar-Lev via RT
Although I knew PVK is supported... Could not find how to use it...

Tested on snapshot of 20100602.



openssl-1.0.0-pvk-usage.patch
Description: Binary data


Re: [openssl.org #2137] [PATCH] mingw fixups

2010-01-14 Thread Alon Bar-Lev via RT
You are right.
I tried latest snapshot and it compiles OK as far as mingw 32 and 64 concerned.
Had to fix some code in apps though, this why I don't use snapshots.

You can close this.

Alon

On Wed, Jan 13, 2010 at 11:28 PM, Roumen Petrov via RT r...@openssl.org wrote:
 Hi Alon,

 Alon Bar-Lev via RT wrote:
 Hello,

 I use i686-w64-mingw32...
 We discussed this in past (I think) LEAN_AND_MEAN was added to win64
 but not win32.

 As w64 compiler much more complete and maintained I use it to compile
 win32 as-well.

 Alon.

 On Tue, Jan 12, 2010 at 11:14 PM, Roumen Petrov via RTr...@openssl.org  
 wrote:
 Alon Bar-Lev via RT wrote:

 The following is required in order to make beta4 compile using mingw (w64).

 Every time there is #includewindows.h    some symbols should be removed.
 Also, there is no need to #includewindows.h    if e_os2.h was included.
 [SNIP]

 diff -urNp openssl-1.0.0-beta4.org/e_os.h openssl-1.0.0-beta4/e_os.h
 --- openssl-1.0.0-beta4.org/e_os.h    2009-08-26 18:13:43.0 +0300
 +++ openssl-1.0.0-beta4/e_os.h        2010-01-11 17:13:08.152360026 +0200
 @@ -372,6 +372,13 @@ static unsigned int _strlen31(const char
    #    define DEFAULT_HOME  C:
    #  endif

 +#undef X509_NAME
 +#undef X509_EXTENSIONS
 +#undef X509_CERT_PAIR
 +#undef PKCS7_ISSUER_AND_SERIAL
 +#undef OCSP_REQUEST
 +#undef OCSP_RESPONSE

 Why -DWIN32_LEAN_AND_MEAN don't work in you build ?

 Roumen

 Did you upgrade ? Lets check Configure updates:
 -
 ...
 revision 1.655
 date: 2009/12/30 11:46:53;  author: appro;  state: Exp;  lines: +1 -1
 Adapt mingw config for newer mingw environment. Note modified conditional
 compilation in e_capi.c.
 PR: 2113
 
 -

 Roumen





__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


Re: [openssl.org #2137] [PATCH] mingw fixups

2010-01-13 Thread Alon Bar-Lev
Hello,

I use i686-w64-mingw32...
We discussed this in past (I think) LEAN_AND_MEAN was added to win64
but not win32.

As w64 compiler much more complete and maintained I use it to compile
win32 as-well.

Alon.

On Tue, Jan 12, 2010 at 11:14 PM, Roumen Petrov via RT r...@openssl.org wrote:
 Alon Bar-Lev via RT wrote:

 The following is required in order to make beta4 compile using mingw (w64).

 Every time there is #includewindows.h  some symbols should be removed.
 Also, there is no need to #includewindows.h  if e_os2.h was included.
 [SNIP]

 diff -urNp openssl-1.0.0-beta4.org/e_os.h openssl-1.0.0-beta4/e_os.h
 --- openssl-1.0.0-beta4.org/e_os.h    2009-08-26 18:13:43.0 +0300
 +++ openssl-1.0.0-beta4/e_os.h        2010-01-11 17:13:08.152360026 +0200
 @@ -372,6 +372,13 @@ static unsigned int _strlen31(const char
   #    define DEFAULT_HOME  C:
   #  endif

 +#undef X509_NAME
 +#undef X509_EXTENSIONS
 +#undef X509_CERT_PAIR
 +#undef PKCS7_ISSUER_AND_SERIAL
 +#undef OCSP_REQUEST
 +#undef OCSP_RESPONSE

 Why -DWIN32_LEAN_AND_MEAN don't work in you build ?

 Roumen



__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


[openssl.org #2137] [PATCH] mingw fixups

2010-01-12 Thread Alon Bar-Lev via RT

The following is required in order to make beta4 compile using mingw (w64).

Every time there is #include windows.h some symbols should be removed.
Also, there is no need to #include windows.h if e_os2.h was included.

---

diff -urNp openssl-1.0.0-beta4.org/crypto/rand/rand.h 
openssl-1.0.0-beta4/crypto/rand/rand.h
--- openssl-1.0.0-beta4.org/crypto/rand/rand.h  2008-11-12 05:58:04.0 
+0200
+++ openssl-1.0.0-beta4/crypto/rand/rand.h  2010-01-11 17:13:15.796020568 
+0200
@@ -63,10 +63,6 @@
 #include openssl/ossl_typ.h
 #include openssl/e_os2.h
 
-#if defined(OPENSSL_SYS_WINDOWS)
-#include windows.h
-#endif
-
 #ifdef  __cplusplus
 extern C {
 #endif
diff -urNp openssl-1.0.0-beta4.org/e_os.h openssl-1.0.0-beta4/e_os.h
--- openssl-1.0.0-beta4.org/e_os.h  2009-08-26 18:13:43.0 +0300
+++ openssl-1.0.0-beta4/e_os.h  2010-01-11 17:13:08.152360026 +0200
@@ -372,6 +372,13 @@ static unsigned int _strlen31(const char
 #define DEFAULT_HOME  C:
 #  endif
 
+#undef X509_NAME
+#undef X509_EXTENSIONS
+#undef X509_CERT_PAIR
+#undef PKCS7_ISSUER_AND_SERIAL
+#undef OCSP_REQUEST
+#undef OCSP_RESPONSE
+
 #else /* The non-microsoft world */
 
 #  ifdef OPENSSL_SYS_VMS

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


Re: [openssl.org #2137] [PATCH] mingw fixups

2010-01-12 Thread Alon Bar-Lev via RT
Hello,

I use i686-w64-mingw32...
We discussed this in past (I think) LEAN_AND_MEAN was added to win64
but not win32.

As w64 compiler much more complete and maintained I use it to compile
win32 as-well.

Alon.

On Tue, Jan 12, 2010 at 11:14 PM, Roumen Petrov via RT r...@openssl.org wrote:
 Alon Bar-Lev via RT wrote:

 The following is required in order to make beta4 compile using mingw (w64).

 Every time there is #includewindows.h  some symbols should be removed.
 Also, there is no need to #includewindows.h  if e_os2.h was included.
 [SNIP]

 diff -urNp openssl-1.0.0-beta4.org/e_os.h openssl-1.0.0-beta4/e_os.h
 --- openssl-1.0.0-beta4.org/e_os.h    2009-08-26 18:13:43.0 +0300
 +++ openssl-1.0.0-beta4/e_os.h        2010-01-11 17:13:08.152360026 +0200
 @@ -372,6 +372,13 @@ static unsigned int _strlen31(const char
   #    define DEFAULT_HOME  C:
   #  endif

 +#undef X509_NAME
 +#undef X509_EXTENSIONS
 +#undef X509_CERT_PAIR
 +#undef PKCS7_ISSUER_AND_SERIAL
 +#undef OCSP_REQUEST
 +#undef OCSP_RESPONSE

 Why -DWIN32_LEAN_AND_MEAN don't work in you build ?

 Roumen





__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


[openssl.org #2125] [PATCH] Fixup compilation for gcc-aix target

2009-12-09 Thread Alon Bar-Lev via RT

sltest.c:157:1: error: _XOPEN_SOURCE redefined
In file included from 
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/include/assert.h:64,
from ssltest.c:146:
/usr/include/standards.h:114:1: error: this is the location of the previous 
definition
make: 1254-004 The error code from the last command is 1.


Stop.
make: 1254-004 The error code from the last command is 1.

diff -urNp openssl-1.0.0-beta4.org/ssl/ssltest.c 
openssl-1.0.0-beta4/ssl/ssltest.c
--- openssl-1.0.0-beta4.org/ssl/ssltest.c   2009-01-08 01:44:27.0 
+0200
+++ openssl-1.0.0-beta4/ssl/ssltest.c   2009-11-21 09:24:46.001175088 +0200
@@ -143,6 +143,9 @@
 #define _BSD_SOURCE 1  /* Or gethostname won't be declared properly
   on Linux and GNU platforms. */
 
+#define _XOPEN_SOURCE 500  /* Or isascii won't be declared properly on
+  VMS (at least with DECompHP C).  */
+
 #include assert.h
 #include errno.h
 #include limits.h
@@ -154,8 +157,6 @@
 #define USE_SOCKETS
 #include e_os.h
 
-#define _XOPEN_SOURCE 500  /* Or isascii won't be declared properly on
-  VMS (at least with DECompHP C).  */
 #include ctype.h
 
 #include openssl/bio.h

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


[PATCH] Fixup compilation for gcc-aix target

2009-11-26 Thread Alon Bar-Lev
Version 1.0.0-beta4 and latest 1.0.0.0 snapshot.
Tested to work in Linux-2.4, Linux-2.6, Solaris-8, Solaris-10, AIX-3.5


sltest.c:157:1: error: _XOPEN_SOURCE redefined
In file included from 
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/include/assert.h:64,
from ssltest.c:146:
/usr/include/standards.h:114:1: error: this is the location of the previous 
definition
make: 1254-004 The error code from the last command is 1.


Stop.
make: 1254-004 The error code from the last command is 1.


diff -urNp openssl-1.0.0-beta4.org/ssl/ssltest.c 
openssl-1.0.0-beta4/ssl/ssltest.c
--- openssl-1.0.0-beta4.org/ssl/ssltest.c   2009-01-08 01:44:27.0 
+0200
+++ openssl-1.0.0-beta4/ssl/ssltest.c   2009-11-21 09:24:46.001175088 +0200
@@ -143,6 +143,9 @@
 #define _BSD_SOURCE 1  /* Or gethostname won't be declared properly
   on Linux and GNU platforms. */
 
+#define _XOPEN_SOURCE 500  /* Or isascii won't be declared properly on
+  VMS (at least with DECompHP C).  */
+
 #include assert.h
 #include errno.h
 #include limits.h
@@ -154,8 +157,6 @@
 #define USE_SOCKETS
 #include e_os.h
 
-#define _XOPEN_SOURCE 500  /* Or isascii won't be declared properly on
-  VMS (at least with DECompHP C).  */
 #include ctype.h
 
 #include openssl/bio.h
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-12-12 Thread Alon Bar-Lev

Hello OpenSSL developers,

Please merge these patches [2], [3] from bug [1].
Current cross compile is broken as the cpp used is not cross compile one.
It causes mingw cross compile build to fail.
I will be happy to know if there is something wrong, so I be able to provider 
better solution.

Thanks,
Alon.

[1] http://rt.openssl.org/Ticket/Display.html?id=1753
[2] 
http://rt.openssl.org/Ticket/Attachment/20033/8783/openssl-001-SNAP-20081003-mingw.patch
[3] 
http://rt.openssl.org/Ticket/Attachment/20033/8782/openssl-000-msys-symlink.patch
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   majord...@openssl.org


Re: failure building native win32 with mingw

2008-12-03 Thread Alon Bar-Lev
On 12/3/08, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
  You're apparently using a relatively recent version of headers
  (particularly
  wincrypt.h, IIRC), so you get bitten by one of the conflicts mentioned
  in
  e.g.
http://rt.openssl.org/Ticket/Display.html?id=1693

HTH,
   Stefan

And this:
http://rt.openssl.org/Ticket/Display.html?id=1753

Can you please commit these patches and close this ticket?

http://rt.openssl.org/Ticket/Attachment/20033/8782/openssl-000-msys-symlink.patch
http://rt.openssl.org/Ticket/Attachment/20033/8783/openssl-001-SNAP-20081003-mingw.patch

Thanks!
Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: failure building native win32 with mingw

2008-12-03 Thread Alon Bar-Lev
BTW: 1693 can be closed.

On 12/3/08, Alon Bar-Lev [EMAIL PROTECTED] wrote:
 On 12/3/08, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
You're apparently using a relatively recent version of headers
(particularly
wincrypt.h, IIRC), so you get bitten by one of the conflicts mentioned
in
e.g.
  http://rt.openssl.org/Ticket/Display.html?id=1693
  
  HTH,
 Stefan


 And this:
  http://rt.openssl.org/Ticket/Display.html?id=1753

  Can you please commit these patches and close this ticket?

  
 http://rt.openssl.org/Ticket/Attachment/20033/8782/openssl-000-msys-symlink.patch
  
 http://rt.openssl.org/Ticket/Attachment/20033/8783/openssl-001-SNAP-20081003-mingw.patch

  Thanks!

 Alon.

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-11-28 Thread Alon Bar-Lev via RT
Please merge.

On 11/23/08, Alon Bar-Lev [EMAIL PROTECTED] wrote:
I finish the tests with native build (MSYS environment):
  
The source tree contain recent version (2008-11-23) plus patches:
  
from ticket 1747:
- openssl-cvs-mingw-capi.patch.gz
last from this ticket(1753):
- openssl-000-msys-symlink.patch
- openssl-001-SNAP-20081003-mingw.patch
  
  
The openssl head build fine but there is some warnings not related to 
 mingw
   (same reports on linux):
  
- The openssl is configured with prefix to non-existing directory:
A lot of warnings
WARNING: can't open config file: PREFIX/ssl/openssl.cnf
  
  
One of the test fail:
=
There are definitly a few expired certificates
../util/shlib_wrap.sh ../apps/openssl verify -CApath ../certs
   ../certs/*.pem
WARNING: can't open config file: /opt/test/ssl/openssl.cnf
Error opening certificate file ../certs/*.pem
=
  
  
Roumen
  


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-11-23 Thread Alon Bar-Lev
So in the mean time can the patches merged?

On 11/23/08, Roumen Petrov [EMAIL PROTECTED] wrote:
 Alon Bar-Lev wrote:

  Any luck?
 
  On 11/6/08, Roumen Petrov [EMAIL PROTECTED] wrote:
 
   Alon Bar-Lev wrote:
  
  
Roumen?
mingw64 is merged now...
Please confirm this so we have mingw working again.
This is also affect the mingw64.
   
   
[SNIP]
Cross-compilation is fine only with additional changes in rand_egd.c
   addressed in issue 1777.
  
Access to MSYS environment is still problematic.
  
Roumen
  
 

  I finish the tests with native build (MSYS environment):

  The source tree contain recent version (2008-11-23) plus patches:

  from ticket 1747:
  - openssl-cvs-mingw-capi.patch.gz
  last from this ticket(1753):
  - openssl-000-msys-symlink.patch
  - openssl-001-SNAP-20081003-mingw.patch


  The openssl head build fine but there is some warnings not related to mingw
 (same reports on linux):

  - The openssl is configured with prefix to non-existing directory:
  A lot of warnings
  WARNING: can't open config file: PREFIX/ssl/openssl.cnf


  One of the test fail:
  =
  There are definitly a few expired certificates
  ../util/shlib_wrap.sh ../apps/openssl verify -CApath ../certs
 ../certs/*.pem
  WARNING: can't open config file: /opt/test/ssl/openssl.cnf
  Error opening certificate file ../certs/*.pem
  =


  Roumen

 __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-11-22 Thread Alon Bar-Lev
Any luck?

On 11/6/08, Roumen Petrov [EMAIL PROTECTED] wrote:
 Alon Bar-Lev wrote:

  Roumen?
  mingw64 is merged now...
  Please confirm this so we have mingw working again.
  This is also affect the mingw64.
 
  [SNIP]
  Cross-compilation is fine only with additional changes in rand_egd.c
 addressed in issue 1777.

  Access to MSYS environment is still problematic.

  Roumen

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


[CVS] J-PAKE is not experimental in HEAD - broke mingw

2008-11-15 Thread Alon Bar-Lev
Hello,

I believe:
http://cvs.openssl.org/chngview?cn=17631

Broke mingw mkdef.pl although I don't fully understand why.

It tries to export the jpake functions even if the jpake is disabled by default.

To temporary solve it I use the following:
--- openssl-SNAP-20081115.org/util/mkdef.pl 2008-11-12
20:00:24.0 +0200
+++ openssl-SNAP-20081115/util/mkdef.pl 2008-11-15 09:38:43.0 +0200
@@ -313,7 +313,7 @@ $crypto.= crypto/krb5/krb5_asn.h;
 #$crypto.= crypto/store/store.h;
 $crypto.= crypto/pqueue/pqueue.h;
 $crypto.= crypto/cms/cms.h;
-$crypto.= crypto/jpake/jpake.h;
+#$crypto.= crypto/jpake/jpake.h;

 my $symhacks=crypto/symhacks.h;

Regards,
Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-11-13 Thread Alon Bar-Lev
Hello,

appro added assembly support for mingw64 at [1].

I've succeeded in compiling this with the following patch.

Thank you!
Alon.

[1] http://cvs.openssl.org/chngview?cn=17619

---

--- openssl-SNAP-20081113/Configure 2008-11-12 22:00:07.0 +0200
+++ openssl-SNAP-20081113.new/Configure 2008-11-13 17:46:39.0 +0200
@@ -492,7 +492,7 @@ my %table=(
 
 # MinGW
 mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 
-Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} 
EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL 
-DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
-mingw64, gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN 
-DUNICODE -D_UNICODE:::MINGW64:-lws2_32 -lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL 
DES_INT 
EXPORT_VAR_AS_FN:${no_asm}:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a,
+mingw64, gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN 
-DUNICODE -D_UNICODE:::MINGW64:-lws2_32 -lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL 
DES_INT 
EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a,
 
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${no_asm}:win32,
--- openssl-SNAP-20081113/crypto/bn/asm/x86_64-gcc.c2008-11-12 
11:00:09.0 +0200
+++ openssl-SNAP-20081113.new/crypto/bn/asm/x86_64-gcc.c2008-11-13 
17:54:51.0 +0200
@@ -54,7 +54,11 @@
  *machine.
  */
 
+#ifdef _WIN64
+#define BN_ULONG unsigned long long
+#else
 #define BN_ULONG unsigned long
+#endif
 
 /*
  * m(a), +m(r) is the way to favor DirectPath �-code;
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-11-05 Thread Alon Bar-Lev
Roumen?
mingw64 is merged now...
Please confirm this so we have mingw working again.
This is also affect the mingw64.

Thank you,
Alon.


On 10/23/08, Alon Bar-Lev [EMAIL PROTECTED] wrote:
 On 10/22/08, Roumen Petrov [EMAIL PROTECTED] wrote:
   Alon Bar-Lev via RT wrote:
[SNIP]
  
For some strange reason perl reports that symlinks are available
under msys, while it cannot create symbolic link when the to
is not reachable from cwd.
   
  
  
May be I can access a msys environment next week :( .
  
It is save to assume that msys don't support symbolic links.
Dunno why perl report symlink support.
MSYS don't support them, don't use even shortcuts and command ln -s
   just copy files.


 True.
  Perl actually  copies the files, but it is unable to do so if the
  source is not available from working directory. It does not try to
  resolve it from target directory.


  Alon.

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


[openssl.org #1777] [SNAPSHOT] Some size_t issues

2008-11-05 Thread Alon Bar-Lev via RT
Attached a fix.

--- openssl-SNAP-20081104/crypto/bn/bn_asm.c	2008-11-02 21:00:07.0 +0200
+++ openssl-SNAP-20081104.new/crypto/bn/bn_asm.c	2008-11-05 21:28:48.0 +0200
@@ -68,7 +68,7 @@
 
 #if defined(BN_LLONG) || defined(BN_UMULT_HIGH)
 
-BN_ULONG bn_mul_add_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w)
+BN_ULONG bn_mul_add_words(BN_ULONG *rp, const BN_ULONG *ap, size_t num, BN_ULONG w)
 	{
 	BN_ULONG c1=0;
 
@@ -94,7 +94,7 @@ BN_ULONG bn_mul_add_words(BN_ULONG *rp, 
 	return(c1);
 	} 
 
-BN_ULONG bn_mul_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w)
+BN_ULONG bn_mul_words(BN_ULONG *rp, const BN_ULONG *ap, size_t num, BN_ULONG w)
 	{
 	BN_ULONG c1=0;
 
@@ -119,7 +119,7 @@ BN_ULONG bn_mul_words(BN_ULONG *rp, cons
 	return(c1);
 	} 
 
-void bn_sqr_words(BN_ULONG *r, const BN_ULONG *a, int n)
+void bn_sqr_words(BN_ULONG *r, const BN_ULONG *a, size_t n)
 {
 	assert(n = 0);
 	if (n = 0) return;
--- openssl-SNAP-20081104/crypto/rand/rand_egd.c	2008-11-01 19:00:11.0 +0200
+++ openssl-SNAP-20081104.new/crypto/rand/rand_egd.c	2008-11-05 21:30:46.0 +0200
@@ -96,7 +96,7 @@
  */
 
 #if defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_MSDOS) || defined(OPENSSL_SYS_VXWORKS) || defined(OPENSSL_SYS_NETWARE) || defined(OPENSSL_SYS_VOS) || defined(OPENSSL_SYS_BEOS)
-int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
+int RAND_query_egd_bytes(const char *path, unsigned char *buf, size_t bytes)
 	{
 	return(-1);
 	}
@@ -105,7 +105,7 @@ int RAND_egd(const char *path)
 	return(-1);
 	}
 
-int RAND_egd_bytes(const char *path,int bytes)
+int RAND_egd_bytes(const char *path,size_t bytes)
 	{
 	return(-1);
 	}


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-11-03 Thread Alon Bar-Lev
On 11/3/08, Roumen Petrov [EMAIL PROTECTED] wrote:
  Why mingw64 ... -D_WIN32_WINNT=0x333 ?

  This has to defined by openssl headers (if not defined) to 0x400.
  HEAD version is for winsock2 and I'm not sure that winsock2 is available as
 example for ancient nt3.51. The winsock2 library is -lws2_32 .

It was in the original patch, I did not change this. 0x400 is good.

Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-11-01 Thread Alon Bar-Lev
On 11/1/08, Andy Polyakov via RT [EMAIL PROTECTED] wrote:
  Could you please test the other suggested bn_lcl.h modification? While
you're on it...
  
   I cannot actually test it... I can compile and users may test.
   I don't have a win64 machine.


 How is it tested? Implicitly by an application being inter-operable with
  another? Meaning that only only part of algorithms is tested...

I sent them the sha512t test from OpenSSL output.

 I managed to produce them myself with
  mingw-w64-bin_x86-64-linux_20080921.tar.bz2. Modified sha512.c is fine,

Great!
My environment is gcc-4.3.2, binutils-CVS-head, mingw-w64-SVN-head as
I found many issues in older releases.

  modified bn_lcl.h gives ~2x improvement. All tests pass except for the
  last Whirlpool test. It's a compiler bug, because if I drop optimization
  level to -O1 when compiling wp_block.c, the test passes.

Can you please send this hank as attachment?

 Strangely enough the code in question is not compiled in VC-* build...
  Basically there is no need for GetModuleHandle(avdapi32) and
  consequent GetProcAddress calls, because the functions in question are
  present on all WinNT *and* Win9x. On latter they do nothing, but they
  are present, so that application won't suffer from startup errors if you
  link them explicitly.

So do we need it or don't we?

Thanks!
Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-11-01 Thread Alon Bar-Lev
Great!
Can you commit the mingw64 other stuff?

On 11/1/08, Andy Polyakov via RT [EMAIL PROTECTED] wrote:
  I managed to produce them myself with
mingw-w64-bin_x86-64-linux_20080921.tar.bz2. Modified sha512.c is fine,
  
   Great!
   My environment is gcc-4.3.2, binutils-CVS-head, mingw-w64-SVN-head as


 20080921 is equipped with gcc-4.4.0 and whatever the rest it is equipped
  with.


modified bn_lcl.h gives ~2x improvement. All tests pass except for the
last Whirlpool test. It's a compiler bug, because if I drop optimization
level to -O1 when compiling wp_block.c, the test passes.
  
   Can you please send this hank as attachment?


 http://cvs.openssl.org/chngview?cn=17580.


   Strangely enough the code in question is not compiled in VC-* build...
Basically there is no need for GetModuleHandle(avdapi32) and
consequent GetProcAddress calls, because the functions in question are
present on all WinNT *and* Win9x. On latter they do nothing, but they
are present, so that application won't suffer from startup errors if you
link them explicitly.
  
   So do we need it or don't we?


 http://cvs.openssl.org/chngview?cn=17583. A.



  __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


[openssl.org #1771] CVS Head crypto/jpake/Makefile - missing install rule?

2008-10-31 Thread Alon Bar-Lev via RT
making install in crypto/jpake...
make[2]: Entering directory
`/home/alonbl/tmp/Development/opensc/build/trunk/tmp/openssl-SNAP-20081028/crypto/jpake'

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1771] CVS Head crypto/jpake/Makefile - missing install rule?

2008-10-31 Thread Alon Bar-Lev
Also string.h is missing.

On 10/31/08, Alon Bar-Lev via RT [EMAIL PROTECTED] wrote:
 making install in crypto/jpake...
  make[2]: Entering directory
  
 `/home/alonbl/tmp/Development/opensc/build/trunk/tmp/openssl-SNAP-20081028/crypto/jpake'

  __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]

--- openssl-SNAP-20081028/crypto/jpake/jpake.c	2008-10-27 15:00:14.0 +0200
+++ openssl-SNAP-20081028.mingw64/crypto/jpake/jpake.c	2008-10-30 23:23:30.0 +0200
@@ -5,6 +5,7 @@
 #include openssl/err.h
 #include memory.h
 #include assert.h
+#include string.h
 
 /*
  * In the definition, (xa, xb, xc, xd) are Alice's (x1, x2, x3, x4) or


Re: [openssl.org #1771] CVS Head crypto/jpake/Makefile - missing install rule?

2008-10-31 Thread Alon Bar-Lev via RT
On 10/31/08, Alon Bar-Lev [EMAIL PROTECTED] wrote:
 Also string.h is missing.


  On 10/31/08, Alon Bar-Lev via RT [EMAIL PROTECTED] wrote:
   making install in crypto/jpake...
make[2]: Entering directory

 `/home/alonbl/tmp/Development/opensc/build/trunk/tmp/openssl-SNAP-20081028/crypto/jpake'
  
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]
  




__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1771] CVS Head crypto/jpake/Makefile - missing install rule?

2008-10-31 Thread Alon Bar-Lev via RT
Forgot the attachment to rt.
Sorry for the noise.

On 10/31/08, Alon Bar-Lev via RT [EMAIL PROTECTED] wrote:
 On 10/31/08, Alon Bar-Lev [EMAIL PROTECTED] wrote:
   Also string.h is missing.

 
  
On 10/31/08, Alon Bar-Lev via RT [EMAIL PROTECTED] wrote:
 making install in crypto/jpake...
  make[2]: Entering directory
  
 `/home/alonbl/tmp/Development/opensc/build/trunk/tmp/openssl-SNAP-20081028/crypto/jpake'

  __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]

  
  


  __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]


--- openssl-SNAP-20081028/crypto/jpake/jpake.c	2008-10-27 15:00:14.0 +0200
+++ openssl-SNAP-20081028.mingw64/crypto/jpake/jpake.c	2008-10-30 23:23:30.0 +0200
@@ -5,6 +5,7 @@
 #include openssl/err.h
 #include memory.h
 #include assert.h
+#include string.h
 
 /*
  * In the definition, (xa, xb, xc, xd) are Alice's (x1, x2, x3, x4) or


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-10-31 Thread Alon Bar-Lev via RT
On 10/31/08, Andy Polyakov via RT [EMAIL PROTECTED] wrote:
 Could you please test the other suggested bn_lcl.h modification? While
  you're on it...

I cannot actually test it... I can compile and users may test.
I don't have a win64 machine.
And I don't know how exactly I can check for speed...
I can send you binaries to test if you like.

   I am not fully sure that the crypto/sha/sha512.c is correct, it
   simulate the behavior of win64 using Microsoft compiler, using
   _rotr64 function as ROTR.
   What you should have done instead is to modify macro in question
   declaring ret as unsigned long long. If it doesn't work, then it's more
   appropriate to leave ROTR undefined, i.e. *not* using _rotr64. Please
   verify.
  
   Thanks, I converted this to SHA_LONG64 and it now compiles.


 Can you confirm that it even passes the test? I mean mere compilation
  success doesn't qualify, it has to pass the test.

I will ask my users to run the sha512 test.


   Also. As NT is natively UNICODE, and there are no non-NT Win64
   implementations(*), there is no reason to favor legacy ANSI interfaces.
   Could you verify that it compiles and works with -DUNICODE -D_UNICODE
   added to config line?
  

  This is too much work,


 Adding couple of words to config line?

I tried to... But then got many linkage error messages of _OBJ_ something.
Strange... Now I tried it on clean tree with same snapshot and it compiles.
Except one modification I had to do, updated in the patch.

 Quoting util/VC-32.pl: As per 0.9.8 release remaining warnings were
  explicitly examined and considered safe to ignore. It naturally does
  not necessarily apply to HEAD, but there is awareness of the problem.

Well... I don't run this script :)

Attached is a new patch.

Thanks!
Alon.

diff -urNp openssl-SNAP-20081003/Configure openssl-SNAP-20081003.mingw64/Configure
--- openssl-SNAP-20081003/Configure	2008-09-16 00:00:05.0 +0300
+++ openssl-SNAP-20081003.mingw64/Configure	2008-10-20 12:37:37.0 +0200
@@ -496,6 +496,8 @@ my %table=(
 # MinGW
 mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
+mingw64, gcc:-mno-cygwin -DL_ENDIAN -DUNICODE -D_UNICODE -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -Wall -D_WIN32_WINNT=0x333:::MINGW64:-lws2_32 -lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${no_asm}:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a,
+
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32,
 
@@ -968,7 +970,7 @@ foreach (sort (keys %disabled))
 
 my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
 
-$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target eq mingw);
+$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target =~ /^mingw/);
 $exe_ext=.nlm if ($target =~ /netware/);
 $exe_ext=.pm  if ($target =~ /vos/);
 $openssldir=/usr/local/ssl if ($openssldir eq  and $prefix eq );
--- openssl-SNAP-20081003/engines/e_aep.c	2008-01-04 01:01:24.0 +0200
+++ openssl-SNAP-20081003.mingw64/engines/e_aep.c	2008-10-20 12:46:24.0 +0200
@@ -62,8 +62,10 @@
 #include unistd.h
 #else
 #include process.h
+#ifndef _PID_T_
 typedef int pid_t;
+#endif
 #endif
 
 #if defined(OPENSSL_SYS_NETWARE)  defined(NETWARE_CLIB)
 #define getpid GetThreadID
diff -urNp openssl-SNAP-20081028.org/crypto/sha/sha512.c openssl-SNAP-20081028/crypto/sha/sha512.c
--- openssl-SNAP-20081028/crypto/sha/sha512.c	2008-04-24 13:00:12.0 +0300
+++ openssl-SNAP-20081028.mingw64/crypto/sha/sha512.c	2008-10-30 22:41:20.0 +0200
@@ -350,7 +350,7 @@ static const SHA_LONG64 K512[80] = {
 #ifndef PEDANTIC
 # if defined(__GNUC__)  __GNUC__=2  !defined(OPENSSL_NO_ASM)  !defined(OPENSSL_NO_INLINE_ASM)
 #  if defined(__x86_64) || defined(__x86_64__)
-#   define ROTR(a,n)	({ unsigned long ret;		\
+#   define ROTR(a,n)	({ SHA_LONG64 ret;	\
 asm (rorq %1,%0	\
 : =r(ret)		\
 : J(n),0(a)		\
--- openssl-SNAP-20081028/apps/speed.c	2008-10-30 22:59:03.0 +0200
+++ openssl-SNAP-20081028.mingw64/apps/speed.c	2008-10-30 22:59:16.0 +0200
@@ -281,7 +281,7 @@ static double Time_F(int s)
 		if (thr==NULL)
 			{
 			DWORD ret=GetLastError();
-			BIO_printf(bio_err,unable to CreateThread (%d),ret);
+			BIO_printf(bio_err,unable to CreateThread (%ld),ret);
 			ExitProcess(ret);
 			}
 		CloseHandle(thr);		/* detach the thread	*/
--- openssl-SNAP-20081028/crypto/bio/bss_log.c	2008-10-31 14:32:17.0 +0200
+++ openssl-SNAP-20081028.mingw64/crypto/bio/bss_log.c	2008-10-31 14:24:51.0 +0200
@@ -71,6 +71,7 @@
 #if defined(OPENSSL_SYS_WINCE)
 #elif defined(OPENSSL_SYS_WIN32)
 #  include process.h
+#  include tchar.h
 #elif defined(OPENSSL_SYS_VMS)
 #  include opcdef.h
 #  include descrip.h
@@ -253,7 +252,7 @@ static void xopenlog(BIO* bp, 

Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-10-30 Thread Alon Bar-Lev via RT

Hello,

Attached is latest mingw win64 patch for OpenSSL.

It is verified to work with the OpenSC project and the OpenVPN project using 
cross compile from Linux machine using binutils CVS head, gcc-4.3.2 and 
mingw-w64 svn head.

There is no assembly support for pe64. So no assembly is available. Can someone 
estimate if it is better to use 32bit with assembly than 64bit without?

I am not fully sure that the crypto/sha/sha512.c is correct, it simulate the 
behavior of win64 using Microsoft compiler, using _rotr64 function as ROTR.

If correct, please consider to merge this so there is some solution for win64 
users and not require to keep syncing with CVS head.

I use:
./Configure --prefix=// --cross-compile-prefix=x86_64-pc-mingw32- no-zlib 
shared mingw64 no-capieng

Thank you,
Alon Bar-Lev.

diff -urNp openssl-SNAP-20081003/Configure openssl-SNAP-20081003.mingw64/Configure
--- openssl-SNAP-20081003/Configure	2008-09-16 00:00:05.0 +0300
+++ openssl-SNAP-20081003.mingw64/Configure	2008-10-20 12:37:37.0 +0200
@@ -496,6 +496,8 @@ my %table=(
 # MinGW
 mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
+mingw64, gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -Wall -D_WIN32_WINNT=0x333:::MINGW64:-lws2_32 -lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${no_asm}:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a,
+
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32,
 
@@ -968,7 +970,7 @@ foreach (sort (keys %disabled))
 
 my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
 
-$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target eq mingw);
+$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target =~ /^mingw/);
 $exe_ext=.nlm if ($target =~ /netware/);
 $exe_ext=.pm  if ($target =~ /vos/);
 $openssldir=/usr/local/ssl if ($openssldir eq  and $prefix eq );
--- openssl-SNAP-20081003/engines/e_aep.c	2008-01-04 01:01:24.0 +0200
+++ openssl-SNAP-20081003.mingw64/engines/e_aep.c	2008-10-20 12:46:24.0 +0200
@@ -62,8 +62,10 @@
 #include unistd.h
 #else
 #include process.h
+#ifndef _PID_T_
 typedef int pid_t;
+#endif
 #endif
 
 #if defined(OPENSSL_SYS_NETWARE)  defined(NETWARE_CLIB)
 #define getpid GetThreadID
--- openssl-SNAP-20081023/crypto/sha/sha512.c	2008-04-24 13:00:12.0 +0300
+++ openssl-SNAP-20081023.mingw64/crypto/sha/sha512.c	2008-10-28 00:19:56.0 +0200
@@ -350,11 +350,15 @@ static const SHA_LONG64 K512[80] = {
 #ifndef PEDANTIC
 # if defined(__GNUC__)  __GNUC__=2  !defined(OPENSSL_NO_ASM)  !defined(OPENSSL_NO_INLINE_ASM)
 #  if defined(__x86_64) || defined(__x86_64__)
-#   define ROTR(a,n)	({ unsigned long ret;		\
+#   if defined(_WIN64)
+#define ROTR(a,n)	_rotr64((a),n)	/* applies to both IA-64 and AMD64 */
+#   else
+#define ROTR(a,n)	({ unsigned long ret;		\
 asm (rorq %1,%0	\
 : =r(ret)		\
 : J(n),0(a)		\
 : cc); ret;		})
+#   endif
 #   if !defined(B_ENDIAN)
 #define PULL64(x) ({ SHA_LONG64 ret=*((const SHA_LONG64 *)((x)));	\
 asm (bswapq	%0		\


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-10-30 Thread Alon Bar-Lev via RT
On Thursday 30 October 2008, Andy Polyakov via RT wrote:
  There is no assembly support for pe64.
 
 Well, Win64 ABI is fully supported by OpenSSL x86_64 assembler modules. 
 There is no support for GNU assembler under Win64, but masm (rather 
 known as ml64) and nasm are fully supported (though there are 
 requirements for least supported versions, for nasm it's 2.03).

This would be great!

  I am not fully sure that the crypto/sha/sha512.c is correct, it
  simulate the behavior of win64 using Microsoft compiler, using
  _rotr64 function as ROTR.
 
 What you should have done instead is to modify macro in question 
 declaring ret as unsigned long long. If it doesn't work, then it's more 
 appropriate to leave ROTR undefined, i.e. *not* using _rotr64. Please 
 verify.

Thanks, I converted this to SHA_LONG64 and it now compiles.

 Also. As NT is natively UNICODE, and there are no non-NT Win64 
 implementations(*), there is no reason to favor legacy ANSI interfaces. 
 Could you verify that it compiles and works with -DUNICODE -D_UNICODE 
 added to config line? A.

This is too much work, and it is not related to mingw-win64, as this is needed
also for NT port. There is too much dependency in ANSI in current 
implementation.

I forgot to mention that the uplink was removed due to assembly issues.

There is another issue... sizeof(long)sizeof(void*) in win64... So I found 
more places
that needs some attention, the Should be fixed category probably impact more 
than
I can fix. Alignments are simple to fix, but changing the long variables that 
hold pointers
modifies interfaces. I just don't understand how using Microsoft compiler this 
code makes
sense.

Works but cast need do be fixed:
cryptlib.c:442: warning: cast from pointer to integer of different size

printf, should be converted to %p and remove cast:
asn1_lib.c:467: warning: cast from pointer to integer of different size
mem_dbg.c:699: warning: cast from pointer to integer of different size
bio_cb.c:78: warning: cast from pointer to integer of different size

Should be fixed:
mem_dbg.c:333: warning: cast from pointer to integer of different size
rc4_enc.c:123: warning: cast from pointer to integer of different size
rc4_enc.c:124: warning: cast from pointer to integer of different size
b_print.c:379: warning: cast from pointer to integer of different size
s3_pkt.c:146: warning: cast from pointer to integer of different size
s3_pkt.c:688: warning: cast from pointer to integer of different size
s3_pkt.c:701: warning: cast from pointer to integer of different size

dllimport issues, probably unrelated:
ecb_enc.c:64: warning: ‘OSSL_libdes_version’ redeclared without 
dllimport attribute: previous dllimport ignored
ecb_enc.c:65: warning: ‘OSSL_DES_version’ redeclared without dllimport 
attribute: previous dllimport ignored
s2_lib.c:124: warning: ‘ssl2_ciphers’ redeclared without dllimport 
attribute: previous dllimport ignored
s3_lib.c:170: warning: ‘ssl3_ciphers’ redeclared without dllimport 
attribute: previous dllimport ignored

If you like, I wrote a build script for the mingw-win64 toolchain and OpenSC 
components (Including OpenSSL).
It is available at [1] and [2].

Attached is a new patch.

Thank you,
Alon Bar-Lev.

[1] http://www.opensc-project.org/build/browser/trunk/mingw64
[2] http://www.opensc-project.org/build/browser/trunk

diff -urNp openssl-SNAP-20081003/Configure openssl-SNAP-20081003.mingw64/Configure
--- openssl-SNAP-20081003/Configure	2008-09-16 00:00:05.0 +0300
+++ openssl-SNAP-20081003.mingw64/Configure	2008-10-20 12:37:37.0 +0200
@@ -496,6 +496,8 @@ my %table=(
 # MinGW
 mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
+mingw64, gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -Wall -D_WIN32_WINNT=0x333:::MINGW64:-lws2_32 -lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${no_asm}:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a,
+
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32,
 
@@ -968,7 +970,7 @@ foreach (sort (keys %disabled))
 
 my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
 
-$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target eq mingw);
+$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target =~ /^mingw/);
 $exe_ext=.nlm if ($target =~ /netware/);
 $exe_ext=.pm  if ($target =~ /vos/);
 $openssldir=/usr/local/ssl if ($openssldir eq  and $prefix eq );
--- openssl-SNAP-20081003/engines/e_aep.c	2008-01-04 01:01:24.0 +0200
+++ openssl-SNAP-20081003.mingw64/engines/e_aep.c	2008-10-20 12:46:24.0 +0200
@@ -62,8 +62,10 @@
 #include unistd.h
 #else
 #include

Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-22 Thread Alon Bar-Lev via RT
Hello Roumen,

Thank you for addressing this.
I cannot reproduce the _XOPEN_SOURCE issue anymore, maybe because in
the meantime I upgraded to mingw-runtime-3.15.1.

For the WIN32_LEAN_AND_MEAN, I don't see how it is relates to winsock
issue... You could always have #include winsock.h and you do this
already at e_os.h. It cleaner as it does not include extra headers and
removes the conflicts from x509.h... But it is optional.

Waiting for 2, 3, 4... :)

Thanks,
Alon.

On 10/21/08, Roumen Petrov via RT [EMAIL PROTECTED] wrote:
 Alon Bar-Lev via RT wrote:
   Attached are patches, please address this issues, it is hard to keep sync 
 this way.
   The order of the issue is according to importance, (1, 2, 3) blockers.
   Thanks!
  
   1. _XOPEN_SOURCE cannot be used in mingw, strptime is never used anyway?
  
   2. Make domd use cross compiler if available.
  
   3. Update depend to execute update so that 
 openssl/crypto/objects/obj_xref.h
   will be generated as it is required for make depend.
  
   4. For some strange reason perl reports that symlinks are available
   under msys, while it cannot create symbolic link when the to
   is not reachable from cwd.
  
   5. Added -DWIN32_LEAN_AND_MEAN and drop the conflict undef of x509.h
  
  


 I couldn't confirm above but I build in cross-compilation environment.
  About 5) -DWIN32_LEAN_AND_MEAN it has to be default for all windows
  build except mingw32. It is related to winsock2 but mingw32 always
  include winsock2 headers. No objections this to be default for mingw
  too. May by you use mingw64  and this project use different headers in
  comparison to mingw32  project. The issue with mingw64 was already reported.

  About 1) _XOPEN_SOURCE it is not clear what is really problem. I would
  like to reject this for minw32 It definition for mingw32 project is same
  as -posix compiler flag. Please detail version of mingw runtime environment.

  About 2,3,4 - later.

  Roumen





__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-22 Thread Alon Bar-Lev via RT
I did not wish to do anything special except of fixing mingw, so I
drop the LEAN_AND_MEAN fixup.
Latest snapshot added obj_xref.h, so the depend target can stay the same.

Attached is the only fix needed for making domd use cross compiler, as
it fails because of the -mno-cygwin.
And optional fix I have in my queue for msys.

Thanks!


For some strange reason perl reports that symlinks are available
under msys, while it cannot create symbolic link when the to
is not reachable from cwd.

---

diff -urNp openssl-SNAP-20080611.org/util/mklink.pl openssl-SNAP-20080611/util/mklink.pl
--- openssl-SNAP-20080611.org/util/mklink.pl	2006-02-09 15:00:35.0 +0200
+++ openssl-SNAP-20080611/util/mklink.pl	2008-06-13 12:42:06.0 +0300
@@ -51,6 +51,7 @@ my $to = join('/', @to_path);
 
 my $file;
 $symlink_exists=eval {symlink(,); 1};
+if ($^O eq msys) { $symlink_exists=0 };
 foreach $file (@files) {
 my $err = ;
 if ($symlink_exists) {

Make domd use cross compiler if available.

---

--- openssl-SNAP-20081019/Configure	2008-10-12 17:00:05.0 +0200
+++ openssl-SNAP-20081019.old/Configure	2008-10-21 20:13:28.0 +0200
@@ -1394,12 +1394,13 @@ while (IN)
 		s/^AR=\s*/AR= \$\(CROSS_COMPILE_PREFIX\)/;
 		s/^NM=\s*/NM= \$\(CROSS_COMPILE_PREFIX\)/;
 		s/^RANLIB=\s*/RANLIB= \$\(CROSS_COMPILE_PREFIX\)/;
+		s/^MAKEDEPPROG=.*$/MAKEDEPPROG= \$\(CROSS_COMPILE_PREFIX\)$cc/ if $cc eq gcc;
 		}
 	else	{
 		s/^CC=.*$/CC= $cc/;
 		s/^RANLIB=.*/RANLIB= $ranlib/;
+		s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq gcc;
 		}
-	s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq gcc;
 	s/^CFLAG=.*$/CFLAG= $cflags/;
 	s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
 	s/^PEX_LIBS=.*$/PEX_LIBS= $prelflags/;
--- openssl-SNAP-20081019/util/domd	2008-09-09 23:00:21.0 +0300
+++ openssl-SNAP-20081019.old/util/domd	2008-10-21 20:16:57.0 +0200
@@ -14,7 +14,7 @@ if [ $MAKEDEPEND =  ]; then MAKEDEPE
 cp Makefile Makefile.save
 # fake the presence of Kerberos
 touch $TOP/krb5.h
-if [ $MAKEDEPEND = gcc ]; then
+if echo $MAKEDEPEND | grep gcc  /dev/null;  then
 args=
 while [ $# -gt 0 ]; do
 	if [ $1 != -- ]; then args=$args $1; fi
@@ -22,7 +22,7 @@ if [ $MAKEDEPEND = gcc ]; then
 done
 sed -e '/^# DO NOT DELETE.*/,$d'  Makefile  Makefile.tmp
 echo '# DO NOT DELETE THIS LINE -- make depend depends on it.'  Makefile.tmp
-gcc -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp || exit
+$MAKEDEPEND -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp || exit
 ${PERL} $TOP/util/clean-depend.pl  Makefile.tmp  Makefile.new
 rm -f Makefile.tmp
 else


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-22 Thread Alon Bar-Lev
On 10/22/08, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
 Hi,


   5. Added -DWIN32_LEAN_AND_MEAN and drop the conflict undef of x509.h


 While I don't mind having to compile the library itself with special
  flags, the above implies that every _user_ of OpenSSL who includes
  x509.h has to either use -DWIN32_LEAN_AND_MEAN as well or that he is
  going to have to add those undefs himself, so IMHO this is something
  which really should be done by openssl headers themselves, even if
  that means a bit more work and occassionally doesn't work (i.e. when
  MS adds yet another conflicting definition to their headers...).


Hi!

This is somewhat impossible... as if the user will include windows.h
before this header the conflict will arise.

I believe that documentation should state that there may be a conflict
and recommend using the WIN32_LEAN_AND_MEAN. While OpenSSL should be
compiled with WIN32_LEAN_AND_MEAN.

But let's drop it for now, I only wished to fix mingw breakage with
latest snapshots.

Thanks,
Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-22 Thread Alon Bar-Lev
On 10/22/08, Roumen Petrov [EMAIL PROTECTED] wrote:
 Alon Bar-Lev via RT wrote:
  [SNIP]

  For some strange reason perl reports that symlinks are available
  under msys, while it cannot create symbolic link when the to
  is not reachable from cwd.
 


  May be I can access a msys environment next week :( .

  It is save to assume that msys don't support symbolic links.
  Dunno why perl report symlink support.
  MSYS don't support them, don't use even shortcuts and command ln -s
 just copy files.

True.
Perl actually  copies the files, but it is unable to do so if the
source is not available from working directory. It does not try to
resolve it from target directory.

Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-21 Thread Alon Bar-Lev via RT

Attached are patches, please address this issues, it is hard to keep sync this 
way.
The order of the issue is according to importance, (1, 2, 3) blockers.
Thanks!

1. _XOPEN_SOURCE cannot be used in mingw, strptime is never used anyway?

2. Make domd use cross compiler if available.

3. Update depend to execute update so that openssl/crypto/objects/obj_xref.h
will be generated as it is required for make depend.

4. For some strange reason perl reports that symlinks are available
under msys, while it cannot create symbolic link when the to
is not reachable from cwd.

5. Added -DWIN32_LEAN_AND_MEAN and drop the conflict undef of x509.h


_XOPEN_SOURCE cannot be used in mingw, strptime is never used anyway?

Added -DWIN32_LEAN_AND_MEAN and drop the conflict undef of x509.h

Make domd use cross compiler if available.

Update depend to execute update so that openssl/crypto/objects/obj_xref.h
will be generated as it is required for make depend.

---

diff -urNp openssl-SNAP-20081003.org/ssl/kssl.c openssl-SNAP-20081003/ssl/kssl.c
--- openssl-SNAP-20081003.org/ssl/kssl.c	2007-02-10 13:00:54.0 +0200
+++ openssl-SNAP-20081003/ssl/kssl.c	2008-10-04 21:30:51.0 +0300
@@ -68,7 +68,6 @@
 
 #include openssl/opensslconf.h
 
-#define _XOPEN_SOURCE 500 /* glibc2 needs this to declare strptime() */
 #include time.h
 #if 0 /* Experimental */
 #undef _XOPEN_SOURCE /* To avoid clashes with anything else... */
--- openssl-SNAP-20081019/Configure	2008-10-12 17:00:05.0 +0200
+++ openssl-SNAP-20081019.old/Configure	2008-10-21 20:13:28.0 +0200
@@ -495,7 +495,7 @@ my %table=(
 BC-32,bcc32WIN32::BN_LLONG DES_PTR RC4_INDEX EXPORT_VAR_AS_FN:${no_asm}:win32,
 
 # MinGW
-mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
+mingw, gcc:-mno-cygwin -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32,
@@ -1394,12 +1394,13 @@ while (IN)
 		s/^AR=\s*/AR= \$\(CROSS_COMPILE_PREFIX\)/;
 		s/^NM=\s*/NM= \$\(CROSS_COMPILE_PREFIX\)/;
 		s/^RANLIB=\s*/RANLIB= \$\(CROSS_COMPILE_PREFIX\)/;
+		s/^MAKEDEPPROG=.*$/MAKEDEPPROG= \$\(CROSS_COMPILE_PREFIX\)$cc/ if $cc eq gcc;
 		}
 	else	{
 		s/^CC=.*$/CC= $cc/;
 		s/^RANLIB=.*/RANLIB= $ranlib/;
+		s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq gcc;
 		}
-	s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq gcc;
 	s/^CFLAG=.*$/CFLAG= $cflags/;
 	s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
 	s/^PEX_LIBS=.*$/PEX_LIBS= $prelflags/;
--- openssl-SNAP-20081019/util/domd	2008-09-09 23:00:21.0 +0300
+++ openssl-SNAP-20081019.old/util/domd	2008-10-21 20:16:57.0 +0200
@@ -14,7 +14,7 @@ if [ $MAKEDEPEND =  ]; then MAKEDEPE
 cp Makefile Makefile.save
 # fake the presence of Kerberos
 touch $TOP/krb5.h
-if [ $MAKEDEPEND = gcc ]; then
+if echo $MAKEDEPEND | grep gcc  /dev/null;  then
 args=
 while [ $# -gt 0 ]; do
 	if [ $1 != -- ]; then args=$args $1; fi
@@ -22,7 +22,7 @@ if [ $MAKEDEPEND = gcc ]; then
 done
 sed -e '/^# DO NOT DELETE.*/,$d'  Makefile  Makefile.tmp
 echo '# DO NOT DELETE THIS LINE -- make depend depends on it.'  Makefile.tmp
-gcc -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp || exit
+$MAKEDEPEND -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp || exit
 ${PERL} $TOP/util/clean-depend.pl  Makefile.tmp  Makefile.new
 rm -f Makefile.tmp
 else
--- openssl-SNAP-20081019.old/Makefile.org	2008-06-04 15:00:10.0 +0300
+++ openssl-SNAP-20081019/Makefile.org	2008-10-21 20:30:17.0 +0200
@@ -409,7 +409,7 @@ tests: rehash
 report:
 	@$(PERL) util/selftest.pl
 
-depend:
+depend:	update
 	@set -e; target=depend; $(RECURSIVE_BUILD_CMD)
 
 lint:
--- openssl-SNAP-20081019/crypto/x509/x509.h	2008-10-08 01:00:18.0 +0200
+++ openssl-SNAP-20081019.new/crypto/x509/x509.h	2008-10-21 20:42:20.0 +0200
@@ -112,12 +112,6 @@
 extern C {
 #endif
 
-#ifdef OPENSSL_SYS_WIN32
-/* Under Win32 these are defined in wincrypt.h */
-#undef X509_NAME
-#undef X509_CERT_PAIR
-#endif
-
 #define X509_FILETYPE_PEM	1
 #define X509_FILETYPE_ASN1	2
 #define X509_FILETYPE_DEFAULT	3

For some strange reason perl reports that symlinks are available
under msys, while it cannot create symbolic link when the to
is not reachable from cwd.

---

diff -urNp openssl-SNAP-20080611.org/util/mklink.pl openssl-SNAP-20080611/util/mklink.pl
--- openssl-SNAP-20080611.org/util/mklink.pl	2006-02-09 15:00:35.0 +0200
+++ openssl-SNAP-20080611/util/mklink.pl	2008-06-13 12:42:06.0 +0300
@@ -51,6 +51,7 @@ my $to = join('/', @to_path);

Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-10-20 Thread Alon Bar-Lev via RT

Hello,

Attached is a new version, against latest snapshot.

I don't know how the -DOPENSSL_USE_APPLINK works for you guys... It produces 
invalid asm for me...
I don't fully understand what this file do...

perl ../ms/uplink.pl coff  uplink-cof.s
x86_64-pc-mingw32-gcc -I. -I.. -I../include -D_WINDLL -DOPENSSL_USE_APPLINK 
-DOPENSSL_PIC -DOPENSSL_THREADS  -DDSO_WIN32 -mno-cygwin -DL_ENDIAN 
-DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -Wall -D_WIN32_WINNT=0x333 -c  
-o uplink-cof.o uplink-cof.s
uplink-cof.s: Assembler messages:
uplink-cof.s:5: Error: suffix or operands invalid for `push'
uplink-cof.s:6: Error: suffix or operands invalid for `push'
uplink-cof.s:13: Error: suffix or operands invalid for `push'
snip

WIN32_LEAN_AND_MEAN should also be added to regular mingw target.

---

diff -urNp openssl-SNAP-20081003/apps/speed.c 
openssl-SNAP-20081003.mingw64/apps/speed.c
--- openssl-SNAP-20081003/apps/speed.c  2007-11-16 17:00:11.0 +0200
+++ openssl-SNAP-20081003.mingw64/apps/speed.c  2008-10-20 12:58:43.0 
+0200
@@ -261,7 +261,8 @@ static SIGRETTYPE sig_done(int sig)
 
 #define SIGALRM
 static unsigned int lapse,schlock;
-static void alarm(unsigned int secs) { lapse = secs*1000; }
+static void myalarm(unsigned int secs) { lapse = secs*1000; }
+#define ALARM myalarm
 
 static DWORD WINAPI sleepy(VOID *arg)
{
@@ -291,6 +291,7 @@ static double Time_F(int s)
return app_tminterval(s,usertime);
}
 #else
+#define ALARM alarm
 
 static double Time_F(int s)
{
@@ -2514,7 +2515,7 @@ static void print_message(const char *s,
BIO_printf(bio_err,mr ? +DT:%s:%d:%d\n
   : Doing %s for %ds on %d size blocks: ,s,SECONDS,length);
(void)BIO_flush(bio_err);
-   alarm(SECONDS);
+   ALARM(SECONDS);
 #else
BIO_printf(bio_err,mr ? +DN:%s:%ld:%d\n
   : Doing %s %ld times on %d size blocks: ,s,num,length);
@@ -2532,7 +2533,7 @@ static void pkey_print_message(const cha
BIO_printf(bio_err,mr ? +DTP:%d:%s:%s:%d\n
   : Doing %d bit %s %s's for %ds: ,bits,str,str2,tm);
(void)BIO_flush(bio_err);
-   alarm(RSA_SECONDS);
+   ALARM(RSA_SECONDS);
 #else
BIO_printf(bio_err,mr ? +DNP:%ld:%d:%s:%s\n
   : Doing %ld %d bit %s %s's: ,num,bits,str,str2);
diff -urNp openssl-SNAP-20081003/Configure 
openssl-SNAP-20081003.mingw64/Configure
--- openssl-SNAP-20081003/Configure 2008-09-16 00:00:05.0 +0300
+++ openssl-SNAP-20081003.mingw64/Configure 2008-10-20 12:37:37.0 
+0200
@@ -496,6 +496,8 @@ my %table=(
 # MinGW
 mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 
-Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} 
EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL 
-DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
+mingw64, gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN 
-fomit-frame-pointer -O3 -Wall -D_WIN32_WINNT=0x333:::MINGW64:-lws2_32 
-lgdi32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT 
EXPORT_VAR_AS_FN:${no_asm}:win32:cygwin-shared:-D_WINDLL:-mno-cygwin 
-shared:.dll.a,
+
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${no_asm}:win32,
 
@@ -968,7 +970,7 @@ foreach (sort (keys %disabled))
 
 my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
 
-$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target eq 
mingw);
+$exe_ext=.exe if ($target eq Cygwin || $target eq DJGPP || $target =~ 
/^mingw*/);
 $exe_ext=.nlm if ($target =~ /netware/);
 $exe_ext=.pm  if ($target =~ /vos/);
 $openssldir=/usr/local/ssl if ($openssldir eq  and $prefix eq );
--- openssl-SNAP-20081003/engines/e_aep.c   2008-01-04 01:01:24.0 
+0200
+++ openssl-SNAP-20081003.mingw64/engines/e_aep.c   2008-10-20 
12:46:24.0 +0200
@@ -62,8 +62,10 @@
 #include unistd.h
 #else
 #include process.h
+#ifndef _PID_T_
 typedef int pid_t;
+#endif
 #endif
 
 #if defined(OPENSSL_SYS_NETWARE)  defined(NETWARE_CLIB)
 #define getpid GetThreadID


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1693] Compiling OpenSSL with mingw-w64

2008-10-20 Thread Alon Bar-Lev via RT

The alarm() will be removed:

https://sourceforge.net/tracker/index.php?func=detailaid=2182468group_id=202880atid=983354


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


[openssl.org #1753] snapshot 20081003 broke mingw build

2008-10-06 Thread Alon Bar-Lev via RT

Hello,

Latest snapshot broke mingw build for the following reasons:

1. ssl/kssl.c declares _XOPEN_SOURCE at source level and not at configuration 
level, this is invalid in some environments. Please consider moving this to 
Configure targets table. Also, I cannot see where strptime is used anyway... :)

2.util/domd was modified to exit on error, this is OK, but exposed a different 
error that was there since cross compile feature was added to build system. The 
domd uses gcc directly and ignores the cross compile prefix. Please make it use 
correct toolchain.

While we at it, one old minor issue with msys... For some strange reason perl 
reports that symlinks are available under msys, while it cannot create symbolic 
link when the to is not reachable from cwd. Attached is also a fix for this one.

Thanks,
Alon Bar-Lev.

---

diff -urNp openssl-SNAP-20081003.org/ssl/kssl.c openssl-SNAP-20081003/ssl/kssl.c
--- openssl-SNAP-20081003.org/ssl/kssl.c2007-02-10 13:00:54.0 
+0200
+++ openssl-SNAP-20081003/ssl/kssl.c2008-10-04 21:30:51.0 +0300
@@ -68,7 +68,6 @@
 
 #include openssl/opensslconf.h
 
-#define _XOPEN_SOURCE 500 /* glibc2 needs this to declare strptime() */
 #include time.h
 #if 0 /* Experimental */
 #undef _XOPEN_SOURCE /* To avoid clashes with anything else... */
diff -urNp openssl-SNAP-20081003.org/util/domd openssl-SNAP-20081003/util/domd
--- openssl-SNAP-20081003.org/util/domd 2008-09-09 23:00:21.0 +0300
+++ openssl-SNAP-20081003/util/domd 2008-10-04 21:29:05.0 +0300
@@ -22,7 +22,7 @@ if [ $MAKEDEPEND = gcc ]; then
 done
 sed -e '/^# DO NOT DELETE.*/,$d'  Makefile  Makefile.tmp
 echo '# DO NOT DELETE THIS LINE -- make depend depends on it.'  
Makefile.tmp
-gcc -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp || exit
+gcc -D OPENSSL_DOING_MAKEDEPEND -M $args  Makefile.tmp
 ${PERL} $TOP/util/clean-depend.pl  Makefile.tmp  Makefile.new
 rm -f Makefile.tmp
 else
diff -urNp openssl-SNAP-20080611.org/util/mklink.pl 
openssl-SNAP-20080611/util/mklink.pl
--- openssl-SNAP-20080611.org/util/mklink.pl2006-02-09 15:00:35.0 
+0200
+++ openssl-SNAP-20080611/util/mklink.pl2008-06-13 12:42:06.0 
+0300
@@ -51,6 +51,7 @@ my $to = join('/', @to_path);
 
 my $file;
 $symlink_exists=eval {symlink(,); 1};
+if ($^O eq msys) { $symlink_exists=0 };
 foreach $file (@files) {
 my $err = ;
 if ($symlink_exists) {

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1552] mingw patch for openssl-0.9.8e

2008-04-17 Thread Alon Bar-Lev
Thank you!!!
Will check.

On 4/17/08, Lutz Jaenicke via RT [EMAIL PROTECTED] wrote:
 I have applied both the patch from Roumen Petrov and the Fixup from Alon
  Bar-Lev.
  I don't have a mingw environment to actually verify the correct
  operation. Please check out the next snapshot and verify that everything
  is working now as expected.

  Best regards,
 Lutz

 __
  OpenSSL Project http://www.openssl.org
  Development Mailing List   openssl-dev@openssl.org
  Automated List Manager   [EMAIL PROTECTED]

__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Plee for merge Mingw support (rt#1552)

2008-04-12 Thread Alon Bar-Lev
Hello,

I just finished to modify OpenSC build system to allow building using
cross compile environment, including for Windows using mingw.

I use current OpenSSL's trunk, as it is the first version that support
cross compile environment.

The problem is that trunk lacks required support for Windows.

In the past I wrote a patch to enable this (rt#1415), then Roumen
Petrov wrote superior patch at (rt#1552).

As far as I can see this patch touches only mingw issues, so any
regression that might result from this effect only this environment.

Can you please consider merging this into trunk so we know that all is
included into next version of OpenSSL, and stop chasing trunk?

Thank you,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Issues with latest snapshot

2008-03-15 Thread Alon Bar-Lev
Hello,

Tried to compile latest snapshot (openssl-SNAP-20080314.tar.gz)

In apps/apps.h the apps_shutdown macro always calls to
COMP_zlib_cleanup() even if zlib is not enabled. Removing this makes
it work.

I use mingw so maybe it was not tested yet...
There are missing symbols of CMS when linking openssl.exe, maybe related to [1].

Configure with no-cms allows to continue.

Regards,
Alon.

[1]
Warning: ASN1_TYPE_set1 does not have a number assigned
Warning: BIO_f_zlib does not have a number assigned
Warning: BIO_new_CMS does not have a number assigned
Warning: BIO_new_NDEF does not have a number assigned
Warning: CMS_ContentInfo_free does not have a number assigned
Warning: CMS_ContentInfo_it{1} does not have a number assigned
Warning: CMS_ContentInfo_new does not have a number assigned
Warning: CMS_ContentInfo_print_ctx does not have a number assigned
Warning: CMS_Data_Create does not have a number assigned
Warning: CMS_SignedData_init does not have a number assigned
Warning: CMS_SignerInfo_cert_cmp does not have a number assigned
Warning: CMS_SignerInfo_get0_algs does not have a number assigned
Warning: CMS_SignerInfo_get0_signer_id does not have a number assigned
Warning: CMS_SignerInfo_set1_signer_cert does not have a number assigned
Warning: CMS_SignerInfo_sign does not have a number assigned
Warning: CMS_SignerInfo_verify does not have a number assigned
Warning: CMS_SignerInfo_verify_content does not have a number assigned
Warning: CMS_add0_CertificateChoices does not have a number assigned
Warning: CMS_add0_RevocationInfoChoice does not have a number assigned
Warning: CMS_add0_cert does not have a number assigned
Warning: CMS_add0_crl does not have a number assigned
Warning: CMS_add1_cert does not have a number assigned
Warning: CMS_add1_signer does not have a number assigned
Warning: CMS_add_simple_smimecap does not have a number assigned
Warning: CMS_add_smimecap does not have a number assigned
Warning: CMS_add_standard_smimecap does not have a number assigned
Warning: CMS_compress does not have a number assigned
Warning: CMS_dataFinal does not have a number assigned
Warning: CMS_dataInit does not have a number assigned
Warning: CMS_data does not have a number assigned
Warning: CMS_data_create does not have a number assigned
Warning: CMS_decrypt does not have a number assigned
Warning: CMS_digest_create does not have a number assigned
Warning: CMS_digest_verify does not have a number assigned
Warning: CMS_encrypt does not have a number assigned
Warning: CMS_final does not have a number assigned
Warning: CMS_get0_SignerInfos does not have a number assigned
Warning: CMS_get0_content does not have a number assigned
Warning: CMS_get0_eContentType does not have a number assigned
Warning: CMS_get0_signers does not have a number assigned
Warning: CMS_get0_type does not have a number assigned
Warning: CMS_get1_certs does not have a number assigned
Warning: CMS_get1_crls does not have a number assigned
Warning: CMS_is_detached does not have a number assigned
Warning: CMS_set1_eContentType does not have a number assigned
Warning: CMS_set1_signers_certs does not have a number assigned
Warning: CMS_set_detached does not have a number assigned
Warning: CMS_sign does not have a number assigned
Warning: CMS_signed_add1_attr does not have a number assigned
Warning: CMS_signed_add1_attr_by_NID does not have a number assigned
Warning: CMS_signed_add1_attr_by_OBJ does not have a number assigned
Warning: CMS_signed_add1_attr_by_txt does not have a number assigned
Warning: CMS_signed_delete_attr does not have a number assigned
Warning: CMS_signed_get0_data_by_OBJ does not have a number assigned
Warning: CMS_signed_get_attr does not have a number assigned
Warning: CMS_signed_get_attr_by_NID does not have a number assigned
Warning: CMS_signed_get_attr_by_OBJ does not have a number assigned
Warning: CMS_signed_get_attr_count does not have a number assigned
Warning: CMS_stream does not have a number assigned
Warning: CMS_uncompress does not have a number assigned
Warning: CMS_unsigned_add1_attr does not have a number assigned
Warning: CMS_unsigned_add1_attr_by_NID does not have a number assigned
Warning: CMS_unsigned_add1_attr_by_OBJ does not have a number assigned
Warning: CMS_unsigned_add1_attr_by_txt does not have a number assigned
Warning: CMS_unsigned_delete_attr does not have a number assigned
Warning: CMS_unsigned_get0_data_by_OBJ does not have a number assigned
Warning: CMS_unsigned_get_attr does not have a number assigned
Warning: CMS_unsigned_get_attr_by_NID does not have a number assigned
Warning: CMS_unsigned_get_attr_by_OBJ does not have a number assigned
Warning: CMS_unsigned_get_attr_count does not have a number assigned
Warning: CMS_verify does not have a number assigned
Warning: COMP_zlib_cleanup does not have a number assigned
Warning: ERR_load_CMS_strings does not have a number assigned
Warning: PEM_read_CMS does not have a number assigned
Warning: PEM_read_bio_CMS does not have a number assigned

Re: [openssl.org #1552] mingw patch for openssl-cvs

2008-02-17 Thread Alon Bar-Lev via RT
Great!
Works also with cross compile, closes #1415!
A minor fix is attached. The prefix must be enclosed with brackets as
when $$x$(y), the y is translated first.

Just for my reminder:
./Configure --prefix=// --cross-compile-prefix=mingw32- shared mingw
make install INSTALL_PREFIX=/tmp/w32

Alon.

On 2/17/08, Roumen Petrov via RT [EMAIL PROTECTED] wrote:
 patch updated to current cvs 20080217

 Roumen





diff -urNp openssl-SNAP-20080217.r/engines/ccgost/Makefile openssl-SNAP-20080217.rn/engines/ccgost/Makefile
--- openssl-SNAP-20080217.r/engines/ccgost/Makefile	2008-02-17 19:28:50.0 +0200
+++ openssl-SNAP-20080217.rn/engines/ccgost/Makefile	2008-02-17 19:29:29.0 +0200
@@ -53,13 +53,13 @@ install: 	
 			*DSO_WIN32*)	sfx=eay32.dll; pfx=;;	\
 			*) sfx=.bad;; \
 			esac; \
-			cp $$pfx$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$(LIBNAME)$$sfx.new; \
+			cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${pfx}$(LIBNAME)$$sfx.new; \
 		else \
 			sfx=so; \
-			cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$(LIBNAME)$$sfx.new; \
+			cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${pfx}$(LIBNAME)$$sfx.new; \
 		fi; \
-		chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$(LIBNAME)$$sfx.new; \
-		mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$(LIBNAME)$$sfx; \
+		chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${pfx}$(LIBNAME)$$sfx.new; \
+		mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${pfx}$(LIBNAME)$$sfx; \
 	fi
 
 links:


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2008-02-17 Thread Alon Bar-Lev via RT
Can be closed in favor of:
http://rt.openssl.org/index.html?q=1552


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: PKCS#11 wrapper around OpenSSL

2007-11-19 Thread Alon Bar-Lev
On Nov 19, 2007 10:52 PM, Steven Bade [EMAIL PROTECTED] wrote:
 I believe that Sun contributed a pretty robust PKCS#11 engine for openSSL.

It support a single static (compile time) provider, and even does not
login to the token...
I don't understand why it is packed as a patch and not as separate
shared library...
Anyway, from reading the code this is not really usable.

Alon.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-10-27 Thread Alon Bar-Lev
On 10/27/07, Andy Polyakov via RT [EMAIL PROTECTED] wrote:
  Any reason why not merge the patch into snapshots?

 The only reason is lack of time. Trouble is that there also are other
 minor open issues in mingw build and idea is to sit down some day and
 reflect over the whole build procedure. A.

Great to get response!
Maybe I can help?
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-10-27 Thread Alon Bar-Lev via RT
On 10/27/07, Andy Polyakov via RT [EMAIL PROTECTED] wrote:
  Any reason why not merge the patch into snapshots?

 The only reason is lack of time. Trouble is that there also are other
 minor open issues in mingw build and idea is to sit down some day and
 reflect over the whole build procedure. A.

Great to get response!
Maybe I can help?


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-10-22 Thread Alon Bar-Lev via RT
Hello OpenSSL developers,

Any reason why not merge the patch into snapshots?

http://rt.openssl.org/Ticket/Display.html?id=1451

It is important for people who wish to compile to Microsoft platform
without using any Microsoft resources.

Best Regards,
Alon Bar-Lev


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-09-01 Thread Alon Bar-Lev via RT

Hello,

An update.
1. The issue with OPENSSL_IMPLEMENT_GLOBAL is gone now.
2. Merged with Roumen Petrov's patch:
http://rt.openssl.org/Ticket/Display.html?id=1552

Except of not postfix engine dlls with eay32.

Best Regards,
Alon Bar-Lev.

---

diff -urNp openssl-SNAP-20070901/Configure 
openssl-SNAP-20070901.mingw32-2/Configure
--- openssl-SNAP-20070901/Configure 2007-08-30 12:00:13.0 +0300
+++ openssl-SNAP-20070901.mingw32-2/Configure   2007-09-01 19:36:32.0 
+0300
@@ -481,7 +481,7 @@ my %table=(
 BC-32,bcc32WIN32::BN_LLONG DES_PTR RC4_INDEX 
EXPORT_VAR_AS_FN:${no_asm}:win32,
 
 # MinGW
-mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 
-Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} 
EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL 
-DOPENSSL_USE_APPLINK:-mno-cygwin -shared:.dll.a,
+mingw, gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 
-Wall:::MINGW32:-lws2_32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} 
EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL 
-DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a,
 
 # UWIN 
 UWIN, cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${no_asm}:win32,
@@ -1169,13 +1169,16 @@ if (!$no_shared)
 
 if (!$IsMK1MF)
{
+   # add {no-}static-engine to options to allow mkdef.pl to work without 
extra arguments
if ($no_shared)
{
$openssl_other_defines.=#define OPENSSL_NO_DYNAMIC_ENGINE\n;
+   $options.= static-engine;
}
else
{
$openssl_other_defines.=#define OPENSSL_NO_STATIC_ENGINE\n;
+   $options.= no-static-engine;
}
}
 
diff -urNp openssl-SNAP-20070901/engines/ccgost/Makefile 
openssl-SNAP-20070901.mingw32-2/engines/ccgost/Makefile
--- openssl-SNAP-20070901/engines/ccgost/Makefile   2007-05-18 
19:02:28.0 +0300
+++ openssl-SNAP-20070901.mingw32-2/engines/ccgost/Makefile 2007-09-01 
19:48:02.0 +0300
@@ -44,20 +44,24 @@ install:
if [ -n $(SHARED_LIBS) ]; then \
set -e; \
echo installing $(LIBNAME); \
+   l=${LIBNAME}; \
if [ $(PLATFORM) != Cygwin ]; then \
+   pfx=lib; \
+   sfx=so; \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;; \
*DSO_DLFCN*) sfx=so;; \
*DSO_DL*) sfx=sl;; \
+   *DSO_WIN32*) sfx=dll; pfx=;; \
*) sfx=bad;; \
esac; \
-   cp lib$(LIBNAME).$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
else \
+   pfx=cyg; \
sfx=so; \
-   cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
fi; \
-   chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
-   mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx; \
+   cp $$pfx$$l.$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$$l.$$sfx.new; \
+   chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$$l.$$sfx.new; \
+   mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$$l.$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$$pfx$$l.$$sfx; \
fi
 
 links:
diff -urNp openssl-SNAP-20070901/engines/Makefile 
openssl-SNAP-20070901.mingw32-2/engines/Makefile
--- openssl-SNAP-20070901/engines/Makefile  2007-05-17 21:01:28.0 
+0300
+++ openssl-SNAP-20070901.mingw32-2/engines/Makefile2007-09-01 
19:47:39.0 +0300
@@ -106,19 +106,21 @@ install:
for l in $(LIBNAMES); do \
( echo installing $$l; \
  if [ $(PLATFORM) != Cygwin ]; then \
+   pfx=lib; \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;;  \
*DSO_DLFCN*)sfx=so;;  \
*DSO_DL*)   sfx=sl;;  \
+   *DSO_WIN32*)sfx=dll; pfx=;;   \
*)  sfx=bad;; \
esac; \
-   cp lib$$l.$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  else \
+   pfx=cyg; \
sfx=so; \
-   cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  fi; \
- chmod 555

Re: [openssl.org #1552] mingw patch for openssl-cvs

2007-09-01 Thread Alon Bar-Lev via RT
On Friday 03 August 2007, Roumen Petrov via RT wrote:
 And now against CVS
 
 
 

Merged patch available at:
http://rt.openssl.org/Ticket/Display.html?id=1552

Best Regards,
Alon Bar-Lev.


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-09-01 Thread Alon Bar-Lev via RT
On Saturday 01 September 2007, Alon Bar-Lev via RT wrote:
 
 Hello,
 
 An update.
 1. The issue with OPENSSL_IMPLEMENT_GLOBAL is gone now.
 2. Merged with Roumen Petrov's patch:
 http://rt.openssl.org/Ticket/Display.html?id=1552
 
 Except of not postfix engine dlls with eay32.
 
 Best Regards,
 Alon Bar-Lev.

As attachment to make rt happy?



openssl-mingw32.patch.gz
Description: GNU Zip compressed data


Re: Makefile for building openssl for windows using mingw32 on linux

2007-08-01 Thread Alon Bar-Lev
Hello Maximilian,

There are a lot of issues with mingw32 out there...
Examples:
http://rt.openssl.org/Ticket/Display.html?id=1451
http://rt.openssl.org/Ticket/Display.html?id=1511
http://rt.openssl.org/Ticket/Display.html?id=1552

But none are added into the snapshot...

Alon.

On 8/1/07, Maximilian Wilhelm [EMAIL PROTECTED] wrote:
 Hi!

 While building OpenVPN for windows using a mingw32 environment on my
 linux machine, I wrote a Makefile which basicly does the same as the
 .bat files, but works on linux. (I found no such thing...)

 It's not perfect and does not use different targets to prevent redoing
 all the work, but it makes life easier for people.

 If anyone with good make skills has ideas to enhance it, I would be
 interested.

 Maybe you want to include it in your tree.

 Ciao
 Max
 --
 Follow the white penguin.

 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.6 (GNU/Linux)

 iD8DBQFGr7fRKN2w/RnJtroRAv4lAKCRZd3ZpXtvnoYMrHwoVLbGo+GwtQCfRmAv
 nrdsZZkQNsruSnbAXCGt5QY=
 =Rnf2
 -END PGP SIGNATURE-



__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1334] Resolved: [PATCH] Cross-compile for Windows from Linux

2007-07-11 Thread Alon Bar-Lev via RT
 You've suggested approach that mimics .bat-based build, i.e. generating
 big flat make-file, while we've chosen to discontinue it in favor of
 Unix-like build procedure, i.e. having make traverse source tree for
 Makefiles [see development branch]. In other words suggested approach is
 not the approach we want/can afford to support. A.

Do you currently support MinGW/cross compile with your new build system?
I don't think the specific approach is the important one. The solution
is important.
The requirement is to build OpenSSL libraries and binaries on none
Win32 architecture.


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1334] Resolved: [PATCH] Cross-compile for Windows from Linux

2007-07-10 Thread Alon Bar-Lev via RT
On 7/11/07, Chris Wilson via RT [EMAIL PROTECTED] wrote:
 No comments on the tracker entry. Please could you tell me how this is
 resolved?

Also related:
http://rt.openssl.org/Ticket/Display.html?id=1451
http://rt.openssl.org/Ticket/Display.html?id=1552

So there is some work here...

Best Regards,
Alon Bar-Lev.


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1553] mscrypto engine for 0.9.8

2007-07-01 Thread Alon Bar-Lev

On 7/1/07, Roumen Petrov [EMAIL PROTECTED] wrote:

 This is nice, although I don't see any real use case for this engine,
 as you require the user to manually export information from CryptoAPI
 store into files before the engine could be used.
There isn't such requirement.


Where? I guess you have someone who like to use CryptoAPI with OpenSSL...
Can you give a test case of real usage? I am just interested.


 I think OpenSSL engine (generic) should allow to expose certificate
 store, this will allow engines such as this one or PKCS#11 to expose
 the complete object list and references.
Engine control function can do this.


But then you must write specific engine code in the application...
I don't think this is wise.


 There is not much point in holding certificates in files while they
 exists in CryptoAPI or smartcard...
If I can export a certificate with matching private key I will not write
engine.


OK. Waiting for use case.


 There is also an issue of resources prompt (passphrase, token) and a
 small issue of object serialization in engine interface.
If I remember well, smart card proprietary software will ask for
password when is necessary.


This should be part of engine API as well... So application may
construct proper dialogs. Be aware that if you use Protected storage
or Smartcard based you will get Windows UI GUI activated
automatically. So, for example, you will not be able to use this
solution for server application.

Best Regards,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1553] mscrypto engine for 0.9.8

2007-06-29 Thread Alon Bar-Lev

Hello,

This is nice, although I don't see any real use case for this engine,
as you require the user to manually export information from CryptoAPI
store into files before the engine could be used.

I think OpenSSL engine (generic) should allow to expose certificate
store, this will allow engines such as this one or PKCS#11 to expose
the complete object list and references.

There is not much point in holding certificates in files while they
exists in CryptoAPI or smartcard... And there is no point not to allow
a program to enumerate available certificates an engine can provide.

There is also an issue of resources prompt (passphrase, token) and a
small issue of object serialization in engine interface.

Am am afraid that as long as OpenSSL engine interface will remain so
low-level developers will look into alternate solution.

Best Regards,
Alon Bar-Lev.

On 6/29/07, Roumen Petrov via RT [EMAIL PROTECTED] wrote:

Please find attached file openssl-mscrypto-20070625.tar.gz with
openssl engine that can use keys from windows key-store. The engine can
work with external keys too.

Source is for openssl version 0.9.8 and  mingw build require openssl
source with mingw patch for 0.9.8 from request #1552 ( see OpenSSL
Request Tracer ).

Directory engines/ contain source code and in test/ are batch files
for test cases, environment and sample openssl config files for engine
(openssl.cnf is for 0.9.7). Engine can be used in 0.9.7 but
mscrypto_err.* should be recreated with corresponding util/mkerr.pl .
Engine support only rsa key/certificates. You don't need to mark the
private key as exportable when import PKCS#12(pfx) file. Engine can use
certificates/keys stored on smart cards.

Tests require private key, corresponding public key and certificate that
match private key. Every test case
is operation with engine and opposite  operation without. Character a
in test case is for with-without engine, b is for without-with.
Test case 1x is for rsautl encrypt-decrypt, 2x - rsautl
sign-verify, 3x1 -  dgst sign-verify with keys/certs form files and in
3x2 (dgst sign-verify) engine will use certificate from key-store. For
test cases 3{a,b}2  certificate with matching private key should be
loaded into key-store.
In test cases 2{a,b} rsautl sign-verify should fail. This look like
problem with implementation in used crypto provider.

File env.bat set paths to openssl program and configuration, engine, key
files, certificate canonical name, etc. To run test you should set
TEST in do_test.bat and to run it.

Extension of openssl configuration file is cnf and by default is always
hidden.


Instruction for mingw build environment:

Build command:
$ make -f Makefile.mscrypto OPENSSLSRC=path_to_openssl_source
Make sure that openssl is build and installed.

To install:
$ make -f Makefile.mscrypto install {INSTALLTOP=...} {INSTALL_PREFIX=..}
, where INSTALLTOP and INSTALL_PREFIX are optional.


Roumen





__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1552] mingw patch for openssl-0.9.8e

2007-06-26 Thread Alon Bar-Lev

Hello Roumen,

There is partial work in snapshots regarding cross compile.
MinGW still does not work well.

I've created the following ticket:
http://rt.openssl.org/Ticket/Display.html?id=1451user=guestpass=guest

But no progress has been made in determine what is wrong.
Anyway, I think you will find the current trunk snapshot to be a
better reference.

Just wanted to stop using MS compiler... :)

Best Regards,
Alon Bar-Lev.

On 6/26/07, Roumen Petrov via RT [EMAIL PROTECTED] wrote:

I would like to propose following patch to openssl-0.9.8e source (see
attachment openssl-0.9.8e-mingw.patch.gz).
This patch is intended to create executables compatible with other win32
compilers.


Modifications:
./Makefiles.shared:
- link_o.cygwin(used to build engines): modified use def-files in case
of mingw . As example def-files allow target to be linked without
library to exist on build system (IMPORTS);
- link_a.cygwin: modified to produce dlls that match library name in
def-file.

./engines/Makefile:
- installation is extended to handle mingw and add support for lib prefixes.
  also correct suffixes in code to be equal to description in comment
before.

./Makefile.org:
- install dlls for openssl libraries

./Configure:
- mingw (cosmetic) : shared flag in not necessary;
- $IsMK1MF=1 (fatal, fixed upsteam) : remove this line since it break
mingw non-single makefile build;
- option static-engine : allow mkdef.pl to work without extra arguments.
  This can be extended in future to be a configure option that allow
static and dynamic engines to be build at same time.
  Note that gmp engine need patch too and ./README.ENGINE is obsolete.

./util/mkerr.pl (not mingw specific):
-  added 'extern C {' in case of c++ to match right curly-brackets at end

./crypto/x509/Makefile (not mingw specific):
- MINFO is created without information for crypto/x509/ in makefile.one
(files) target.


Tests:
The created on linux executables successfully replace openssl (msc 13.x)
found at url below.
All xmlsec (with openssl) DSig tests succeed on w2k.


Questions after build:
After build I compare results between an existing build (openssl
0.9.8a, msc 13.x) and new build (openssl 0.9.8e, gcc 3.4.5 mingw). The
difference  is attached an file objdump_table-diff.gz.

Result show that mingw build export more functions. I guess that this is
normal since mingw build is for xxx.8e.

Other difference is that engines in mingw build are dynamic while in msc
- static. No idea why msc build
(http://www.zlatkovic.com/libxml.en.html) is with static engines.


Diff show that variables OSSL_DES_version and OSSL_libdes_version from
crypto/des/des_ver.h are exported in msc while mingw build don't export
them. File crypto/opensslconf.h in mingw build
define OPENSSL_EXPORT_VAR_AS_FUNCTION .

If a remember well borland compiler don't export variables. It seems to
me that gcc (mingw) don't export too. So that should use
OPENSSL_XXX_GLOBAL for both variables?

Configure set EXPORT_VAR_AS_FN for some win32 targets(msc, borlang,
mingw, but cigwin). Should Configure set EXPORT_VAR_AS_FN always if
build is for shared win32 platform ?


Roumen





__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: Visual Studio 2005 and openssl question

2007-06-02 Thread Alon Bar-Lev

Don't use Microsoft compiler :)

I've submitted a patch for cross compile openssl (mingw) it produces
much less dependencies.
But it was not accepted yet into any snapshot.

http://rt.openssl.org/Ticket/Display.html?id=1451user=guestpass=guest

Best Regards,
Alon Bar-Lev.

On 6/2/07, gary clark [EMAIL PROTECTED] wrote:

Much appreciated Mournir. Is there a way to build
openssl static libs without all the dependencies of
shared libraries. The intent is to build and install
the package and well I dont want to have to throw the
kitchen sink into the mix in order to make it work.

Thanks,
Garyc

--- Mounir IDRASSI [EMAIL PROTECTED] wrote:

 Hi,
 Does the Windows XP machine where you have troubles
 contain the
 Microsoft runtime for msvcr80 installed?
 Visual Studio 2005 links by default to the msvcr80
 dll. This dll must be
 installed in the target machine using a setup that
 can be downloaded
 using the following link:
 http://go.microsoft.com/fwlink/?linkid=65127 .
 A more complete description on the deployment
 requirements and methods
 for application built by VS2005 can be found here:

http://msdn2.microsoft.com/en-us/library/ms235291(VS.80).aspx
 .
 I hope this helps.

 Cheers,
 Mounir IDRASSI
 IDRIX - Cryptography and IT Security Experts
 http://www.idrix.fr


 gary clark wrote:
  hello,
 
  I know this is probably inappropriate venue but I
 am
  at a loss on why I cannot run openssl on a XP
 windows
  machine which does not have openssl installed.
 
  I have built a client and server on a machine
 which
  has had openssl installed and got it to work with
  certificates. However when I port the executable
 code
  to a machine without openssl installed it fails.
 
  1) I port the built libeay32.dll and ssleay32.dll
 to
  windows32 directory.
 
  2) I then attempt to run my application and it
 fails
  to load the libeay32.dll and ssleay32.dll
 libraries.
  I use the command LoadLibrary(Llibeay32.dll) is
 this
  valid to do?
 
  Why would it fail to load the libraries?
 
 

__
 OpenSSL Project
 http://www.openssl.org
 Development Mailing List
 openssl-dev@openssl.org
 Automated List Manager
 [EMAIL PROTECTED]


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: Visual Studio 2005 and openssl question

2007-06-01 Thread Alon Bar-Lev

You probably need the manifest at the application directory.
The dll cannot find its runtime.

On 6/2/07, gary clark [EMAIL PROTECTED] wrote:

hello,

I know this is probably inappropriate venue but I am
at a loss on why I cannot run openssl on a XP windows
machine which does not have openssl installed.

I have built a client and server on a machine which
has had openssl installed and got it to work with
certificates. However when I port the executable code
to a machine without openssl installed it fails.

1) I port the built libeay32.dll and ssleay32.dll to
windows32 directory.

2) I then attempt to run my application and it fails
to load the libeay32.dll and ssleay32.dll libraries.
I use the command LoadLibrary(Llibeay32.dll) is this
valid to do?

Why would it fail to load the libraries?

Any help would be appreciated.

Thanks,
Garyc
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-05-19 Thread Alon Bar-Lev via RT
[ping]

Passed a long time since I sent this patch.
MinGW cross compile does not work without it.
Is there something wrong with this patch?

http://rt.openssl.org/Ticket/Display.html?id=1451

Thanks!
Alon Bar-Lev.


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: [openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-03-16 Thread Alon Bar-Lev via RT
Hello,

I don't exactly undersand the maintenance model of OpenSSL.

I would really like to see a milestone set for this issue
(http://rt.openssl.org/Ticket/Display.html?id=1451).

We are waiting for this so that user will not be forced to patch
OpenSSL in order to cross compile it.

I will be glad to see this at one of the snapshots, or be notified
that this is rejected and shared OpenSSL will not be enabled for cross
compile win32.

Thanks!


__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


[openssl.org #1451] PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2007-01-19 Thread Alon Bar-Lev

Hello,

I did not see this patch was added to snapshot...
Is there anything more I can do? Is something missing?
Is something wrong? I will be glad to know about that.

Best Regards,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2006-12-28 Thread Alon Bar-Lev
Hello,

Succeeded in making openssl cross compile correctly!

./Configure --prefix=// --cross-compile-prefix=mingw32- shared mingw

Please also notice that --prefix must receive TWO slashes in order
to install to root (make install INSTALL_PREFIX=/tmp/w32)... Maybe
this also can be corrected.

The major problem is in OPENSSL_IMPLEMENT_GLOBAL macro.

The following code does not compile under gcc:

extern int aaa;
static int aaa = 0;
int main () { return 0; }

You cannot define a variable as static and external at the same time:
 a.c:2: error: static declaration of ‘aaa’ follows non-static declaration
 a.c:1: error: previous declaration of ‘aaa’ was here

So I removed the static from the macro.
I had to do some more modifications.
Please review.

Best Regards,
Alon Bar-Lev.

---

diff -urNp openssl-SNAP-20061228.org/engines/ccgost/Makefile 
openssl-SNAP-20061228/engines/ccgost/Makefile
--- openssl-SNAP-20061228.org/engines/ccgost/Makefile   2006-11-30 
16:00:52.0 +0200
+++ openssl-SNAP-20061228/engines/ccgost/Makefile   2006-12-28 
20:30:12.0 +0200
@@ -44,7 +44,13 @@ install: 
if [ -n $(SHARED_LIBS) ]; then \
set -e; \
echo installing $(LIBNAME); \
-   if [ $(PLATFORM) != Cygwin ]; then \
+   if [ $(PLATFORM) = Cygwin ]; then \
+   sfx=so; \
+   cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
+   elif [ $(PLATFORM) = mingw ]; then \
+   sfx=so; \
+   cp $(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
+   else \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;; \
*DSO_DLFCN*) sfx=so;; \
@@ -52,9 +58,6 @@ install:  
*) sfx=bad;; \
esac; \
cp lib$(LIBNAME).$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
-   else \
-   sfx=so; \
-   cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
fi; \
chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx; \
diff -urNp openssl-SNAP-20061228.org/engines/Makefile 
openssl-SNAP-20061228/engines/Makefile
--- openssl-SNAP-20061228.org/engines/Makefile  2006-10-20 14:00:59.0 
+0200
+++ openssl-SNAP-20061228/engines/Makefile  2006-12-28 20:30:12.0 
+0200
@@ -103,7 +103,13 @@ install:
set -e; \
for l in $(LIBNAMES); do \
( echo installing $$l; \
- if [ $(PLATFORM) != Cygwin ]; then \
+ if [ $(PLATFORM) = Cygwin ]; then \
+   sfx=so; \
+   cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
+ elif [ $(PLATFORM) = mingw ]; then \
+   sfx=so; \
+   cp $$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
+ else \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;;  \
*DSO_DLFCN*)sfx=so;;  \
@@ -111,9 +117,6 @@ install:
*)  sfx=bad;; \
esac; \
cp lib$$l.$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
- else \
-   sfx=so; \
-   cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  fi; \
  chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx ); \
diff -urNp openssl-SNAP-20061228.org/e_os2.h openssl-SNAP-20061228/e_os2.h
--- openssl-SNAP-20061228.org/e_os2.h   2006-04-12 01:00:21.0 +0300
+++ openssl-SNAP-20061228/e_os2.h   2006-12-28 20:30:12.0 +0200
@@ -275,7 +275,7 @@ extern C {
 # define OPENSSL_IMPLEMENT_GLOBAL(type,name)\
extern type _hide_##name;\
type *_shadow_##name(void) { return _hide_##name; } \
-   static type _hide_##name
+   type _hide_##name
 # define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void)
 # define OPENSSL_GLOBAL_REF(name) (*(_shadow_

[openssl.org #1451] Re: PATCH (Re: Cross compile OpenSSL in Linux using MinGW32)

2006-12-28 Thread Alon Bar-Lev via RT

Hello,

Succeeded in making openssl cross compile correctly!

./Configure --prefix=// --cross-compile-prefix=mingw32- shared mingw

Please also notice that --prefix must receive TWO slashes in order
to install to root (make install INSTALL_PREFIX=/tmp/w32)... Maybe
this also can be corrected.

The major problem is in OPENSSL_IMPLEMENT_GLOBAL macro.

The following code does not compile under gcc:

extern int aaa;
static int aaa = 0;
int main () { return 0; }

You cannot define a variable as static and external at the same time:
 a.c:2: error: static declaration of ‘aaa’ follows non-static declaration
 a.c:1: error: previous declaration of ‘aaa’ was here

So I removed the static from the macro.
I had to do some more modifications.
Please review.

Best Regards,
Alon Bar-Lev.

---

diff -urNp openssl-SNAP-20061228.org/engines/ccgost/Makefile 
openssl-SNAP-20061228/engines/ccgost/Makefile
--- openssl-SNAP-20061228.org/engines/ccgost/Makefile   2006-11-30 
16:00:52.0 +0200
+++ openssl-SNAP-20061228/engines/ccgost/Makefile   2006-12-28 
20:30:12.0 +0200
@@ -44,7 +44,13 @@ install: 
if [ -n $(SHARED_LIBS) ]; then \
set -e; \
echo installing $(LIBNAME); \
-   if [ $(PLATFORM) != Cygwin ]; then \
+   if [ $(PLATFORM) = Cygwin ]; then \
+   sfx=so; \
+   cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
+   elif [ $(PLATFORM) = mingw ]; then \
+   sfx=so; \
+   cp $(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
+   else \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;; \
*DSO_DLFCN*) sfx=so;; \
@@ -52,9 +58,6 @@ install:  
*) sfx=bad;; \
esac; \
cp lib$(LIBNAME).$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
-   else \
-   sfx=so; \
-   cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
fi; \
chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new; \
mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$(LIBNAME).$$sfx; \
diff -urNp openssl-SNAP-20061228.org/engines/Makefile 
openssl-SNAP-20061228/engines/Makefile
--- openssl-SNAP-20061228.org/engines/Makefile  2006-10-20 14:00:59.0 
+0200
+++ openssl-SNAP-20061228/engines/Makefile  2006-12-28 20:30:12.0 
+0200
@@ -103,7 +103,13 @@ install:
set -e; \
for l in $(LIBNAMES); do \
( echo installing $$l; \
- if [ $(PLATFORM) != Cygwin ]; then \
+ if [ $(PLATFORM) = Cygwin ]; then \
+   sfx=so; \
+   cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
+ elif [ $(PLATFORM) = mingw ]; then \
+   sfx=so; \
+   cp $$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
+ else \
case $(CFLAGS) in \
*DSO_BEOS*) sfx=so;;  \
*DSO_DLFCN*)sfx=so;;  \
@@ -111,9 +117,6 @@ install:
*)  sfx=bad;; \
esac; \
cp lib$$l.$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
- else \
-   sfx=so; \
-   cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  fi; \
  chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
  mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx ); \
diff -urNp openssl-SNAP-20061228.org/e_os2.h openssl-SNAP-20061228/e_os2.h
--- openssl-SNAP-20061228.org/e_os2.h   2006-04-12 01:00:21.0 +0300
+++ openssl-SNAP-20061228/e_os2.h   2006-12-28 20:30:12.0 +0200
@@ -275,7 +275,7 @@ extern C {
 # define OPENSSL_IMPLEMENT_GLOBAL(type,name)\
extern type _hide_##name;\
type *_shadow_##name(void) { return _hide_##name; } \
-   static type _hide_##name
+   type _hide_##name
 # define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void)
 # define OPENSSL_GLOBAL_REF(name

Re: Cross compile OpenSSL in Linux using MinGW32

2006-10-19 Thread Alon Bar-Lev
On Thursday 19 October 2006 12:02, Victor B. Wagner wrote:
 I do it routinely.

Thank you for your reply!


 1. Modify Configure script, adding target
 mingw-cross
 (this all should go into one line)
  mingw-cross, i586-mingw32msvc-gcc:-mno-cygwin -DL_ENDIAN
  -fomit-frame-pointer -O3 -march=i486 -Wall
  -D_WIN32_WINNT=0x333:::MINGW32:-lwsock32 -lgdi32:BN_LLONG
  ${x86_gcc_des} ${x86_gcc_opts}
  EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL
  -DOPENSSL_USE_APPLINK:-mno-cygwin
  -shared:.dll.a:i586-mingw32msvc-ranlib,

Works.
Although I had to remove EXPORT_VAR_AS_FN.

 2. Modify Makefile shared so it would call
 util/mkdef.pl script. and add generated .def file to linking
 command Note that DEF file should contain correct DLL name, not
 just crypteay32 mingw32 builds libcrypto-0.9.8.dll, and this name
 should exactly appear in the .def file

I couldn't understand what I should do...
First of all the asn1 stuff does not compile... Strange. I use 
openssl-0.9.8d and mingw32-gcc (GCC) 4.1.1.
The problem lays in ASN1_ITEM_ref, which returns none constant item 
into constants arrays declares by ASN1_SIMPLE.

But assuming I remove this code, which target do you copy? cygwin?
You just add $(LIBNAME).def to SHAREDFLAGS?

 3. Forget about dllwrap and such. Modern Mingw32 produce absolutely
 correct dlls with just gcc -shared -o dllname,
 if you specify .def file along with object file.

Thanks!

Best Regards,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Re: Cross compile OpenSSL in Linux using MinGW32

2006-10-18 Thread Alon Bar-Lev

On 10/18/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:

The easier way probably is to modify the Configure script and then go
the standard Unix route of compiling. I know I've found (and used)
patches for doing this, googling for something like
 mingw Configure OpenSSL


Thanks for reply.
But it is not enough... Since there is a matter of ddlwrap stuff, and
me be more...
I may alter the build process if no one has done it yet and submit a patch.

Best Regards,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]


Cross compile OpenSSL in Linux using MinGW32

2006-10-17 Thread Alon Bar-Lev
Hello,

I tried to compile OpenSSL using MinGW on Linux, but I could not do 
this.
I've tried to modify configurations, converting ms/mingw.bat to 
ms/mingw.sh, removing the translation of / into \, and more...

Before I making too much modifications,
Have anyone succeeded in doing so?

Best Regards,
Alon Bar-Lev.
__
OpenSSL Project http://www.openssl.org
Development Mailing List   openssl-dev@openssl.org
Automated List Manager   [EMAIL PROTECTED]