Provide internal-only EC_GROUP_get0_order()
authortb <tb@openbsd.org>
Mon, 3 Jul 2023 07:26:40 +0000 (07:26 +0000)
committertb <tb@openbsd.org>
Mon, 3 Jul 2023 07:26:40 +0000 (07:26 +0000)
ok jsing

lib/libcrypto/ec/ec_lib.c
lib/libcrypto/ec/ec_local.h

index 2e180e9..8cea0bb 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ec_lib.c,v 1.61 2023/06/25 18:52:27 tb Exp $ */
+/* $OpenBSD: ec_lib.c,v 1.62 2023/07/03 07:26:40 tb Exp $ */
 /*
  * Originally written by Bodo Moeller for the OpenSSL project.
  */
@@ -357,7 +357,6 @@ EC_GROUP_get0_generator(const EC_GROUP *group)
        return group->generator;
 }
 
-
 int
 EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx)
 {
@@ -367,6 +366,12 @@ EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx)
        return !BN_is_zero(order);
 }
 
+const BIGNUM *
+EC_GROUP_get0_order(const EC_GROUP *group)
+{
+       return &group->order;
+}
+
 int
 EC_GROUP_order_bits(const EC_GROUP *group)
 {
index a058878..0d219e8 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ec_local.h,v 1.22 2023/06/27 07:31:18 tb Exp $ */
+/* $OpenBSD: ec_local.h,v 1.23 2023/07/03 07:26:40 tb Exp $ */
 /*
  * Originally written by Bodo Moeller for the OpenSSL project.
  */
@@ -360,4 +360,7 @@ int EC_POINT_set_Jprojective_coordinates(const EC_GROUP *group, EC_POINT *p,
 int EC_POINT_get_Jprojective_coordinates(const EC_GROUP *group,
     const EC_POINT *p, BIGNUM *x, BIGNUM *y, BIGNUM *z, BN_CTX *ctx);
 
+/* Public API in OpenSSL */
+const BIGNUM *EC_GROUP_get0_order(const EC_GROUP *group);
+
 __END_HIDDEN_DECLS