From f0935698f0461f24d8d1f1107b476ee5fd4db1cb Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Wed, 20 Aug 2014 11:06:50 +1000 Subject: - (djm) [sshkey.h] Fix compilation when OpenSSL lacks ECC --- ChangeLog | 1 + sshkey.h | 38 ++++++++++++++++++++++++-------------- 2 files changed, 25 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2ab238d4..1abd358a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,7 @@ suggested by Kevin Brott - (djm) [Makefile.in] refer to libtest_helper.a by explicit path rather than -L/-l; fixes linking problems on some platforms + - (djm) [sshkey.h] Fix compilation when OpenSSL lacks ECC 20140819 - (djm) [serverloop.c] Fix syntax error on Cygwin; from Corinna Vinschen diff --git a/sshkey.h b/sshkey.h index 4127db24..450b30c1 100644 --- a/sshkey.h +++ b/sshkey.h @@ -31,13 +31,19 @@ #ifdef WITH_OPENSSL #include #include -#include -#else /* OPENSSL */ -#define RSA void -#define DSA void -#define EC_KEY void -#define EC_GROUP void -#define EC_POINT void +# ifdef OPENSSL_HAS_ECC +# include +# else /* OPENSSL_HAS_ECC */ +# define EC_KEY void +# define EC_GROUP void +# define EC_POINT void +# endif /* OPENSSL_HAS_ECC */ +#else /* WITH_OPENSSL */ +# define RSA void +# define DSA void +# define EC_KEY void +# define EC_GROUP void +# define EC_POINT void #endif /* WITH_OPENSSL */ #define SSH_RSA_MINIMUM_MODULUS_SIZE 768 @@ -211,12 +217,16 @@ int ssh_ed25519_verify(const struct sshkey *key, const u_char *data, size_t datalen, u_int compat); #endif -#ifndef WITH_OPENSSL -#undef RSA -#undef DSA -#undef EC_KEY -#undef EC_GROUP -#undef EC_POINT -#endif /* WITH_OPENSSL */ +#if !defined(WITH_OPENSSL) +# undef RSA +# undef DSA +# undef EC_KEY +# undef EC_GROUP +# undef EC_POINT +#elif !defined(OPENSSL_HAS_ECC) +# undef EC_KEY +# undef EC_GROUP +# undef EC_POINT +#endif #endif /* SSHKEY_H */ -- cgit v1.2.3