MFH: r503790 r503811

devel/libevent2: update to 2.1.10

Changes:	https://github.com/libevent/libevent/releases/tag/release-2.1.10-stable
ABI:		https://abi-laboratory.pro/tracker/timeline/libevent/
PR:		238127
Reported by:	GitHub (watch releases)
Tested by:	pkubaj (powerpc64)
Approved by:	maintainer timeout (2 weeks)
Approved by:	ports-secteam (miwi)
This commit is contained in:
Jan Beich 2019-06-13 00:47:22 +00:00
parent baebb1d2f5
commit 390e0800a2
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/branches/2019Q2/; revision=504052
9 changed files with 11 additions and 284 deletions

View File

@ -2,9 +2,8 @@
# $FreeBSD$
PORTNAME= libevent
PORTVERSION= 2.1.8
PORTREVISION= 3
DISTVERSIONPREFIX= release-
DISTVERSION= 2.1.10
DISTVERSIONSUFFIX= -stable
CATEGORIES= devel

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1485387435
SHA256 (libevent-libevent-release-2.1.8-stable_GH0.tar.gz) = 316ddb401745ac5d222d7c529ef1eada12f58f6376a66c1118eee803cb70f83d
SIZE (libevent-libevent-release-2.1.8-stable_GH0.tar.gz) = 700896
TIMESTAMP = 1558818854
SHA256 (libevent-libevent-release-2.1.10-stable_GH0.tar.gz) = 52c9db0bc5b148f146192aa517db0762b2a5b3060ccc63b2c470982ec72b9a79
SIZE (libevent-libevent-release-2.1.10-stable_GH0.tar.gz) = 718638

View File

@ -1,13 +0,0 @@
--- evutil_rand.c.orig 2017-01-25 23:37:15 UTC
+++ evutil_rand.c
@@ -195,8 +195,10 @@ evutil_secure_rng_get_bytes(void *buf, size_t n)
void
evutil_secure_rng_add_bytes(const char *buf, size_t n)
{
+#ifdef arc4random_addrandom
arc4random_addrandom((unsigned char*)buf,
n>(size_t)INT_MAX ? INT_MAX : (int)n);
+#endif
}
void

View File

