components/zsh/Completion/Solaris/Command/_flowadm
author Danek Duvall <danek.duvall@oracle.com>
Wed, 20 Jul 2011 16:57:37 -0700
changeset 429 02007d525e89
parent 93 b579c7b1bb44
child 904 114a5240af22
permissions -rw-r--r--
7021213 zsh completion for ipadm 7021214 zsh completion for fmadm 7023237 zsh completion for dtrace options 7023488 Fix TODO in _svcs_fmri (Can't remove default when there are other instances.)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     1
#compdef flowadm
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
     2
# Synced with the Nevada build 171 man page
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     3
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     4
_flowadm() {
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     5
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     6
local -a subcmds tr props
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     7
local expl
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     8
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     9
_flowadm_flow(){
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    10
	compadd "$@" - $(flowadm show-flow -p -o flow)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    11
}
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    12
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    13
_flowadm_flow_int(){
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    14
	compadd "$@" - $(flowadm show-flow -p -o flow)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    15
	compadd "$@" - $(dladm show-phys -p -o device)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    16
}
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    17
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    18
subcmds=(
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    19
	"show-flow"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    20
	"add-flow"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    21
	"remove-flow"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    22
	"set-flowprop"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    23
	"reset-flowprop"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    24
	"show-flowprop"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    25
)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    26
	
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    27
tr=(
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    28
	"tcp"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    29
	"udp"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    30
	"sctp"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    31
	"icmp"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    32
	"icmpv6"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    33
)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    34
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    35
props=(
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    36
	"maxbw"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    37
)
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    38
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    39
if [[ $service == "flowadm" ]]; then
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    40
	_arguments -C -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    41
		'*::command:->subcmd' && return 0
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    42
	
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    43
	if (( CURRENT == 1 )); then
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    44
		_wanted commands expl "flowadm subcommand" compadd -a subcmds
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    45
		return
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    46
	fi
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    47
	service="$words[1]"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    48
	curcontext="${curcontext%:*}=$service:"
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    49
fi
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    50
case $service in
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    51
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    52
	("show-flow")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    53
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    54
		'-o[specify field to display]:field:(flow link ipaddr proto port dsfield)' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    55
		'-p[parsable output]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    56
		'-P[persistent flow property information]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    57
		- set1 \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    58
		'-l[display information for link]:link or flow:_net_interfaces' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    59
		- set2 \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    60
		':flow:_flowadm_flow' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    61
	;;
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    62
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    63
	("add-flow")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    64
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    65
		'-t[temporary changes - do not persist across reboots]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    66
		'-R[alternate root dir]:alternate root:_files' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    67
		'-l[specify link to which flow will be added]:link:_net_interfaces' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    68
		'-a[specify attribute]:attribute:(local_ip= remote_ip= transport=$tr local_port= dsfield=)' \
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    69
		'-p[set property value]:property:(maxbw=)' \
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    70
	;;
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    71
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    72
	("remove-flow")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    73
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    74
		'-t[temporary changes - do not persist across reboots]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    75
		'-R[alternate root dir]:alternate root:_files' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    76
		- set1 \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    77
		'-l[specify link from which flow will be deleted]:link:_net_interfaces' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    78
		- set2 \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    79
		':flow:_flowadm_flow' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    80
	;;
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    81
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    82
	("set-flowprop")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    83
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    84
		'-t[temporary changes - do not persist across reboots]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    85
		'-R[alternate root dir]:alternate root:_files' \
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    86
		'-p[set property value]:property:(maxbw=)' \
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    87
		':flow:_flowadm_flow' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    88
	;;
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    89
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    90
	("reset-flowprop")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    91
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    92
		'-t[temporary changes - do not persist across reboots]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    93
		'-R[alternate root dir]:alternate root:_files' \
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    94
		'-p[set property value]:property:(maxbw=)' \
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    95
		':flow:_flowadm_flow' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    96
	;;
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
    97
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    98
	("show-flowprop")
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    99
	_arguments -A "-*" \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   100
		'-c[parsable output (requires -o)]' \
429
02007d525e89 7021213 zsh completion for ipadm
Danek Duvall <danek.duvall@oracle.com>
parents: 93
diff changeset
   101
		'-l[specify link whose properties will be shown]:link:_net_interfaces' \
93
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   102
		'-P[persistent flow property information]' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   103
		'-p[property to show]:property:_values -s , "property" $props' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   104
		':flow:_flowadm_flow' \
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   105
	;;
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   106
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   107
esac
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   108
}
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   109
b579c7b1bb44 7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   110
_flowadm "$@"