(List (FunctionDef _ipsec_connections [] (List (= scope= flags=0 words=[{[LIT_CHARS keyword]}, {[LIT_CHARS name]}] bindings=[]) (While (Com {[LIT_CHARS read]} {[LIT_CHARS -r]} {[LIT_CHARS keyword]} {[LIT_CHARS name]} ) (List (If (DBracket {B2 BINARY_STRING_EQUAL {[VarSub keyword]} {[LIT_DBRACKET_LIKE "["] [LIT_OTHER "#"] [LIT_DBRACKET_LIKE "]"] [LIT_OTHER "*"]}}) (Com {[LIT_CHARS continue]} ) ) (AndOr OP_AND_IF (DBracket {B? LOGICAL_BINARY_AND {B2 BINARY_STRING_EQUAL {[VarSub keyword]} {[LIT_CHARS conn]}} {B2 BINARY_STRING_NOT_EQUAL {[VarSub name]} {[SQ ]}}}) (= scope= flags=0 words=[] bindings=[('COMPREPLY+', {[Array {[DQ [VarSub name]]}]})]) ) ) ) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) ) ) (FunctionDef _ipsec_freeswan [] (List (= scope= flags=0 words=[{[LIT_CHARS cur]}, {[LIT_CHARS prev]}, {[LIT_CHARS words]}, {[LIT_CHARS cword]}] bindings=[]) (AndOr OP_OR_IF (Com {[LIT_CHARS _init_completion]} ) (Com {[LIT_CHARS return]} ) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub cword]} {[LIT_CHARS 1]}}) (List (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]} ) ) ) (Case to_match={[VarSub words bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}, pat_word_list=[[{[LIT_CHARS auto]}], [{[LIT_CHARS manual]}], [{[LIT_CHARS ranbits]}], [{[LIT_CHARS setup]}], [{[LIT_OTHER "*"]}]] (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (ElseTrue) ) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]} ) ) ) (FunctionDef _ipsec_strongswan [] (List (= scope= flags=0 words=[{[LIT_CHARS cur]}, {[LIT_CHARS prev]}, {[LIT_CHARS words]}, {[LIT_CHARS cword]}] bindings=[]) (AndOr OP_OR_IF (Com {[LIT_CHARS _init_completion]} ) (Com {[LIT_CHARS return]} ) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub cword]} {[LIT_CHARS 1]}}) (List (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]} ) ) ) (Case to_match={[VarSub words bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}, pat_word_list=[[{[LIT_CHARS down]}, {[LIT_CHARS route]}, {[LIT_CHARS status]}, {[LIT_CHARS statusall]}, {[LIT_CHARS unroute]}, {[LIT_CHARS up]}], [{[LIT_CHARS list] [LIT_OTHER "*"]}], [{[LIT_CHARS restart]}, {[LIT_CHARS start]}], [{[LIT_CHARS pki]}], [{[LIT_CHARS pool]}], [{[LIT_CHARS irdumm]}], [{[LIT_OTHER "*"]}]] (List (= scope= flags=0 words=[] bindings=[('confdir', {[ComSub (Com {[LIT_CHARS ipsec]} {[LIT_CHARS --confdir]})]})]) (Com {[LIT_CHARS _ipsec_connections]} < (FilenameRedirectNode filename={[DQ [VarSub confdir][LIT_CHARS /ipsec.conf]]} 0), > ) ) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (ElseTrue) (Com {[LIT_CHARS _filedir]} {[SQ ]} ) (ElseTrue) ) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]} ) ) ) (Case to_match={[DQ [ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS ipsec]} {[LIT_CHARS --version]})]]}, pat_word_list=[[{[LIT_OTHER "*"] [LIT_CHARS strongSwan] [LIT_OTHER "*"]}], [{[LIT_OTHER "*"]}]] (Com {[LIT_CHARS complete]} {[LIT_CHARS -F]} {[LIT_CHARS _ipsec_strongswan]} {[LIT_CHARS ipsec]} ) (Com {[LIT_CHARS complete]} {[LIT_CHARS -F]} {[LIT_CHARS _ipsec_freeswan]} {[LIT_CHARS ipsec]} ) ) )