summaryrefslogtreecommitdiff
path: root/pkgtools
diff options
context:
space:
mode:
authorasau <asau>2015-11-30 20:46:57 +0000
committerasau <asau>2015-11-30 20:46:57 +0000
commitc291c97b4519afa2009a89bb126a16f57171110f (patch)
tree287b4e747c5cdf3c137b7784520bdfc6b6f45b65 /pkgtools
parentca490676d0af6de645bdda06c8da0825b15eb892 (diff)
downloadpkgsrc-c291c97b4519afa2009a89bb126a16f57171110f.tar.gz
pbulk-base-0.51: Allow symbolic host names in distributed case.
Diffstat (limited to 'pkgtools')
-rw-r--r--pkgtools/pbulk-base/Makefile4
-rw-r--r--pkgtools/pbulk/files/pbulk/lib/netaddr.c8
2 files changed, 8 insertions, 4 deletions
diff --git a/pkgtools/pbulk-base/Makefile b/pkgtools/pbulk-base/Makefile
index 67a23e1e135..a521aa60ac7 100644
--- a/pkgtools/pbulk-base/Makefile
+++ b/pkgtools/pbulk-base/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.17 2015/11/03 19:06:48 joerg Exp $
+# $NetBSD: Makefile,v 1.18 2015/11/30 20:46:57 asau Exp $
-DISTNAME= pbulk-base-0.50
+DISTNAME= pbulk-base-0.51
COMMENT= Core components of the modular bulk build framework
.include "../../pkgtools/pbulk/Makefile.common"
diff --git a/pkgtools/pbulk/files/pbulk/lib/netaddr.c b/pkgtools/pbulk/files/pbulk/lib/netaddr.c
index fbe45f5d021..4d6fe29929a 100644
--- a/pkgtools/pbulk/files/pbulk/lib/netaddr.c
+++ b/pkgtools/pbulk/files/pbulk/lib/netaddr.c
@@ -1,4 +1,4 @@
-/* $NetBSD: netaddr.c,v 1.8 2014/03/14 09:45:31 jperkin Exp $ */
+/* $NetBSD: netaddr.c,v 1.9 2015/11/30 20:46:57 asau Exp $ */
/*-
* Copyright (c) 2007 Joerg Sonnenberger <joerg@NetBSD.org>.
@@ -37,6 +37,7 @@
#include <arpa/inet.h>
#include <errno.h>
#include <netinet/in.h>
+#include <netdb.h>
#include <nbcompat/stdlib.h>
#include <nbcompat/string.h>
@@ -52,9 +53,12 @@ parse_sockaddr_in(const char *str, struct sockaddr_in *addr)
if ((port_sep = strrchr(str, ':')) != NULL) {
char *addr_part = strdup(str);
+ struct hostent *he;
addr_part[port_sep - str] = '\0';
- if (inet_aton(addr_part, &in) == 0) {
+ if ((he = gethostbyname(addr_part)) != NULL) {
+ memmove(&in, he->h_addr, sizeof(in));
+ } else if (inet_aton(addr_part, &in) == 0) {
free(addr_part);
return -1;
}