123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- From b57d77dcfa5cb363b7eba5b331324669a8505ac4 Mon Sep 17 00:00:00 2001
- From: Mike Frysinger <vapier@gentoo.org>
- Date: Thu, 24 Jan 2013 23:32:39 -0500
- Subject: [PATCH [iputils]] ping6: allow disabling of openssl support
- Signed-off-by: Mike Frysinger <vapier@gentoo.org>
- ---
- Makefile | 5 ++++-
- ping6.c | 14 +++++++++++++-
- 2 files changed, 17 insertions(+), 2 deletions(-)
- diff --git a/Makefile b/Makefile
- index 89249f5..2c49940 100644
- --- a/Makefile
- +++ b/Makefile
- @@ -36,7 +36,7 @@ ARPING_DEFAULT_DEVICE=
-
- # GNU TLS library for ping6 [yes|no|static]
- USE_GNUTLS=yes
- -# Crypto library for ping6 [shared|static]
- +# Crypto library for ping6 [shared|static|no]
- USE_CRYPTO=shared
- # Resolv library for ping6 [yes|static]
- USE_RESOLV=yes
- @@ -63,7 +63,10 @@ ifneq ($(USE_GNUTLS),no)
- LIB_CRYPTO = $(call FUNC_LIB,$(USE_GNUTLS),$(LDFLAG_GNUTLS))
- DEF_CRYPTO = -DUSE_GNUTLS
- else
- +ifneq ($(USE_CRYPTO),no)
- LIB_CRYPTO = $(call FUNC_LIB,$(USE_CRYPTO),$(LDFLAG_CRYPTO))
- + DEF_CRYPTO = -DUSE_OPENSSL
- +endif
- endif
-
- # USE_RESOLV: LIB_RESOLV
- diff --git a/ping6.c b/ping6.c
- index c39864d..f2f90af 100644
- --- a/ping6.c
- +++ b/ping6.c
- @@ -168,8 +168,10 @@ static int icmp_sock;
-
- #ifdef USE_GNUTLS
- # include <gnutls/openssl.h>
- -#else
- +# define USE_CRYPTO
- +#elif defined USE_OPENSSL
- # include <openssl/md5.h>
- +# define USE_CRYPTO
- #endif
-
- /* Node Information query */
- @@ -326,6 +328,7 @@ static void niquery_init_nonce(void)
- #if !PING6_NONCE_MEMORY
- static int niquery_nonce(__u8 *nonce, int fill)
- {
- +# ifdef USE_CRYPTO
- static __u8 digest[MD5_DIGEST_LENGTH];
- static int seq = -1;
-
- @@ -348,6 +351,10 @@ static int niquery_nonce(__u8 *nonce, int fill)
- return -1;
- return ntohsp((__u16 *)nonce);
- }
- +# else
- + fprintf(stderr, "ping6: function not available; crypto disabled\n");
- + exit(3);
- +# endif
- }
- #endif
-
- @@ -502,6 +509,7 @@ static int niquery_option_subject_addr_handler(int index, const char *arg)
-
- static int niquery_option_subject_name_handler(int index, const char *arg)
- {
- +#ifdef USE_CRYPTO
- static char nigroup_buf[INET6_ADDRSTRLEN + 1 + IFNAMSIZ];
- unsigned char *dnptrs[2], **dpp, **lastdnptr;
- int n;
- @@ -627,6 +635,10 @@ errexit:
- free(idn);
- free(name);
- exit(1);
- +#else
- + fprintf(stderr, "ping6: function not available; crypto disabled\n");
- + exit(3);
- +#endif
- }
-
- int niquery_option_help_handler(int index, const char *arg)
- --
- 1.8.0.2
|