Submitted by: Julia Lawall <julia@diku.dk>
Approved by: steve@openssl.org

Correct BIO_write, BIO_printf, i2a_ASN1_INTEGER and i2a_ASN1_OBJECT
error handling in OCSP print routines.
This commit is contained in:
Dr. Stephen Henson 2009-09-30 23:55:29 +00:00
parent 43f21e62aa
commit d99c0f6b4a

View File

@ -161,21 +161,21 @@ static int i2r_ocsp_crlid(const X509V3_EXT_METHOD *method, void *in, BIO *bp,
OCSP_CRLID *a = in; OCSP_CRLID *a = in;
if (a->crlUrl) if (a->crlUrl)
{ {
if (!BIO_printf(bp, "%*scrlUrl: ", ind, "")) goto err; if (BIO_printf(bp, "%*scrlUrl: ", ind, "") <= 0) goto err;
if (!ASN1_STRING_print(bp, (ASN1_STRING*)a->crlUrl)) goto err; if (!ASN1_STRING_print(bp, (ASN1_STRING*)a->crlUrl)) goto err;
if (!BIO_write(bp, "\n", 1)) goto err; if (BIO_write(bp, "\n", 1) <= 0) goto err;
} }
if (a->crlNum) if (a->crlNum)
{ {
if (!BIO_printf(bp, "%*scrlNum: ", ind, "")) goto err; if (BIO_printf(bp, "%*scrlNum: ", ind, "") <= 0) goto err;
if (!i2a_ASN1_INTEGER(bp, a->crlNum)) goto err; if (i2a_ASN1_INTEGER(bp, a->crlNum) <= 0) goto err;
if (!BIO_write(bp, "\n", 1)) goto err; if (BIO_write(bp, "\n", 1) <= 0) goto err;
} }
if (a->crlTime) if (a->crlTime)
{ {
if (!BIO_printf(bp, "%*scrlTime: ", ind, "")) goto err; if (BIO_printf(bp, "%*scrlTime: ", ind, "") <= 0) goto err;
if (!ASN1_GENERALIZEDTIME_print(bp, a->crlTime)) goto err; if (!ASN1_GENERALIZEDTIME_print(bp, a->crlTime)) goto err;
if (!BIO_write(bp, "\n", 1)) goto err; if (BIO_write(bp, "\n", 1) <= 0) goto err;
} }
return 1; return 1;
err: err:
@ -185,7 +185,7 @@ static int i2r_ocsp_crlid(const X509V3_EXT_METHOD *method, void *in, BIO *bp,
static int i2r_ocsp_acutoff(const X509V3_EXT_METHOD *method, void *cutoff, static int i2r_ocsp_acutoff(const X509V3_EXT_METHOD *method, void *cutoff,
BIO *bp, int ind) BIO *bp, int ind)
{ {
if (!BIO_printf(bp, "%*s", ind, "")) return 0; if (BIO_printf(bp, "%*s", ind, "") <= 0) return 0;
if(!ASN1_GENERALIZEDTIME_print(bp, cutoff)) return 0; if(!ASN1_GENERALIZEDTIME_print(bp, cutoff)) return 0;
return 1; return 1;
} }
@ -194,8 +194,8 @@ static int i2r_ocsp_acutoff(const X509V3_EXT_METHOD *method, void *cutoff,
static int i2r_object(const X509V3_EXT_METHOD *method, void *oid, BIO *bp, static int i2r_object(const X509V3_EXT_METHOD *method, void *oid, BIO *bp,
int ind) int ind)
{ {
if (!BIO_printf(bp, "%*s", ind, "")) return 0; if (BIO_printf(bp, "%*s", ind, "") <= 0) return 0;
if(!i2a_ASN1_OBJECT(bp, oid)) return 0; if(i2a_ASN1_OBJECT(bp, oid) <= 0) return 0;
return 1; return 1;
} }