summaryrefslogtreecommitdiff
path: root/mpi/ec.c
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2017-07-18 10:16:07 +0200
committerWerner Koch <wk@gnupg.org>2017-07-18 10:16:16 +0200
commitecf73dafb7aafed0d0f339d07235b58c2113f94c (patch)
tree8f3f5322b6943fa2859bf1fa1a1c9fef5486d195 /mpi/ec.c
parentde1e12504dd72bbedd3441be9aab3cad6dbca251 (diff)
downloadlibgcrypt-ecf73dafb7aafed0d0f339d07235b58c2113f94c.tar.gz
api: New function gcry_mpi_point_copy.
* src/gcrypt.h.in (gcry_mpi_point_copy): New. (mpi_point_copy): New macro. * src/visibility.c (gcry_mpi_point_copy): New. * src/libgcrypt.def, src/libgcrypt.vers: Add function. * mpi/ec.c (_gcry_mpi_point_copy): New. * tests/t-mpi-point.c (set_get_point): Add test. Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'mpi/ec.c')
-rw-r--r--mpi/ec.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/mpi/ec.c b/mpi/ec.c
index 8a6a656c..a0f73575 100644
--- a/mpi/ec.c
+++ b/mpi/ec.c
@@ -139,6 +139,20 @@ point_set (mpi_point_t d, mpi_point_t s)
}
+/* Return a copy of POINT. */
+gcry_mpi_point_t
+_gcry_mpi_point_copy (gcry_mpi_point_t point)
+{
+ mpi_point_t newpoint;
+
+ newpoint = _gcry_mpi_point_new (0);
+ if (point)
+ point_set (newpoint, point);
+
+ return newpoint;
+}
+
+
static void
point_resize (mpi_point_t p, mpi_ec_t ctx)
{