Don't use getent to list hosts if its not supported (#3259)

Fixes #2137 on OpenBSD
This commit is contained in:
Scott Bonds 2016-07-23 04:24:12 -07:00 committed by Fabian Homborg
parent 9bd5257dda
commit 99351fcb44

View file

@ -3,7 +3,8 @@ function __fish_print_hostnames -d "Print a list of known hostnames"
# HACK: This only deals with ipv4
# Print all hosts from /etc/hosts
if type -q getent
# use 'getent hosts' on OSes that support it (OpenBSD and Cygwin do not)
if type -q getent; and getent hosts > /dev/null 2>&1 # test if 'getent hosts' works and redirect output so errors don't print
# Ignore zero ips
getent hosts | string match -r -v '^0.0.0.0' \
| string replace -r '[0-9.]*\s*' '' | string split " "