free null cleanup finale
Don't check for NULL before calling OPENSSL_free
Reviewed-by: Richard Levitte <levitte@openssl.org>
diff --git a/apps/apps.c b/apps/apps.c
index d68594a..46cc5a0 100644
--- a/apps/apps.c
+++ b/apps/apps.c
@@ -2165,9 +2165,7 @@
BIO_puts(out, "JPAKE authentication succeeded, setting PSK\n");
- if (psk_key)
- OPENSSL_free(psk_key);
-
+ OPENSSL_free(psk_key);
psk_key = BN_bn2hex(JPAKE_get_shared_key(ctx));
BIO_pop(bconn);
@@ -2197,9 +2195,7 @@
BIO_puts(out, "JPAKE authentication succeeded, setting PSK\n");
- if (psk_key)
- OPENSSL_free(psk_key);
-
+ OPENSSL_free(psk_key);
psk_key = BN_bn2hex(JPAKE_get_shared_key(ctx));
BIO_pop(bconn);
diff --git a/apps/asn1pars.c b/apps/asn1pars.c
index 7e1dfb7..01a50f4 100644
--- a/apps/asn1pars.c
+++ b/apps/asn1pars.c
@@ -321,11 +321,9 @@
ERR_print_errors(bio_err);
if (buf != NULL)
BUF_MEM_free(buf);
- if (name != NULL)
- OPENSSL_free(name);
- if (header != NULL)
- OPENSSL_free(header);
- if (strictpem && str != NULL)
+ OPENSSL_free(name);
+ OPENSSL_free(header);
+ if (strictpem)
OPENSSL_free(str);
ASN1_TYPE_free(at);
if (osk != NULL)
diff --git a/apps/ca.c b/apps/ca.c
index b703b42..ad6b000 100644
--- a/apps/ca.c
+++ b/apps/ca.c
@@ -2271,8 +2271,7 @@
ok = 1;
end:
for (i = 0; i < DB_NUMBER; i++) {
- if (row[i] != NULL)
- OPENSSL_free(row[i]);
+ OPENSSL_free(row[i]);
}
return (ok);
}
@@ -2339,8 +2338,7 @@
}
end:
for (i = 0; i < DB_NUMBER; i++) {
- if (row[i] != NULL)
- OPENSSL_free(row[i]);
+ OPENSSL_free(row[i]);
}
return (ok);
}
@@ -2564,8 +2562,7 @@
end:
- if (tmp)
- OPENSSL_free(tmp);
+ OPENSSL_free(tmp);
ASN1_OBJECT_free(hold);
ASN1_GENERALIZEDTIME_free(comp_time);
ASN1_ENUMERATED_free(rtmp);
@@ -2719,8 +2716,7 @@
end:
- if (tmp)
- OPENSSL_free(tmp);
+ OPENSSL_free(tmp);
ASN1_GENERALIZEDTIME_free(comp_time);
return ret;
diff --git a/apps/cms.c b/apps/cms.c
index 907b108..25e3ad6 100644
--- a/apps/cms.c
+++ b/apps/cms.c
@@ -1121,12 +1121,9 @@
sk_OPENSSL_STRING_free(sksigners);
if (skkeys)
sk_OPENSSL_STRING_free(skkeys);
- if (secret_key)
- OPENSSL_free(secret_key);
- if (secret_keyid)
- OPENSSL_free(secret_keyid);
- if (pwri_tmp)
- OPENSSL_free(pwri_tmp);
+ OPENSSL_free(secret_key);
+ OPENSSL_free(secret_keyid);
+ OPENSSL_free(pwri_tmp);
ASN1_OBJECT_free(econtent_type);
if (rr)
CMS_ReceiptRequest_free(rr);
@@ -1152,8 +1149,7 @@
BIO_free(in);
BIO_free(indata);
BIO_free_all(out);
- if (passin)
- OPENSSL_free(passin);
+ OPENSSL_free(passin);
return (ret);
}
diff --git a/apps/dgst.c b/apps/dgst.c
index 69211d3..a679cb9 100644
--- a/apps/dgst.c
+++ b/apps/dgst.c
@@ -451,8 +451,7 @@
sk_OPENSSL_STRING_free(sigopts);
if (macopts)
sk_OPENSSL_STRING_free(macopts);
- if (sigbuf)
- OPENSSL_free(sigbuf);
+ OPENSSL_free(sigbuf);
BIO_free(bmd);
return (ret);
}
diff --git a/apps/dsa.c b/apps/dsa.c
index c23ed5d..d864c75 100644
--- a/apps/dsa.c
+++ b/apps/dsa.c
@@ -275,10 +275,8 @@
end:
BIO_free_all(out);
DSA_free(dsa);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return (ret);
}
#else /* !OPENSSL_NO_DSA */
diff --git a/apps/ec.c b/apps/ec.c
index 471de47..c56150c 100644
--- a/apps/ec.c
+++ b/apps/ec.c
@@ -271,10 +271,8 @@
BIO_free(in);
BIO_free_all(out);
EC_KEY_free(eckey);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return (ret);
}
#else /* !OPENSSL_NO_EC */
diff --git a/apps/ecparam.c b/apps/ecparam.c
index 082df26..dd0e8f5 100644
--- a/apps/ecparam.c
+++ b/apps/ecparam.c
@@ -489,8 +489,7 @@
BN_free(ec_gen);
BN_free(ec_order);
BN_free(ec_cofactor);
- if (buffer)
- OPENSSL_free(buffer);
+ OPENSSL_free(buffer);
BIO_free(in);
BIO_free_all(out);
EC_GROUP_free(group);
diff --git a/apps/enc.c b/apps/enc.c
index 83067b8..8b892cf 100644
--- a/apps/enc.c
+++ b/apps/enc.c
@@ -564,10 +564,8 @@
}
end:
ERR_print_errors(bio_err);
- if (strbuf != NULL)
- OPENSSL_free(strbuf);
- if (buff != NULL)
- OPENSSL_free(buff);
+ OPENSSL_free(strbuf);
+ OPENSSL_free(buff);
BIO_free(in);
BIO_free_all(out);
BIO_free(benc);
@@ -575,8 +573,7 @@
#ifdef ZLIB
BIO_free(bzl);
#endif
- if (pass)
- OPENSSL_free(pass);
+ OPENSSL_free(pass);
return (ret);
}
diff --git a/apps/engine.c b/apps/engine.c
index 448802b..c7c0aaf 100644
--- a/apps/engine.c
+++ b/apps/engine.c
@@ -252,10 +252,8 @@
}
OPENSSL_free(name);
name = NULL;
- if (desc) {
- OPENSSL_free(desc);
- desc = NULL;
- }
+ OPENSSL_free(desc);
+ desc = NULL;
/* Move to the next command */
num = ENGINE_ctrl(e, ENGINE_CTRL_GET_NEXT_CMD_TYPE, num, NULL, NULL);
} while (num > 0);
@@ -265,10 +263,8 @@
err:
if (cmds)
sk_OPENSSL_STRING_pop_free(cmds, identity);
- if (name)
- OPENSSL_free(name);
- if (desc)
- OPENSSL_free(desc);
+ OPENSSL_free(name);
+ OPENSSL_free(desc);
return ret;
}
diff --git a/apps/gendsa.c b/apps/gendsa.c
index 21988a0..75bd802 100644
--- a/apps/gendsa.c
+++ b/apps/gendsa.c
@@ -182,8 +182,7 @@
BIO_free(in);
BIO_free_all(out);
DSA_free(dsa);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passout);
return (ret);
}
#else /* !OPENSSL_NO_DSA */
diff --git a/apps/genpkey.c b/apps/genpkey.c
index ae68e7a..de14bd3 100644
--- a/apps/genpkey.c
+++ b/apps/genpkey.c
@@ -235,8 +235,7 @@
EVP_PKEY_CTX_free(ctx);
BIO_free_all(out);
BIO_free(in);
- if (pass)
- OPENSSL_free(pass);
+ OPENSSL_free(pass);
return ret;
}
diff --git a/apps/genrsa.c b/apps/genrsa.c
index a3c00d8..a5ab658 100644
--- a/apps/genrsa.c
+++ b/apps/genrsa.c
@@ -218,8 +218,7 @@
BN_GENCB_free(cb);
RSA_free(rsa);
BIO_free_all(out);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passout);
if (ret != 0)
ERR_print_errors(bio_err);
return (ret);
diff --git a/apps/ocsp.c b/apps/ocsp.c
index 20dc1ae..d4ea019 100644
--- a/apps/ocsp.c
+++ b/apps/ocsp.c
@@ -271,12 +271,9 @@
req_timeout = atoi(opt_arg());
break;
case OPT_URL:
- if (thost)
- OPENSSL_free(thost);
- if (tport)
- OPENSSL_free(tport);
- if (tpath)
- OPENSSL_free(tpath);
+ OPENSSL_free(thost);
+ OPENSSL_free(tport);
+ OPENSSL_free(tpath);
if (!OCSP_parse_url(opt_arg(), &host, &port, &path, &use_ssl)) {
BIO_printf(bio_err, "%s Error parsing URL\n", prog);
goto end;
@@ -753,13 +750,9 @@
sk_X509_pop_free(sign_other, X509_free);
sk_X509_pop_free(verify_other, X509_free);
sk_CONF_VALUE_pop_free(headers, X509V3_conf_free);
-
- if (thost)
- OPENSSL_free(thost);
- if (tport)
- OPENSSL_free(tport);
- if (tpath)
- OPENSSL_free(tpath);
+ OPENSSL_free(thost);
+ OPENSSL_free(tport);
+ OPENSSL_free(tpath);
return (ret);
}
diff --git a/apps/openssl.c b/apps/openssl.c
index f6013f7..c6b048a 100644
--- a/apps/openssl.c
+++ b/apps/openssl.c
@@ -509,18 +509,15 @@
}
ret = 1;
end:
- if (copied_argv)
- OPENSSL_free(copied_argv);
- if (to_free)
- OPENSSL_free(to_free);
+ OPENSSL_free(copied_argv);
+ OPENSSL_free(to_free);
if (config != NULL) {
NCONF_free(config);
config = NULL;
}
if (prog != NULL)
lh_FUNCTION_free(prog);
- if (arg.argv != NULL)
- OPENSSL_free(arg.argv);
+ OPENSSL_free(arg.argv);
BIO_free(bio_in);
BIO_free_all(bio_out);
diff --git a/apps/passwd.c b/apps/passwd.c
index c529792..8dd8542 100644
--- a/apps/passwd.c
+++ b/apps/passwd.c
@@ -284,10 +284,8 @@
end:
ERR_print_errors(bio_err);
- if (salt_malloc)
- OPENSSL_free(salt_malloc);
- if (passwd_malloc)
- OPENSSL_free(passwd_malloc);
+ OPENSSL_free(salt_malloc);
+ OPENSSL_free(passwd_malloc);
BIO_free(in);
return (ret);
}
diff --git a/apps/pkcs12.c b/apps/pkcs12.c
index b4b3730..4c62392 100644
--- a/apps/pkcs12.c
+++ b/apps/pkcs12.c
@@ -556,10 +556,8 @@
BIO_free_all(out);
if (canames)
sk_OPENSSL_STRING_free(canames);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return (ret);
}
diff --git a/apps/pkcs8.c b/apps/pkcs8.c
index 105c1cb..07ebf3b 100644
--- a/apps/pkcs8.c
+++ b/apps/pkcs8.c
@@ -343,10 +343,8 @@
EVP_PKEY_free(pkey);
BIO_free_all(out);
BIO_free(in);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return ret;
}
diff --git a/apps/pkey.c b/apps/pkey.c
index 716d6d0..f0930a7 100644
--- a/apps/pkey.c
+++ b/apps/pkey.c
@@ -208,10 +208,8 @@
EVP_PKEY_free(pkey);
BIO_free_all(out);
BIO_free(in);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return ret;
}
diff --git a/apps/pkeyutl.c b/apps/pkeyutl.c
index 3afe0eb..87e4950 100644
--- a/apps/pkeyutl.c
+++ b/apps/pkeyutl.c
@@ -322,12 +322,9 @@
EVP_PKEY_CTX_free(ctx);
BIO_free(in);
BIO_free_all(out);
- if (buf_in)
- OPENSSL_free(buf_in);
- if (buf_out)
- OPENSSL_free(buf_out);
- if (sig)
- OPENSSL_free(sig);
+ OPENSSL_free(buf_in);
+ OPENSSL_free(buf_out);
+ OPENSSL_free(sig);
return ret;
}
@@ -413,10 +410,7 @@
}
end:
-
- if (passin)
- OPENSSL_free(passin);
-
+ OPENSSL_free(passin);
return ctx;
}
diff --git a/apps/req.c b/apps/req.c
index 0502a64..4ff3b24 100644
--- a/apps/req.c
+++ b/apps/req.c
@@ -886,15 +886,12 @@
if (gen_eng)
ENGINE_free(gen_eng);
#endif
- if (keyalgstr)
- OPENSSL_free(keyalgstr);
+ OPENSSL_free(keyalgstr);
X509_REQ_free(req);
X509_free(x509ss);
ASN1_INTEGER_free(serial);
- if (passargin && passin)
- OPENSSL_free(passin);
- if (passargout && passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
OBJ_cleanup();
return (ret);
}
diff --git a/apps/rsa.c b/apps/rsa.c
index 0a8e198..858699b 100644
--- a/apps/rsa.c
+++ b/apps/rsa.c
@@ -388,10 +388,8 @@
end:
BIO_free_all(out);
RSA_free(rsa);
- if (passin)
- OPENSSL_free(passin);
- if (passout)
- OPENSSL_free(passout);
+ OPENSSL_free(passin);
+ OPENSSL_free(passout);
return (ret);
}
#else /* !OPENSSL_NO_RSA */
diff --git a/apps/rsautl.c b/apps/rsautl.c
index f138293..0ef6105 100644
--- a/apps/rsautl.c
+++ b/apps/rsautl.c
@@ -315,12 +315,9 @@
RSA_free(rsa);
BIO_free(in);
BIO_free_all(out);
- if (rsa_in)
- OPENSSL_free(rsa_in);
- if (rsa_out)
- OPENSSL_free(rsa_out);
- if (passin)
- OPENSSL_free(passin);
+ OPENSSL_free(rsa_in);
+ OPENSSL_free(rsa_out);
+ OPENSSL_free(passin);
return ret;
}
diff --git a/apps/s_client.c b/apps/s_client.c
index 8d8340d..a24d2f3 100644
--- a/apps/s_client.c
+++ b/apps/s_client.c
@@ -1985,24 +1985,18 @@
SSL_free(con);
}
#if !defined(OPENSSL_NO_TLSEXT) && !defined(OPENSSL_NO_NEXTPROTONEG)
- if (next_proto.data)
- OPENSSL_free(next_proto.data);
+ OPENSSL_free(next_proto.data);
#endif
SSL_CTX_free(ctx);
X509_free(cert);
sk_X509_CRL_pop_free(crls, X509_CRL_free);
EVP_PKEY_free(key);
sk_X509_pop_free(chain, X509_free);
- if (pass)
- OPENSSL_free(pass);
+ OPENSSL_free(pass);
X509_VERIFY_PARAM_free(vpm);
ssl_excert_free(exc);
sk_OPENSSL_STRING_free(ssl_args);
SSL_CONF_CTX_free(cctx);
-#ifndef OPENSSL_NO_JPAKE
- if (jpake_secret && psk_key)
- OPENSSL_free(psk_key);
-#endif
OPENSSL_clear_free(cbuf, BUFSIZZ);
OPENSSL_clear_free(sbuf, BUFSIZZ);
OPENSSL_clear_free(mbuf, BUFSIZZ);
diff --git a/apps/s_server.c b/apps/s_server.c
index a616b64..5fb275d 100644
--- a/apps/s_server.c
+++ b/apps/s_server.c
@@ -1956,10 +1956,6 @@
ssl_excert_free(exc);
sk_OPENSSL_STRING_free(ssl_args);
SSL_CONF_CTX_free(cctx);
-#ifndef OPENSSL_NO_JPAKE
- if (jpake_secret && psk_key)
- OPENSSL_free(psk_key);
-#endif
BIO_free(bio_s_out);
bio_s_out = NULL;
BIO_free(bio_s_msg);
@@ -2931,8 +2927,7 @@
err:
if (ret >= 0)
BIO_printf(bio_s_out, "ACCEPT\n");
- if (buf != NULL)
- OPENSSL_free(buf);
+ OPENSSL_free(buf);
BIO_free_all(io);
return (ret);
}
@@ -3065,8 +3060,7 @@
err:
- if (buf != NULL)
- OPENSSL_free(buf);
+ OPENSSL_free(buf);
BIO_free_all(io);
return (ret);
}
diff --git a/apps/s_socket.c b/apps/s_socket.c
index caa5b61..29240e8 100644
--- a/apps/s_socket.c
+++ b/apps/s_socket.c
@@ -354,8 +354,7 @@
} else
sock = accept_socket;
i = (*cb) (name, sock, type, context);
- if (name != NULL)
- OPENSSL_free(name);
+ OPENSSL_free(name);
if (type == SOCK_STREAM)
SHUTDOWN2(sock);
if (naccept != -1)
diff --git a/apps/smime.c b/apps/smime.c
index 0fda865..8b8520b 100644
--- a/apps/smime.c
+++ b/apps/smime.c
@@ -664,8 +664,7 @@
BIO_free(in);
BIO_free(indata);
BIO_free_all(out);
- if (passin)
- OPENSSL_free(passin);
+ OPENSSL_free(passin);
return (ret);
}
diff --git a/apps/speed.c b/apps/speed.c
index 08ab9c5..a5bd265 100644
--- a/apps/speed.c
+++ b/apps/speed.c
@@ -2529,8 +2529,6 @@
fprintf(stdout, "\n");
}
- if (inp)
- OPENSSL_free(inp);
- if (out)
- OPENSSL_free(out);
+ OPENSSL_free(inp);
+ OPENSSL_free(out);
}
diff --git a/apps/spkac.c b/apps/spkac.c
index 7ceff9f..abae0e1 100644
--- a/apps/spkac.c
+++ b/apps/spkac.c
@@ -240,7 +240,6 @@
BIO_free(in);
BIO_free_all(out);
EVP_PKEY_free(pkey);
- if (passin)
- OPENSSL_free(passin);
+ OPENSSL_free(passin);
return (ret);
}
diff --git a/apps/srp.c b/apps/srp.c
index b984c14..960ca82 100644
--- a/apps/srp.c
+++ b/apps/srp.c
@@ -384,10 +384,8 @@
errorline, configfile);
goto end;
}
- if (tofree) {
- OPENSSL_free(tofree);
- tofree = NULL;
- }
+ OPENSSL_free(tofree);
+ tofree = NULL;
/* Lets get the config section we are using */
if (section == NULL) {
@@ -519,26 +517,16 @@
row[DB_srpgN] = BUF_strdup(gNid);
if (!row[DB_srpid] || !row[DB_srpgN] || !row[DB_srptype]
- || !row[DB_srpverifier] || !row[DB_srpsalt] || (userinfo
- &&
- (!(row
- [DB_srpinfo]
- =
- BUF_strdup
- (userinfo))))
+ || !row[DB_srpverifier] || !row[DB_srpsalt]
+ || (userinfo &&
+ (!(row [DB_srpinfo] = BUF_strdup (userinfo))))
|| !update_index(db, row)) {
- if (row[DB_srpid])
- OPENSSL_free(row[DB_srpid]);
- if (row[DB_srpgN])
- OPENSSL_free(row[DB_srpgN]);
- if (row[DB_srpinfo])
- OPENSSL_free(row[DB_srpinfo]);
- if (row[DB_srptype])
- OPENSSL_free(row[DB_srptype]);
- if (row[DB_srpverifier])
- OPENSSL_free(row[DB_srpverifier]);
- if (row[DB_srpsalt])
- OPENSSL_free(row[DB_srpsalt]);
+ OPENSSL_free(row[DB_srpid]);
+ OPENSSL_free(row[DB_srpgN]);
+ OPENSSL_free(row[DB_srpinfo]);
+ OPENSSL_free(row[DB_srptype]);
+ OPENSSL_free(row[DB_srpverifier]);
+ OPENSSL_free(row[DB_srpsalt]);
goto end;
}
doupdatedb = 1;
@@ -676,8 +664,7 @@
if (verbose)
BIO_printf(bio_err, "SRP terminating with code %d.\n", ret);
- if (tofree)
- OPENSSL_free(tofree);
+ OPENSSL_free(tofree);
if (ret)
ERR_print_errors(bio_err);
if (randfile)
diff --git a/apps/x509.c b/apps/x509.c
index 5418cce..31ae38a 100644
--- a/apps/x509.c
+++ b/apps/x509.c
@@ -955,8 +955,7 @@
ASN1_INTEGER_free(sno);
sk_ASN1_OBJECT_pop_free(trust, ASN1_OBJECT_free);
sk_ASN1_OBJECT_pop_free(reject, ASN1_OBJECT_free);
- if (passin)
- OPENSSL_free(passin);
+ OPENSSL_free(passin);
return (ret);
}
@@ -996,8 +995,7 @@
goto end;
end:
- if (buf)
- OPENSSL_free(buf);
+ OPENSSL_free(buf);
BN_free(serial);
return bs;
}