From: Harlan Stenn Date: Mon, 22 Dec 2014 05:59:33 +0000 (+0000) Subject: [Bug 2693] ntp-keygen doesn't build without OpenSSL X-Git-Tag: NTP_4_2_8P1_BETA1~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a8cc4e3bd59c6ee5d22af62e1e9cef8530310571;p=thirdparty%2Fntp.git [Bug 2693] ntp-keygen doesn't build without OpenSSL bk: 5497b345z5MNTuNvJWuqPSje25NQTg --- diff --git a/ChangeLog b/ChangeLog index 43d840815..10b5d225e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,8 @@ --- * [Sec 2672] On some OSes ::1 can be spoofed, bypassing source IP ACLs. -* [Bug 2699] IN6_IS_ADDR_LOOPBACK build problems on some OSes. +* [Bug 2693] ntp-keygen doesn't build without OpenSSL. +* [Bug 2697] IN6_IS_ADDR_LOOPBACK build problems on some OSes. * [Bug 2699] HAVE_SYS_SELECT_H is misspelled in refclock_gpsdjson.c. --- (4.2.8) 2014/12/19 Released by Harlan Stenn diff --git a/Makefile.am b/Makefile.am index 2908f96cd..fc76719f0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,7 +2,10 @@ ACLOCAL_AMFLAGS = -I sntp/m4 -I sntp/libevent/m4 -I sntp/libopts/m4 NULL = +# moved sntp first to get libtool and libevent built. + SUBDIRS = \ + sntp \ scripts \ include \ libntp \ @@ -17,7 +20,6 @@ SUBDIRS = \ clockstuff \ kernel \ util \ - sntp \ tests \ $(NULL) @@ -64,7 +66,6 @@ BUILT_SOURCES = \ .gcc-warning \ libtool \ html/.datecheck \ - sntp/built-sources-only \ $(srcdir)/COPYRIGHT \ $(srcdir)/.checkChangeLog \ $(NULL) diff --git a/configure.ac b/configure.ac index a7d344a21..dd73795fa 100644 --- a/configure.ac +++ b/configure.ac @@ -102,7 +102,7 @@ esac enable_nls=no LIBOPTS_CHECK_NOBUILD([sntp/libopts]) -NTP_ENABLE_LOCAL_LIBEVENT +NTP_LIBEVENT_CHECK_NOBUILD([2], [sntp/libevent]) NTP_LIBNTP @@ -771,6 +771,10 @@ esac #### +AC_CHECK_FUNCS([arc4random_buf]) + +#### + saved_LIBS="$LIBS" LIBS="$LIBS $LDADD_LIBNTP" AC_CHECK_FUNCS([daemon]) diff --git a/libntp/ntp_crypto_rnd.c b/libntp/ntp_crypto_rnd.c index 62a808db3..6cc8f5d7e 100644 --- a/libntp/ntp_crypto_rnd.c +++ b/libntp/ntp_crypto_rnd.c @@ -24,6 +24,21 @@ int crypto_rand_init = 0; #endif +#ifndef HAVE_ARC4RANDOM_BUF +static void +arc4random_buf(void *buf, size_t nbytes); + +void +evutil_secure_rng_get_bytes(void *buf, size_t nbytes); + +static void +arc4random_buf(void *buf, size_t nbytes) +{ + evutil_secure_rng_get_bytes(buf, nbytes); + return; +} +#endif + /* * As of late 2014, here's how we plan to provide cryptographic-quality * random numbers: diff --git a/sntp/configure.ac b/sntp/configure.ac index e10346849..172c6b1a1 100644 --- a/sntp/configure.ac +++ b/sntp/configure.ac @@ -97,11 +97,14 @@ esac enable_nls=no LIBOPTS_CHECK -AM_COND_IF( - [BUILD_SNTP], - [NTP_LIBEVENT_CHECK], - [NTP_LIBEVENT_CHECK_NOBUILD] -) +# From when we only used libevent for sntp: +#AM_COND_IF( +# [BUILD_SNTP], +# [NTP_LIBEVENT_CHECK], +# [NTP_LIBEVENT_CHECK_NOBUILD] +#) + +NTP_LIBEVENT_CHECK([2]) # Checks for libraries. diff --git a/sntp/m4/ntp_libevent.m4 b/sntp/m4/ntp_libevent.m4 index 5f81ae905..54174f05a 100644 --- a/sntp/m4/ntp_libevent.m4 +++ b/sntp/m4/ntp_libevent.m4 @@ -1,4 +1,25 @@ -dnl NTP_ENABLE_LOCAL_LIBEVENT -*- Autoconf -*- +# SYNOPSIS -*- Autoconf -*- +# +# NTP_ENABLE_LOCAL_LIBEVENT +# NTP_LIBEVENT_CHECK([MINVERSION [, DIR]]) +# NTP_LIBEVENT_CHECK_NOBUILD([MINVERSION [, DIR]]) +# +# DESCRIPTION +# +# AUTHOR +# +# Harlan Stenn +# +# LICENSE +# +# This file is Copyright (c) 2014 Network Time Foundation +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice, +# author attribution and this notice are preserved. This file is offered +# as-is, without any warranty. + +dnl NTP_ENABLE_LOCAL_LIBEVENT dnl dnl Provide only the --enable-local-libevent command-line option. dnl @@ -29,7 +50,7 @@ dnl If NOBUILD is provided as the 3rd argument, do all of the above, dnl but DO NOT invoke DIR/configure if we are going to use our bundled dnl version. This may be the case for nested packages. dnl -dnl provide --enable-local-libevent . +dnl provides: --enable-local-libevent dnl dnl Examples: dnl diff --git a/util/Makefile.am b/util/Makefile.am index 4265e0b4b..88bf7cb02 100644 --- a/util/Makefile.am +++ b/util/Makefile.am @@ -19,6 +19,7 @@ AM_LDFLAGS = $(LDFLAGS_NTP) LDADD= ../libntp/libntp.a $(LDADD_LIBNTP) $(LIBM) $(PTHREAD_LIBS) tg2_LDADD= ../libntp/libntp.a $(LDADD_LIBNTP) $(LIBM) ntp_keygen_LDADD = version.o $(LIBOPTS_LDADD) ../libntp/libntp.a +ntp_keygen_LDADD += $(LDADD_LIBEVENT) ntp_keygen_LDADD += $(LDADD_LIBNTP) $(PTHREAD_LIBS) $(LDADD_NTP) $(LIBM) ntp_keygen_SOURCES = ntp-keygen.c ntp-keygen-opts.c ntp-keygen-opts.h