[SM-Commit] GIT changes to master grimoire by Elisamuel Resto (bdbe1e1982ccb568e90a106586e11aff8729a6bf)

Elisamuel Resto scm at sourcemage.org
Fri Jun 24 11:43:13 EDT 2011


GIT changes to master grimoire by Elisamuel Resto <ryuji at simplysam.us>:

 libs/libtirpc/HISTORY                           |    5 +++
 libs/libtirpc/PRE_BUILD                         |    9 ++++++
 libs/libtirpc/libtirpc-0.2.1-fortify.patch      |   18 ++++++++++++
 libs/libtirpc/libtirpc-0.2.2-rpc-des-prot.patch |   36 ++++++++++++++++++++++++
 net/rpcbind/HISTORY                             |    3 ++
 net/rpcbind/PRE_BUILD                           |    5 +++
 net/rpcbind/rpcbind-sunrpc.patch                |   22 ++++++++++++++
 7 files changed, 98 insertions(+)

New commits:
commit bdbe1e1982ccb568e90a106586e11aff8729a6bf
Author: Elisamuel Resto <ryuji at simplysam.us>
Commit: Elisamuel Resto <ryuji at simplysam.us>

    net/rpcbind: make rpcbind use 'sunrpc' service name

commit d6344b6a3a94b88ed67925a474de5930803acfbf
Author: Elisamuel Resto <ryuji at simplysam.us>
Commit: Elisamuel Resto <ryuji at simplysam.us>

    libs/libtirpc: Added patch for possible overflow and fixed bug #11

