(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'WHITELIST='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'WHITELIST='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'WHITELIST='> name:WHITELIST) op: assign_op.Equal rhs: { (DQ <'add_reloc_offset __bss_start __bss_stop copy_and_flush\n'> <'_end enter_prom memcpy memset reloc_offset __secondary_hold\n'> <'__secondary_hold_acknowledge __secondary_hold_spinloop __start\n'> <'strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224\n'> <'reloc_got2 kernstart_addr memstart_addr linux_banner _stext\n'> <'__prom_init_toc_start __prom_init_toc_end btext_setup_display TOC.'> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'NM='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'NM='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'NM='> name:NM) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number 1))} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'OBJ='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'OBJ='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OBJ='> name:OBJ) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number 2))} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'ERROR='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'ERROR='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ERROR='> name:ERROR) op: assign_op.Equal rhs: {<0>} ) ] redirects: [] ) (command.ForEach keyword: <Id.KW_For for> iter_names: [UNDEF] iterable: (for_iter.Words words: [ { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <Id.VSub_DollarName '$NM'> more_env: [] words: [{($ Id.VSub_DollarName NM)} {<-u>} {($ Id.VSub_DollarName OBJ)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <awk> more_env: [] words: [{<awk>} {(SQ <'{print $2}'>)}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.ShAssignment left: <Id.Lit_VarLike 'UNDEF='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'UNDEF='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'UNDEF='> name:UNDEF) op: assign_op.Equal rhs: { (DQ (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name UNDEF> var_name: UNDEF suffix_op: (suffix_op.Unary op:<Id.VOp1_Pound '#'> arg_word:{<.>}) right: <Id.Right_DollarBrace '}'> ) ) } ) ] redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName KBUILD_VERBOSE)} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName KBUILD_VERBOSE)} {<-ne>} {<0>} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <echo> more_env: [] words: [ {<echo>} { (DQ <'Checking prom_init.o symbol \''> ($ Id.VSub_DollarName UNDEF) <'\''> ) } ] redirects: [] do_fork: T ) ] spids: [130 143] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] spids: [118 127] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'OK='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'OK='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OK='> name:OK) op: assign_op.Equal rhs: {<0>} ) ] redirects: [] ) (command.ForEach keyword: <Id.KW_For for> iter_names: [WHITE] iterable: (for_iter.Words words:[{($ Id.VSub_DollarName WHITELIST)}]) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName UNDEF))} {<Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName WHITE))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'OK='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'OK='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OK='> name:OK) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) (command.ControlFlow keyword: <Id.ControlFlow_Break break> ) ] spids: [178 195] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{($ Id.VSub_DollarName UNDEF)}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <_restgpr_> pattern: (pat.Words words: [ {<_restgpr_> <Id.Lit_Star '*'>} {<_restgpr0_> <Id.Lit_Star '*'>} {<_rest32gpr_> <Id.Lit_Star '*'>} ] ) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'OK='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'OK='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OK='> name:OK) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <_savegpr_> pattern: (pat.Words words: [ {<_savegpr_> <Id.Lit_Star '*'>} {<_savegpr0_> <Id.Lit_Star '*'>} {<_save32gpr_> <Id.Lit_Star '*'>} ] ) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'OK='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'OK='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OK='> name:OK) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName OK)} {<-eq>} {<0>} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'ERROR='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'ERROR='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ERROR='> name:ERROR) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) (command.Simple blame_tok: <echo> more_env: [] words: [ {<echo>} { (DQ <'Error: External symbol \''> ($ Id.VSub_DollarName UNDEF) <'\' referenced'> ) } {(DQ <'from prom_init.c'>)} ] redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) ] spids: [263 276] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.ControlFlow keyword: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName ERROR)} ) ] )