summary refs log tree commit diff
path: root/gnu/packages/patches/libtirpc-hurd-client.patch
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-12-17 18:03:12 +0100
committerMarius Bakke <marius@gnu.org>2020-12-17 18:03:12 +0100
commit26e89a33f35c886b996a910c21e56ca71ddee188 (patch)
tree34363c7efa1515e18914a8f03d1bbf78c1fe738c /gnu/packages/patches/libtirpc-hurd-client.patch
parente37c575723b38a4e64df798fc8a922e26c849a3f (diff)
downloadguix-26e89a33f35c886b996a910c21e56ca71ddee188.tar.gz
gnu: libtirpc: Update to 1.3.1.
* gnu/packages/onc-rpc.scm (libtirpc): Update to 1.3.1.
[arguments]: Remove obsolete adjustment.  Rename phase.
* gnu/packages/onc-rpc.scm (libtirpc/hurd)[source](patches): Remove obsolete
patch.
* gnu/packages/patches/libtirpc-hurd-client.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
Diffstat (limited to 'gnu/packages/patches/libtirpc-hurd-client.patch')
-rw-r--r--gnu/packages/patches/libtirpc-hurd-client.patch50
1 files changed, 0 insertions, 50 deletions
diff --git a/gnu/packages/patches/libtirpc-hurd-client.patch b/gnu/packages/patches/libtirpc-hurd-client.patch
deleted file mode 100644
index 526ad262d2..0000000000
--- a/gnu/packages/patches/libtirpc-hurd-client.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-Taken from https://salsa.debian.org/debian/libtirpc/-/raw/master/debian/patches/06-hurd-client-port.diff
-
-Description: Fix client code for hurd, avoiding malloc overflow
- When trying to setup a inet connection, it happens the following:
- - in libtirp, src/clnt_vc.c, clnt_vc_create gets called
- - when trying to allocate vc_fd_locks, __rpc_dtbsize() is used as size
-   for that array of fd locks
- - __rpc_dtbsize(), in src/rpc_generic.c, queries using rlimit the
-   maximum (rlim_max) number of file descriptors (RLIMIT_NOFILE):
-   - on Linux, the default is { rlim_cur = 1024, rlim_max = 4096 }
-   - on kFreeBSD, the default is { rlim_cur = 1024, rlim_max = 1024 }
-   - on Hurd, the default is { rlim_cur = 1024, rlim_max = RLIM_INFINITY }
-  meaning that on Hurd the memory allocation fails (as
-  __rpc_dtbsize() * sizeof(int) overflows and is negative)
-
- Change libtiprc so __rpc_dtbsize falls back on rlim_cur if rlim_max
- is unlimited.
-
- This patch fixes the client connection using inet sockets; local unix
- sockets are not working, for two reasons so far:
- - getpeername on them gives EOPNOTSUPP
- - SO_REUSEADDR is not implemented for them
-Author: Pino Toscano <pino@debian.org>
-
-Bug-Debian: http://bugs.debian.org/739674
-Forwarded: no
-Reviewed-By: Petter Reinholdtsen
-Last-Update: 2014-03-03
-
---- a/src/rpc_generic.c
-+++ b/src/rpc_generic.c
-@@ -107,12 +107,17 @@
- {
- 	static int tbsize;
- 	struct rlimit rl;
-+	rlim_t lim;
- 
- 	if (tbsize) {
- 		return (tbsize);
- 	}
- 	if (getrlimit(RLIMIT_NOFILE, &rl) == 0) {
--		return (tbsize = (int)rl.rlim_max);
-+		lim = rl.rlim_max;
-+		if (lim == RLIM_INFINITY) {
-+			lim = rl.rlim_cur;
-+		}
-+		return (tbsize = (int)lim);
- 	}
- 	/*
- 	 * Something wrong.  I'll try to save face by returning a