From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 616451395E2 for ; Mon, 28 Nov 2016 22:44:12 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B3413E0B25; Mon, 28 Nov 2016 22:44:11 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 66A0FE0B25 for ; Mon, 28 Nov 2016 22:44:11 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6E917341342 for ; Mon, 28 Nov 2016 22:44:10 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id D2938332 for ; Mon, 28 Nov 2016 22:44:08 +0000 (UTC) From: "Thomas Deutschmann" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Thomas Deutschmann" Message-ID: <1480373043.a118911c3b6177dd447258f6a334a5a2c7314948.whissi@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/ntp/files/, net-misc/ntp/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-misc/ntp/files/ntp-4.2.8_p9-fix-build-wo-ssl-or-libressl.patch net-misc/ntp/ntp-4.2.8_p9.ebuild X-VCS-Directories: net-misc/ntp/files/ net-misc/ntp/ X-VCS-Committer: whissi X-VCS-Committer-Name: Thomas Deutschmann X-VCS-Revision: a118911c3b6177dd447258f6a334a5a2c7314948 X-VCS-Branch: master Date: Mon, 28 Nov 2016 22:44:08 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 54873394-5fa1-4b2f-a29e-f736ab055f51 X-Archives-Hash: ff7735bdf76f1c8a97ea308c0ebb2242 commit: a118911c3b6177dd447258f6a334a5a2c7314948 Author: Thomas Deutschmann gentoo org> AuthorDate: Mon Nov 28 22:43:09 2016 +0000 Commit: Thomas Deutschmann gentoo org> CommitDate: Mon Nov 28 22:44:03 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a118911c net-misc/ntp: Fix building w/ SSL or against libressl Acked-by: Lars Wendler gentoo.org> Gentoo-Bug: https://bugs.gentoo.org/600454 Gentoo-Bug: https://bugs.gentoo.org/600668 Package-Manager: portage-2.3.2 ...ntp-4.2.8_p9-fix-build-wo-ssl-or-libressl.patch | 236 +++++++++++++++++++++ net-misc/ntp/ntp-4.2.8_p9.ebuild | 1 + 2 files changed, 237 insertions(+) diff --git a/net-misc/ntp/files/ntp-4.2.8_p9-fix-build-wo-ssl-or-libressl.patch b/net-misc/ntp/files/ntp-4.2.8_p9-fix-build-wo-ssl-or-libressl.patch new file mode 100644 index 00000000..5166e5f --- /dev/null +++ b/net-misc/ntp/files/ntp-4.2.8_p9-fix-build-wo-ssl-or-libressl.patch @@ -0,0 +1,236 @@ +Fix building with libressl or without SSL. + +Origin: http://bugs.ntp.org/attachment.cgi?id=1481 + +LibreSSL fix from Joe Kappus (https://bugs.gentoo.org/show_bug.cgi?id=600668#c2) + +diff -Nru a/include/ntp_md5.h b/include/ntp_md5.h +--- a/include/ntp_md5.h 2016-11-23 08:35:18.248130387 +0100 ++++ b/include/ntp_md5.h 2016-11-23 08:35:18.248130387 +0100 +@@ -8,6 +8,7 @@ + + #ifdef OPENSSL + # include "openssl/evp.h" ++# include "libssl_compat.h" + #else /* !OPENSSL follows */ + /* + * Provide OpenSSL-alike MD5 API if we're not using OpenSSL +@@ -23,6 +24,9 @@ + # endif + + typedef MD5_CTX EVP_MD_CTX; ++ ++# define EVP_MD_CTX_free(c) free(c) ++# define EVP_MD_CTX_new() calloc(1, sizeof(MD5_CTX)) + # define EVP_get_digestbynid(t) NULL + # define EVP_md5() NULL + # define EVP_MD_CTX_init(c) +diff -Nru a/libntp/a_md5encrypt.c b/libntp/a_md5encrypt.c +--- a/libntp/a_md5encrypt.c 2016-11-23 08:35:18.248130387 +0100 ++++ b/libntp/a_md5encrypt.c 2016-11-23 08:35:18.248130387 +0100 +@@ -11,7 +11,6 @@ + #include "ntp.h" + #include "ntp_md5.h" /* provides OpenSSL digest API */ + #include "isc/string.h" +-#include "libssl_compat.h" + /* + * MD5authencrypt - generate message digest + * +diff -Nru a/libntp/libssl_compat.c b/libntp/libssl_compat.c +--- a/libntp/libssl_compat.c 2016-11-23 08:35:18.248130387 +0100 ++++ b/libntp/libssl_compat.c 2016-11-23 08:35:18.248130387 +0100 +@@ -15,15 +15,18 @@ + * --------------------------------------------------------------------- + */ + #include "config.h" +- +-#include +-#include +-#include +- + #include "ntp_types.h" + + /* ----------------------------------------------------------------- */ +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#ifdef OPENSSL ++# include ++# include ++# include ++#endif ++/* ----------------------------------------------------------------- */ ++ ++/* ----------------------------------------------------------------- */ ++#if defined(OPENSSL) && (OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER) + /* ----------------------------------------------------------------- */ + + #include "libssl_compat.h" +@@ -325,7 +328,7 @@ + } + + /* ----------------------------------------------------------------- */ +-#else /* OPENSSL_VERSION_NUMBER >= v1.1.0 */ ++#else /* OPENSSL && OPENSSL_VERSION_NUMBER >= v1.1.0 */ + /* ----------------------------------------------------------------- */ + + NONEMPTY_TRANSLATION_UNIT +diff -Nru a/ntpd/ntp_control.c b/ntpd/ntp_control.c +--- a/ntpd/ntp_control.c 2016-11-23 08:35:18.256130015 +0100 ++++ b/ntpd/ntp_control.c 2016-11-23 08:35:18.260129828 +0100 +@@ -33,8 +33,6 @@ + # include "ntp_syscall.h" + #endif + +-#include "libssl_compat.h" +- + /* + * Structure to hold request procedure information + */ +@@ -1653,8 +1651,10 @@ + } + + /* +- * ctl_putcal - write a decoded calendar data into the response ++ * ctl_putcal - write a decoded calendar data into the response. ++ * only used with AUTOKEY currently, so compiled conditional + */ ++#ifdef AUTOKEY + static void + ctl_putcal( + const char *tag, +@@ -1678,6 +1678,7 @@ + + return; + } ++#endif + + /* + * ctl_putfs - write a decoded filestamp into the response +@@ -1838,7 +1839,7 @@ + char * oplim; + char * iptr; + char * iplim; +- char * past_eq; ++ char * past_eq = NULL; + + optr = output; + oplim = output + sizeof(output); +diff -Nru a/ntpd/ntp_io.c b/ntpd/ntp_io.c +--- a/ntpd/ntp_io.c 2016-11-23 08:35:18.268129456 +0100 ++++ b/ntpd/ntp_io.c 2016-11-23 08:35:18.272129269 +0100 +@@ -516,13 +516,17 @@ + /* + * function to dump the contents of the interface structure + * for debugging use only. ++ * We face a dilemma here -- sockets are FDs under POSIX and ++ * actually HANDLES under Windows. So we use '%lld' as format ++ * and cast the value to 'long long'; this should not hurt ++ * with UNIX-like systems and does not truncate values on Win64. + */ + void + interface_dump(const endpt *itf) + { + printf("Dumping interface: %p\n", itf); +- printf("fd = %d\n", itf->fd); +- printf("bfd = %d\n", itf->bfd); ++ printf("fd = %lld\n", (long long)itf->fd); ++ printf("bfd = %lld\n", (long long)itf->bfd); + printf("sin = %s,\n", stoa(&itf->sin)); + sockaddr_dump(&itf->sin); + printf("bcast = %s,\n", stoa(&itf->bcast)); +@@ -570,11 +574,11 @@ + static void + print_interface(const endpt *iface, const char *pfx, const char *sfx) + { +- printf("%sinterface #%d: fd=%d, bfd=%d, name=%s, flags=0x%x, ifindex=%u, sin=%s", ++ printf("%sinterface #%d: fd=%lld, bfd=%lld, name=%s, flags=0x%x, ifindex=%u, sin=%s", + pfx, + iface->ifnum, +- iface->fd, +- iface->bfd, ++ (long long)iface->fd, ++ (long long)iface->bfd, + iface->name, + iface->flags, + iface->ifindex, +diff -Nru a/ntpd/ntp_proto.c b/ntpd/ntp_proto.c +--- a/ntpd/ntp_proto.c 2016-11-23 08:35:18.280128897 +0100 ++++ b/ntpd/ntp_proto.c 2016-11-23 08:35:18.284128711 +0100 +@@ -4054,7 +4054,7 @@ + ntoa(&peer->srcadr), peer->hmode, xkeyid, sendlen, + peer->keynumber)); + #else /* !AUTOKEY follows */ +- DPRINTF(1, ("peer_xmit: at %ld %s->%s mode %d keyid %08x len %d\n", ++ DPRINTF(1, ("peer_xmit: at %ld %s->%s mode %d keyid %08x len %zu\n", + current_time, peer->dstadr ? + ntoa(&peer->dstadr->sin) : "-", + ntoa(&peer->srcadr), peer->hmode, xkeyid, sendlen)); +diff -Nru a/ports/winnt/ntpd/ntp_iocompletionport.c b/ports/winnt/ntpd/ntp_iocompletionport.c +--- a/ports/winnt/ntpd/ntp_iocompletionport.c 2016-11-23 08:35:18.288128524 +0100 ++++ b/ports/winnt/ntpd/ntp_iocompletionport.c 2016-11-23 08:35:18.288128524 +0100 +@@ -1391,8 +1391,7 @@ + goto fail; + } + +- ; +- if ( ! (rio->ioreg_ctx = iopad = iohpCreate(rio))) { ++ if (NULL == (rio->ioreg_ctx = iopad = iohpCreate(rio))) { + msyslog(LOG_ERR, "%s: Failed to create shared lock", + msgh); + goto fail; +@@ -1401,13 +1400,13 @@ + iopad->riofd = rio->fd; + iopad->rsrc.rio = rio; + +- if (!(rio->device_ctx = DevCtxAttach(serial_devctx(h)))) { ++ if (NULL == (rio->device_ctx = DevCtxAttach(serial_devctx(h)))) { + msyslog(LOG_ERR, "%s: Failed to allocate device context", + msgh); + goto fail; + } + +- if ( ! (lpo = IoCtxAlloc(iopad, rio->device_ctx))) { ++ if (NULL == (lpo = IoCtxAlloc(iopad, rio->device_ctx))) { + msyslog(LOG_ERR, "%: Failed to allocate IO context", + msgh); + goto fail; +@@ -1594,7 +1593,6 @@ + static const char * const msg = + "OnSocketSend: send to socket failed"; + +- IoHndPad_T * iopad = NULL; + endpt * ep = NULL; + int rc; + +@@ -1662,7 +1660,7 @@ + + INSIST(hndIOCPLPort && hMainRpcDone); + if (iopad) +- iocpl_notify(iopad, OnInterfaceDetach, -1); ++ iocpl_notify(iopad, OnInterfaceDetach, (UINT_PTR)-1); + } + + /* -------------------------------------------------------------------- +diff -Nru a/sntp/crypto.c b/sntp/crypto.c +--- a/sntp/crypto.c 2016-11-23 08:35:18.288128524 +0100 ++++ b/sntp/crypto.c 2016-11-23 08:35:18.288128524 +0100 +@@ -2,7 +2,7 @@ + #include "crypto.h" + #include + #include "isc/string.h" +-#include "libssl_compat.h" ++#include "ntp_md5.h" + + struct key *key_ptr; + size_t key_cnt = 0; +diff -urN ntp-4.2.8p9/include/libssl_compat.h ntp-4.2.8p9_fixed/include/libssl_compat.h +--- a/include/libssl_compat.h 2016-11-21 07:28:40.000000000 -0500 ++++ b/include/libssl_compat.h 2016-11-23 12:10:33.014148604 -0500 +@@ -25,7 +25,7 @@ + #include "openssl/rsa.h" + + /* ----------------------------------------------------------------- */ +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if (OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER) + /* ----------------------------------------------------------------- */ + + # include diff --git a/net-misc/ntp/ntp-4.2.8_p9.ebuild b/net-misc/ntp/ntp-4.2.8_p9.ebuild index f643123..36be9a2 100644 --- a/net-misc/ntp/ntp-4.2.8_p9.ebuild +++ b/net-misc/ntp/ntp-4.2.8_p9.ebuild @@ -40,6 +40,7 @@ S=${WORKDIR}/${MY_P} PATCHES=( "${FILESDIR}"/${PN}-4.2.8-ipc-caps.patch #533966 "${FILESDIR}"/${PN}-4.2.8-sntp-test-pthreads.patch #563922 + "${FILESDIR}"/${P}-fix-build-wo-ssl-or-libressl.patch ) pkg_setup() {