mirror of
https://github.com/openssl/openssl.git
synced 2024-11-21 01:15:20 +08:00
Due to recent debugging bursts, openssl should be more or less solid
against inconsistent BIGNUMs coming out of any of its API functions. So this change no longer "fixes" the bn_print.c functions, but it makes for cleaner code. This patch was a part of ticket 697. PR: 697 Submitted by: Otto Moerbeek Reviewed by: Geoff Thorpe
This commit is contained in:
parent
6defae04f3
commit
81ba5f6713
@ -79,7 +79,7 @@ char *BN_bn2hex(const BIGNUM *a)
|
||||
}
|
||||
p=buf;
|
||||
if (a->neg) *(p++)='-';
|
||||
if (a->top == 0) *(p++)='0';
|
||||
if (BN_is_zero(a)) *(p++)='0';
|
||||
for (i=a->top-1; i >=0; i--)
|
||||
{
|
||||
for (j=BN_BITS2-8; j >= 0; j-=8)
|
||||
@ -122,7 +122,7 @@ char *BN_bn2dec(const BIGNUM *a)
|
||||
p=buf;
|
||||
lp=bn_data;
|
||||
if (t->neg) *(p++)='-';
|
||||
if (t->top == 0)
|
||||
if (BN_is_zero(t))
|
||||
{
|
||||
*(p++)='0';
|
||||
*(p++)='\0';
|
||||
@ -301,7 +301,7 @@ int BN_print(BIO *bp, const BIGNUM *a)
|
||||
int ret=0;
|
||||
|
||||
if ((a->neg) && (BIO_write(bp,"-",1) != 1)) goto end;
|
||||
if ((a->top == 0) && (BIO_write(bp,"0",1) != 1)) goto end;
|
||||
if (BN_is_zero(a) && (BIO_write(bp,"0",1) != 1)) goto end;
|
||||
for (i=a->top-1; i >=0; i--)
|
||||
{
|
||||
for (j=BN_BITS2-4; j >= 0; j-=4)
|
||||
|
Loading…
Reference in New Issue
Block a user