提交 64f0f80e 编写于 作者: D Dr. Stephen Henson

PR: 2057

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.
上级 d7106112
...@@ -161,21 +161,21 @@ static int i2r_ocsp_crlid(const X509V3_EXT_METHOD *method, void *in, BIO *bp, ...@@ -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, ...@@ -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, ...@@ -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;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册