summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ecdh/ech_lib.c
diff options
context:
space:
mode:
authormiod <>2014-04-13 15:16:40 +0000
committermiod <>2014-04-13 15:16:40 +0000
commit52628ee3f51f011b463aaedb1a28aa0524b43cb3 (patch)
tree4bd2adeac981051908ec5756401424bbb4e57d6a /src/lib/libcrypto/ecdh/ech_lib.c
parent40c22d3625a3818690c889ed6216fedf2be522c9 (diff)
downloadopenbsd-52628ee3f51f011b463aaedb1a28aa0524b43cb3.tar.gz
openbsd-52628ee3f51f011b463aaedb1a28aa0524b43cb3.tar.bz2
openbsd-52628ee3f51f011b463aaedb1a28aa0524b43cb3.zip
Import OpenSSL 1.0.1g
Diffstat (limited to 'src/lib/libcrypto/ecdh/ech_lib.c')
-rw-r--r--src/lib/libcrypto/ecdh/ech_lib.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/libcrypto/ecdh/ech_lib.c b/src/lib/libcrypto/ecdh/ech_lib.c
index dadbfd3c49..0644431b75 100644
--- a/src/lib/libcrypto/ecdh/ech_lib.c
+++ b/src/lib/libcrypto/ecdh/ech_lib.c
@@ -222,8 +222,15 @@ ECDH_DATA *ecdh_check(EC_KEY *key)
222 ecdh_data = (ECDH_DATA *)ecdh_data_new(); 222 ecdh_data = (ECDH_DATA *)ecdh_data_new();
223 if (ecdh_data == NULL) 223 if (ecdh_data == NULL)
224 return NULL; 224 return NULL;
225 EC_KEY_insert_key_method_data(key, (void *)ecdh_data, 225 data = EC_KEY_insert_key_method_data(key, (void *)ecdh_data,
226 ecdh_data_dup, ecdh_data_free, ecdh_data_free); 226 ecdh_data_dup, ecdh_data_free, ecdh_data_free);
227 if (data != NULL)
228 {
229 /* Another thread raced us to install the key_method
230 * data and won. */
231 ecdh_data_free(ecdh_data);
232 ecdh_data = (ECDH_DATA *)data;
233 }
227 } 234 }
228 else 235 else
229 ecdh_data = (ECDH_DATA *)data; 236 ecdh_data = (ECDH_DATA *)data;