diff options
Diffstat (limited to 'src/lib/libcrypto/ec/ec_lib.c')
-rw-r--r-- | src/lib/libcrypto/ec/ec_lib.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/lib/libcrypto/ec/ec_lib.c b/src/lib/libcrypto/ec/ec_lib.c index 7cc7efe73f..36f42ecc05 100644 --- a/src/lib/libcrypto/ec/ec_lib.c +++ b/src/lib/libcrypto/ec/ec_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ec_lib.c,v 1.125 2025/05/24 08:25:58 jsing Exp $ */ | 1 | /* $OpenBSD: ec_lib.c,v 1.126 2025/08/02 15:47:27 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Originally written by Bodo Moeller for the OpenSSL project. | 3 | * Originally written by Bodo Moeller for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -165,6 +165,10 @@ EC_GROUP_copy(EC_GROUP *dst, const EC_GROUP *src) | |||
165 | 165 | ||
166 | dst->a_is_minus3 = src->a_is_minus3; | 166 | dst->a_is_minus3 = src->a_is_minus3; |
167 | 167 | ||
168 | memcpy(&dst->fm, &src->fm, sizeof(src->fm)); | ||
169 | memcpy(&dst->fe_a, &src->fe_a, sizeof(src->fe_a)); | ||
170 | memcpy(&dst->fe_b, &src->fe_b, sizeof(src->fe_b)); | ||
171 | |||
168 | BN_MONT_CTX_free(dst->mont_ctx); | 172 | BN_MONT_CTX_free(dst->mont_ctx); |
169 | dst->mont_ctx = NULL; | 173 | dst->mont_ctx = NULL; |
170 | if (src->mont_ctx != NULL) { | 174 | if (src->mont_ctx != NULL) { |
@@ -860,6 +864,10 @@ EC_POINT_copy(EC_POINT *dst, const EC_POINT *src) | |||
860 | return 0; | 864 | return 0; |
861 | dst->Z_is_one = src->Z_is_one; | 865 | dst->Z_is_one = src->Z_is_one; |
862 | 866 | ||
867 | memcpy(&dst->fe_x, &src->fe_x, sizeof(dst->fe_x)); | ||
868 | memcpy(&dst->fe_y, &src->fe_y, sizeof(dst->fe_y)); | ||
869 | memcpy(&dst->fe_z, &src->fe_z, sizeof(dst->fe_z)); | ||
870 | |||
863 | return 1; | 871 | return 1; |
864 | } | 872 | } |
865 | LCRYPTO_ALIAS(EC_POINT_copy); | 873 | LCRYPTO_ALIAS(EC_POINT_copy); |