diff options
author | maya <maya@pkgsrc.org> | 2018-08-13 13:37:14 +0000 |
---|---|---|
committer | maya <maya@pkgsrc.org> | 2018-08-13 13:37:14 +0000 |
commit | 5f54e097e878093b8cccca1dd31f8c4f0c2ddb41 (patch) | |
tree | e9ffbd37743cc3a53b5e33ec5486883dda2185e8 /net/bind910 | |
parent | 6c97db542dc4b3e60207a1bdb7078c7bb736ba20 (diff) | |
download | pkgsrc-5f54e097e878093b8cccca1dd31f8c4f0c2ddb41.tar.gz |
bind910: Make ENOBUFS a soft error. Needed for netbsd>=8.
See https://gitlab.isc.org/isc-projects/bind9/issues/462
Bump PKGREVISION.
Diffstat (limited to 'net/bind910')
-rw-r--r-- | net/bind910/Makefile | 3 | ||||
-rw-r--r-- | net/bind910/patches/patch-lib_isc_unix_socket.c | 33 |
2 files changed, 35 insertions, 1 deletions
diff --git a/net/bind910/Makefile b/net/bind910/Makefile index 7216f96f7d3..fd39e699c65 100644 --- a/net/bind910/Makefile +++ b/net/bind910/Makefile @@ -1,7 +1,8 @@ -# $NetBSD: Makefile,v 1.42 2018/08/09 14:49:09 taca Exp $ +# $NetBSD: Makefile,v 1.43 2018/08/13 13:37:14 maya Exp $ DISTNAME= bind-${BIND_VERSION} PKGNAME= ${DISTNAME:S/-P/pl/} +PKGREVISION= 1 CATEGORIES= net MASTER_SITES= ftp://ftp.isc.org/isc/bind9/${BIND_VERSION}/ diff --git a/net/bind910/patches/patch-lib_isc_unix_socket.c b/net/bind910/patches/patch-lib_isc_unix_socket.c new file mode 100644 index 00000000000..cc0599a58bf --- /dev/null +++ b/net/bind910/patches/patch-lib_isc_unix_socket.c @@ -0,0 +1,33 @@ +$NetBSD: patch-lib_isc_unix_socket.c,v 1.1 2018/08/13 13:37:14 maya Exp $ + +Make ENOBUFS a soft error +https://gitlab.isc.org/isc-projects/bind9/issues/462 + +--- lib/isc/unix/socket.c.orig 2018-07-24 17:26:47.000000000 +0000 ++++ lib/isc/unix/socket.c +@@ -255,6 +255,7 @@ typedef enum { poll_idle, poll_active, p + #define SOFT_ERROR(e) ((e) == EAGAIN || \ + (e) == EWOULDBLOCK || \ + (e) == EINTR || \ ++ (e) == ENOBUFS || \ + (e) == 0) + + #define DLVL(x) ISC_LOGCATEGORY_GENERAL, ISC_LOGMODULE_SOCKET, ISC_LOG_DEBUG(x) +@@ -1949,7 +1950,7 @@ doio_recv(isc__socket_t *sock, isc_socke + SOFT_OR_HARD(EHOSTDOWN, ISC_R_HOSTDOWN); + /* HPUX 11.11 can return EADDRNOTAVAIL. */ + SOFT_OR_HARD(EADDRNOTAVAIL, ISC_R_ADDRNOTAVAIL); +- ALWAYS_HARD(ENOBUFS, ISC_R_NORESOURCES); ++ SOFT_OR_HARD(ENOBUFS, ISC_R_NORESOURCES); + /* Should never get this one but it was seen. */ + #ifdef ENOPROTOOPT + SOFT_OR_HARD(ENOPROTOOPT, ISC_R_HOSTUNREACH); +@@ -2146,7 +2147,7 @@ doio_send(isc__socket_t *sock, isc_socke + ALWAYS_HARD(EHOSTDOWN, ISC_R_HOSTUNREACH); + #endif + ALWAYS_HARD(ENETUNREACH, ISC_R_NETUNREACH); +- ALWAYS_HARD(ENOBUFS, ISC_R_NORESOURCES); ++ SOFT_OR_HARD(ENOBUFS, ISC_R_NORESOURCES); + ALWAYS_HARD(EPERM, ISC_R_HOSTUNREACH); + ALWAYS_HARD(EPIPE, ISC_R_NOTCONNECTED); + ALWAYS_HARD(ECONNRESET, ISC_R_CONNECTIONRESET); |