forked from rpms/rpcbind
Update to latest upstream release: 0.1.7
This commit is contained in:
parent
eb199b6520
commit
208b1ff52b
@ -2,3 +2,4 @@ rpcbind-0.1.4.tar.bz2
|
|||||||
rpcbind-0.1.5.tar.bz2
|
rpcbind-0.1.5.tar.bz2
|
||||||
rpcbind-1.0.6.tar.bz2
|
rpcbind-1.0.6.tar.bz2
|
||||||
rpcbind-0.1.6.tar.bz2
|
rpcbind-0.1.6.tar.bz2
|
||||||
|
rpcbind-0.1.7.tar.bz2
|
||||||
|
@ -1,146 +0,0 @@
|
|||||||
commit 3e4c74ab527375f37b6633f528e7eab0c363967b
|
|
||||||
Author: Olaf Kirch <okir@suse.de>
|
|
||||||
Date: Tue Sep 16 10:08:35 2008 -0400
|
|
||||||
|
|
||||||
Introduce helpers for ipprot/netid mapping
|
|
||||||
|
|
||||||
There's a couple of places in the portmap emulation code
|
|
||||||
where we translate between ip protocol numbers and netids.
|
|
||||||
Encapsulate these in two helper functions:
|
|
||||||
|
|
||||||
extern char *pmap_ipprot2netid(int);
|
|
||||||
extern int pmap_netid2ipprot(const char *);
|
|
||||||
|
|
||||||
Signed-off-by: okir@suse.de
|
|
||||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/src/pmap_svc.c b/src/pmap_svc.c
|
|
||||||
index 99ce508..02a57d2 100644
|
|
||||||
--- a/src/pmap_svc.c
|
|
||||||
+++ b/src/pmap_svc.c
|
|
||||||
@@ -211,11 +211,8 @@ pmapproc_change(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt, unsigned long
|
|
||||||
if (op == PMAPPROC_SET) {
|
|
||||||
char buf[32];
|
|
||||||
|
|
||||||
- if (reg.pm_prot == IPPROTO_UDP) {
|
|
||||||
- rpcbreg.r_netid = udptrans;
|
|
||||||
- } else if (reg.pm_prot == IPPROTO_TCP) {
|
|
||||||
- rpcbreg.r_netid = tcptrans;
|
|
||||||
- } else {
|
|
||||||
+ rpcbreg.r_netid = pmap_ipprot2netid(reg.pm_prot);
|
|
||||||
+ if (rpcbreg.r_netid == NULL) {
|
|
||||||
ans = FALSE;
|
|
||||||
goto done_change;
|
|
||||||
}
|
|
||||||
@@ -289,7 +286,8 @@ pmapproc_getport(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt)
|
|
||||||
svc_getrpccaller(xprt));
|
|
||||||
fprintf(stderr, "PMAP_GETPORT req for (%lu, %lu, %s) from %s :",
|
|
||||||
reg.pm_prog, reg.pm_vers,
|
|
||||||
- reg.pm_prot == IPPROTO_UDP ? "udp" : "tcp", uaddr);
|
|
||||||
+ pmap_ipprot2netid(reg.pm_prot)?: "<invalid>",
|
|
||||||
+ uaddr);
|
|
||||||
free(uaddr);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
@@ -299,12 +297,13 @@ pmapproc_getport(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt)
|
|
||||||
char *pt1, *pt2;
|
|
||||||
char *netid;
|
|
||||||
|
|
||||||
+ netid = pmap_ipprot2netid(reg.pm_prot);
|
|
||||||
+ if (netid == NULL)
|
|
||||||
+ goto sendreply;
|
|
||||||
if (reg.pm_prot == IPPROTO_UDP) {
|
|
||||||
ua = udp_uaddr;
|
|
||||||
- netid = udptrans;
|
|
||||||
} else {
|
|
||||||
ua = tcp_uaddr; /* To get the len */
|
|
||||||
- netid = tcptrans;
|
|
||||||
}
|
|
||||||
if (ua == NULL) {
|
|
||||||
goto sendreply;
|
|
||||||
@@ -341,7 +340,7 @@ sendreply:
|
|
||||||
fprintf(stderr, "port = %d\n", port);
|
|
||||||
#endif
|
|
||||||
rpcbs_getaddr(RPCBVERS_2_STAT, reg.pm_prog, reg.pm_vers,
|
|
||||||
- reg.pm_prot == IPPROTO_UDP ? udptrans : tcptrans,
|
|
||||||
+ pmap_ipprot2netid(reg.pm_prot) ?: "<unknown>",
|
|
||||||
port ? udptrans : "");
|
|
||||||
|
|
||||||
return (TRUE);
|
|
||||||
@@ -372,4 +371,24 @@ pmapproc_dump(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt)
|
|
||||||
return (TRUE);
|
|
||||||
}
|
|
||||||
|
|
||||||
+int pmap_netid2ipprot(const char *netid)
|
|
||||||
+{
|
|
||||||
+ if (!netid)
|
|
||||||
+ return 0;
|
|
||||||
+ if (strcmp(netid, tcptrans) == 0)
|
|
||||||
+ return IPPROTO_TCP;
|
|
||||||
+ if (strcmp(netid, udptrans) == 0)
|
|
||||||
+ return IPPROTO_UDP;
|
|
||||||
+ return 0;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+char *pmap_ipprot2netid(unsigned long proto)
|
|
||||||
+{
|
|
||||||
+ if (proto == IPPROTO_UDP)
|
|
||||||
+ return udptrans;
|
|
||||||
+ if (proto == IPPROTO_TCP)
|
|
||||||
+ return tcptrans;
|
|
||||||
+ return NULL;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
#endif /* PORTMAP */
|
|
||||||
diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
|
|
||||||
index 8f6b4c7..08aa194 100644
|
|
||||||
--- a/src/rpcb_svc_com.c
|
|
||||||
+++ b/src/rpcb_svc_com.c
|
|
||||||
@@ -1416,13 +1416,8 @@ add_pmaplist(RPCB *arg)
|
|
||||||
struct pmap pmap;
|
|
||||||
struct pmaplist *pml;
|
|
||||||
|
|
||||||
- if (strcmp(arg->r_netid, udptrans) == 0) {
|
|
||||||
- /* It is UDP! */
|
|
||||||
- pmap.pm_prot = IPPROTO_UDP;
|
|
||||||
- } else if (strcmp(arg->r_netid, tcptrans) == 0) {
|
|
||||||
- /* It is TCP */
|
|
||||||
- pmap.pm_prot = IPPROTO_TCP;
|
|
||||||
- } else
|
|
||||||
+ pmap.pm_prot = pmap_netid2ipprot(arg->r_netid);
|
|
||||||
+ if (!pmap.pm_prot)
|
|
||||||
/* Not an IP protocol */
|
|
||||||
return (0);
|
|
||||||
|
|
||||||
@@ -1464,15 +1459,10 @@ del_pmaplist(RPCB *arg)
|
|
||||||
struct pmaplist *prevpml, *fnd;
|
|
||||||
unsigned long prot;
|
|
||||||
|
|
||||||
- if (strcmp(arg->r_netid, udptrans) == 0) {
|
|
||||||
- /* It is UDP! */
|
|
||||||
- prot = IPPROTO_UDP;
|
|
||||||
- } else if (strcmp(arg->r_netid, tcptrans) == 0) {
|
|
||||||
- /* It is TCP */
|
|
||||||
- prot = IPPROTO_TCP;
|
|
||||||
- } else if (arg->r_netid[0] == 0) {
|
|
||||||
+ if (arg->r_netid[0] == 0) {
|
|
||||||
prot = 0; /* Remove all occurrences */
|
|
||||||
- } else {
|
|
||||||
+ } else
|
|
||||||
+ if ((prot = pmap_netid2ipprot(arg->r_netid)) == 0) {
|
|
||||||
/* Not an IP protocol */
|
|
||||||
return (0);
|
|
||||||
}
|
|
||||||
diff --git a/src/rpcbind.h b/src/rpcbind.h
|
|
||||||
index 84deba0..58ab3ef 100644
|
|
||||||
--- a/src/rpcbind.h
|
|
||||||
+++ b/src/rpcbind.h
|
|
||||||
@@ -78,6 +78,8 @@ extern char *udptrans; /* Name of UDP transport */
|
|
||||||
extern char *tcptrans; /* Name of TCP transport */
|
|
||||||
extern char *udp_uaddr; /* Universal UDP address */
|
|
||||||
extern char *tcp_uaddr; /* Universal TCP address */
|
|
||||||
+extern char *pmap_ipprot2netid(unsigned long);
|
|
||||||
+extern int pmap_netid2ipprot(const char *);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int add_bndlist(struct netconfig *, struct netbuf *);
|
|
@ -1,107 +0,0 @@
|
|||||||
commit 1a94b830a6b5a248faa6fa0e4b7818d9394f6369
|
|
||||||
Author: Olaf Kirch <okir@suse.de>
|
|
||||||
Date: Tue Sep 16 10:15:39 2008 -0400
|
|
||||||
|
|
||||||
Change how we decide on the netids to use for portmap
|
|
||||||
|
|
||||||
The current code will try to use either udp or udp6, and either tcp or
|
|
||||||
tcp6 for its portmap emulation code. Enabling eg both tcp6 and tcp in
|
|
||||||
the netconfig file will cause error messages, and cause rpcbind to not
|
|
||||||
register itself on the second transport (tcp).
|
|
||||||
|
|
||||||
This is not what we want.
|
|
||||||
|
|
||||||
I believe portmap emulation should only be enabled over IPv4.
|
|
||||||
There's no point in enabling it over IPv6.
|
|
||||||
|
|
||||||
Signed-off-by: okir@suse.de
|
|
||||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/src/rpcbind.c b/src/rpcbind.c
|
|
||||||
index 5e7e744..dc6f66b 100644
|
|
||||||
--- a/src/rpcbind.c
|
|
||||||
+++ b/src/rpcbind.c
|
|
||||||
@@ -167,10 +167,6 @@ main(int argc, char *argv[])
|
|
||||||
syslog(LOG_ERR, "could not read /etc/netconfig");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
-#ifdef PORTMAP
|
|
||||||
- udptrans = "";
|
|
||||||
- tcptrans = "";
|
|
||||||
-#endif
|
|
||||||
|
|
||||||
nconf = getnetconfigent("local");
|
|
||||||
if (nconf == NULL)
|
|
||||||
@@ -190,6 +186,13 @@ main(int argc, char *argv[])
|
|
||||||
}
|
|
||||||
endnetconfig(nc_handle);
|
|
||||||
|
|
||||||
+#ifdef PORTMAP
|
|
||||||
+ if (!udptrans)
|
|
||||||
+ udptrans = "";
|
|
||||||
+ if (!tcptrans)
|
|
||||||
+ tcptrans = "";
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
/* catch the usual termination signals for graceful exit */
|
|
||||||
(void) signal(SIGCHLD, reap);
|
|
||||||
(void) signal(SIGINT, terminate);
|
|
||||||
@@ -545,15 +548,12 @@ init_transport(struct netconfig *nconf)
|
|
||||||
|
|
||||||
#ifdef PORTMAP
|
|
||||||
/*
|
|
||||||
- * Register both the versions for tcp/ip, udp/ip and local.
|
|
||||||
+ * Register both the versions for tcp/ip, udp/ip.
|
|
||||||
*/
|
|
||||||
- if (((strcmp(nconf->nc_protofmly, NC_INET) == 0 ||
|
|
||||||
- strcmp(nconf->nc_protofmly, NC_INET6) == 0) &&
|
|
||||||
- (strcmp(nconf->nc_proto, NC_TCP) == 0 ||
|
|
||||||
- strcmp(nconf->nc_proto, NC_UDP) == 0)) ||
|
|
||||||
- (strcmp(nconf->nc_netid, "unix") == 0) ||
|
|
||||||
- (strcmp(nconf->nc_netid, "local") == 0)) {
|
|
||||||
+ if (si.si_af == AF_INET &&
|
|
||||||
+ (si.si_proto == IPPROTO_TCP || si.si_proto == IPPROTO_UDP)) {
|
|
||||||
struct pmaplist *pml;
|
|
||||||
+
|
|
||||||
if (!svc_register(my_xprt, PMAPPROG, PMAPVERS,
|
|
||||||
pmap_service, 0)) {
|
|
||||||
syslog(LOG_ERR, "could not register on %s",
|
|
||||||
@@ -568,30 +568,18 @@ init_transport(struct netconfig *nconf)
|
|
||||||
pml->pml_map.pm_prog = PMAPPROG;
|
|
||||||
pml->pml_map.pm_vers = PMAPVERS;
|
|
||||||
pml->pml_map.pm_port = PMAPPORT;
|
|
||||||
- if (strcmp(nconf->nc_proto, NC_TCP) == 0) {
|
|
||||||
- if (tcptrans[0]) {
|
|
||||||
- syslog(LOG_ERR,
|
|
||||||
- "cannot have more than one TCP transport");
|
|
||||||
- goto error;
|
|
||||||
- }
|
|
||||||
- tcptrans = strdup(nconf->nc_netid);
|
|
||||||
- pml->pml_map.pm_prot = IPPROTO_TCP;
|
|
||||||
+ pml->pml_map.pm_prot = si.si_proto;
|
|
||||||
|
|
||||||
- /* Let's snarf the universal address */
|
|
||||||
- /* "h1.h2.h3.h4.p1.p2" */
|
|
||||||
+ /* Stash away the universal address */
|
|
||||||
+ switch (si.si_proto) {
|
|
||||||
+ case IPPROTO_TCP:
|
|
||||||
+ tcptrans = strdup(nconf->nc_netid);
|
|
||||||
tcp_uaddr = taddr2uaddr(nconf, &taddr.addr);
|
|
||||||
- } else if (strcmp(nconf->nc_proto, NC_UDP) == 0) {
|
|
||||||
- if (udptrans[0]) {
|
|
||||||
- syslog(LOG_ERR,
|
|
||||||
- "cannot have more than one UDP transport");
|
|
||||||
- goto error;
|
|
||||||
- }
|
|
||||||
+ break;
|
|
||||||
+ case IPPROTO_UDP:
|
|
||||||
udptrans = strdup(nconf->nc_netid);
|
|
||||||
- pml->pml_map.pm_prot = IPPROTO_UDP;
|
|
||||||
-
|
|
||||||
- /* Let's snarf the universal address */
|
|
||||||
- /* "h1.h2.h3.h4.p1.p2" */
|
|
||||||
udp_uaddr = taddr2uaddr(nconf, &taddr.addr);
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
pml->pml_next = list_pml;
|
|
||||||
list_pml = pml;
|
|
@ -1,113 +0,0 @@
|
|||||||
commit 566f261ff6bae2842e2e64aaf70d2e31acc1efe7
|
|
||||||
Author: Olaf Kirch <okir@suse.de>
|
|
||||||
Date: Tue Sep 16 10:23:48 2008 -0400
|
|
||||||
|
|
||||||
Simplify port live check in pmap_svc.c
|
|
||||||
|
|
||||||
There's some hack in pmap_getport that will cause a service
|
|
||||||
to be unregistered from the portmap list if we find the port
|
|
||||||
is no longer in use. Apart from being a gross hack, it is
|
|
||||||
also a rather inefficient hack. Since we now restrict pmap
|
|
||||||
emulation to IPv4, we know the address is always 0.0.0.0,
|
|
||||||
so no need to mess with uaddr strings.
|
|
||||||
|
|
||||||
(The bind_check code is a huge messy no-op anyway, since
|
|
||||||
all ports are added with bind_check = FALSE).
|
|
||||||
|
|
||||||
Signed-off-by: okir@suse.de
|
|
||||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/src/pmap_svc.c b/src/pmap_svc.c
|
|
||||||
index 02a57d2..7a4f059 100644
|
|
||||||
--- a/src/pmap_svc.c
|
|
||||||
+++ b/src/pmap_svc.c
|
|
||||||
@@ -293,40 +293,24 @@ pmapproc_getport(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt)
|
|
||||||
#endif
|
|
||||||
fnd = find_service_pmap(reg.pm_prog, reg.pm_vers, reg.pm_prot);
|
|
||||||
if (fnd) {
|
|
||||||
- char serveuaddr[32], *ua;
|
|
||||||
- char *pt1, *pt2;
|
|
||||||
+ char serveuaddr[32];
|
|
||||||
char *netid;
|
|
||||||
|
|
||||||
netid = pmap_ipprot2netid(reg.pm_prot);
|
|
||||||
- if (netid == NULL)
|
|
||||||
- goto sendreply;
|
|
||||||
- if (reg.pm_prot == IPPROTO_UDP) {
|
|
||||||
- ua = udp_uaddr;
|
|
||||||
- } else {
|
|
||||||
- ua = tcp_uaddr; /* To get the len */
|
|
||||||
- }
|
|
||||||
- if (ua == NULL) {
|
|
||||||
- goto sendreply;
|
|
||||||
- }
|
|
||||||
- if ((pt1 = strrchr(ua, '.')) != NULL) {
|
|
||||||
- *pt1 = 0;
|
|
||||||
- if ((pt2 = strrchr(ua, '.')) != NULL) {
|
|
||||||
- *pt2 = 0;
|
|
||||||
- snprintf(serveuaddr, sizeof serveuaddr,
|
|
||||||
- "%s.%ld.%ld", ua,
|
|
||||||
- (fnd->pml_map.pm_port >> 8) & 0xff,
|
|
||||||
- (fnd->pml_map.pm_port) & 0xff);
|
|
||||||
- *pt2 = '.';
|
|
||||||
- if (is_bound(netid, serveuaddr)) {
|
|
||||||
- port = fnd->pml_map.pm_port;
|
|
||||||
- } else { /* this service is dead; delete it */
|
|
||||||
- delete_prog(reg.pm_prog);
|
|
||||||
- }
|
|
||||||
+ if (netid != NULL) {
|
|
||||||
+ snprintf(serveuaddr, sizeof serveuaddr,
|
|
||||||
+ "0.0.0.0.%ld.%ld",
|
|
||||||
+ (fnd->pml_map.pm_port >> 8) & 0xff,
|
|
||||||
+ (fnd->pml_map.pm_port) & 0xff);
|
|
||||||
+
|
|
||||||
+ if (is_bound(netid, serveuaddr)) {
|
|
||||||
+ port = fnd->pml_map.pm_port;
|
|
||||||
+ } else { /* this service is dead; delete it */
|
|
||||||
+ delete_prog(reg.pm_prog);
|
|
||||||
}
|
|
||||||
- *pt1 = '.';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-sendreply:
|
|
||||||
+
|
|
||||||
lport = port;
|
|
||||||
if ((!svc_sendreply(xprt, (xdrproc_t) xdr_long, (caddr_t)&lport)) &&
|
|
||||||
debugging) {
|
|
||||||
diff --git a/src/rpcbind.c b/src/rpcbind.c
|
|
||||||
index dc6f66b..e0e7ddf 100644
|
|
||||||
--- a/src/rpcbind.c
|
|
||||||
+++ b/src/rpcbind.c
|
|
||||||
@@ -570,18 +570,15 @@ init_transport(struct netconfig *nconf)
|
|
||||||
pml->pml_map.pm_port = PMAPPORT;
|
|
||||||
pml->pml_map.pm_prot = si.si_proto;
|
|
||||||
|
|
||||||
- /* Stash away the universal address */
|
|
||||||
switch (si.si_proto) {
|
|
||||||
case IPPROTO_TCP:
|
|
||||||
tcptrans = strdup(nconf->nc_netid);
|
|
||||||
- tcp_uaddr = taddr2uaddr(nconf, &taddr.addr);
|
|
||||||
break;
|
|
||||||
case IPPROTO_UDP:
|
|
||||||
udptrans = strdup(nconf->nc_netid);
|
|
||||||
- udp_uaddr = taddr2uaddr(nconf, &taddr.addr);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
- pml->pml_next = list_pml;
|
|
||||||
+ pml->pml_next = list_pml;
|
|
||||||
list_pml = pml;
|
|
||||||
|
|
||||||
/* Add version 3 information */
|
|
||||||
diff --git a/src/rpcbind.h b/src/rpcbind.h
|
|
||||||
index 58ab3ef..295711a 100644
|
|
||||||
--- a/src/rpcbind.h
|
|
||||||
+++ b/src/rpcbind.h
|
|
||||||
@@ -76,8 +76,6 @@ extern rpcblist_ptr list_rbl; /* A list of version 3 & 4 rpcbind services */
|
|
||||||
extern struct pmaplist *list_pml; /* A list of version 2 rpcbind services */
|
|
||||||
extern char *udptrans; /* Name of UDP transport */
|
|
||||||
extern char *tcptrans; /* Name of TCP transport */
|
|
||||||
-extern char *udp_uaddr; /* Universal UDP address */
|
|
||||||
-extern char *tcp_uaddr; /* Universal TCP address */
|
|
||||||
extern char *pmap_ipprot2netid(unsigned long);
|
|
||||||
extern int pmap_netid2ipprot(const char *);
|
|
||||||
#endif
|
|
14
rpcbind.spec
14
rpcbind.spec
@ -1,8 +1,8 @@
|
|||||||
%{!?_initdir:%define _initdir /etc/rc.d/init.d}
|
%{!?_initdir:%define _initdir /etc/rc.d/init.d}
|
||||||
|
|
||||||
Name: rpcbind
|
Name: rpcbind
|
||||||
Version: 0.1.6
|
Version: 0.1.7
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Universal Addresses to RPC Program Number Mapper
|
Summary: Universal Addresses to RPC Program Number Mapper
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPL
|
License: GPL
|
||||||
@ -25,10 +25,6 @@ Requires(post): /sbin/chkconfig
|
|||||||
Provides: portmap = %{version}-%{release}
|
Provides: portmap = %{version}-%{release}
|
||||||
Obsoletes: portmap <= 4.0-65.3
|
Obsoletes: portmap <= 4.0-65.3
|
||||||
|
|
||||||
Patch01: rpcbind-0.1.6-ipprot2netid.patch
|
|
||||||
Patch02: rpcbind-0.1.6-pmap-ipv4-only.patch
|
|
||||||
Patch03: rpcbind-0.1.6-pmap-no-uaddrs.patch
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
The rpcbind utility is a server that converts RPC program numbers into
|
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
|
universal addresses. It must be running on the host to be able to make
|
||||||
@ -36,9 +32,6 @@ RPC calls on a server on that machine.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch01 -p1
|
|
||||||
%patch02 -p1
|
|
||||||
%patch03 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%ifarch s390 s390x
|
%ifarch s390 s390x
|
||||||
@ -118,6 +111,9 @@ fi
|
|||||||
%dir %attr(700,rpc,rpc) /var/lib/rpcbind
|
%dir %attr(700,rpc,rpc) /var/lib/rpcbind
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Nov 19 2008 Steve Dickson <steved@redhat.com> 0.1.7-1
|
||||||
|
- Update to latest upstream release: 0.1.7
|
||||||
|
|
||||||
* Tue Sep 30 2008 Steve Dickson <steved@redhat.com> 0.1.6-3
|
* Tue Sep 30 2008 Steve Dickson <steved@redhat.com> 0.1.6-3
|
||||||
- Fixed a typo in the rpcbind.init script that stop warm starts
|
- Fixed a typo in the rpcbind.init script that stop warm starts
|
||||||
from happening with conrestarts
|
from happening with conrestarts
|
||||||
|
Loading…
Reference in New Issue
Block a user