From 3f0c8f7425b63dc988d48a75633f7a56b163aaad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Wed, 9 Oct 2002 09:34:57 +0200
Subject: [PATCH] * nettle-meta.h: Moved the nettle_random_func and
 nettle_progress_func typedefs here... * rsa.h: ... from here.

Rev: src/nettle/nettle-meta.h:1.7
Rev: src/nettle/rsa.h:1.14
---
 nettle-meta.h |  8 ++++++++
 rsa.h         | 16 +++++++---------
 2 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/nettle-meta.h b/nettle-meta.h
index b5375a85..759037c8 100644
--- a/nettle-meta.h
+++ b/nettle-meta.h
@@ -28,6 +28,14 @@
 
 #include <inttypes.h>
 
+/* Randomness. Used by key generation and dsa signature creation. */
+typedef void (*nettle_random_func)(void *ctx,
+				   unsigned length, uint8_t *dst);
+
+/* Progress report function, mainly for key generation. */
+typedef void (*nettle_progress_func)(void *ctx,
+				     int c);
+
 /* Ciphers */
 typedef void (*nettle_crypt_func)(void *ctx,
 				  unsigned length, uint8_t *dst,
diff --git a/rsa.h b/rsa.h
index 90a7f60b..9f98db1a 100644
--- a/rsa.h
+++ b/rsa.h
@@ -32,11 +32,8 @@
 #include "md5.h"
 #include "sha.h"
 
-/* Randomness function. This typedef doesn't really belong here, but
- * so far it's used only by rsa functions (encryption and key
- * generation) */
-typedef void (*nettle_random_func)(void *ctx,
-				   unsigned length, uint8_t *dst);
+/* For nettle_random_func */
+#include "nettle-meta.h"
 
 
 /* For PKCS#1 to make sense, the size of the modulo, in octets, must
@@ -106,6 +103,11 @@ struct rsa_private_key
  * mpz_clear.
  */
 
+/* FIXME: For consistency, these functions ought to be renamed to
+ * rsa_public_key_init, rsa_public_key_clear, rsa_private_key_init,
+ * rsa_private_key_clear. Perhaps the prepare functions should be
+ * renamed too. Do this for nettle-2.0? */
+ 
 /* Calls mpz_init to initialize bignum storage. */
 void
 rsa_init_public_key(struct rsa_public_key *key);
@@ -183,10 +185,6 @@ rsa_compute_root(struct rsa_private_key *key, mpz_t x, const mpz_t m);
 
 /* Key generation */
 
-/* Progress report function. */
-typedef void (*nettle_progress_func)(void *ctx,
-				     int c);
-
 /* Note that the key structs must be initialized first. */
 int
 rsa_generate_keypair(struct rsa_public_key *pub,
-- 
GitLab