From d8f8d3e5340e4f61e70aef68d20a41db4445a66f Mon Sep 17 00:00:00 2001 From: Eric Cook Date: Mon, 19 Oct 2015 11:33:17 +0200 Subject: 36889: completion of system specific sockstat options --- ChangeLog | 3 +++ Completion/BSD/Command/_sockstat | 50 +++++++++++++++++++++++++--------------- 2 files changed, 34 insertions(+), 19 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea86f62cf..f7369b89a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-10-19 Oliver Kiddle + * 36889: Eric Cook: Completion/BSD/Command/_sockstat: + completion of system specific sockstat options + * 36869: Matthew Martin: Completion/Unix/Command/_ssh: use permissions to limit files completed for ssh identity files diff --git a/Completion/BSD/Command/_sockstat b/Completion/BSD/Command/_sockstat index e61854622..1b11ba473 100644 --- a/Completion/BSD/Command/_sockstat +++ b/Completion/BSD/Command/_sockstat @@ -1,23 +1,35 @@ #compdef sockstat +local -a args -local tmp_proto protocols proto +case $OSTYPE in + *bsd*) + args=( + '-4[show AF_INET (IPv4) sockets]' + '-6[show AF_INET6 (IPv6) sockets]' + '-c[show connected sockets]' + '-l[show listening sockets]' + '*-p[specify port number]:port numbers (comma delimited)' + '-u[show AF_LOCAL (UNIX) sockets]' + ) + ;| + freebsd*) + args+=( + '*-j[show sockets belonging to JID]: : _jails -0 -o jid' + '-L[exclude loopback]' + '*-P[specify protocol]: :_sequence -s , _ports' + ) + ;; + netbsd*) + args+=( + '*-f[only show specified address family]:address family:(inet inet6 local unix)' + '-n[no symbolic names for addresses/ports]' + ) + ;; +esac -tmp_proto=(${${(M)${(f)"$(