Added error checking for OBJ_create
authorFrank Morgner <frankmorgner@gmail.com>
Mon, 10 Apr 2017 12:15:09 +0000 (14:15 +0200)
committerRich Salz <rsalz@openssl.org>
Tue, 11 Apr 2017 23:16:01 +0000 (19:16 -0400)
fixes segmentation fault in case of not enough memory for object creation

CLA: trivial

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3157)

crypto/objects/obj_dat.c

index f37e947f30ff8e6e02f2cadbe33a786b0ac009c6..2f86cd5e46088cabd41b86d038b2b6cee612d4db 100644 (file)
@@ -691,6 +691,8 @@ int OBJ_create(const char *oid, const char *sn, const char *ln)
 
     /* Convert numerical OID string to an ASN1_OBJECT structure */
     tmpoid = OBJ_txt2obj(oid, 1);
+    if (tmpoid == NULL)
+        return 0;
 
     /* If NID is not NID_undef then object already exists */
     if (OBJ_obj2nid(tmpoid) != NID_undef) {