(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'pipename='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'pipename='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pipename='> name:pipename) op: assign_op.Equal rhs: {<'/tmp/stap-sync-'> ($ Id.VSub_Dollar '$')} ) ] redirects: [] ) (command.Simple blame_tok: <mkfifo> more_env: [] words: [{<mkfifo>} {(DQ ($ Id.VSub_DollarName pipename))}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <stap_filter> name: stap_filter body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <read> more_env: [] words: [{<read>} {<line>}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{(DQ ($ Id.VSub_DollarName line))}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <Id.Op_LParen _> pattern: (pat.Words words:[{<saw> <Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.Pipeline children: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<-n>} {(DQ ($ Id.VSub_DollarName line))}] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [{<sed>} {<-r>} {(SQ <'s/.* with *//'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [{<sed>} {<-r>} {(SQ <'s/ *([a-zA-Z0-9_]*=)/\\n\\1/g'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [ {<sed>} {<-r>} {(SQ <'s/(n|sz|size|len|length)=((0x)?[0-9a-f\\?]*)/n=\\2/'>)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [ {<sed>} {<-r>} {(SQ <'s/(src|source|from)=((0x)?[0-9a-f\\?]*)/src=\\2/'>)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [ {<sed>} {<-r>} {(SQ <'s/(dst|dest|to)=((0x)?[0-9a-f\\?]*)/dst=\\2/'>)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [ {<sed>} {<-r>} { (SQ < 's/(dst|dest|to|src|source|from)=((0x)?ffff[0-9a-f\\?]*)//' > ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <sed> more_env: [] words: [{<sed>} {(SQ <'/^$/ d'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <sort> more_env: [] words: [{<sort>} {<-t> <Id.Lit_Equals '='>} {<-k1>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <tr> more_env: [] words: [{<tr>} {(SQ <'\\n'>)} {(SQ <' '>)}] redirects: [] do_fork: T ) ] ops: [ <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _> ] ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>}] redirects: [] do_fork: T ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <Id.Op_LParen _> pattern: (pat.Words words:[{<Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ ($ Id.VSub_DollarName line))}] redirects: [] do_fork: T ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) ] right: <Id.KW_Done done> ) redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Sentence child: (command.Simple blame_tok: <Id.Left_DollarParen '$('> more_env: [] words: [ { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <dirname> more_env: [] words: [{<dirname>} {(DQ ($ Id.VSub_Number 0))}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) <'/run-with-trap-syscalls.sh'> } {(DQ ($ Id.VSub_At '@'))} ] redirects: [ (Redir op: <Id.Redir_Great '7>'> loc: (redir_loc.Fd fd:7) arg: {(DQ ($ Id.VSub_DollarName pipename))} ) ] do_fork: T ) terminator: <Id.Op_Amp _> ) (command.ShAssignment left: <Id.Lit_VarLike 'child_pid='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'child_pid='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'child_pid='> name:child_pid) op: assign_op.Equal rhs: {($ Id.VSub_Bang '!')} ) ] redirects: [] ) (command.Sentence child: (command.Pipeline children: [ (command.Simple blame_tok: <stap> more_env: [] words: [ {<stap>} {<-x>} {($ Id.VSub_Bang '!')} { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <dirname> more_env: [] words: [{<dirname>} {(DQ ($ Id.VSub_Number 0))}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) <'/copy-tofrom-user.stp'> } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <stap_filter> more_env: [] words: [{<stap_filter>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <tee> more_env: [] words: [{<tee>} {<'/dev/stderr'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <diff> more_env: [] words: [{<diff>} {<-u>} {<->} {(DQ ($ Id.VSub_DollarName pipename))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _>] ) terminator: <Id.Op_Amp _> ) (command.ShAssignment left: <Id.Lit_VarLike 'stap_pid='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'stap_pid='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'stap_pid='> name:stap_pid) op: assign_op.Equal rhs: {($ Id.VSub_Bang '!')} ) ] redirects: [] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {<-d>} {<'/proc/'> ($ Id.VSub_DollarName child_pid)} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <sleep> more_env: [] words: [{<sleep>} {<1>}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.Simple blame_tok: <kill> more_env: [] words: [{<kill>} {($ Id.VSub_DollarName stap_pid)}] redirects: [] do_fork: T ) ] )