diff options
Diffstat (limited to 'etc/functions')
-rw-r--r-- | etc/functions/check_ping | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/etc/functions/check_ping b/etc/functions/check_ping new file mode 100644 index 0000000..80ea8ea --- /dev/null +++ b/etc/functions/check_ping @@ -0,0 +1,20 @@ +## vim:ft=zsh +## check_ping -return true if a host responds to ICMP echo requests +typeset -i ipv6 ret + +while [[ $1 == -* ]] { + case $1 in + -6) ipv6=1 ;; + esac + shift +} + +typeset dst=$1 +shift + +if ((ipv6)) { + ping6 -c 1 $dst &> /dev/null +} else { + ping -c 1 $dst &> /dev/null +} +return |