aboutsummaryrefslogtreecommitdiffstats
path: root/apps/ocsp.c
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-10-11 09:38:56 +0000
committerRichard Levitte <levitte@openssl.org>2002-10-11 09:38:56 +0000
commit2245cd87d4330dfa1e2e7210c6644a8c524f3ca1 (patch)
tree3054d038a3a62e98eadf95a481faf49dc6a1e688 /apps/ocsp.c
parentc199837c542ac45195253c38899c9fa4f4db00b7 (diff)
downloadopenssl-2245cd87d4330dfa1e2e7210c6644a8c524f3ca1.tar.gz
BN_bn2hex() returns "0" instead of "00" for zero. This disrputs the
requirement that the serial number always be an even amount of characters. PR: 248
Diffstat (limited to 'apps/ocsp.c')
-rw-r--r--apps/ocsp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/ocsp.c b/apps/ocsp.c
index 59b97a634b..17b2a659c3 100644
--- a/apps/ocsp.c
+++ b/apps/ocsp.c
@@ -1120,7 +1120,10 @@ static char **lookup_serial(TXT_DB *db, ASN1_INTEGER *ser)
char *itmp, *row[DB_NUMBER],**rrow;
for (i = 0; i < DB_NUMBER; i++) row[i] = NULL;
bn = ASN1_INTEGER_to_BN(ser,NULL);
- itmp = BN_bn2hex(bn);
+ if (BN_is_zero(bn))
+ itmp = BUF_strdup("00");
+ else
+ itmp = BN_bn2hex(bn);
row[DB_serial] = itmp;
BN_free(bn);
rrow=TXT_DB_get_by_index(db,DB_serial,row);