Commit 627ec355 authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Fix for bug (?) in assembly language routines for SHA1. This

causes MASM to complain and not produce valid debug info.
Hopefully this wont break anything else...

Also fix typo in e_rd.c
parent 4184a787
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -4,6 +4,12 @@

 Changes between 0.9.6 and 0.9.7  [xx XXX 2000]

  *) Fix for SHA1 assembly problem with MASM: it produces
     warnings about corrupt line number information when assembling
     with debugging information. This is caused by the overlapping
     of two sections.
     [Bernd Matthes <mainbug@celocom.de>, Steve Henson]

  *) Fix typo in get_cert_by_subject() in by_dir.c
     [Jean-Marc Desperrier <jean-marc.desperrier@certplus.com>]

+2 −2
Original line number Diff line number Diff line
@@ -55,8 +55,8 @@

static EVP_CIPHER rd_cipher[3][3];

static anSizes[]={16,24,32};
static anNIDs[3][3]=
static int anSizes[]={16,24,32};
static int anNIDs[3][3]=
    {
    { NID_rijndael_ecb_k128_b128,NID_rijndael_ecb_k192_b128,NID_rijndael_ecb_k256_b128 },
    { NID_rijndael_ecb_k128_b192,NID_rijndael_ecb_k192_b192,NID_rijndael_ecb_k256_b192 },
+7 −5
Original line number Diff line number Diff line
@@ -317,7 +317,7 @@ sub BODY_60_79

sub sha1_block_host
	{
	local($name)=@_;
	local($name, $sclabel)=@_;

	&function_begin_B($name,"");

@@ -352,7 +352,7 @@ sub sha1_block_host
		&mov(&swtmp($i+0),$A);
		 &mov(&swtmp($i+1),$B);
		}
	&jmp(&label("shortcut"));
	&jmp($sclabel);
	&function_end_B($name);
	}

@@ -529,10 +529,12 @@ sub sha1_block_data
	&pop("esi");
	 &ret();

	# it has to reside within sha1_block_asm_host_order body
	# because it calls &jmp(&label("shortcut"));
	&sha1_block_host("sha1_block_asm_host_order");
	# keep a note of shortcut label so it can be used outside
	# block.
	my $sclabel = &label("shortcut");

	&function_end_B($name);
	# Putting this here avoids problems with MASM in debugging mode
	&sha1_block_host("sha1_block_asm_host_order", $sclabel);
	}