@ -1,83 +0,0 @@
Fix -Werror=implicit-fallthrough (fixes gcc-7)
https://github.com/libevent/libevent/commit/94e7dcebc320
https://github.com/libevent/libevent/commit/ffbce578c40a
--- bufferevent_filter.c.orig 2017-01-25 23:37:15 UTC
+++ bufferevent_filter.c
@@ -612,9 +612,12 @@ be_filter_ctrl(struct bufferevent *bev,
bevf->underlying->be_ops->ctrl) {
return (bevf->underlying->be_ops->ctrl)(bevf->underlying, op, data);
}
+ EVUTIL_FALLTHROUGH;
case BEV_CTRL_GET_FD:
+ EVUTIL_FALLTHROUGH;
case BEV_CTRL_CANCEL_ALL:
+ EVUTIL_FALLTHROUGH;
default:
return -1;
}
--- evdns.c.orig 2017-01-25 23:37:15 UTC
+++ evdns.c
@@ -2265,10 +2265,11 @@ evdns_request_transmit(struct request *r
nameserver_write_waiting(req->ns, 1);
return 1;
case 2:
- /* failed to transmit the request entirely. */
+ /* failed to transmit the request entirely. we can fallthrough since
+ * we'll set a timeout, which will time out, and make us retransmit the
+ * request anyway. */
retcode = 1;
- /* fall through: we'll set a timeout, which will time out,
- * and make us retransmit the request anyway. */
+ EVUTIL_FALLTHROUGH;
default:
/* all ok */
log(EVDNS_LOG_DEBUG,
--- event.c.orig 2017-01-25 23:37:15 UTC
+++ event.c
@@ -2960,6 +2960,7 @@ event_callback_activate_nolock_(struct e
switch (evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER)) {
default:
EVUTIL_ASSERT(0);
+ EVUTIL_FALLTHROUGH;
case EVLIST_ACTIVE_LATER:
event_queue_remove_active_later(base, evcb);
r = 0;
--- util-internal.h.orig 2017-01-25 23:37:15 UTC
+++ util-internal.h
@@ -50,6 +50,20 @@
extern "C" {
#endif
+/* __has_attribute() wrapper */
+#ifdef __has_attribute
+#define EVUTIL_HAS_ATTRIBUTE __has_attribute
+#endif
+/** clang 3 __has_attribute misbehaves in some versions */
+#if defined(__clang__) && \
+ __clang__ == 1 && __clang_major__ == 3 && \
+ (__clang_minor__ >= 2 && __clang_minor__ <= 5)
+#undef EVUTIL_HAS_ATTRIBUTE
+#endif
+#ifndef EVUTIL_HAS_ATTRIBUTE
+#define EVUTIL_HAS_ATTRIBUTE(x) 0
+#endif
+
/* If we need magic to say "inline", get it for free internally. */
#ifdef EVENT__inline
#define inline EVENT__inline
@@ -308,6 +322,12 @@ ev_int32_t evutil_weakrand_range_(struct
#define EVUTIL_UNLIKELY(p) (p)
#endif
+#if EVUTIL_HAS_ATTRIBUTE(fallthrough)
+#define EVUTIL_FALLTHROUGH __attribute__((fallthrough))
+#else
+#define EVUTIL_FALLTHROUGH /* fallthrough */
+#endif
+
/* Replacement for assert() that calls event_errx on failure. */
#ifdef NDEBUG
#define EVUTIL_ASSERT(cond) EVUTIL_NIL_CONDITION_(cond)

View File

@ -1,103 +0,0 @@
From 28b8075400c70b2d2da2ce07e590c2ec6d11783d Mon Sep 17 00:00:00 2001
From: Bernard Spil <brnrd@FreeBSD.org>
Date: Mon, 2 Apr 2018 13:18:27 +0200
Subject: [PATCH] Fix build with LibreSSL 2.7
LibreSSL 2.7 implements OpenSSL 1.1 API except for BIO_get_init()
See also: https://bugs.freebsd.org/226900
Signed-off-by: Bernard Spil <brnrd@FreeBSD.org>
Closes: #617 (cherry-pick)
--- openssl-compat.h.orig 2017-01-25 23:37:15 UTC
+++ openssl-compat.h
@@ -1,7 +1,8 @@
#ifndef OPENSSL_COMPAT_H
#define OPENSSL_COMPAT_H
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
static inline BIO_METHOD *BIO_meth_new(int type, const char *name)
{
@@ -30,6 +31,11 @@ static inline BIO_METHOD *BIO_meth_new(i
#define TLS_method SSLv23_method
-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */
+#endif /* (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L) */
+
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20700000L
+#define BIO_get_init(b) (b)->init
+#endif
#endif /* OPENSSL_COMPAT_H */
--- sample/https-client.c.orig 2017-01-25 23:37:15 UTC
+++ sample/https-client.c
@@ -312,7 +312,8 @@ main(int argc, char **argv)
}
uri[sizeof(uri) - 1] = '\0';
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
// Initialize OpenSSL
SSL_library_init();
ERR_load_crypto_strings();
@@ -480,7 +481,8 @@ cleanup:
SSL_CTX_free(ssl_ctx);
if (type == HTTP && ssl)
SSL_free(ssl);
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
EVP_cleanup();
ERR_free_strings();
@@ -492,7 +494,8 @@ cleanup:
CRYPTO_cleanup_all_ex_data();
sk_SSL_COMP_free(SSL_COMP_get_compression_methods());
-#endif /*OPENSSL_VERSION_NUMBER < 0x10100000L */
+#endif /* (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L) */
#ifdef _WIN32
WSACleanup();
--- sample/le-proxy.c.orig 2017-01-25 23:37:15 UTC
+++ sample/le-proxy.c
@@ -259,7 +259,8 @@ main(int argc, char **argv)
if (use_ssl) {
int r;
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
SSL_library_init();
ERR_load_crypto_strings();
SSL_load_error_strings();
--- sample/openssl_hostname_validation.c.orig 2017-01-25 23:37:15 UTC
+++ sample/openssl_hostname_validation.c
@@ -48,7 +48,8 @@ SOFTWARE.
#define HOSTNAME_MAX_SIZE 255
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
#define ASN1_STRING_get0_data ASN1_STRING_data
#endif
--- test/regress_ssl.c.orig 2017-01-25 23:37:15 UTC
+++ test/regress_ssl.c
@@ -186,7 +186,8 @@ get_ssl_ctx(void)
void
init_ssl(void)
{
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
SSL_library_init();
ERR_load_crypto_strings();
SSL_load_error_strings();

View File

@ -1,75 +0,0 @@
Fix feature conditionals in bench tests.
https://github.com/libevent/libevent/commit/d9118c8daa0e
https://github.com/libevent/libevent/commit/77ec05e50dfe
--- configure.ac.orig 2017-01-25 23:37:15 UTC
+++ configure.ac
@@ -715,8 +715,7 @@ AC_CHECK_MEMBERS([struct in6_addr.s6_add
#endif
])
-AC_CHECK_TYPES([struct so_linger],
-[#define HAVE_SO_LINGER], ,
+AC_CHECK_TYPES([struct linger],,,
[
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
--- test/bench.c.orig 2017-01-25 23:37:15 UTC
+++ test/bench.c
@@ -136,7 +136,7 @@ run_once(void)
int
main(int argc, char **argv)
{
-#ifdef HAVE_SETRLIMIT
+#ifdef EVENT__HAVE_SETRLIMIT
struct rlimit rl;
#endif
int i, c;
@@ -167,7 +167,7 @@ main(int argc, char **argv)
}
}
-#ifdef HAVE_SETRLIMIT
+#ifdef EVENT__HAVE_SETRLIMIT
rl.rlim_cur = rl.rlim_max = num_pipes * 2 + 50;
if (setrlimit(RLIMIT_NOFILE, &rl) == -1) {
perror("setrlimit");
--- test/bench_cascade.c.orig 2017-01-25 23:37:15 UTC
+++ test/bench_cascade.c
@@ -139,7 +139,7 @@ run_once(int num_pipes)
int
main(int argc, char **argv)
{
-#ifdef HAVE_SETRLIMIT
+#ifdef EVENT__HAVE_SETRLIMIT
struct rlimit rl;
#endif
int i, c;
@@ -162,7 +162,7 @@ main(int argc, char **argv)
}
}
-#ifdef HAVE_SETRLIMIT
+#ifdef EVENT__HAVE_SETRLIMIT
rl.rlim_cur = rl.rlim_max = num_pipes * 2 + 50;
if (setrlimit(RLIMIT_NOFILE, &rl) == -1) {
perror("setrlimit");
--- test/bench_httpclient.c.orig 2017-01-25 23:37:15 UTC
+++ test/bench_httpclient.c
@@ -113,13 +113,13 @@ errorcb(struct bufferevent *b, short wha
static void
frob_socket(evutil_socket_t sock)
{
-#ifdef HAVE_SO_LINGER
+#ifdef EVENT__HAVE_STRUCT_LINGER
struct linger l;
#endif
int one = 1;
if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (void*)&one, sizeof(one))<0)
perror("setsockopt(SO_REUSEADDR)");
-#ifdef HAVE_SO_LINGER
+#ifdef EVENT__HAVE_STRUCT_LINGER
l.l_onoff = 1;
l.l_linger = 0;
if (setsockopt(sock, SOL_SOCKET, SO_LINGER, (void*)&l, sizeof(l))<0)

View File

@ -31,23 +31,23 @@ include/evhttp.h
include/evrpc.h
include/evutil.h
lib/libevent-2.1.so.6
lib/libevent-2.1.so.6.0.2
lib/libevent-2.1.so.6.0.4
lib/libevent.a
lib/libevent.so
lib/libevent_core-2.1.so.6
lib/libevent_core-2.1.so.6.0.2
lib/libevent_core-2.1.so.6.0.4
lib/libevent_core.a
lib/libevent_core.so
lib/libevent_extra-2.1.so.6
lib/libevent_extra-2.1.so.6.0.2
lib/libevent_extra-2.1.so.6.0.4
lib/libevent_extra.a
lib/libevent_extra.so
%%OPENSSL%%lib/libevent_openssl-2.1.so.6
%%OPENSSL%%lib/libevent_openssl-2.1.so.6.0.2
%%OPENSSL%%lib/libevent_openssl-2.1.so.6.0.4
%%OPENSSL%%lib/libevent_openssl.a
%%OPENSSL%%lib/libevent_openssl.so
%%THREADS%%lib/libevent_pthreads-2.1.so.6
%%THREADS%%lib/libevent_pthreads-2.1.so.6.0.2
%%THREADS%%lib/libevent_pthreads-2.1.so.6.0.4
%%THREADS%%lib/libevent_pthreads.a
%%THREADS%%lib/libevent_pthreads.so
libdata/pkgconfig/libevent.pc

View File

@ -4,6 +4,7 @@
PORTNAME= tor
DISTVERSION= 0.4.0.3
DISTVERSIONSUFFIX= -alpha
PORTREVISION= 1
CATEGORIES= security net ipv6
MASTER_SITES= TOR
PKGNAMESUFFIX= -devel

View File

@ -3,6 +3,7 @@
PORTNAME= tor
DISTVERSION= 0.3.5.8
PORTREVISION= 1
CATEGORIES= security net ipv6
MASTER_SITES= TOR