diff options
author | tb <> | 2024-11-08 21:56:58 +0000 |
---|---|---|
committer | tb <> | 2024-11-08 21:56:58 +0000 |
commit | 87e01b19e22b5aa813af998b149eb34fd96de895 (patch) | |
tree | f45e83abb03af3e8624bd646ee394b1468a99a81 /src/lib | |
parent | e71b1edd47d2200ba7c87b037cee0587f6dedf1e (diff) | |
download | openbsd-87e01b19e22b5aa813af998b149eb34fd96de895.tar.gz openbsd-87e01b19e22b5aa813af998b149eb34fd96de895.tar.bz2 openbsd-87e01b19e22b5aa813af998b149eb34fd96de895.zip |
Clean up EC_KEY_free
r is a silly name for an EC_KEY and it is silly to assign the refcount
to a variable i (short for uninspired) when you can check the function
return directly. Tweak sizeof in freezero to jsing's liking.
ok beck jsing
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/libcrypto/ec/ec_key.c | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/src/lib/libcrypto/ec/ec_key.c b/src/lib/libcrypto/ec/ec_key.c index c8f4c15bb5..753ababa31 100644 --- a/src/lib/libcrypto/ec/ec_key.c +++ b/src/lib/libcrypto/ec/ec_key.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ec_key.c,v 1.43 2024/11/08 21:53:54 tb Exp $ */ | 1 | /* $OpenBSD: ec_key.c,v 1.44 2024/11/08 21:56:58 tb Exp $ */ |
2 | /* | 2 | /* |
3 | * Written by Nils Larsch for the OpenSSL project. | 3 | * Written by Nils Larsch for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -104,27 +104,24 @@ EC_KEY_new_by_curve_name(int nid) | |||
104 | LCRYPTO_ALIAS(EC_KEY_new_by_curve_name); | 104 | LCRYPTO_ALIAS(EC_KEY_new_by_curve_name); |
105 | 105 | ||
106 | void | 106 | void |
107 | EC_KEY_free(EC_KEY *r) | 107 | EC_KEY_free(EC_KEY *ec_key) |
108 | { | 108 | { |
109 | int i; | 109 | if (ec_key == NULL) |
110 | |||
111 | if (r == NULL) | ||
112 | return; | 110 | return; |
113 | 111 | ||
114 | i = CRYPTO_add(&r->references, -1, CRYPTO_LOCK_EC); | 112 | if (CRYPTO_add(&ec_key->references, -1, CRYPTO_LOCK_EC) > 0) |
115 | if (i > 0) | ||
116 | return; | 113 | return; |
117 | 114 | ||
118 | if (r->meth != NULL && r->meth->finish != NULL) | 115 | if (ec_key->meth != NULL && ec_key->meth->finish != NULL) |
119 | r->meth->finish(r); | 116 | ec_key->meth->finish(ec_key); |
120 | 117 | ||
121 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_EC_KEY, r, &r->ex_data); | 118 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_EC_KEY, ec_key, &ec_key->ex_data); |
122 | 119 | ||
123 | EC_GROUP_free(r->group); | 120 | EC_GROUP_free(ec_key->group); |
124 | EC_POINT_free(r->pub_key); | 121 | EC_POINT_free(ec_key->pub_key); |
125 | BN_free(r->priv_key); | 122 | BN_free(ec_key->priv_key); |
126 | 123 | ||
127 | freezero(r, sizeof(EC_KEY)); | 124 | freezero(ec_key, sizeof(*ec_key)); |
128 | } | 125 | } |
129 | LCRYPTO_ALIAS(EC_KEY_free); | 126 | LCRYPTO_ALIAS(EC_KEY_free); |
130 | 127 | ||