(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:tid) op: Equal rhs: {(DQ ('ssh.com key import'))} spids: [7] ) ] spids: [7] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (X) (${ VSub_Name TEST_COMBASE))} {(Lit_Other '=')} {(DQ (X))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(fatal)} {(SQ <'$TEST_COMBASE is not set'>)})] spids: [16777215 36] ) ] spids: [16777215 45] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:VERSIONS) op: Equal rhs: { (DQ ('\n') ('\t2.0.10\n') ('\t2.0.12\n') ('\t2.0.13\n') ('\t2.1.0\n') ('\t2.2.0\n') ('\t2.3.0\n') ('\t2.3.1\n') ('\t2.4.0\n') ('\t3.0.0\n') ('\t3.1.0\n') ('\t3.2.0\n') ('\t3.2.2\n') ('\t3.2.3\n') ('\t3.2.5\n') ('\t3.2.9\n') ('\t3.2.9.1\n') ('\t3.3.0') ) } spids: [48] ) ] spids: [48] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPRV) op: Equal rhs: {(${ VSub_Name OBJ) (/comkey)} spids: [71] ) ] spids: [71] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPUB) op: Equal rhs: {(${ VSub_Name COMPRV) (.pub)} spids: [77] ) ] spids: [77] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:OPENSSHPRV) op: Equal rhs: {(${ VSub_Name OBJ) (/opensshkey)} spids: [83] ) ] spids: [83] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:OPENSSHPUB) op: Equal rhs: {(${ VSub_Name OPENSSHPRV) (.pub)} spids: [89] ) ] spids: [89] ) (ForEach iter_name: v iter_words: [{(${ VSub_Name VERSIONS)}] do_arg_iter: False body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:keygen) op: Equal rhs: {(${ VSub_Name TEST_COMBASE) (/) (${ VSub_Name v) (/ssh-keygen2)} spids: [113] ) ] spids: [113] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-x)} {(${ VSub_Name keygen)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [16777215 139] ) ] spids: [16777215 145] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:types) op:Equal rhs:{(DQ (dss))} spids:[148])] spids: [148] ) (Case to_match: {($ VSub_Name '$v')} arms: [ (case_arm pat_list: [{(2.3.1)} {(3.) (Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:types) op: Equal rhs: {(DQ ($ VSub_Name '$types') (' rsa'))} spids: [168] ) ] spids: [168] ) ] spids: [161 165 175 16777215] ) ] spids: [154 158 178] ) (ForEach iter_name: t iter_words: [{($ VSub_Name '$types')}] do_arg_iter: False body: (DoGroup children: [ (C {(verbose)} {(DQ ('ssh-keygen ') ($ VSub_Name '$v') (/) ($ VSub_Name '$t'))}) (C {(rm)} {(-f)} {($ VSub_Name '$COMPRV')} {($ VSub_Name '$COMPUB')} {($ VSub_Name '$OPENSSHPRV')} {($ VSub_Name '$OPENSSHPUB')} ) (SimpleCommand words: [ {(${ VSub_Name keygen)} {(-q)} {(-P)} {(-t)} {($ VSub_Name '$t')} {(${ VSub_Name COMPRV)} ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [232] ) (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [236] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(fail)} {(DQ (${ VSub_Name keygen) (' -t ') ($ VSub_Name '$t') (' failed'))} ) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [16777215 253] ) ] spids: [16777215 271] ) (SimpleCommand words: [{(${ VSub_Name SSHKEYGEN)} {(-if)} {(${ VSub_Name COMPUB)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(${ VSub_Name OPENSSHPUB)} spids: [284] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(fail)} { (DQ ('import public key (') ($ VSub_Name '$v') (/) ($ VSub_Name '$t') (') failed') ) } ) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [16777215 304] ) ] spids: [16777215 321] ) (SimpleCommand words: [{(${ VSub_Name SSHKEYGEN)} {(-if)} {(${ VSub_Name COMPRV)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(${ VSub_Name OPENSSHPRV)} spids: [334] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(fail)} { (DQ ('import private key (') ($ VSub_Name '$v') (/) ($ VSub_Name '$t') (') failed') ) } ) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [16777215 354] ) ] spids: [16777215 371] ) (C {(chmod)} {(600)} {(${ VSub_Name OPENSSHPRV)}) (Pipeline children: [ (C {(${ VSub_Name SSHKEYGEN)} {(-yf)} {(${ VSub_Name OPENSSHPRV)}) (C {(diff)} {(-)} {(${ VSub_Name OPENSSHPUB)}) ] negated: False ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(fail)} { (DQ ('public keys (') ($ VSub_Name '$v') (/) ($ VSub_Name '$t') (') differ') ) } ) ] spids: [16777215 418] ) ] spids: [16777215 432] ) ] spids: [190 435] ) spids: [186 188] ) ] spids: [110 437] ) spids: [104 108] ) (C {(rm)} {(-f)} {($ VSub_Name '$COMPRV')} {($ VSub_Name '$COMPUB')} {($ VSub_Name '$OPENSSHPRV')} {($ VSub_Name '$OPENSSHPUB')} ) ] )