From 25e9fefe38527f3774cef500dcf4ed4a381241f94d532032667e7a51a88615e8 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Thu, 16 Oct 2008 17:05:20 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rpcbind?expand=0&rev=2 --- rpcbind-0.1.4-iff_up.patch | 12 ---- rpcbind-0.1.4-localaddr.patch | 100 ------------------------------ rpcbind-0.1.5-1.tar.bz2 | 3 - rpcbind-0.1.6+git20080930.tar.bz2 | 3 + rpcbind.changes | 18 ++++++ rpcbind.spec | 30 ++++++--- 6 files changed, 42 insertions(+), 124 deletions(-) delete mode 100644 rpcbind-0.1.4-iff_up.patch delete mode 100644 rpcbind-0.1.4-localaddr.patch delete mode 100644 rpcbind-0.1.5-1.tar.bz2 create mode 100644 rpcbind-0.1.6+git20080930.tar.bz2 diff --git a/rpcbind-0.1.4-iff_up.patch b/rpcbind-0.1.4-iff_up.patch deleted file mode 100644 index 134ac00..0000000 --- a/rpcbind-0.1.4-iff_up.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- rpcbind-0.1.4/src/util.c.iff_up 2007-05-22 11:14:39.000000000 -0400 -+++ rpcbind-0.1.4/src/util.c 2007-05-22 11:14:56.000000000 -0400 -@@ -359,7 +359,8 @@ network_init() - * interface, join the RPC multicast group on that interface. - */ - for (ifap = ifp; ifap != NULL; ifap = ifap->ifa_next) { -- if (ifap->ifa_addr->sa_family != AF_INET6 || -+ if (!ifap->ifa_addr || -+ ifap->ifa_addr->sa_family != AF_INET6 || - !(ifap->ifa_flags & IFF_MULTICAST)) - continue; - ifindex = if_nametoindex(ifap->ifa_name); diff --git a/rpcbind-0.1.4-localaddr.patch b/rpcbind-0.1.4-localaddr.patch deleted file mode 100644 index 519dbff..0000000 --- a/rpcbind-0.1.4-localaddr.patch +++ /dev/null @@ -1,100 +0,0 @@ -commit 913c1d3396ba57052054d6da0745b29f82ece4eb -Author: Steve Dickson -Date: Mon Dec 17 14:28:03 2007 -0500 - - Changed is_loopback() and check_access() see if the calling - address is an address on a local interface, just not a loopback - address. - - Signed-off-by: Steve Dickson - -diff --git a/src/security.c b/src/security.c -index 7e6f3a9..b1a2b76 100644 ---- a/src/security.c -+++ b/src/security.c -@@ -31,6 +31,7 @@ - - #ifdef LIBWRAP - # include -+# include - #ifndef LIBWRAP_ALLOW_FACILITY - # define LIBWRAP_ALLOW_FACILITY LOG_AUTH - #endif -@@ -61,6 +62,49 @@ int log_severity = PORTMAP_LOG_FACILITY|PORTMAP_LOG_SEVERITY; - - extern int verboselog; - -+#ifdef LIBWRAP -+static int localaddr(struct sockaddr *addr) -+{ -+ static struct ifaddrs *ifp = NULL; -+ struct ifaddrs *ifa = NULL; -+ void *caller, *localip; -+ struct sockaddr_in *sin; -+ struct sockaddr_in6 *sin6; -+ -+ if (ifp == NULL && getifaddrs (&ifp) < 0) { -+ perror ("getifaddrs"); -+ return 0; -+ } -+ -+ if (addr->sa_family == AF_INET) -+ caller = (void *)&((struct sockaddr_in *)addr)->sin_addr; -+ else -+ caller = (void *)&((struct sockaddr_in6 *)addr)->sin6_addr; -+ -+ for (ifa = ifp; ifa; ifa = ifa->ifa_next) { -+ socklen_t salen; -+ -+ if (ifa->ifa_addr == NULL) -+ continue; -+ -+ if (ifa->ifa_addr->sa_family == AF_INET) { -+ salen = sizeof (struct sockaddr_in); -+ sin = (struct sockaddr_in *)ifa->ifa_addr; -+ localip = (void *)&sin->sin_addr; -+ } else if (ifa->ifa_addr->sa_family == AF_INET6) { -+ sin6 = (struct sockaddr_in6 *)ifa->ifa_addr; -+ localip = (void *)&sin6->sin6_addr; -+ } else -+ continue; -+ -+ if (memcmp(localip, caller, salen) == 0) -+ return 1; -+ } -+ -+ return 0; -+} -+#endif -+ - int - check_access(SVCXPRT *xprt, rpcproc_t proc, void *args, unsigned int rpcbvers) - { -@@ -115,7 +159,7 @@ check_access(SVCXPRT *xprt, rpcproc_t proc, void *args, unsigned int rpcbvers) - } - - #ifdef LIBWRAP -- if (addr->sa_family == AF_LOCAL) -+ if (addr->sa_family == AF_LOCAL || localaddr(addr)) - return 1; - request_init(&req, RQ_DAEMON, "rpcbind", RQ_CLIENT_SIN, addr, 0); - sock_methods(&req); -@@ -147,13 +191,17 @@ is_loopback(struct netbuf *nbuf) - case AF_INET: - if (!oldstyle_local) - return 0; -+ if (localaddr(addr)) -+ return 1; - sin = (struct sockaddr_in *)addr; -- return ((sin->sin_addr.s_addr == htonl(INADDR_LOOPBACK)) && -+ return ((sin->sin_addr.s_addr == htonl(INADDR_LOOPBACK)) && - (ntohs(sin->sin_port) < IPPORT_RESERVED)); - #ifdef INET6 - case AF_INET6: - if (!oldstyle_local) - return 0; -+ if (localaddr(addr)) -+ return 1; - sin6 = (struct sockaddr_in6 *)addr; - return ((IN6_IS_ADDR_LOOPBACK(&sin6->sin6_addr) || - (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr) && diff --git a/rpcbind-0.1.5-1.tar.bz2 b/rpcbind-0.1.5-1.tar.bz2 deleted file mode 100644 index 9e07575..0000000 --- a/rpcbind-0.1.5-1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cdfb3dfda8e8e2fee33a172a88fa9a0ec9194286ddf054f1484cbcffdb59d366 -size 265920 diff --git a/rpcbind-0.1.6+git20080930.tar.bz2 b/rpcbind-0.1.6+git20080930.tar.bz2 new file mode 100644 index 0000000..788b4eb --- /dev/null +++ b/rpcbind-0.1.6+git20080930.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f6048fdae3dcdb8f0e0f9662d1d1c608cc134771c5cce4c87fc7e16a215eff +size 46225 diff --git a/rpcbind.changes b/rpcbind.changes index e94ddbd..060deac 100644 --- a/rpcbind.changes +++ b/rpcbind.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Wed Oct 15 19:07:48 CEST 2008 - mkoenig@suse.de + +- update to 0.1.6 with additional patches from git + * Fixed an ipv6 related segfault on startup + * rpcbind needs to also downgrade its gid to a non-priviledgied group + * Removed the documentation about the non-existent '-L' flag + * Introduce helpers for ipprot/netid mapping + * Change how we decide on the netids to use for portmap + * Simplify port live check in pmap_svc.c + * Support portmap on AF_LOCAL, too + * Fix for warm start + * Properly identify local root user over ipv4/v6 +- fixes [bnc#435637] +- remove patch + rpcbind-0.1.4-iff_up.patch + rpcbind-0.1.4-localaddr.patch + ------------------------------------------------------------------- Mon Aug 18 17:41:18 CEST 2008 - mkoenig@suse.de diff --git a/rpcbind.spec b/rpcbind.spec index 0dc8c24..ce0e221 100644 --- a/rpcbind.spec +++ b/rpcbind.spec @@ -1,5 +1,5 @@ # -# spec file for package rpcbind (Version 0.1.5) +# spec file for package rpcbind (Version 0.1.6+git20080930) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -23,16 +23,15 @@ Name: rpcbind License: BSD 3-Clause Group: Productivity/Networking/System AutoReqProv: on -Version: 0.1.5 -Release: 2 +Version: 0.1.6+git20080930 +Release: 1 Summary: Transport independent RPC portmapper Url: http://nfsv4.bullopensource.org/doc/tirpc_rpcbind.php -Source: %{name}-%{version}-1.tar.bz2 +Source: %{name}-%{version}.tar.bz2 Source1: rpcbind.init Source2: sysconfig.rpcbind Source3: rpcbind.xml -Patch4: rpcbind-0.1.4-iff_up.patch -Patch6: rpcbind-0.1.4-localaddr.patch +#Patch6: rpcbind-0.1.4-localaddr.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: portmap = 6.0+git20070716 Obsoletes: portmap < 6.0+git20070716 @@ -53,9 +52,7 @@ Authors: Vincent ROQUETA %prep -%setup -n rpcbind-0.1.5-1 -%patch4 -p1 -%patch6 -p1 +%setup %build autoreconf -fi @@ -111,6 +108,21 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/omc/svcinfo.d/rpcbind.xml %changelog +* Wed Oct 15 2008 mkoenig@suse.de +- update to 0.1.6 with additional patches from git + * Fixed an ipv6 related segfault on startup + * rpcbind needs to also downgrade its gid to a non-priviledgied group + * Removed the documentation about the non-existent '-L' flag + * Introduce helpers for ipprot/netid mapping + * Change how we decide on the netids to use for portmap + * Simplify port live check in pmap_svc.c + * Support portmap on AF_LOCAL, too + * Fix for warm start + * Properly identify local root user over ipv4/v6 +- fixes [bnc#435637] +- remove patch + rpcbind-0.1.4-iff_up.patch + rpcbind-0.1.4-localaddr.patch * Mon Aug 18 2008 mkoenig@suse.de - use version in Provides/Obsoletes * Fri Jul 18 2008 mkoenig@suse.de