1
0
forked from rpms/rpcbind

- Fixed connectivity with Mac OS clients by making sure handle_reply() sets

the correct fromlen in its recvfrom() call (bz 244492)
This commit is contained in:
Steve Dickson 2008-01-24 18:52:43 +00:00
parent 491d3c0945
commit 304cd9a95d
2 changed files with 29 additions and 1 deletions

View File

@ -0,0 +1,21 @@
commit 24bc988ad64b927c062f2464963151da70c0ce68
Author: Anders Blomdell <anders.blomdell@control.lth.se>
Date: Thu Jan 24 13:34:58 2008 -0500
Fixed connectivity with Mac OS clients by making sure handle_reply()
sets the correct fromlen in its recvfrom() call
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
index 131c05c..8f6b4c7 100644
--- a/src/rpcb_svc_com.c
+++ b/src/rpcb_svc_com.c
@@ -1246,6 +1246,7 @@ handle_reply(int fd, SVCXPRT *xprt)
goto done;
do {
+ fromlen = sizeof(ss);
inlen = recvfrom(fd, buffer, RPC_BUF_MAX, 0,
(struct sockaddr *)&ss, &fromlen);
} while (inlen < 0 && errno == EINTR);

View File

@ -2,7 +2,7 @@
Name: rpcbind
Version: 0.1.4
Release: 12%{?dist}
Release: 13%{?dist}
Summary: Universal Addresses to RPC Program Number Mapper
Group: System Environment/Daemons
License: GPL
@ -32,6 +32,7 @@ Patch4: rpcbind-0.1.4-rpcuser.patch
Patch5: rpcbind-0.1.4-iff_up.patch
Patch6: rpcbind-0.1.4-libwrap.patch
Patch7: rpcbind-0.1.4-localaddr.patch
Patch8: rpcbind-0.1.4-recvfrom-fix.patch
%description
The rpcbind utility is a server that converts RPC program numbers into
@ -51,6 +52,8 @@ RPC calls on a server on that machine.
%patch6 -p1
# 358621: rpcbind-0.1.4-8.fc7 breaks NFS
%patch7 -p1
# 244492: New rpcbind breaks connectivity with some NIS clients
%patch8 -p1
%build
%ifarch s390 s390x
@ -130,6 +133,10 @@ fi
%dir %attr(700,rpc,rpc) /var/lib/rpcbind
%changelog
* Thu Jan 24 2008 Steve Dickson <steved@redhat.com> 0.1.4-13
- Fixed connectivity with Mac OS clients by making sure handle_reply()
sets the correct fromlen in its recvfrom() call (bz 244492)
* Mon Dec 17 2007 Steve Dickson <steved@redhat.com> 0.1.4-12
- Changed is_loopback() and check_access() see if the calling
address is an address on a local interface, just not a loopback