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
#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)
{
return 1;
}
+#if HAVE_LIBGMP
int
pgp_put_mpi(struct nettle_buffer *buffer, const mpz_t x)
{
return 1;
}
+#endif
int
pgp_put_string(struct nettle_buffer *buffer,
#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