From ae15d22ab59c8d01b7934d49d7cd40c7f76ca86a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Sat, 7 Feb 2004 18:13:44 +0100 Subject: [PATCH] * pgp-encode.c [!HAVE_LIBGMP]: Kludge around the pgp.h's dependency on gmp.h. (pgp_put_mpi): Condition on HAVE_LIBGMP. * pgp.h: Don't include bignum.h, to make it possible to compile the non-bignum parts of pgp-encode.c without bignum support. Needs to be fixed properly before the pgp interface is advertised. Rev: src/nettle/pgp-encode.c:1.8 Rev: src/nettle/pgp.h:1.6 --- pgp-encode.c | 21 +++++++++++++++------ pgp.h | 4 +++- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/pgp-encode.c b/pgp-encode.c index 5154bce6..22d2281a 100644 --- a/pgp-encode.c +++ b/pgp-encode.c @@ -31,17 +31,24 @@ #include <stdlib.h> #include <string.h> -#include "pgp.h" +#if HAVE_LIBGMP +# include "bignum.h" +# include "pgp.h" +#else /* !HAVE_LIBGMP */ +/* Kludge to make it possible to include pgp.h */ +# define mpz_t int +# include "pgp.h" +# undef mpz_t +#endif /* !HAVE_LIBGMP */ + +#if WITH_PUBLIC_KEY +# include "rsa.h" +#endif #include "base64.h" #include "buffer.h" #include "macros.h" -#if WITH_PUBLIC_KEY -# include "bignum.h" -# include "rsa.h" -#endif /* WITH_PUBLIC_KEY */ - int pgp_put_uint32(struct nettle_buffer *buffer, uint32_t i) { @@ -64,6 +71,7 @@ pgp_put_uint16(struct nettle_buffer *buffer, unsigned i) return 1; } +#if HAVE_LIBGMP int pgp_put_mpi(struct nettle_buffer *buffer, const mpz_t x) { @@ -85,6 +93,7 @@ pgp_put_mpi(struct nettle_buffer *buffer, const mpz_t x) return 1; } +#endif int pgp_put_string(struct nettle_buffer *buffer, diff --git a/pgp.h b/pgp.h index b9103ebd..2bd9a30d 100644 --- a/pgp.h +++ b/pgp.h @@ -28,7 +28,9 @@ #include <time.h> -#include "bignum.h" +/* FIXME: User must include bignum.h before this file, in order to get + mpz_t defined. We don't do that here, in order to kludge through + compilation without public key support and without gmp.h. */ /* Name mangling */ #define pgp_put_uint32 nettle_pgp_put_uint32 -- GitLab