diff --git a/libs/libtirpc/HISTORY b/libs/libtirpc/HISTORY
index cdfc516..d8f3f8c 100644
--- a/libs/libtirpc/HISTORY
+++ b/libs/libtirpc/HISTORY
@@ -1,3 +1,8 @@
+2011-06-24 Elisamuel Resto <ryuji at sourcemage.org>
+	* PRE_BUILD: Added to apply patches and fix build
+	* libtirpc-0.2.1-fortify.patch: Avoid possible overflow if hp_length < 4
+	* libtirpc-0.2.2-rpc-des-prot.patch: undeclared references to `_des_crypt_call' (Bug #11)
+
 2011-06-05 Ladislav Hagara <hgr at vabo.cz>
 	* DETAILS: 0.2.2
 
diff --git a/libs/libtirpc/PRE_BUILD b/libs/libtirpc/PRE_BUILD
new file mode 100755
index 0000000..e9f8dbd
--- /dev/null
+++ b/libs/libtirpc/PRE_BUILD
@@ -0,0 +1,9 @@
+default_pre_build &&
+cd "${SOURCE_DIRECTORY}" &&
+
+# Avoid possible overflow if hp_length is less than four
+patch -p1 -i "${SPELL_DIRECTORY}/${SPELL}-0.2.1-fortify.patch" &&
+
+# This fixes the undefined reference to _des_crypt_call (Bug #11)
+patch -p1 -i "${SPELL_DIRECTORY}/${SPELL}-0.2.2-rpc-des-prot.patch" &&
+echo "" > "${SOURCE_DIRECTORY}/src/des_crypt.c"
diff --git a/libs/libtirpc/libtirpc-0.2.1-fortify.patch b/libs/libtirpc/libtirpc-0.2.1-fortify.patch
new file mode 100644
index 0000000..7375bf8
--- /dev/null
+++ b/libs/libtirpc/libtirpc-0.2.1-fortify.patch
@@ -0,0 +1,18 @@
+Index: libtirpc-0.2.1/src/getrpcport.c
+===================================================================
+--- libtirpc-0.2.1.orig/src/getrpcport.c
++++ libtirpc-0.2.1/src/getrpcport.c
+@@ -54,11 +54,11 @@ getrpcport(host, prognum, versnum, proto
+ 
+ 	if ((hp = gethostbyname(host)) == NULL)
+ 		return (0);
++	if (hp->h_length != sizeof(addr.sin_addr.s_addr))
++		return (0);
+ 	memset(&addr, 0, sizeof(addr));
+ 	addr.sin_family = AF_INET;
+ 	addr.sin_port =  0;
+-	if (hp->h_length > sizeof(addr))
+-	  hp->h_length = sizeof(addr);
+ 	memcpy(&addr.sin_addr.s_addr, hp->h_addr, (size_t)hp->h_length);
+ 	/* Inconsistent interfaces need casts! :-( */
+ 	return (pmap_getport(&addr, (u_long)prognum, (u_long)versnum, 
diff --git a/libs/libtirpc/libtirpc-0.2.2-rpc-des-prot.patch b/libs/libtirpc/libtirpc-0.2.2-rpc-des-prot.patch
new file mode 100644
index 0000000..c5de6da
--- /dev/null
+++ b/libs/libtirpc/libtirpc-0.2.2-rpc-des-prot.patch
@@ -0,0 +1,36 @@
+From f2f43212b33dea42635061c82645287454a70107 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier at gentoo.org>
+Date: Sat, 11 Jun 2011 15:21:55 -0400
+Subject: [PATCH] add multiple inclusion protection to rpc/des.h
+
+If you try to include this file multiple times, you get a build failure
+due to redefinitions of enums and such.
+
+Signed-off-by: Mike Frysinger <vapier at gentoo.org>
+---
+ tirpc/rpc/des.h |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/tirpc/rpc/des.h b/tirpc/rpc/des.h
+index e3d6897..d2881ad 100644
+--- a/tirpc/rpc/des.h
++++ b/tirpc/rpc/des.h
+@@ -33,6 +33,9 @@
+  * Copyright (c) 1986 by Sun Microsystems, Inc.
+  */
+ 
++#ifndef _RPC_DES_H_
++#define _RPC_DES_H_
++
+ #define DES_MAXLEN 	65536	/* maximum # of bytes to encrypt  */
+ #define DES_QUICKLEN	16	/* maximum # of bytes to encrypt quickly */
+ 
+@@ -80,3 +83,5 @@ struct desparams {
+  * Software DES.
+  */
+ extern int _des_crypt( char *, int, struct desparams * );
++
++#endif
+-- 
+1.7.5.3
+
diff --git a/net/rpcbind/HISTORY b/net/rpcbind/HISTORY
index 05573c6..6b44b25 100644
--- a/net/rpcbind/HISTORY
+++ b/net/rpcbind/HISTORY
@@ -1,3 +1,6 @@
+2011-06-24 ELisamuel Resto <ryuji at sourcemage.org>
+    * PRE_BUILD, rpcbind-sunrpc.patch: Make rpcbind use 'sunrpc' service name
+
 2010-04-07 Elisamuel Resto <ryuji at sourcemage.org>
 	* CONFLICTS, DEPENDS, DETAILS, PROVIDES: spell created
 
diff --git a/net/rpcbind/PRE_BUILD b/net/rpcbind/PRE_BUILD
new file mode 100755
index 0000000..0fc7374
--- /dev/null
+++ b/net/rpcbind/PRE_BUILD
@@ -0,0 +1,5 @@
+default_pre_build &&
+cd "${SOURCE_DIRECTORY}" &&
+
+# Use 'sunrpc' as the service name instead of 'rpcbind' (Bug #12)
+patch -p1 -i "${SPELL_DIRECTORY}/${SPELL}-sunrpc.patch"
diff --git a/net/rpcbind/rpcbind-sunrpc.patch b/net/rpcbind/rpcbind-sunrpc.patch
new file mode 100644
index 0000000..76cf54b
--- /dev/null
+++ b/net/rpcbind/rpcbind-sunrpc.patch
@@ -0,0 +1,22 @@
+--- rpcbind-0.1.7/src/rpcbind.c.orig	2008-11-19 14:17:34.000000000 +0100
++++ rpcbind-0.1.7/src/rpcbind.c	2010-01-07 13:03:37.416632894 +0100
+@@ -114,7 +114,7 @@
+ char *udp_uaddr;	/* Universal UDP address */
+ char *tcp_uaddr;	/* Universal TCP address */
+ #endif
+-static char servname[] = "rpcbind";
++static char servname[] = "sunrpc";
+ static char superuser[] = "superuser";
+ 
+ int main __P((int, char *[]));
+--- rpcbind-0.1.7/src/rpcinfo.c~	2010-01-08 16:14:24.592156602 +0000
++++ rpcbind-0.1.7/src/rpcinfo.c	2010-01-08 16:14:31.578838609 +0000
+@@ -633,7 +633,7 @@
+ 	{
+ 	  memset (&hints, 0, sizeof hints);
+ 	  hints.ai_family = AF_INET;
+-	  if ((error = getaddrinfo (host, "rpcbind", &hints, &res)) != 0 &&
++	  if ((error = getaddrinfo (host, "sunrpc", &hints, &res)) != 0 &&
+               (error = getaddrinfo (host, "portmapper", &hints, &res)) != 0)
+ 	    {
+ 	      fprintf (stderr, "rpcinfo: %s: %s\n",


More information about the SM-Commit mailing list