aports/main/rpcbind/musl-sunrpc.patch
Natanael Copa eadc260707 main/rpcbind: workaround broken getaddrinfo/getservbyname in musl
rpcbind tries to get port number for "portmapper" but since musl's
getaddrinfo/getservbyname does not support aliases, it fails for us.

We work around it by using the service "sunrpc" instead.
2014-04-28 15:50:10 +02:00

26 lines
1.2 KiB
Diff

The musl implementation of getaddrinfo and getservbyname does not
aliases. As a workaround we use "sunprc" instead of "portmapper"
diff --git a/src/rpcbind.c b/src/rpcbind.c
index 83dbe93..9404df7 100644
--- a/src/rpcbind.c
+++ b/src/rpcbind.c
@@ -416,7 +416,7 @@ init_transport(struct netconfig *nconf)
if ((aicode = getaddrinfo(hosts[nhostsbak],
servname, &hints, &res)) != 0) {
if ((aicode = getaddrinfo(hosts[nhostsbak],
- "portmapper", &hints, &res)) != 0) {
+ "sunrpc", &hints, &res)) != 0) {
syslog(LOG_ERR,
"cannot get local address for %s: %s",
nconf->nc_netid, gai_strerror(aicode));
@@ -489,7 +489,7 @@ init_transport(struct netconfig *nconf)
if ((strcmp(nconf->nc_netid, "local") != 0) &&
(strcmp(nconf->nc_netid, "unix") != 0)) {
if ((aicode = getaddrinfo(NULL, servname, &hints, &res))!= 0) {
- if ((aicode = getaddrinfo(NULL, "portmapper", &hints, &res))!= 0) {
+ if ((aicode = getaddrinfo(NULL, "sunrpc", &hints, &res))!= 0) {
printf("cannot get local address for %s: %s", nconf->nc_netid, gai_strerror(aicode));
syslog(LOG_ERR,
"cannot get local address for %s: %s",