Patchwork [03/11] libtirpc: Disable DES functions on uclibc

login
register
mail settings
Submitter Khem Raj
Date Jan. 24, 2013, 9:07 p.m.
Message ID <485a026cbe0fb6916148e9a7d8e52655e8f0274e.1359061155.git.raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/43313/
State Accepted
Commit c66a269f6f68d670ca3bf9e7b22a5dce4bb95cd0
Headers show

Comments

Khem Raj - Jan. 24, 2013, 9:07 p.m.
uclibc does not provide these functions so dont expect them

/usr/lib/libtirpc.so: undefined reference to `key_encryptsession_pk'
/usr/lib/libtirpc.so: undefined reference to `getnetname'
/usr/lib/libtirpc.so: undefined reference to `cbc_crypt'
/usr/lib/libtirpc.so: undefined reference to `ecb_crypt'
/usr/lib/libtirpc.so: undefined reference to `getpublickey'
/usr/lib/libtirpc.so: undefined reference to `key_gendes'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../libtirpc-0.2.2/remove-des-uclibc.patch         |   47 ++++++++++++++++++++
 meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb   |    2 +
 2 files changed, 49 insertions(+)
 create mode 100644 meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch

Patch

diff --git a/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch
new file mode 100644
index 0000000..4e828f6
--- /dev/null
+++ b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch
@@ -0,0 +1,47 @@ 
+uclibc does not provide des functionality unlike eglibc so lets disable ssl support
+
+Upstream-Status: Inappropriate [uclibc specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: libtirpc-0.2.2/src/Makefile.am
+===================================================================
+--- libtirpc-0.2.2.orig/src/Makefile.am	2013-01-23 14:08:58.802143165 -0800
++++ libtirpc-0.2.2/src/Makefile.am	2013-01-23 18:06:22.970410357 -0800
+@@ -40,7 +40,7 @@
+ # release number of your package. This is an abuse that only fosters
+ # misunderstanding of the purpose of library versions."
+ #
+-libtirpc_la_LDFLAGS = -lnsl -lpthread -version-info 1:10:0
++libtirpc_la_LDFLAGS = -lpthread -version-info 1:10:0
+ 
+ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c clnt_bcast.c \
+         clnt_dg.c clnt_generic.c clnt_perror.c clnt_raw.c clnt_simple.c \
+@@ -50,7 +50,7 @@
+         rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \
+         rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_generic.c \
+         svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \
+-        auth_time.c auth_des.c authdes_prot.c
++        auth_time.c
+ 
+ ## XDR
+ libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c
+Index: libtirpc-0.2.2/src/rpc_soc.c
+===================================================================
+--- libtirpc-0.2.2.orig/src/rpc_soc.c	2011-05-02 05:10:40.000000000 -0700
++++ libtirpc-0.2.2/src/rpc_soc.c	2013-01-23 18:07:28.894410317 -0800
+@@ -515,6 +515,7 @@
+ 	    (resultproc_t) rpc_wrap_bcast, "udp");
+ }
+ 
++#if 0
+ /*
+  * Create the client des authentication object. Obsoleted by
+  * authdes_seccreate().
+@@ -546,6 +547,7 @@
+ 	dummy = authdes_seccreate(servername, window, NULL, ckey);
+ 	return (dummy);
+ }
++#endif
+ 
+ /*
+  * Create a client handle for a unix connection. Obsoleted by clnt_vc_create()
diff --git a/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb b/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb
index 295ca83..36591bf 100644
--- a/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb
+++ b/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb
@@ -19,6 +19,8 @@  SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2;name=libtirpc \
            file://obsolete_automake_macros.patch \
           "
 
+SRC_URI_append_libc-uclibc = " file://remove-des-uclibc.patch"
+
 SRC_URI[libtirpc.md5sum] = "74c41c15c2909f7d11d9c7bfa7db6273"
 SRC_URI[libtirpc.sha256sum] = "f05eb17c85d62423858b8f74512cfe66a9ae1cedf93f03c2a0a32e04f0a33705"
 SRC_URI[glibc-nfs.md5sum] = "5ae500b9d0b6b72cb875bc04944b9445"