blob: 34d78e7eca30df8573f7e76e98bc09272321cd84 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
#compdef gobgp
__af(){
_arguments \
'-a[address family]:<af>:(ipv4 ipv6 evpn encap rtc)'
}
__global(){
local -a _global_arguments
_global_arguments=(
"rib"
)
_arguments : \
'*:: :->command'
if (( CURRENT == 1 )); then
_describe -t commands "global command" _global_arguments
return
fi
case "$words[1]" in
rib)
__af ;;
esac
}
__neighbor(){
: ${(A)_neighbors::=${=${$(gobgp -u ${${opt_args[-u]}:-127.0.0.1} -q neighbor)//\:/\\:}}}
_arguments : \
'*:: :->command'
if (( CURRENT == 1 )); then
_describe -t commands "neighbor selection" _neighbors
return
fi
local -a _neighbor_arguments
_neighbor_arguments=(
"local"
"adj-in"
"adj-out"
"reset"
"softreset"
"softresetin"
"softresetout"
"shutdown"
"enable"
"disable"
)
_arguments : \
'*:: :->command'
if (( CURRENT == 1 )); then
_describe -t commands "neighbor command" _neighbor_arguments
return
fi
case "$words[1]" in
local) ;&
adj-in) ;&
adj-out) ;&
reset) ;&
softreset) ;&
softresetin) ;&
softresetout)
__af ;;
esac
}
local -a _gobgp_arguments
_gobgp_arguments=(
"global"
"neighbor"
)
_arguments : \
'-u[specifying an url (127.0.0.1)]:<host>:' \
'-p[specifying a port]:<port>:' \
'-d[use debug]' \
'-q[use quiet]' \
'-j[use json format to output format]' \
'-h[Show this help message]' \
'*:: :->command'
if (( CURRENT == 1 )); then
_describe -t commands "gobgp command" _gobgp_arguments
return
fi
case "$words[1]" in
global)
__global ;;
neighbor)
__neighbor ;;
esac
|