Hello community,
here is the log from the commit of package libtirpc for openSUSE:Factory checked in at 2015-07-05 17:53:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libtirpc (Old)
and /work/SRC/openSUSE:Factory/.libtirpc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libtirpc"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libtirpc/libtirpc.changes 2015-06-05 08:45:58.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libtirpc.new/libtirpc.changes 2015-07-05 17:53:48.000000000 +0200
@@ -1,0 +2,15 @@
+Wed Jun 24 16:44:06 CEST 2015 - kukuk@suse.de
+
+- Add 008-fix-undef-ref.patch to fix a undefined reference bug
+
+-------------------------------------------------------------------
+Tue Jun 23 14:15:25 CEST 2015 - kukuk@suse.de
+
+- Update to version 0.3.2 (bring authdes back)
+- Remove 005-no_IPv6_for_old_code.patch (accepted upstream)
+- Remove 001-tirpc-features.patch (obsolete)
+- Add 005-missing-symvers.patch (fix missing, new symbols)
+- Add 006-memleak1.patch (fix memory leak)
+- Add 007-memleak2.patch (fix memory leak)
+
+-------------------------------------------------------------------
Old:
----
001-tirpc-features.patch
005-no_IPv6_for_old_code.patch
libtirpc-0.3.1.tar.bz2
New:
----
005-missing-symvers.patch
006-memleak1.patch
007-memleak2.patch
008-fix-undef-ref.patch
libtirpc-0.3.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libtirpc.spec ++++++
--- /var/tmp/diff_new_pack.cpotrt/_old 2015-07-05 17:53:49.000000000 +0200
+++ /var/tmp/diff_new_pack.cpotrt/_new 2015-07-05 17:53:49.000000000 +0200
@@ -16,12 +16,10 @@
#
-%define tarversion 0.3.1
-
Name: libtirpc
# src/crypt_client.c tirpc/spinlock.h and tirpc/rpcsvc/crypt.x have the BSD
# advertising clause
-Version: 0.3.1
+Version: 0.3.2
Release: 0
Summary: Transport Independent RPC Library
License: BSD-4-Clause
@@ -35,15 +33,17 @@
BuildRequires: libtool
BuildRequires: pkg-config
Url: http://sourceforge.net/projects/libtirpc/
-# http://downloads.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{tarversion}.tar.bz2
-Source: %{name}-%{tarversion}.tar.bz2
+# http://downloads.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{version}.tar.bz2
+Source: %{name}-%{version}.tar.bz2
Source1: baselibs.conf
Patch0: 000-bindresvport_blacklist.patch
-Patch1: 001-tirpc-features.patch
# Patch2 is only needed for SLES11
Patch2: 002-old-automake.patch
Patch4: 004-netconfig-prefer-IPv6.patch
-Patch5: 005-no_IPv6_for_old_code.patch
+Patch5: 005-missing-symvers.patch
+Patch6: 006-memleak1.patch
+Patch7: 007-memleak2.patch
+Patch8: 008-fix-undef-ref.patch
Patch25: patch6_7.diff
# Patch37 is only needed on openSUSE >= 13.1, SLE >= 12
Patch37: libtirpc-new-path-rpcbindsock.patch
@@ -81,13 +81,15 @@
TCP over IPv4
%prep
-%setup -q -n %name-%tarversion
+%setup -q -n %name-%version
%patch0 -p0
-%patch1 -p1
+%patch2 -p1
%patch4 -p1
%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
%patch25 -p1
-%patch2 -p1
%if 0%{suse_version} >= 1310
%patch37 -p1
%endif
++++++ 002-old-automake.patch ++++++
--- /var/tmp/diff_new_pack.cpotrt/_old 2015-07-05 17:53:49.000000000 +0200
+++ /var/tmp/diff_new_pack.cpotrt/_new 2015-07-05 17:53:49.000000000 +0200
@@ -3,7 +3,7 @@
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,4 @@
- AC_INIT(libtirpc, 0.3.1)
+ AC_INIT(libtirpc, 0.3.2)
-AM_INIT_AUTOMAKE([silent-rules])
+AM_INIT_AUTOMAKE
-AM_SILENT_RULES([yes])
++++++ 005-missing-symvers.patch ++++++
diff --git a/src/libtirpc.map b/src/libtirpc.map
index 063cddd..449b769 100644
--- a/src/libtirpc.map
+++ b/src/libtirpc.map
@@ -316,6 +316,13 @@ TIRPC_0.3.2 {
xdr_unixcred;
} TIRPC_0.3.1;
+TIRPC_0.3.3 {
+ __getpublickey_LOCAL;
+ __key_decryptsession_pk_LOCAL;
+ __key_encryptsession_pk_LOCAL;
+ __key_gendes_LOCAL;
+} TIRPC_0.3.2;
+
TIRPC_PRIVATE {
global:
__libc_clntudp_bufcreate;
++++++ 006-memleak1.patch ++++++
xprt->xp_netid can be allocated by makefd_xprt() in
svc_fd_create(), so don't blindly overwrite the
pointer in svc_tli_create()
The API expection is the nc_netid passed in will be
used for the xp_netid. So the pointer must be
freed then re-allocated.
Reported-by: Michael Theall
Signed-off-by: Steve Dickson
---
src/svc_generic.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/svc_generic.c b/src/svc_generic.c
index f49d776..7aae796 100644
--- a/src/svc_generic.c
+++ b/src/svc_generic.c
@@ -283,6 +283,8 @@ svc_tli_create(fd, nconf, bindaddr, sendsz, recvsz)
xprt->xp_type = __rpc_socktype2seman(si.si_socktype);
if (nconf) {
+ if (xprt->xp_netid != NULL)
+ free(xprt->xp_netid);
xprt->xp_netid = strdup(nconf->nc_netid);
xprt->xp_tp = strdup(nconf->nc_device);
}
--
2.4.3
------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Libtirpc-devel mailing list
Libtirpc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libtirpc-devel
++++++ 007-memleak2.patch ++++++
A rendezvouser socket is defined by a
xp_port value of (u_short)-1 which does
not work because xp_port is overwritten
by svc_com_create() and 65535 is a valid
port value.
To ensure actual connections get freed
properly in __svc_vc_dodestroy(), compare
the xp_recv value to rendezvous_request.
Reported-by: Michael Theall
Signed-off-by: Steve Dickson
---
src/svc_vc.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/svc_vc.c b/src/svc_vc.c
index 9824631..6848c09 100644
--- a/src/svc_vc.c
+++ b/src/svc_vc.c
@@ -392,6 +392,12 @@ svc_vc_destroy(xprt)
__svc_vc_dodestroy(xprt);
}
+static bool_t
+__svc_rendezvous_socket(xprt)
+ SVCXPRT *xprt;
+{
+ return (xprt->xp_ops->xp_recv == rendezvous_request);
+}
static void
__svc_vc_dodestroy(xprt)
SVCXPRT *xprt;
@@ -403,7 +409,7 @@ __svc_vc_dodestroy(xprt)
if (xprt->xp_fd != RPC_ANYFD)
(void)close(xprt->xp_fd);
- if (xprt->xp_port != 0) {
+ if (__svc_rendezvous_socket(xprt)) {
/* a rendezvouser socket */
r = (struct cf_rendezvous *)xprt->xp_p1;
mem_free(r, sizeof (struct cf_rendezvous));
--
2.4.3
------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Libtirpc-devel mailing list
Libtirpc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libtirpc-devel
++++++ 008-fix-undef-ref.patch ++++++
diff -Naur a/src/Makefile.am b/src/Makefile.am
--- a/src/Makefile.am 2015-06-16 17:35:08.000000000 +0200
+++ b/src/Makefile.am 2015-06-17 21:23:05.185276962 +0200
@@ -69,7 +69,7 @@
endif
libtirpc_la_SOURCES += key_call.c key_prot_xdr.c getpublickey.c
-libtirpc_la_SOURCES += netname.c netnamer.c rtime.c
+libtirpc_la_SOURCES += netname.c netnamer.c rpcdname.c rtime.c
CLEANFILES = cscope.* *~
DISTCLEANFILES = Makefile.in
diff -Naur a/src/rpcdname.c b/src/rpcdname.c
--- a/src/rpcdname.c 1970-01-01 01:00:00.000000000 +0100
+++ b/src/rpcdname.c 2015-06-17 21:23:05.186276982 +0200
@@ -0,0 +1,72 @@
+/*
+ * Copyright (c) 2009, Sun Microsystems, Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * - Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * - Neither the name of Sun Microsystems, Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * rpcdname.c
+ * Gets the default domain name
+ */
+
+#include
+#include
+#include
+
+static char *default_domain = 0;
+
+static char *
+get_default_domain()
+{
+ char temp[256];
+
+ if (default_domain)
+ return (default_domain);
+ if (getdomainname(temp, sizeof(temp)) < 0)
+ return (0);
+ if ((int) strlen(temp) > 0) {
+ default_domain = (char *)malloc((strlen(temp)+(unsigned)1));
+ if (default_domain == 0)
+ return (0);
+ (void) strcpy(default_domain, temp);
+ return (default_domain);
+ }
+ return (0);
+}
+
+/*
+ * This is a wrapper for the system call getdomainname which returns a
+ * ypclnt.h error code in the failure case. It also checks to see that
+ * the domain name is non-null, knowing that the null string is going to
+ * get rejected elsewhere in the NIS client package.
+ */
+int
+__rpc_get_default_domain(domain)
+ char **domain;
+{
+ if ((*domain = get_default_domain()) != 0)
+ return (0);
+ return (-1);
+}
++++++ libtirpc-0.3.1.tar.bz2 -> libtirpc-0.3.2.tar.bz2 ++++++
++++ 4329 lines of diff (skipped)