diff options
author | Werner Koch <wk@gnupg.org> | 2013-11-04 16:47:13 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2013-11-05 17:26:52 +0100 |
commit | 630aca794ddf057fb7265b7dc346374743036af4 (patch) | |
tree | 3c9d55d4567e3c2c919ebd720c6798df50eeedb4 /tests/mpitests.c | |
parent | d50a88d1e29124d038196fec6082fd093e922604 (diff) | |
download | libgcrypt-630aca794ddf057fb7265b7dc346374743036af4.tar.gz |
mpi: Add function gcry_mpi_set_opaque_copy.
* src/gcrypt.h.in (gcry_mpi_set_opaque_copy): New.
* src/visibility.c (gcry_mpi_set_opaque_copy): New.
* src/visibility.h (gcry_mpi_set_opaque_copy): Mark visible.
* src/libgcrypt.def, src/libgcrypt.vers: Add new API.
* tests/mpitests.c (test_opaque): Add test.
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'tests/mpitests.c')
-rw-r--r-- | tests/mpitests.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/mpitests.c b/tests/mpitests.c index c5c60d71..1c4edb66 100644 --- a/tests/mpitests.c +++ b/tests/mpitests.c @@ -213,6 +213,24 @@ test_opaque (void) if (debug) gcry_log_debugmpi ("mpi", a); + p = gcry_xstrdup ("This is a test buffer"); + a = gcry_mpi_set_opaque_copy (NULL, p, 21*8+1); + gcry_free (p); + + if (!gcry_mpi_get_flag (a, GCRYMPI_FLAG_OPAQUE)) + die ("opaque flag not set\n"); + + p = gcry_mpi_get_opaque (a, &nbits); + if (!p) + die ("gcry_mpi_get_opaque returned NULL\n"); + if (nbits != 21*8+1) + die ("gcry_mpi_get_opaque returned a changed bit size\n"); + if (strcmp (p, "This is a test buffer")) + die ("gcry_mpi_get_opaque returned a changed buffer\n"); + + if (debug) + gcry_log_debugmpi ("mpi", a); + gcry_mpi_release (a); } |