Hi,

A small fix to the fix:

RCS file: /e/openssl/cvs/openssl/crypto/asn1/a_enum.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- crypto/asn1/a_enum.c        1999/10/23 09:19:41     1.7
+++ crypto/asn1/a_enum.c        1999/12/10 13:46:46     1.8
@@ -177,7 +177,12 @@
                goto err;
                }
        to=s;
-       if (*p & 0x80) /* a negative number */
+       if(!len) {
+               /* Strictly speaking this is an illegal ENUMERATED but we
+                * tolerate it.
+                */
+               ret->type=V_ASN1_INTEGER;             <<<< V_ASN1_ENUMERATED
+       } else if (*p & 0x80) /* a negative number */
                {
                ret->type=V_ASN1_NEG_ENUMERATED;
                if ((*p == 0xff) && (len != 1)) {


Frans Heymans
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to