Re: Re[2]: [patch] make AES-cfb128-encrypt faster by uglifying it

2006-05-26 Thread Brian Havard
On Fri, 26 May 2006 14:32:36 +0400, [EMAIL PROTECTED] wrote:

Hello Alex,

Friday, May 26, 2006, 9:50:15 AM, you wrote:

AD I thought all major compilers have sort of long long,
AD didn't them?
I'm on QNX4 with Watcom C v10.6B which has neither int_64 nor long
long.
So, I'm very anxious about not being able to keep my port current
after such improvements...

Can't you use OpenWatcom? It's had long long for some time and appears to
still support QNX.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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


Re: [CVS] OpenSSL: OpenSSL_0_9_8-stable: openssl/crypto/pqueue/ pq_compat....

2005-06-05 Thread Brian Havard
There's a few other places where VMS is specifically tested for related to
this that probably should also be changed. 

IE ./ssl/d1_pkt.c:139,1456,1741
   ./ssl/d1_pkt.c:135
   ./crypto/pqueue/pqueue.c:202

Currently, without BN_LLONG defined, I get this:
./ssl/d1_pkt.c: In function `dtls1_record_replay_check':
./ssl/d1_pkt.c:1457: invalid initializer



On Mon,  6 Jun 2005 00:43:09 +0200 (CEST), Richard Levitte wrote:

  OpenSSL CVS Repository
  http://cvs.openssl.org/
  

  Server: cvs.openssl.org  Name:   Richard Levitte
  Root:   /v/openssl/cvs   Email:  [EMAIL PROTECTED]
  Module: openssl  Date:   06-Jun-2005 00:43:09
  Branch: OpenSSL_0_9_8-stable Handle: 2005060523430800

  Modified files:   (Branch: OpenSSL_0_9_8-stable)
openssl/crypto/pqueue   pq_compat.h

  Log:
Change pq_compat.h to trust the macros defined by bn.h a bit more, and 
 thereby
provide better generic support for environments that do not have 64-bit
integers.  Among others, this should solve PR 1086

  Summary:
RevisionChanges Path
1.1.2.2 +5  -3  openssl/crypto/pqueue/pq_compat.h
  

  patch -p0 '@@ .'
  Index: openssl/crypto/pqueue/pq_compat.h
  
  $ cvs diff -u -r1.1.2.1 -r1.1.2.2 pq_compat.h
  --- openssl/crypto/pqueue/pq_compat.h30 May 2005 22:34:27 -  
 1.1.2.1
  +++ openssl/crypto/pqueue/pq_compat.h5 Jun 2005 22:43:08 -   
 1.1.2.2
  @@ -63,14 +63,16 @@
   /* 
* The purpose of this header file is for supporting 64-bit integer
* manipulation on 32-bit (and lower) machines.  Currently the only
  - * such environment is VMS.  Other environments that do not natively
  - * support 64-bit integers can safely use the code developed for VMS.
  + * such environment is VMS, Utrix and those with smaller default integer
  + * sizes than 32 bits.  For all such environment, we fall back to using
  + * BIGNUM.  We may need to fine tune the conditions for systems that
  + * are incorrectly configured.
*
* The only clients of this code are (1) pqueue for priority, and
* (2) DTLS, for sequence number manipulation.
*/
   
  -#if defined(OPENSSL_SYS_VMS) || defined(VMS_TEST)
  +#if (defined(THIRTY_TWO_BIT)  !defined(BN_LLONG)) || defined(SIXTEEN_BIT) 
 || defined(EIGHT_BIT)
   
   #define PQ_64BIT BIGNUM
   #define PQ_64BIT_CTX BN_CTX
  @@ .

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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


Re: OS/2 support

2005-01-14 Thread Brian Havard
On Tue, 11 Jan 2005 10:15:48 +, John Poltorak wrote:

On Sun, Jan 09, 2005 at 10:05:42PM +0100, Andy Polyakov wrote:
  The reason I ask is that up until v0.9.7c came out, it compiled out of the 
  box. Since then it doesn't. The problem seems to have arisen since the 
  introduction (or change) of ./crypto/o_str.c and results in these errors:-
  
  tmp_dll\o_str.obj(o_str.obj) :  error L2029: 'strncasecmp' : unresolved 
  external
  tmp_dll\o_str.obj(o_str.obj) :  error L2029: 'strcasecmp' : unresolved 
  external
 
 This might have been inadvertently fixed another day. Check latest 
 0.9.7-stable snapshot at ftp://ftp.openssl.org/snapshot/. A.

I tried:-

ftp://ftp.openssl.org/snapshot/openssl-SNAP-20050111.tar.gz

and got these errors:-

crypto\bn\asm\bn-os2.obj(bn-os2.obj) :  error L2025: bn_sub_part_words : 
symbol defined more than once

This appears to be fixed by the attached patch. Note that I simply cut 
pasted this line from linux.pl.



LINK386 :  error L2022: ENGINE_load_gmp (alias ENGINE_load_gmp) : export 
undefined

According to comments in e_gmp.c, GMP support is not built by default but
ENGINE_load_gmp is included in libeay.num and a make update doesn't
remove it. What's the right way to fix this?

Note that neither problem exists in 0.9.7-stable.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --
Index: util/pl/OS2-EMX.pl
===
RCS file: /home/cvs/openssl.org/openssl/util/pl/OS2-EMX.pl,v
retrieving revision 1.3
diff -u -r1.3 OS2-EMX.pl
--- util/pl/OS2-EMX.pl  28 Nov 2003 14:51:29 -  1.3
+++ util/pl/OS2-EMX.pl  15 Jan 2005 06:22:52 -
@@ -68,6 +68,7 @@
$sha1_asm_src=crypto/sha/asm/s1-os2.asm;
$rmd160_asm_obj=crypto/ripemd/asm/rm-os2$obj;
$rmd160_asm_src=crypto/ripemd/asm/rm-os2.asm;
+   $cflags.= -DBN_ASM -DMD5_ASM -DSHA1_ASM -DOPENSSL_BN_ASM_PART_WORDS;
}
 
 if ($shlib)


Test failures in encryption

2002-12-28 Thread Brian Havard
I'm seeing random failures (~1% of tests) during encrypt/decrypt tests using 
the current 0.9.7 CVS code. In the failed cases the output clear text is 
correct except that it is short or long by a few bytes. It doesn't seem to 
matter which cipher is used (I tried rc5, des-ede3-cbc  a few others), 
indicating a problem in the higher level EVP code. The openssl program reports 
the error message:

27671:error:0606506D:digital envelope routines:EVP_DecryptFinal:wrong final block 
length:.\crypto\evp\evp_enc.c:423:

The problem appears to be in the encrypt step as repeating the decrypt produces 
the same incorrect output every time.

Platform: OS/2 using GCC 2.8.1, AMD Athlon 1200 (TBird).

The same tests using 0.9.6h produces no failures.
The input clear text is the ms/testenc.bat though the contents of the input 
file doesn't appear to be a factor as other input files also fail.

I've tried reducing the optimization level down to -O1 with no effect.

This is the test script I've been using (it's in REXX but you should get the 
idea). Each run produces 8-12 failures. Any hints on how to track this down 
would be appreciated.


/* Rexx */

failed = 0

do c = 1 to 1000
  say Iteration c
  'openssl des-ede3-cbc -e -bufsize 113 -k test -in clear.in -out cipher.out.'c
  'openssl des-ede3-cbc -d -bufsize 157 -k test -in cipher.out.'c' -out clear.out.'c
  'cmp clear.in clear.out.'c
  if rc \= 0 then do
say Failed
failed = failed + 1
  end
end

say failed failures

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: Test failures in encryption

2002-12-28 Thread Brian Havard
On Sun, 29 Dec 2002 14:17:35 +1000 (EST), Brian Havard wrote:

I'm seeing random failures (~1% of tests) during encrypt/decrypt tests using 
the current 0.9.7 CVS code. In the failed cases the output clear text is 
correct except that it is short or long by a few bytes. It doesn't seem to 
matter which cipher is used (I tried rc5, des-ede3-cbc  a few others), 
indicating a problem in the higher level EVP code. The openssl program reports 
the error message:

27671:error:0606506D:digital envelope routines:EVP_DecryptFinal:wrong final block 
length:.\crypto\evp\evp_enc.c:423:

Naturally, soon after posting this I found the problem
Please, can the following patch be applied to 0.9.7  HEAD?

Index: crypto/bio/bss_file.c
===
RCS file: /home/cvs/openssl.org/openssl/crypto/bio/bss_file.c,v
retrieving revision 1.14.2.1
diff -u -r1.14.2.1 bss_file.c
--- crypto/bio/bss_file.c   11 Jun 2002 11:41:21 -  1.14.2.1
+++ crypto/bio/bss_file.c   29 Dec 2002 05:07:54 -
@@ -247,7 +247,7 @@
ret=0;
break;
}
-#if defined(OPENSSL_SYS_MSDOS) || defined(OPENSSL_SYS_WINDOWS)
+#if defined(OPENSSL_SYS_MSDOS) || defined(OPENSSL_SYS_WINDOWS) || 
+defined(OPENSSL_SYS_OS2)
if (!(num  BIO_FP_TEXT))
strcat(p,b);
else

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: [openssl.org #402] Invalid assembly generated in a.out mode

2002-12-17 Thread Brian Havard
On Tue, 17 Dec 2002 09:15:58 +0100, Andy Polyakov wrote:

??? At RT page I wrote

 Fixed. 

Thanks, works for me.



 I have to recommend to always mention which platform is affected.

Well, normally I would but I figured that as the bug could be reproduced
with a portable perl command  would affect any a.out target that the
platform was irrelevant...

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: [openssl.org #402] Invalid assembly generated in a.out mode

2002-12-17 Thread Brian Havard
On Tue, 17 Dec 2002 10:46:06 +0100, Andy Polyakov wrote:

  I have to recommend to always mention which platform is affected.
 
 Well, normally I would but I figured that as the bug could be reproduced
 with a portable perl command  would affect any a.out target that the
 platform was irrelevant...

It is relevant as I was unaware of any target that actually uses a.out
support in the perl module in quesiton. I mean a.out support on Unix is
covered by cpp (which was verified to work!) and not by [perl-wise]
a.out. So that when working on affected code I couldn't stop wondering
where is this [perl-wise] a.out is used and even considered to get rid
of it as redundant:-) A.

Well, you'll find it used in os2/OS2-EMX.cmd
The OS/2 port of gcc uses a.out. It can also produce OMF objects but still
uses the underscores.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



[openssl.org #402] Invalid assembly generated in a.out mode

2002-12-16 Thread Brian Havard via RT

In 0.9.7-stable since the recent PIC-ification, the assembly generation
scripts add a leading underscore to the target when generating a call to a
local label which has no leading underscore. EG the output of perl
des-586.pl a.out (run in crypto/des/asm) includes in its output:

jz  .L007finish
call_.L008PIC_point
.L008PIC_point:
popl%edx

This of course leads to a link error.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



RSync server down?

2002-11-25 Thread Brian Havard
Trying to rsync the cvs repository results in Connection refused  has
been doing so for the last few days.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: [openssl.org #124] [PATCH] OS/2 shared build support

2002-07-18 Thread Brian Havard

On Thu, 18 Jul 2002 09:22:49 +0200 (CEST), Richard Levitte - VMS Whacker
wrote:

In message [EMAIL PROTECTED] on Thu, 18 Jul 2002 12:49:18 +1000 
(EST), Brian Havard [EMAIL PROTECTED] said:

brianh Applied to the 0.9.7 branch as well as HEAD.  Thanks.
brianh 
brianh Cool, though a new problem has been introduced (not directly related to the
brianh ticket). In crypto/rand/rand.h rev 1.27, this was done:

I applied your change.  Thanks.

Builds cleanly now, thanks.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: [openssl.org #124] [PATCH] OS/2 shared build support

2002-07-17 Thread Brian Havard

On Wed, 17 Jul 2002 15:29:26 +0200 (METDST), Richard Levitte via RT wrote:

Applied to the 0.9.7 branch as well as HEAD.  Thanks.

Cool, though a new problem has been introduced (not directly related to the
ticket). In crypto/rand/rand.h rev 1.27, this was done:

Index: rand.h
===
RCS file: /home/cvs/openssl.org/openssl/crypto/rand/rand.h,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- rand.h  2001/10/04 07:32:44 1.26
+++ rand.h  2002/06/27 14:55:52 1.27
@@ -98,7 +103,7 @@
 int RAND_egd_bytes(const char *path,int bytes);
 int RAND_poll(void);
 
-#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32)
+#if defined(OPENSSL_SYS_WINDOWS)
 
 void RAND_screen(void);
 int RAND_event(UINT, WPARAM, LPARAM);


but since mkdef.pl doesn't recognize OPENSSL_SYS_WINDOWS, these 2 functions
end up in the OS/2 crypto.def causing a link error. I'm guessing you just
thought the || defined(OPENSSL_SYS_WIN32) was redundant, which it
certainly appears to be, but it was actually there for a reason.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Build fix

2002-03-18 Thread Brian Havard

HEAD is currently broken for me as engine.h includes ecdsa.h which doesn't
get copied to the outinc directory. This fixes it by including ecdsa in the
build:

Index: mkfiles.pl
===
RCS file: /home/cvs/openssl.org/openssl/util/mkfiles.pl,v
retrieving revision 1.12
diff -u -r1.12 mkfiles.pl
--- mkfiles.pl  2002/01/02 16:55:35 1.12
+++ mkfiles.pl  2002/03/18 13:59:50
@@ -51,6 +51,7 @@
 crypto/ocsp,
 crypto/ui,
 crypto/krb5,
+crypto/ecdsa,
 ssl,
 apps,
 test,

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



[PATCH] OS/2 shared build support

2002-03-09 Thread Brian Havard
;
}
}
}
Index: util/pl/OS2-EMX.pl
===
RCS file: /usr/local/cvs/openssl.org/openssl/util/pl/OS2-EMX.pl,v
retrieving revision 1.1
diff -u -r1.1 OS2-EMX.pl
--- util/pl/OS2-EMX.pl  2001/07/01 22:39:46 1.1
+++ util/pl/OS2-EMX.pl  2002/03/09 12:11:28
@@ -10,18 +10,20 @@
 # C compiler stuff
 
 $cc='gcc';
-$cflags=-DL_ENDIAN -O3 -fomit-frame-pointer -m486 -Zmt -Wall ;
+$cflags=-DL_ENDIAN -O3 -fomit-frame-pointer -m486 -Zmtd -Wall ;
+$cflags.=-Zomf  if $shlib;
+$shl_cflag=-Zdll;
 
 if ($debug) { 
$cflags.=-g ; 
 }
 
-$obj='.o';
+$obj=$shlib ? '.obj' : '.o';
 $ofile='-o ';
 
 # EXE linking stuff
 $link='${CC}';
-$lflags='${CFLAGS} -Zbsd-signals';
+$lflags='${CFLAGS} -Zbsd-signals -s';
 $efile='-o ';
 $exep='.exe';
 $ex_libs=-lsocket;
@@ -30,12 +32,12 @@
 $mklib='ar r';
 $mlflags='';
 $ranlib=ar s;
-$plib='lib';
-$libp=.a;
-$shlibp=.a;
+$plib='';
+$libp=$shlib ? .lib : .a;
+$shlibp=$shlib ? .dll : .a;
 $lfile='';
 
-$asm='as';
+$asm=$shlib ? 'as -Zomf' : 'as';
 $afile='-o ';
 $bn_asm_obj=;
 $bn_asm_src=;
@@ -46,26 +48,34 @@
 
 if (!$no_asm)
{
-   $bn_asm_obj='crypto\bn\asm\bn-os2.o crypto\bn\asm\co-os2.o';
-   $bn_asm_src='crypto\bn\asm\bn-os2.asm crypto\bn\asm\co-os2.asm';
-   $des_enc_obj='crypto\des\asm\d-os2.o crypto\des\asm\y-os2.o';
-   $des_enc_src='crypto\des\asm\d-os2.asm crypto\des\asm\y-os2.asm';
-   $bf_enc_obj='crypto\bf\asm\b-os2.o';
-   $bf_enc_src='crypto\bf\asm\b-os2.asm';
-   $cast_enc_obj='crypto\cast\asm\c-os2.o';
-   $cast_enc_src='crypto\cast\asm\c-os2.asm';
-   $rc4_enc_obj='crypto\rc4\asm\r4-os2.o';
-   $rc4_enc_src='crypto\rc4\asm\r4-os2.asm';
-   $rc5_enc_obj='crypto\rc5\asm\r5-os2.o';
-   $rc5_enc_src='crypto\rc5\asm\r5-os2.asm';
-   $md5_asm_obj='crypto\md5\asm\m5-os2.o';
-   $md5_asm_src='crypto\md5\asm\m5-os2.asm';
-   $sha1_asm_obj='crypto\sha\asm\s1-os2.o';
-   $sha1_asm_src='crypto\sha\asm\s1-os2.asm';
-   $rmd160_asm_obj='crypto\ripemd\asm\rm-os2.o';
-   $rmd160_asm_src='crypto\ripemd\asm\rm-os2.asm';
+   $bn_asm_obj=crypto\\bn\\asm\\bn-os2$obj crypto\\bn\\asm\\co-os2$obj;
+   $bn_asm_src=crypto\\bn\\asm\\bn-os2.asm crypto\\bn\\asm\\co-os2.asm;
+   $des_enc_obj=crypto\\des\\asm\\d-os2$obj crypto\\des\\asm\\y-os2$obj;
+   $des_enc_src=crypto\\des\\asm\\d-os2.asm crypto\\des\\asm\\y-os2.asm;
+   $bf_enc_obj=crypto\\bf\\asm\\b-os2$obj;
+   $bf_enc_src=crypto\\bf\\asm\\b-os2.asm;
+   $cast_enc_obj=crypto\\cast\\asm\\c-os2$obj;
+   $cast_enc_src=crypto\\cast\\asm\\c-os2.asm;
+   $rc4_enc_obj=crypto\\rc4\\asm\\r4-os2$obj;
+   $rc4_enc_src=crypto\\rc4\\asm\\r4-os2.asm;
+   $rc5_enc_obj=crypto\\rc5\\asm\\r5-os2$obj;
+   $rc5_enc_src=crypto\\rc5\\asm\\r5-os2.asm;
+   $md5_asm_obj=crypto\\md5\\asm\\m5-os2$obj;
+   $md5_asm_src=crypto\\md5\\asm\\m5-os2.asm;
+   $sha1_asm_obj=crypto\\sha\\asm\\s1-os2$obj;
+   $sha1_asm_src=crypto\\sha\\asm\\s1-os2.asm;
+   $rmd160_asm_obj=crypto\\ripemd\\asm\\rm-os2$obj;
+   $rmd160_asm_src=crypto\\ripemd\\asm\\rm-os2.asm;
}
 
+if ($shlib)
+   {
+   $mlflags.= $lflags -Zdll;
+   $lib_cflag= -D_DLL;
+   $out_def=out_dll;
+   $tmp_def=tmp_dll;
+   }
+
 sub do_lib_rule
{
local($obj,$target,$name,$shlib)=@_;
@@ -76,9 +86,19 @@
($Name=$name) =~ tr/a-z/A-Z/;
 
$ret.=$target: \$(${Name}OBJ)\n;
-   $ret.=\t\$(RM) $target\n;
-   $ret.=\t\$(MKLIB) $target \$(${Name}OBJ)\n;
-   $ret.=\t\$(RANLIB) $target\n\n;
+   if (!$shlib) 
+   {
+   $ret.=\t\$(RM) $target\n;
+   $ret.=\t\$(MKLIB) $target \$(${Name}OBJ)\n;
+   $ret.=\t\$(RANLIB) $target\n\n;
+   }
+   else
+   {
+   local($ex)=($target =~ /O_SSL/)?' $(L_CRYPTO)':'';
+   $ex.=' -lsocket';
+   $ret.=\t\$(LINK) \$(SHLIB_CFLAGS) \$(MLFLAGS) $efile$target 
+\$(SHLIB_EX_OBJ) \$(${Name}OBJ) $ex os2/${Name}.def\n;
+   $ret.=\temximp -o $out_def/$name$libp os2/${Name}.def\n\n;
+   }
}
 
 sub do_link_rule
@@ -89,7 +109,7 @@
$file =~ s/\//$o/g if $o ne '/';
$n=bname($target);
$ret.=$target: $files $dep_libs\n;
-   $ret.=\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n;
+   $ret.=\t\$(LINK) ${efile}$target \$(CFLAG) \$(LFLAGS) $files $libs\n\n;
return($ret);
}
 

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

__
OpenSSL Project http://www.openssl.org
Development Mailing List

Re: [PATCH] OS/2 shared build support

2002-03-09 Thread Brian Havard

On Sat, 9 Mar 2002 8:58:39 EST, Jeffrey Altman wrote:

It is important to add a note to the INSTALL.OS2 which I would rename
INSTALL.OS2-EMX

I don't think that's necessary. INSTALL.W32 covers 3 compilers. If support
for another OS/2 compiler is added it can be included in INSTALL.OS2 rather
than clutter the root with multiple INSTALL.OS2-* files.



that the libraries produced by this process can only
be used with EMX applications.  These libraries cannot be used with
code produced with the IBM Compilers due to conflicts between the EMX
and IBM C Run-time environments.

True, the DLLs will only work properly with EMX gcc compiled apps (though I
believe other compilers will work if you avoid stdio  sockets and can
arrange matching the calling convention) but the primary target of this
patch is people porting unix apps to OS/2  that's usually done using EMX
gcc.

If you feel it's worth mentioning in the docs you can always submit a
patch.



 This patch adds the ability to build shared libraries (DLLs) for the OS/2
 platform. It's a diff against the current 0.9.7-stable branch but should apply
 cleanly to HEAD too. Although I've touched a few bits of code that are used
 for the Win32 build in mkdef.pl I've verified that the output generated by it
 for windows targets is unchanged. The output for VMS does change a little but
 looks quite broken anyway (EXETYPE WINDOWS?).
 
 The included changes to util/libeay.num were generated, not hand edited, so a
 make update won't clobber them.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Build breakage due to missing aestest.c

2002-01-24 Thread Brian Havard

The current 0.9.7 breaks due to crypto/aes/Makefile.ssl containing

TEST=aestest.c

but there's no such file in CVS. Did it get forgotten?

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: OS/2

2002-01-07 Thread Brian Havard

On Mon, 7 Jan 2002 10:27:03 EST, Jeffrey Altman wrote:

 Hello developers,
 
 I'd like to join the OpenSSL team to work on an official OS/2 version.
 
 Who is responsible for accepting/declining such requests? Is there already someone 
working on OS/2 support?
 

First you would need to re-port 0.9.7-dev to OS/2.  The last time
I did this was for 0.9.5b.There was no interest in maintaining it.

Not so. 0.9.7-dev already compiles just fine for OS/2 due to the patches I
submitted around July 2001. Have a look at INSTALL.OS2 in the root dir.

Jan, this is using EMX gcc to compile, you don't mention which compiler
you're using. I have a Watcom port in progress (works but needs some
tidying) if you're interested.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



RSYNC service DOSed?

2001-12-10 Thread Brian Havard

I've been trying to update my rsync'd copy of the OpenSSL CVS for several
days now  all I can get is

@ERROR: max connections (20) reached - try again later

This is while trying to access rsync://dev.openssl.org/
I've had a script retrying every 5 min for 20 hours now with no success.
What's up here?

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Misplaced code in speed.c

2001-10-28 Thread Brian Havard

In apps/speed.c, lines 226-237 are inside a #ifdef SIGALRM block which causes 
compile errors on any platform that doesn't have SIGALRM.

Also, there's a call to Time_F() at 894 with 2 parameters instead of the 
required 1.

Here's a patch to fix:

Index: speed.c
===
RCS file: /usr/local/cvs/openssl.org/openssl/apps/speed.c,v
retrieving revision 1.75
diff -u -r1.75 speed.c
--- speed.c 2001/10/25 16:08:17 1.75
+++ speed.c 2001/10/29 01:54:27
@@ -216,12 +216,6 @@
 #ifdef HAVE_FORK
 static int do_multi(int multi);
 #endif
-#ifdef SIGALRM
-#if defined(__STDC__) || defined(sgi) || defined(_AIX)
-#define SIGRETTYPE void
-#else
-#define SIGRETTYPE int
-#endif 
 
 #define ALGOR_NUM  16
 #define SIZE_NUM   5
@@ -236,6 +230,13 @@
 static double rsa_results[RSA_NUM][2];
 static double dsa_results[DSA_NUM][2];
 
+#ifdef SIGALRM
+#if defined(__STDC__) || defined(sgi) || defined(_AIX)
+#define SIGRETTYPE void
+#else
+#define SIGRETTYPE int
+#endif 
+
 static SIGRETTYPE sig_done(int sig);
 static SIGRETTYPE sig_done(int sig)
{
@@ -891,7 +892,7 @@
do  {
long i;
count*=2;
-   Time_F(START,usertime);
+   Time_F(START);
for (i=count; i; i--)
des_ecb_encrypt(buf_as_des_cblock,buf_as_des_cblock,
sch,DES_ENCRYPT);

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



[PATCH] OS/2 ( Win32 I expect) build fix

2001-09-15 Thread Brian Havard

The current CVS tries to build evptests.txt.exe, mistaking it for a test 
program, then complains that evptests.txt.c doesn't exist. I think this is a 
logical fix:

Index: Makefile.ssl
===
RCS file: /usr/local/cvs/openssl.org/openssl/crypto/evp/Makefile.ssl,v
retrieving revision 1.58
diff -u -r1.58 Makefile.ssl
--- Makefile.ssl2001/09/02 20:05:23 1.58
+++ Makefile.ssl2001/09/16 05:33:08
@@ -19,7 +19,8 @@
 CFLAGS= $(INCLUDES) $(CFLAG)
 
 GENERAL=Makefile
-TEST=evp_test.c evptests.txt
+TEST=evp_test.c
+TESTDATA=evptests.txt
 APPS=
 
 LIB=$(TOP)/libcrypto.a
@@ -68,7 +69,7 @@
 links:
@$(TOP)/util/point.sh Makefile.ssl Makefile
@$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
-   @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
+   @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST) $(TESTDATA)
@$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
 
 install:

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: cvs commit: openssl/crypto/evp evp_test.c

2001-09-03 Thread Brian Havard

On Sat, 1 Sep 2001 07:59:31 +0200 (MET DST), [EMAIL PROTECTED] wrote:

ulf 01-Sep-2001 07:59:30

  Modified:crypto/evp evp_test.c
  Log:
  undo, didn't work

That's because you (probably accidentally) changed the code, putting an extra 
while inside another when that's not what I wrote. Here's a complete patch 
that DOES work. I've used sstrsep (as in signed vs unsigned) so as not to 
conflict on systems that DO have strsep.

Index: evp_test.c
===
RCS file: /usr/local/cvs/openssl.org/openssl/crypto/evp/evp_test.c,v
retrieving revision 1.6
diff -u -r1.6 evp_test.c
--- evp_test.c  2001/09/01 05:59:27 1.6
+++ evp_test.c  2001/09/03 03:25:35
@@ -85,8 +85,39 @@
 return s-d;
 }
 
+static char *sstrsep(char **string, const char *delim)
+{
+char isdelim[256];
+char *token = *string;
+
+if (**string == 0)
+return NULL;
+
+memset(isdelim, 0, 256);
+isdelim[0] = 1;
+
+while (*delim)
+{
+isdelim[(unsigned char)(*delim)] = 1;
+delim++;
+}
+
+while (!isdelim[(unsigned char)(**string)])
+{
+(*string)++;
+}
+
+if (**string)
+{
+**string = 0;
+(*string)++;
+}
+
+return token;
+}
+
 static unsigned char *ustrsep(char **p,const char *sep)
-{ return (unsigned char *)strsep((char **)p,sep); }
+{ return (unsigned char *)sstrsep((char **)p,sep); }
 
 static void test1(const EVP_CIPHER *c,const unsigned char *key,int kn,
  const unsigned char *iv,int in,
@@ -297,7 +328,7 @@
if(line[0] == '#' || line[0] == '\n')
continue;
p=line;
-   cipher=strsep(p,:);  
+   cipher=sstrsep(p,:); 
key=ustrsep(p,:);
iv=ustrsep(p,:);
plaintext=ustrsep(p,:);

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Re: Use of strsep()

2001-08-28 Thread Brian Havard

On Sun, 26 Aug 2001 15:34:30 +0100, Ben Laurie wrote:

Brian Havard wrote:
 
 Right now, 0.9.7 HEAD fails for me when trying to link evp_test because it
 uses strsep() which doesn't exist in my C library. According to the man
 page on my linux box, strsep is a BSD special. strtok() is the POSIX
 standard function for the same job though the interface is a little
 different.

strtok() is broken - it will step over multiple instances of the
separator, which means you can't have empty fields. The easy answer is
to write a strsep() replacement, I guess.

Ok, I didn't realize there was any functional difference (I only read the
man pages which give no indication that there is). I'll try hacking one
together.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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



Use of strsep()

2001-08-26 Thread Brian Havard

Right now, 0.9.7 HEAD fails for me when trying to link evp_test because it
uses strsep() which doesn't exist in my C library. According to the man
page on my linux box, strsep is a BSD special. strtok() is the POSIX
standard function for the same job though the interface is a little
different.

-- 
 __
 |  Brian Havard |  He is not the messiah!   |
 |  [EMAIL PROTECTED]  |  He's a very naughty boy! - Life of Brian |
 --

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