(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'MD_DEVS='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'MD_DEVS='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'MD_DEVS='> name:MD_DEVS) op: assign_op.Equal rhs: {(DQ <md.devs>)} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'PLAINFILES='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'PLAINFILES='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'PLAINFILES='> name:PLAINFILES) op: assign_op.Equal rhs: {<plainfiles>} ) ] redirects: [] ) (command.Simple blame_tok: <atf_test_case> more_env: [] words: [{<atf_test_case>} {<diskinfo>} {<cleanup>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <diskinfo_head> name: diskinfo_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [ {<atf_set>} {(DQ <descr>)} {(DQ <'gnop should preserve diskinfo\'s basic properties'>)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <require.user>)} {(DQ <root>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <timeout>)} {<15>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <diskinfo_body> name: diskinfo_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ShAssignment left: <Id.Lit_VarLike 'us='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'us='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'us='> name:us) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <alloc_md> more_env: [] words: [{<alloc_md>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_check> more_env: [] words: [{<atf_check>} {<gnop>} {<create>} {<'/dev/'> (${ Id.VSub_Name us)}] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'md_secsize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'md_secsize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md_secsize='> name:md_secsize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<2>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'md_mediasize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'md_mediasize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md_mediasize='> name:md_mediasize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<3>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'md_stripesize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'md_stripesize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md_stripesize='> name:md_stripesize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<5>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'nop_secsize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'nop_secsize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'nop_secsize='> name:nop_secsize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us) <.nop>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<2>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'nop_mediasize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'nop_mediasize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'nop_mediasize='> name:nop_mediasize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us) <.nop>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<3>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'nop_stripesize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'nop_stripesize='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'nop_stripesize='> name:nop_stripesize) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {(${ Id.VSub_Name us) <.nop>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<5>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ ($ Id.VSub_DollarName md_secsize))} {(DQ ($ Id.VSub_DollarName nop_secsize))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ ($ Id.VSub_DollarName md_mediasize))} {(DQ ($ Id.VSub_DollarName nop_mediasize))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ ($ Id.VSub_DollarName md_stripesize))} {(DQ ($ Id.VSub_DollarName nop_stripesize))} ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <diskinfo_cleanup> name: diskinfo_cleanup body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <common_cleanup> more_env: [] words: [{<common_cleanup>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <atf_test_case> more_env: [] words: [{<atf_test_case>} {<io>} {<cleanup>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <io_head> name: io_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'I/O works on gnop devices'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <require.user>)} {(DQ <root>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <timeout>)} {<15>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <io_body> name: io_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ShAssignment left: <Id.Lit_VarLike 'us='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'us='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'us='> name:us) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <alloc_md> more_env: [] words: [{<alloc_md>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_check> more_env: [] words: [{<atf_check>} {<gnop>} {<create>} {<'/dev/'> (${ Id.VSub_Name us)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<src>}] redirects: [ (Redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName PLAINFILES)} ) ] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<dst>}] redirects: [ (Redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName PLAINFILES)} ) ] do_fork: T ) (command.Simple blame_tok: <dd> more_env: [] words: [ {<dd>} {<Id.Lit_VarLike 'if='> <'/dev/random'>} {<Id.Lit_VarLike 'of='> <src>} {<Id.Lit_VarLike 'bs='> <1m>} {<Id.Lit_VarLike 'count='> <1>} ] redirects: [ (Redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (Redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>}) ] do_fork: T ) (command.Simple blame_tok: <dd> more_env: [] words: [ {<dd>} {<Id.Lit_VarLike 'if='> <src>} {<Id.Lit_VarLike 'of='> <'/dev/'> (${ Id.VSub_Name us) <.nop>} {<Id.Lit_VarLike 'bs='> <1m>} {<Id.Lit_VarLike 'count='> <1>} ] redirects: [ (Redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (Redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>}) ] do_fork: T ) (command.Simple blame_tok: <dd> more_env: [] words: [ {<dd>} {<Id.Lit_VarLike 'if='> <'/dev/'> (${ Id.VSub_Name us) <.nop>} {<Id.Lit_VarLike 'of='> <dst>} {<Id.Lit_VarLike 'bs='> <1m>} {<Id.Lit_VarLike 'count='> <1>} ] redirects: [ (Redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (Redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>}) ] do_fork: T ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <md5> more_env: [] words: [{<md5>} {<-q>} {<src>}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <md5> more_env: [] words: [{<md5>} {<-q>} {<dst>}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <io_cleanup> name: io_cleanup body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <common_cleanup> more_env: [] words: [{<common_cleanup>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <atf_test_case> more_env: [] words: [{<atf_test_case>} {<size>} {<cleanup>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <size_head> name: size_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Test gnop\'s -s option'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <require.user>)} {(DQ <root>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <timeout>)} {<15>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <size_body> name: size_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ShAssignment left: <Id.Lit_VarLike 'us='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'us='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'us='> name:us) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <alloc_md> more_env: [] words: [{<alloc_md>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ForEach keyword: <Id.KW_For for> iter_names: [mediasize] iterable: (for_iter.Words words:[{<65536>} {<524288>} {<1048576>}]) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<gnop>} {<create>} {<-s>} {(${ Id.VSub_Name mediasize)} {<'/dev/'> (${ Id.VSub_Name us)} ] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'gnop_mediasize='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'gnop_mediasize='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'gnop_mediasize='> name: gnop_mediasize ) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [{<diskinfo>} {<'/dev/'> (${ Id.VSub_Name us) <.nop>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<3>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Backtick_Right '`'> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ (${ Id.VSub_Name mediasize))} {(DQ (${ Id.VSub_Name gnop_mediasize))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_check> more_env: [] words: [{<atf_check>} {<gnop>} {<destroy>} {<'/dev/'> (${ Id.VSub_Name us) <.nop>}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<not-exit> <Id.Lit_Colon ':'> <0>} {<-e>} {<ignore>} {<gnop>} {<create>} {<-s>} {<2097152>} {<'/dev/'> (${ Id.VSub_Name us)} ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <size_cleanup> name: size_cleanup body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <common_cleanup> more_env: [] words: [{<common_cleanup>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <atf_test_case> more_env: [] words: [{<atf_test_case>} {<stripesize>} {<cleanup>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <stripesize_head> name: stripesize_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Test gnop\'s -p and -P options'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <require.user>)} {(DQ <root>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <timeout>)} {<15>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <stripesize_body> name: stripesize_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ShAssignment left: <Id.Lit_VarLike 'us='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'us='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'us='> name:us) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <alloc_md> more_env: [] words: [{<alloc_md>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ForEach keyword: <Id.KW_For for> iter_names: [ss] iterable: (for_iter.Words words:[{<512>} {<1024>} {<2048>} {<4096>} {<8192>}]) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.ForEach keyword: <Id.KW_For for> iter_names: [sofs] iterable: (for_iter.Words words: [ { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <seq> more_env: [] words: [{<seq>} {<0>} {<512>} {(${ Id.VSub_Name ss)}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } ] ) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.AndOr children: [ (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName sofs))} {<-eq>} {(DQ ($ Id.VSub_DollarName ss))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Continue continue> ) ] ops: [<Id.Op_DAmp _>] ) (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<gnop>} {<create>} {<-p>} {(${ Id.VSub_Name ss)} {<-P>} {(${ Id.VSub_Name sofs)} {<'/dev/'> (${ Id.VSub_Name us)} ] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'gnop_ss='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'gnop_ss='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'gnop_ss='> name: gnop_ss ) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [ {<diskinfo>} {<'/dev/'> (${ Id.VSub_Name us) <.nop>} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<5>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Backtick_Right '`'> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'gnop_sofs='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'gnop_sofs='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'gnop_sofs='> name: gnop_sofs ) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (command.Simple blame_tok: <diskinfo> more_env: [] words: [ {<diskinfo>} {<'/dev/'> (${ Id.VSub_Name us) <.nop>} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <cut> more_env: [] words: [{<cut>} {<-wf>} {<6>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _>] ) right: <Id.Backtick_Right '`'> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ (${ Id.VSub_Name ss))} {(DQ (${ Id.VSub_Name gnop_ss))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_check_equal> more_env: [] words: [ {<atf_check_equal>} {(DQ (${ Id.VSub_Name sofs))} {(DQ (${ Id.VSub_Name gnop_sofs))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<gnop>} {<destroy>} {<'/dev/'> (${ Id.VSub_Name us) <.nop>} ] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) ] right: <Id.KW_Done done> ) redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <stripesize_cleanup> name: stripesize_cleanup body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <common_cleanup> more_env: [] words: [{<common_cleanup>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <atf_init_test_cases> name: atf_init_test_cases body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<io>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<diskinfo>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<stripesize>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<size>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <alloc_md> name: alloc_md body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<md>}] redirects: [] do_fork: T ) (command.AndOr children: [ (command.ShAssignment left: <Id.Lit_VarLike 'md='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'md='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md='> name:md) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <mdconfig> more_env: [] words: [{<mdconfig>} {<-a>} {<-t>} {<swap>} {<-s>} {<1M>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_fail> more_env: [] words: [{<atf_fail>} {(DQ <'mdconfig -a failed'>)}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(${ Id.VSub_Name md)}] redirects: [ (Redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName MD_DEVS)} ) ] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(${ Id.VSub_Name md)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <common_cleanup> name: common_cleanup body: (BraceGroup left: <Id.Lit_LBrace '{'> 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 '['>} {<-f>} {(DQ ($ Id.VSub_DollarName MD_DEVS))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <read> more_env: [] words: [{<read>} {<test_md>}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <gnop> more_env: [] words: [{<gnop>} {<destroy>} {<-f>} {(${ Id.VSub_Name test_md) <.nop>}] redirects: [ (Redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (command.Simple blame_tok: <mdconfig> more_env: [] words: [{<mdconfig>} {<-d>} {<-u>} {($ Id.VSub_DollarName test_md)}] redirects: [ (Redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [ (Redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName MD_DEVS)} ) ] ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {($ Id.VSub_DollarName MD_DEVS)}] redirects: [] do_fork: T ) ] spids: [1043 1056] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> 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 '['>} {<-f>} {(DQ ($ Id.VSub_DollarName PLAINFILES))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <read> more_env: [] words: [{<read>} {<f>}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {<-f>} {(${ Id.VSub_Name f)}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [ (Redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(${ Id.VSub_Name PLAINFILES)} ) ] ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {(${ Id.VSub_Name PLAINFILES)}] redirects: [] do_fork: T ) ] spids: [1112 1125] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <true> more_env: [] words: [{<true>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) ] )