1
0
forked from rpms/rpcbind

Updated to latest upstream release 0.1.6

This commit is contained in:
Steve Dickson 2008-07-09 20:42:14 +00:00
parent 46da9bb28c
commit 6a551c2d7a
8 changed files with 8 additions and 206 deletions

View File

@ -1,2 +1,4 @@
rpcbind-0.1.4.tar.bz2
rpcbind-0.1.5.tar.bz2
rpcbind-1.0.6.tar.bz2
rpcbind-0.1.6.tar.bz2

View File

@ -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);

View File

@ -1,37 +0,0 @@
commit 718ab7ebcf913051f901939b8ae4c7ae67ffcafe
Author: Ulrich Drepper <drepper@redhat.com>
Date: Fri Jun 27 14:31:20 2008 -0400
Removed the documentation about the non-existent '-L' flag
Signed-off-by: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/man/rpcbind.8 b/man/rpcbind.8
index 7985f0f..32806d4 100644
--- a/man/rpcbind.8
+++ b/man/rpcbind.8
@@ -115,10 +115,6 @@ accepts these requests only from the loopback interface for security reasons.
This change is necessary for programs that were compiled with earlier
versions of the rpc library and do not make those requests using the
loopback interface.
-.It Fl L
-Allow old-style local connections over the loopback interface.
-Without this flag, local connections are only allowed over a local socket,
-.Pa /var/run/rpcbind.sock .
.It Fl l
Turn on libwrap connection logging.
.It Fl s
diff --git a/src/rpcbind.c b/src/rpcbind.c
index 550fefd..5e7e744 100644
--- a/src/rpcbind.c
+++ b/src/rpcbind.c
@@ -739,7 +739,7 @@ parseargs(int argc, char *argv[])
{
int c;
oldstyle_local = 1;
- while ((c = getopt(argc, argv, "dwah:ilLs")) != -1) {
+ while ((c = getopt(argc, argv, "dwah:ils")) != -1) {
switch (c) {
case 'a':
doabort = 1; /* when debugging, do an abort on */

View File

@ -1,48 +0,0 @@
commit 77f7556878d1fe03dc3e285c97dd822db38f618c
Author: Ulrich Drepper <drepper@redhat.com>
Date: Fri Jun 27 13:29:20 2008 -0400
Due to an installation mistake (somehow rpm messed up) I ended up with an passwd
file which didn't have a rpc entry. This meant that during startup the
getpwnam() call to determine the details for user rpc caused the normal process
for passwd lookups to be followed. For me this meant after looking at
/etc/passwd the lookup tried to use NIS. This of course deadlocked since as
part of the NIS lookup rpcbind has to be contacted.
The workaround is quite simple: use __nss_configure_lookup() to restrict
the lookup.
Signed-off-by: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/src/rpcbind.c b/src/rpcbind.c
index fb75517..550fefd 100644
--- a/src/rpcbind.c
+++ b/src/rpcbind.c
@@ -155,6 +155,13 @@ main(int argc, char *argv[])
fprintf(stderr, "Sorry. You are not superuser\n");
exit(1);
}
+
+ /*
+ * Make sure we use the local service file
+ * for service lookkups
+ */
+ __nss_configure_lookup("services", "files");
+
nc_handle = setnetconfig(); /* open netconfig file */
if (nc_handle == NULL) {
syslog(LOG_ERR, "could not read /etc/netconfig");
@@ -212,6 +219,12 @@ main(int argc, char *argv[])
struct passwd *p;
char *id = runasdaemon ? RUN_AS : rpcbinduser;
+ /*
+ * Make sure we use the local password file
+ * for these lookups.
+ */
+ __nss_configure_lookup("passwd", "files");
+
if((p = getpwnam(id)) == NULL) {
syslog(LOG_ERR, "cannot get uid of '%s': %m", id);
exit(1);

View File

@ -1,63 +0,0 @@
commit a37d65c960f5a3682b3cf5146bc31856fdba632d
Author: Steve Dickson <steved@redhat.com>
Date: Wed Jul 2 09:58:08 2008 -0400
Added "rpcinfo" string to the SYNOPSIS section
the rpinfo man page
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/man/rpcinfo.8 b/man/rpcinfo.8
index 156de01..5ece18f 100644
--- a/man/rpcinfo.8
+++ b/man/rpcinfo.8
@@ -8,40 +8,40 @@
.Nm rpcinfo
.Nd report RPC information
.Sh SYNOPSIS
-.Nm ""
+.Nm "rpcinfo"
.Op Fl m Li \&| Fl s
.Op Ar host
-.Nm ""
+.Nm "rpcinfo"
.Fl p Op Ar host
-.Nm ""
+.Nm "rpcinfo"
.Fl T Ar transport
.Ar host Ar prognum
.Op Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Fl l
.Op Fl T Ar transport
.Ar host Ar prognum
.Op Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Op Fl n Ar portnum
.Fl u
.Ar host Ar prognum
.Op Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Op Fl n Ar portnum
.Op Fl t
.Ar host Ar prognum
.Op Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Fl a Ar serv_address
.Fl T Ar transport
.Ar prognum
.Op Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Fl b
.Op Fl T Ar transport
.Ar prognum Ar versnum
-.Nm ""
+.Nm "rpcinfo"
.Fl d
.Op Fl T Ar transport
.Ar prognum Ar versnum

View File

@ -1,28 +0,0 @@
commit f7d18d511767e892e52932f8c6f6e49755a8e5bc
Author: Guillaume Rousse <Guillaume.Rousse@inria.fr>
Date: Mon Jun 23 12:30:29 2008 -0400
rpcbind needs to also downgrade its gid to a non-priviledgied group
Signed-off-by: Andreas Hasenack <andreas@mandriva.com>
Signed-off-by: Guillaume Rousse <Guillaume.Rousse@inria.fr>
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/src/rpcbind.c b/src/rpcbind.c
index 949ece2..fb75517 100644
--- a/src/rpcbind.c
+++ b/src/rpcbind.c
@@ -216,8 +216,12 @@ main(int argc, char *argv[])
syslog(LOG_ERR, "cannot get uid of '%s': %m", id);
exit(1);
}
+ if (setgid(p->pw_gid) == -1) {
+ syslog(LOG_ERR, "setgid to '%s' (%d) failed: %m", id, p->pw_gid);
+ exit(1);
+ }
if (setuid(p->pw_uid) == -1) {
- syslog(LOG_ERR, "setuid to '%s' failed: %m", id);
+ syslog(LOG_ERR, "setuid to '%s' (%d) failed: %m", id, p->pw_uid);
exit(1);
}
}

View File

@ -1,8 +1,8 @@
%{!?_initdir:%define _initdir /etc/rc.d/init.d}
Name: rpcbind
Version: 0.1.5
Release: 5%{?dist}
Version: 0.1.6
Release: 1%{?dist}
Summary: Universal Addresses to RPC Program Number Mapper
Group: System Environment/Daemons
License: GPL
@ -25,12 +25,6 @@ Requires(post): /sbin/chkconfig
Provides: portmap = %{version}-%{release}
Obsoletes: portmap <= 4.0-65.3
Patch1: rpcbind-0.1.4-iff_up.patch
Patch2: rpcbind-0.1.5-setgid.patch
Patch3: rpcbind-0.1.5-nss-config.patch
Patch4: rpcbind-0.1.5-man-cleanup.patch
Patch5: rpcbind-0.1.5-rpcinfo-manpage.patch
%description
The rpcbind utility is a server that converts RPC program numbers into
universal addresses. It must be running on the host to be able to make
@ -39,15 +33,6 @@ RPC calls on a server on that machine.
%prep
%setup -q
%patch1 -p1
%patch2 -p1
# 447092: restrict passwd database search to local files
%patch3 -p1
# 446915: Man page documents non-existing -L option
%patch4 -p1
# 453729: typo error in rpcinfo man page
%patch5 -p1
%build
%ifarch s390 s390x
PIE="-fPIE"
@ -126,6 +111,9 @@ fi
%dir %attr(700,rpc,rpc) /var/lib/rpcbind
%changelog
* Wed Jul 9 2008 Steve Dickson <steved@redhat.com> 0.1.6-1
- Updated to latest upstream release 0.1.6
* Wed Jul 2 2008 Steve Dickson <steved@redhat.com> 0.1.5-5
- Fixed SYNOPSIS section in the rpcinfo man page (bz 453729)

View File

@ -1 +1 @@
adcf17feb72d942f38f91a9a90205a74 rpcbind-0.1.5.tar.bz2
224c0db4b3d383f785130c350743bdf7 rpcbind-0.1.6.tar.bz2