rpms/libtirpc/devel libtirpc-0.1.10-rc1.patch, NONE, 1.1 libtirpc.spec, 1.43, 1.44
Steve Dickson
steved at fedoraproject.org
Fri Mar 13 17:15:40 UTC 2009
- Previous message: [pkgdb] sylpheed: mschwendt has given up approveacls
- Next message: rpms/system-config-printer/devel system-config-printer-1.1.6.tar.bz2.sig, NONE, 1.1 .cvsignore, 1.198, 1.199 sources, 1.204, 1.205 system-config-printer.spec, 1.254, 1.255 system-config-printer-1.1.5.tar.bz2.sig, 1.1, NONE system-config-printer-git-1.1.x.patch, 1.8, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: steved
Update of /cvs/pkgs/rpms/libtirpc/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv27208
Modified Files:
libtirpc.spec
Added Files:
libtirpc-0.1.10-rc1.patch
Log Message:
- libtirpc: set r_netid and r_owner in __rpcb_findaddr_timed
- libtirpc: be sure to free cl_netid and cl_tp
- libtirpc: must free saved wire verifier when destroying context
libtirpc-0.1.10-rc1.patch:
--- NEW FILE libtirpc-0.1.10-rc1.patch ---
commit 1c8c2bf2f0b81b0fa1992894679786619c048a1e
Author: Jeff Layton <jlayton at redhat.com>
Date: Fri Mar 13 12:44:16 2009 -0400
libtirpc: set r_netid and r_owner in __rpcb_findaddr_timed
These fields in the rpcbind GETADDR call are being passed uninitialized
to CLNT_CALL. In the case of x86_64 at least, this usually leads to a
segfault. On x86, it sometimes causes segfaults and other times causes
garbage to be sent on the wire.
rpcbind generally ignores the r_owner field for calls that come in over
the wire, so it really doesn't matter what we send in that slot. We just
need to send something. The reference implementation from Sun seems to
send a blank string. Have ours follow suit.
Signed-off-by: Jeff Layton <jlayton at redhat.com>
Signed-off-by: Steve Dickson <steved at redhat.com>
commit 956a049085101961593956d01084f7f713ea8ded
Author: Jeff Layton <jlayton at redhat.com>
Date: Fri Mar 13 12:47:36 2009 -0400
libtirpc: be sure to free cl_netid and cl_tp
When creating a client with clnt_tli_create, it uses strdup to copy
strings for these fields if nconf is passed in. clnt_dg_destroy frees
these strings already. Make sure clnt_vc_destroy frees them in the same
way.
Signed-off-by: Jeff Layton <jlayton at redhat.com>
Signed-off-by: Steve Dickson <steved at redhat.com>
commit fbe8b50728c565459f2678aa1ad4dfc6610d1f9e
Author: Jeff Layton <jlayton at redhat.com>
Date: Fri Mar 13 12:48:40 2009 -0400
libtirpc: must free saved wire verifier when destroying context
When we're destroying the authgss context, we must also free any
saved wire verifier that we have to keep from leaking memory.
Signed-off-by: Jeff Layton <jlayton at redhat.com>
Signed-off-by: Steve Dickson <steved at redhat.com>
diff -up libtirpc-0.1.10/src/auth_gss.c.orig libtirpc-0.1.10/src/auth_gss.c
--- libtirpc-0.1.10/src/auth_gss.c.orig 2009-03-13 13:07:58.000000000 -0400
+++ libtirpc-0.1.10/src/auth_gss.c 2009-03-13 13:09:25.000000000 -0400
@@ -567,6 +567,12 @@ authgss_destroy_context(AUTH *auth)
gss_delete_sec_context(&min_stat, &gd->ctx, NULL);
gd->ctx = GSS_C_NO_CONTEXT;
}
+
+ /* free saved wire verifier (if any) */
+ mem_free(gd->gc_wire_verf.value, gd->gc_wire_verf.length);
+ gd->gc_wire_verf.value = NULL;
+ gd->gc_wire_verf.length = 0;
+
gd->established = FALSE;
}
diff -up libtirpc-0.1.10/src/clnt_vc.c.orig libtirpc-0.1.10/src/clnt_vc.c
--- libtirpc-0.1.10/src/clnt_vc.c.orig 2008-11-19 08:01:43.000000000 -0500
+++ libtirpc-0.1.10/src/clnt_vc.c 2009-03-13 13:09:21.000000000 -0400
@@ -646,6 +646,10 @@ clnt_vc_destroy(cl)
if (ct->ct_addr.buf)
free(ct->ct_addr.buf);
mem_free(ct, sizeof(struct ct_data));
+ if (cl->cl_netid && cl->cl_netid[0])
+ mem_free(cl->cl_netid, strlen(cl->cl_netid) +1);
+ if (cl->cl_tp && cl->cl_tp[0])
+ mem_free(cl->cl_tp, strlen(cl->cl_tp) +1);
mem_free(cl, sizeof(CLIENT));
mutex_unlock(&clnt_fd_lock);
thr_sigsetmask(SIG_SETMASK, &(mask), NULL);
diff -up libtirpc-0.1.10/src/rpcb_clnt.c.orig libtirpc-0.1.10/src/rpcb_clnt.c
--- libtirpc-0.1.10/src/rpcb_clnt.c.orig 2008-11-19 08:01:43.000000000 -0500
+++ libtirpc-0.1.10/src/rpcb_clnt.c 2009-03-13 13:09:16.000000000 -0400
@@ -749,6 +749,13 @@ __rpcb_findaddr_timed(program, version,
parms.r_addr = NULL;
parms.r_prog = program;
parms.r_vers = version;
+ parms.r_netid = nconf->nc_netid;
+
+ /*
+ * According to wire captures, the reference implementation
+ * (OpenSolaris) sends a blank string here too.
+ */
+ parms.r_owner = "";
/*
* Use default total timeout if no timeout is specified.
Index: libtirpc.spec
===================================================================
RCS file: /cvs/pkgs/rpms/libtirpc/devel/libtirpc.spec,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- libtirpc.spec 25 Feb 2009 19:25:59 -0000 1.43
+++ libtirpc.spec 13 Mar 2009 17:15:08 -0000 1.44
@@ -1,6 +1,6 @@
Name: libtirpc
Version: 0.1.10
-Release: 5%{?dist}
+Release: 6%{?dist}
Summary: Transport Independent RPC Library
Group: System Environment/Libraries
License: SISSL
@@ -36,6 +36,7 @@
Patch04: libtirpc-0.1.10-svcreq-compat.patch
Patch05: libtirpc-0.1.10-warnings.patch
Patch06: libtirpc-0.1.10-uuid_t.patch
+Patch07: libtirpc-0.1.10-rc1.patch
Patch100: libtirpc-0.1.7-compile.patch
@@ -52,6 +53,7 @@
%patch04 -p1
%patch05 -p1
%patch06 -p1
+%patch07 -p1
%patch100 -p1
@@ -150,6 +152,11 @@
%{_mandir}/*/*
%changelog
+* Fri Mar 13 2009 Steve Dickson <steved at redhat.com> 0.1.10-6
+- libtirpc: set r_netid and r_owner in __rpcb_findaddr_timed
+- libtirpc: be sure to free cl_netid and cl_tp
+- libtirpc: must free saved wire verifier when destroying context
+
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.1.10-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
- Previous message: [pkgdb] sylpheed: mschwendt has given up approveacls
- Next message: rpms/system-config-printer/devel system-config-printer-1.1.6.tar.bz2.sig, NONE, 1.1 .cvsignore, 1.198, 1.199 sources, 1.204, 1.205 system-config-printer.spec, 1.254, 1.255 system-config-printer-1.1.5.tar.bz2.sig, 1.1, NONE system-config-printer-git-1.1.x.patch, 1.8, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list