X509_GET_PUBKEY(3) return value check in libcrypto
authorinoguchi <inoguchi@openbsd.org>
Sat, 22 Jan 2022 00:36:46 +0000 (00:36 +0000)
committerinoguchi <inoguchi@openbsd.org>
Sat, 22 Jan 2022 00:36:46 +0000 (00:36 +0000)
CID 345116

ok beck@ tb@

lib/libcrypto/x509/x509_vfy.c

index cf92c10..9a92996 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: x509_vfy.c,v 1.100 2021/11/26 13:17:09 schwarze Exp $ */
+/* $OpenBSD: x509_vfy.c,v 1.101 2022/01/22 00:36:46 inoguchi Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -2096,7 +2096,8 @@ X509_get_pubkey_parameters(EVP_PKEY *pkey, STACK_OF(X509) *chain)
 
        /* first, populate the other certs */
        for (j = i - 1; j >= 0; j--) {
-               ktmp2 = X509_get0_pubkey(sk_X509_value(chain, j));
+               if ((ktmp2 = X509_get0_pubkey(sk_X509_value(chain, j))) == NULL)
+                       return 0;
                if (!EVP_PKEY_copy_parameters(ktmp2, ktmp))
                        return 0;
        }