Commit 8b9afbc0 authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Check for errors in a2d_ASN1_OBJECT()



Check for error return in BN_div_word().

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
parent 07bed46f
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -127,8 +127,12 @@ int a2d_ASN1_OBJECT(unsigned char *out, int olen, const char *buf, int num)
                if (tmp == NULL)
                    goto err;
            }
            while (blsize--)
                tmp[i++] = (unsigned char)BN_div_word(bl, 0x80L);
            while (blsize--) {
                BN_ULONG t = BN_div_word(bl, 0x80L);
                if (t == (BN_ULONG)-1)
                    goto err;
                tmp[i++] = (unsigned char)t;
            }
        } else {

            for (;;) {