diff options
author | André Draszik <git@andred.net> | 2016-07-15 16:03:27 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-07-20 10:28:51 +0100 |
commit | bffb0fbfcc96b590111b7fc4e082865f12c14f9e (patch) | |
tree | 9110cb022464612a85dc58e7cc4f5294739005cb /scripts/oe-git-proxy | |
parent | dd0474c7e8294e922f94f6ab70acd646bd85c72b (diff) | |
download | poky-bffb0fbfcc96b590111b7fc4e082865f12c14f9e.tar.gz |
oe-git-proxy: don't depend on syslinux
gethostip comes from syslinux. It seems odd to depend on a bootloader
to clone a git repository.
Switch to using getent from the c-library, which should be available
on every system.
We now also support the case where a hostname resolves to more than
one IP address.
(From OE-Core rev: c91dbf3ca2faec95195c85b65aa6cab7de9bca2c)
Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/oe-git-proxy')
-rwxr-xr-x | scripts/oe-git-proxy | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/scripts/oe-git-proxy b/scripts/oe-git-proxy index 1247902406..0078e95450 100755 --- a/scripts/oe-git-proxy +++ b/scripts/oe-git-proxy | |||
@@ -86,13 +86,14 @@ match_host() { | |||
86 | 86 | ||
87 | # Match by netmask | 87 | # Match by netmask |
88 | if valid_ipv4 $GLOB; then | 88 | if valid_ipv4 $GLOB; then |
89 | HOST_IP=$(gethostip -d $HOST) | 89 | for HOST_IP in $(getent ahostsv4 $HOST | grep ' STREAM ' | cut -d ' ' -f 1) ; do |
90 | if valid_ipv4 $HOST_IP; then | 90 | if valid_ipv4 $HOST_IP; then |
91 | match_ipv4 $GLOB $HOST_IP | 91 | match_ipv4 $GLOB $HOST_IP |
92 | if [ $? -eq 0 ]; then | 92 | if [ $? -eq 0 ]; then |
93 | return 0 | 93 | return 0 |
94 | fi | ||
94 | fi | 95 | fi |
95 | fi | 96 | done |
96 | fi | 97 | fi |
97 | 98 | ||
98 | return 1 | 99 | return 1 |