Restore the use of reserve ports in clnt_create (bz 1562169)
Signed-off-by: Steve Dickson <steved@redhat.com>
This commit is contained in:
parent
100528bdac
commit
5f1f1be3e1
64
libtirpc-1.0.3-clntcreate.patch
Normal file
64
libtirpc-1.0.3-clntcreate.patch
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
commit 2802259184ada839793152ed0a0f130065f82dfd
|
||||||
|
Author: Steve Dickson <steved@redhat.com>
|
||||||
|
Date: Thu Apr 12 10:24:02 2018 -0400
|
||||||
|
|
||||||
|
clnt_create: Restore using reserve ports for client connections
|
||||||
|
|
||||||
|
Commit 46e04a73 changed clnt_create(3) not to
|
||||||
|
use reserve ports when binding a connection to
|
||||||
|
a server.
|
||||||
|
|
||||||
|
For certain legacy apps, like some of the NIS commands,
|
||||||
|
the client has to used reserve port to be able
|
||||||
|
to communicate with the server.
|
||||||
|
|
||||||
|
So the use of reserve ports in clnt_create(3)
|
||||||
|
has been restored.
|
||||||
|
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/src/clnt_generic.c b/src/clnt_generic.c
|
||||||
|
index e5a314f..3f3dabf 100644
|
||||||
|
--- a/src/clnt_generic.c
|
||||||
|
+++ b/src/clnt_generic.c
|
||||||
|
@@ -47,7 +47,6 @@
|
||||||
|
|
||||||
|
extern bool_t __rpc_is_local_host(const char *);
|
||||||
|
int __rpc_raise_fd(int);
|
||||||
|
-extern int __binddynport(int fd);
|
||||||
|
|
||||||
|
#ifndef NETIDLEN
|
||||||
|
#define NETIDLEN 32
|
||||||
|
@@ -341,8 +340,7 @@ clnt_tli_create(int fd, const struct netconfig *nconf,
|
||||||
|
servtype = nconf->nc_semantics;
|
||||||
|
if (!__rpc_fd2sockinfo(fd, &si))
|
||||||
|
goto err;
|
||||||
|
- if (__binddynport(fd) == -1)
|
||||||
|
- goto err;
|
||||||
|
+ bindresvport(fd, NULL);
|
||||||
|
} else {
|
||||||
|
if (!__rpc_fd2sockinfo(fd, &si))
|
||||||
|
goto err;
|
||||||
|
diff --git a/src/rpc_soc.c b/src/rpc_soc.c
|
||||||
|
index af6c482..5a6eeb7 100644
|
||||||
|
--- a/src/rpc_soc.c
|
||||||
|
+++ b/src/rpc_soc.c
|
||||||
|
@@ -67,8 +67,6 @@
|
||||||
|
|
||||||
|
extern mutex_t rpcsoc_lock;
|
||||||
|
|
||||||
|
-extern int __binddynport(int fd);
|
||||||
|
-
|
||||||
|
static CLIENT *clnt_com_create(struct sockaddr_in *, rpcprog_t, rpcvers_t,
|
||||||
|
int *, u_int, u_int, char *, int);
|
||||||
|
static SVCXPRT *svc_com_create(int, u_int, u_int, char *);
|
||||||
|
@@ -147,8 +145,7 @@ clnt_com_create(raddr, prog, vers, sockp, sendsz, recvsz, tp, flags)
|
||||||
|
bindaddr.maxlen = bindaddr.len = sizeof (struct sockaddr_in);
|
||||||
|
bindaddr.buf = raddr;
|
||||||
|
|
||||||
|
- if (__binddynport(fd) == -1)
|
||||||
|
- goto err;
|
||||||
|
+ bindresvport(fd, NULL);
|
||||||
|
cl = clnt_tli_create(fd, nconf, &bindaddr, prog, vers,
|
||||||
|
sendsz, recvsz);
|
||||||
|
if (cl) {
|
@ -2,13 +2,15 @@
|
|||||||
|
|
||||||
Name: libtirpc
|
Name: libtirpc
|
||||||
Version: 1.0.3
|
Version: 1.0.3
|
||||||
Release: 0%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Transport Independent RPC Library
|
Summary: Transport Independent RPC Library
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
License: SISSL and BSD
|
License: SISSL and BSD
|
||||||
URL: http://nfsv4.bullopensource.org/
|
URL: http://nfsv4.bullopensource.org/
|
||||||
Source0: http://downloads.sourceforge.net/libtirpc/libtirpc-%{version}.tar.bz2
|
Source0: http://downloads.sourceforge.net/libtirpc/libtirpc-%{version}.tar.bz2
|
||||||
|
|
||||||
|
Patch001: libtirpc-1.0.3-clntcreate.patch
|
||||||
|
|
||||||
BuildRequires: automake, autoconf, libtool, pkgconfig
|
BuildRequires: automake, autoconf, libtool, pkgconfig
|
||||||
BuildRequires: krb5-devel
|
BuildRequires: krb5-devel
|
||||||
|
|
||||||
@ -36,7 +38,7 @@ developing programs which use the tirpc library.
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%autosetup -p1
|
||||||
|
|
||||||
# Remove .orig files
|
# Remove .orig files
|
||||||
find . -name "*.orig" | xargs rm -f
|
find . -name "*.orig" | xargs rm -f
|
||||||
@ -127,7 +129,10 @@ mv %{buildroot}%{_mandir}/man3 %{buildroot}%{_mandir}/man3t
|
|||||||
%{_mandir}/*/*
|
%{_mandir}/*/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed Mar 14 2018 Steve Dickson <steved@redhat.com> 1.0.2-0
|
* Thu Apr 12 2018 Steve Dickson <steved@redhat.com> 1.0.3-1
|
||||||
|
- Restore the use of reserve ports in clnt_create (bz 1562169)
|
||||||
|
|
||||||
|
* Wed Mar 14 2018 Steve Dickson <steved@redhat.com> 1.0.3-0
|
||||||
- Update to latest upstream release: libtirpc-1-0-3
|
- Update to latest upstream release: libtirpc-1-0-3
|
||||||
|
|
||||||
* Tue Mar 6 2018 Steve Dickson <steved@redhat.com> 1.0.2-6.rc2
|
* Tue Mar 6 2018 Steve Dickson <steved@redhat.com> 1.0.2-6.rc2
|
||||||
|
Loading…
Reference in New Issue
Block a user