Fix off by 1 in ASN1_STRING_set()
[openssl.git] / crypto / asn1 / asn1_lib.c
index f2f07ac2d5171a1762f3b92f8fce9a84d96f2af5..9dfe395399c58bc2479146312d7762f6b4b27bc8 100644 (file)
@@ -271,7 +271,7 @@ int ASN1_STRING_set(ASN1_STRING *str, const void *_data, int len)
         else
             len = strlen(data);
     }
-    if ((str->length < len) || (str->data == NULL)) {
+    if ((str->length <= len) || (str->data == NULL)) {
         c = str->data;
         str->data = OPENSSL_realloc(c, len + 1);
         if (str->data == NULL) {