diff options
Diffstat (limited to 'meta/recipes-extended/libtirpc')
5 files changed, 115 insertions, 21 deletions
diff --git a/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.1-fortify.patch b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.1-fortify.patch new file mode 100644 index 0000000000..32644b5b72 --- /dev/null +++ b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.1-fortify.patch | |||
@@ -0,0 +1,26 @@ | |||
1 | Fix a possible overflow (reported by _FORTIFY_SOURCE=2) | ||
2 | |||
3 | Ported from Gentoo | ||
4 | |||
5 | Upstream-Status: Unknown | ||
6 | |||
7 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
8 | |||
9 | Index: libtirpc-0.2.1/src/getrpcport.c | ||
10 | =================================================================== | ||
11 | --- libtirpc-0.2.1.orig/src/getrpcport.c | ||
12 | +++ libtirpc-0.2.1/src/getrpcport.c | ||
13 | @@ -54,11 +54,11 @@ getrpcport(host, prognum, versnum, proto | ||
14 | |||
15 | if ((hp = gethostbyname(host)) == NULL) | ||
16 | return (0); | ||
17 | + if (hp->h_length != sizeof(addr.sin_addr.s_addr)) | ||
18 | + return (0); | ||
19 | memset(&addr, 0, sizeof(addr)); | ||
20 | addr.sin_family = AF_INET; | ||
21 | addr.sin_port = 0; | ||
22 | - if (hp->h_length > sizeof(addr)) | ||
23 | - hp->h_length = sizeof(addr); | ||
24 | memcpy(&addr.sin_addr.s_addr, hp->h_addr, (size_t)hp->h_length); | ||
25 | /* Inconsistent interfaces need casts! :-( */ | ||
26 | return (pmap_getport(&addr, (u_long)prognum, (u_long)versnum, | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.2-rpc-des-prot.patch b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.2-rpc-des-prot.patch new file mode 100644 index 0000000000..c38a55b876 --- /dev/null +++ b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/libtirpc-0.2.2-rpc-des-prot.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From f2f43212b33dea42635061c82645287454a70107 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mike Frysinger <vapier@gentoo.org> | ||
3 | Date: Sat, 11 Jun 2011 15:21:55 -0400 | ||
4 | Subject: [PATCH] add multiple inclusion protection to rpc/des.h | ||
5 | |||
6 | If you try to include this file multiple times, you get a build failure | ||
7 | due to redefinitions of enums and such. | ||
8 | |||
9 | Signed-off-by: Mike Frysinger <vapier@gentoo.org> | ||
10 | --- | ||
11 | tirpc/rpc/des.h | 5 +++++ | ||
12 | 1 files changed, 5 insertions(+), 0 deletions(-) | ||
13 | |||
14 | |||
15 | Upstream-Status: Backport | ||
16 | |||
17 | diff --git a/tirpc/rpc/des.h b/tirpc/rpc/des.h | ||
18 | index e3d6897..d2881ad 100644 | ||
19 | --- a/tirpc/rpc/des.h | ||
20 | +++ b/tirpc/rpc/des.h | ||
21 | @@ -33,6 +33,9 @@ | ||
22 | * Copyright (c) 1986 by Sun Microsystems, Inc. | ||
23 | */ | ||
24 | |||
25 | +#ifndef _RPC_DES_H_ | ||
26 | +#define _RPC_DES_H_ | ||
27 | + | ||
28 | #define DES_MAXLEN 65536 /* maximum # of bytes to encrypt */ | ||
29 | #define DES_QUICKLEN 16 /* maximum # of bytes to encrypt quickly */ | ||
30 | |||
31 | @@ -80,3 +83,5 @@ struct desparams { | ||
32 | * Software DES. | ||
33 | */ | ||
34 | extern int _des_crypt( char *, int, struct desparams * ); | ||
35 | + | ||
36 | +#endif | ||
37 | -- | ||
38 | 1.7.5.3 | ||
39 | |||
diff --git a/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-crypt.patch b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-crypt.patch new file mode 100644 index 0000000000..d94a5850ae --- /dev/null +++ b/meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-crypt.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | http://sourceforge.net/mailarchive/message.php?msg_id=27636466 | ||
2 | |||
3 | Upstream-Status: Backport | ||
4 | |||
5 | Index: libtirpc-0.2.2/src/Makefile.am | ||
6 | =================================================================== | ||
7 | --- libtirpc-0.2.2.orig/src/Makefile.am | ||
8 | +++ libtirpc-0.2.2/src/Makefile.am | ||
9 | @@ -50,7 +50,7 @@ libtirpc_la_SOURCES = auth_none.c auth_u | ||
10 | rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ | ||
11 | rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_generic.c \ | ||
12 | svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ | ||
13 | - auth_time.c auth_des.c authdes_prot.c des_crypt.c | ||
14 | + auth_time.c auth_des.c authdes_prot.c | ||
15 | |||
16 | ## XDR | ||
17 | libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc_0.2.1.bb b/meta/recipes-extended/libtirpc/libtirpc_0.2.1.bb deleted file mode 100644 index 6170e6547c..0000000000 --- a/meta/recipes-extended/libtirpc/libtirpc_0.2.1.bb +++ /dev/null | |||
@@ -1,21 +0,0 @@ | |||
1 | SUMMARY = "Transport-Independent RPC library" | ||
2 | DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" | ||
3 | SECTION = "libs/network" | ||
4 | PRIORITY = "optional" | ||
5 | HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" | ||
6 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" | ||
7 | LICENSE = "BSD" | ||
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=1c32c8e351f97e43e1ad6cf7f62de3bf \ | ||
9 | file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" | ||
10 | PR = "r1" | ||
11 | |||
12 | SRC_URI = "${SOURCEFORGE_MIRROR}/libtirpc/libtirpc-${PV}.tar.bz2" | ||
13 | |||
14 | SRC_URI[md5sum] = "d77eb15f464bf9d6e66259eaf78b2a4e" | ||
15 | SRC_URI[sha256sum] = "ea77cadd63941fc4edbee7863d2c7094e6a18263d2a2c8922319aee91352ff41" | ||
16 | |||
17 | inherit autotools | ||
18 | |||
19 | do_install_append() { | ||
20 | chown root:root ${D}${sysconfdir}/netconfig | ||
21 | } | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb b/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb new file mode 100644 index 0000000000..f1f66e3ebf --- /dev/null +++ b/meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb | |||
@@ -0,0 +1,33 @@ | |||
1 | SUMMARY = "Transport-Independent RPC library" | ||
2 | DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" | ||
3 | SECTION = "libs/network" | ||
4 | PRIORITY = "optional" | ||
5 | HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" | ||
6 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" | ||
7 | LICENSE = "BSD" | ||
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ | ||
9 | file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" | ||
10 | PR = "r0" | ||
11 | |||
12 | DEPENDS += "xz-native" | ||
13 | PROVIDES = "virtual/librpc" | ||
14 | |||
15 | SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${P}.tar.bz2;name=libtirpc \ | ||
16 | ${GENTOO_MIRROR}/${PN}-glibc-nfs.tar.xz;name=glibc-nfs \ | ||
17 | file://libtirpc-0.2.1-fortify.patch \ | ||
18 | file://libtirpc-0.2.2-rpc-des-prot.patch \ | ||
19 | file://remove-des-crypt.patch \ | ||
20 | " | ||
21 | SRC_URI[libtirpc.md5sum] = "74c41c15c2909f7d11d9c7bfa7db6273" | ||
22 | SRC_URI[libtirpc.sha256sum] = "f05eb17c85d62423858b8f74512cfe66a9ae1cedf93f03c2a0a32e04f0a33705" | ||
23 | SRC_URI[glibc-nfs.md5sum] = "5ae500b9d0b6b72cb875bc04944b9445" | ||
24 | SRC_URI[glibc-nfs.sha256sum] = "2677cfedf626f3f5a8f6e507aed5bb8f79a7453b589d684dbbc086e755170d83" | ||
25 | inherit autotools pkgconfig | ||
26 | |||
27 | do_configure_prepend () { | ||
28 | cp -r ${S}/../tirpc ${S} | ||
29 | } | ||
30 | |||
31 | do_install_append() { | ||
32 | chown root:root ${D}${sysconfdir}/netconfig | ||
33 | } | ||