diff options
author | 2020-03-30 09:24:26 +0900 | |
---|---|---|
committer | 2020-03-30 09:24:26 +0900 | |
commit | 5b80bfd7bffd4c20d80b7c70a7130529e9a755dd (patch) | |
tree | b4bb18dcd1487dbf1ea8127e5671b7bb2eded033 /external/poky/meta/recipes-extended/libtirpc | |
parent | 706ad73eb02caf8532deaf5d38995bd258725cb8 (diff) |
agl-basesystem
Diffstat (limited to 'external/poky/meta/recipes-extended/libtirpc')
3 files changed, 149 insertions, 0 deletions
diff --git a/external/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch b/external/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch new file mode 100644 index 00000000..6d40d3cc --- /dev/null +++ b/external/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch @@ -0,0 +1,103 @@ +Patch from Fedora https://src.fedoraproject.org/rpms/libtirpc/raw/master/f/libtirpc-1.0.4-rc1.patch + +Upstream-Status: Backport +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +diff --git a/src/clnt_generic.c b/src/clnt_generic.c +index e5a314f..3f3dabf 100644 +--- a/src/clnt_generic.c ++++ b/src/clnt_generic.c +@@ -47,7 +47,6 @@ + + extern bool_t __rpc_is_local_host(const char *); + int __rpc_raise_fd(int); +-extern int __binddynport(int fd); + + #ifndef NETIDLEN + #define NETIDLEN 32 +@@ -341,8 +340,7 @@ clnt_tli_create(int fd, const struct netconfig *nconf, + servtype = nconf->nc_semantics; + if (!__rpc_fd2sockinfo(fd, &si)) + goto err; +- if (__binddynport(fd) == -1) +- goto err; ++ bindresvport(fd, NULL); + } else { + if (!__rpc_fd2sockinfo(fd, &si)) + goto err; +diff --git a/src/rpc_soc.c b/src/rpc_soc.c +index af6c482..5a6eeb7 100644 +--- a/src/rpc_soc.c ++++ b/src/rpc_soc.c +@@ -67,8 +67,6 @@ + + extern mutex_t rpcsoc_lock; + +-extern int __binddynport(int fd); +- + static CLIENT *clnt_com_create(struct sockaddr_in *, rpcprog_t, rpcvers_t, + int *, u_int, u_int, char *, int); + static SVCXPRT *svc_com_create(int, u_int, u_int, char *); +@@ -147,8 +145,7 @@ clnt_com_create(raddr, prog, vers, sockp, sendsz, recvsz, tp, flags) + bindaddr.maxlen = bindaddr.len = sizeof (struct sockaddr_in); + bindaddr.buf = raddr; + +- if (__binddynport(fd) == -1) +- goto err; ++ bindresvport(fd, NULL); + cl = clnt_tli_create(fd, nconf, &bindaddr, prog, vers, + sendsz, recvsz); + if (cl) { +diff --git a/src/rpcb_clnt.c b/src/rpcb_clnt.c +index a94fc73..4b44364 100644 +--- a/src/rpcb_clnt.c ++++ b/src/rpcb_clnt.c +@@ -752,7 +752,7 @@ __try_protocol_version_2(program, version, nconf, host, tp) + + client = getpmaphandle(nconf, host, &parms.r_addr); + if (client == NULL) +- return (NULL); ++ goto error; + + /* + * Set retry timeout. +@@ -771,11 +771,11 @@ __try_protocol_version_2(program, version, nconf, host, tp) + if (clnt_st != RPC_SUCCESS) { + rpc_createerr.cf_stat = RPC_PMAPFAILURE; + clnt_geterr(client, &rpc_createerr.cf_error); +- return (NULL); ++ goto error; + } else if (port == 0) { + pmapaddress = NULL; + rpc_createerr.cf_stat = RPC_PROGNOTREGISTERED; +- return (NULL); ++ goto error; + } + port = htons(port); + CLNT_CONTROL(client, CLGET_SVC_ADDR, (char *)&remote); +@@ -789,14 +789,24 @@ __try_protocol_version_2(program, version, nconf, host, tp) + free(pmapaddress); + pmapaddress = NULL; + } +- return (NULL); ++ goto error; + } + memcpy(pmapaddress->buf, remote.buf, remote.len); + memcpy(&((char *)pmapaddress->buf)[sizeof (short)], + (char *)(void *)&port, sizeof (short)); + pmapaddress->len = pmapaddress->maxlen = remote.len; + ++ CLNT_DESTROY(client); + return pmapaddress; ++ ++error: ++ if (client) { ++ CLNT_DESTROY(client); ++ client = NULL; ++ ++ } ++ return (NULL); ++ + } + #endif + diff --git a/external/poky/meta/recipes-extended/libtirpc/libtirpc/musl.patch b/external/poky/meta/recipes-extended/libtirpc/libtirpc/musl.patch new file mode 100644 index 00000000..0c3ce603 --- /dev/null +++ b/external/poky/meta/recipes-extended/libtirpc/libtirpc/musl.patch @@ -0,0 +1,18 @@ +Consider musl provided built-in defines + +Helps compile libtirpc with musl + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- ./tirpc/rpc/types.h.orig 2018-03-17 10:23:10.022055255 +0100 ++++ ./tirpc/rpc/types.h 2018-03-17 10:23:30.877751656 +0100 +@@ -66,7 +66,7 @@ + #define mem_free(ptr, bsize) free(ptr) + + +-#if defined __APPLE_CC__ || defined __FreeBSD__ ++#if defined __APPLE_CC__ || defined __FreeBSD__ || !defined(__GLIBC__) + # define __u_char_defined + # define __daddr_t_defined + #endif diff --git a/external/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb b/external/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb new file mode 100644 index 00000000..17bc038d --- /dev/null +++ b/external/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb @@ -0,0 +1,28 @@ +SUMMARY = "Transport-Independent RPC library" +DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" +SECTION = "libs/network" +HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ + file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" + +PROVIDES = "virtual/librpc" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ + file://libtirpc-1.0.4-rc1.patch \ + file://musl.patch \ + " + +SRC_URI[md5sum] = "f8403a10695348854e71d525c4db5931" +SRC_URI[sha256sum] = "86c3a78fc1bddefa96111dd233124c703b22a78884203c55c3e06b3be6a0fd5e" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-gssapi" + +do_install_append() { + chown root:root ${D}${sysconfdir}/netconfig +} + +BBCLASSEXTEND = "native nativesdk" |