PR: 2056
[openssl.git] / crypto / asn1 / asn1_par.c
index c322dec2b299a4f3c16fa2802379390bf65296e0..aaca69aebd94ca286bac91742f5db55957674109 100644 (file)
@@ -206,6 +206,8 @@ static int asn1_parse2(BIO *bp, const unsigned char **pp, long length, int offse
                                (tag == V_ASN1_T61STRING) ||
                                (tag == V_ASN1_IA5STRING) ||
                                (tag == V_ASN1_VISIBLESTRING) ||
+                               (tag == V_ASN1_NUMERICSTRING) ||
+                               (tag == V_ASN1_UTF8STRING) ||
                                (tag == V_ASN1_UTCTIME) ||
                                (tag == V_ASN1_GENERALIZEDTIME))
                                {
@@ -237,7 +239,7 @@ static int asn1_parse2(BIO *bp, const unsigned char **pp, long length, int offse
                                ii=d2i_ASN1_BOOLEAN(NULL,&opp,len+hl);
                                if (ii < 0)
                                        {
-                                       if (BIO_write(bp,"Bad boolean\n",12))
+                                       if (BIO_write(bp,"Bad boolean\n",12) <= 0)
                                                goto end;
                                        }
                                BIO_printf(bp,":%d",ii);