=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/openssl/ca.c,v retrieving revision 1.42 retrieving revision 1.43 diff -c -r1.42 -r1.43 *** src/usr.bin/openssl/ca.c 2021/08/30 12:12:11 1.42 --- src/usr.bin/openssl/ca.c 2021/08/30 12:25:54 1.43 *************** *** 1,4 **** ! /* $OpenBSD: ca.c,v 1.42 2021/08/30 12:12:11 inoguchi Exp $ */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * --- 1,4 ---- ! /* $OpenBSD: ca.c,v 1.43 2021/08/30 12:25:54 inoguchi Exp $ */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * *************** *** 1745,1750 **** --- 1745,1752 ---- OPENSSL_STRING *irow = NULL; OPENSSL_STRING *rrow = NULL; + *xret = NULL; + tmptm = ASN1_UTCTIME_new(); if (tmptm == NULL) { BIO_printf(bio_err, "malloc error\n"); *************** *** 2275,2281 **** --- 2277,2287 ---- BIO_printf(bio_err, "TXT_DB error number %ld\n", db->db->error); goto err; } + + *xret = ret; + ret = NULL; ok = 1; + err: for (i = 0; i < DB_NUMBER; i++) free(row[i]); *************** *** 2285,2295 **** if (!email_dn) X509_NAME_free(dn_subject); ASN1_UTCTIME_free(tmptm); ! if (ok <= 0) { ! X509_free(ret); ! ret = NULL; ! } else ! *xret = ret; return (ok); } --- 2291,2297 ---- if (!email_dn) X509_NAME_free(dn_subject); ASN1_UTCTIME_free(tmptm); ! X509_free(ret); return (ok); }