(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'PATH='> name:PATH) op: assign_op.Equal rhs: {<'/sbin'> <Id.Lit_Colon ':'> <'/bin'>} spids: [46] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'TTYGRP='> name:TTYGRP) op: assign_op.Equal rhs: {<5>} spids: [51] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'TTYMODE='> name:TTYMODE) op: assign_op.Equal rhs: {<620>} spids: [54] ) ] redirects: [] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-f>} {<'/etc/default/devpts'>} {<Id.Lit_RBracket ']'>}) (C {<.>} {<'/etc/default/devpts'>}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KERNEL='> name:KERNEL) op: assign_op.Equal rhs: { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<uname>} {<-s>}) right: <Id.Eof_RParen _> ) ) } spids: [72] ) ] redirects: [] ) (C {<.>} {<'/lib/lsb/init-functions'>}) (C {<.>} {<'/lib/init/vars.sh'>}) (C {<.>} {<'/lib/init/tmpfs.sh'>}) (C {<.>} {<'/lib/init/mount-functions.sh'>}) (command.ShFunction name: mount_filesystems body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'MNTMODE='> name:MNTMODE) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number 1))} spids: [114] ) ] redirects: [] ) (C {<mount_shm>} {(DQ ($ Id.VSub_DollarName MNTMODE))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName KERNEL))} {<Id.Lit_Equals '='>} {<Linux>} {<Id.Lit_RBracket ']'>} ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-d>} {<'/dev/pts'>} {<Id.Lit_RBracket ']'>} ) ] ) action: [ (C {<mkdir>} {<--mode> <Id.Lit_Equals '='> <755>} {<'/dev/pts'>}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-x>} {<'/sbin/restorecon'>} {<Id.Lit_RBracket ']'>} ) (C {<'/sbin/restorecon'>} {<'/dev/pts'>}) ] ) ] spids: [155 168] ) ] else_action: [] redirects: [] ) (C {<domount>} {(DQ ($ Id.VSub_DollarName MNTMODE))} {<devpts>} {(DQ )} {<'/dev/pts'>} {<devpts>} {(DQ <'-onoexec,nosuid,gid='> ($ Id.VSub_DollarName TTYGRP) <',mode='> ($ Id.VSub_DollarName TTYMODE))} ) ] spids: [137 152] ) ] else_action: [] redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Case to_match: {(DQ ($ Id.VSub_Number 1))} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (command.Simple words: [ {<echo>} {(DQ <'Warning: mountdevsubfs should be called with the \'start\' argument.'>)} ] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] more_env: [] do_fork: T ) (C {<mount_filesystems>} {<mount_noupdate>}) ] spids: [235 237 255 -1] ) (case_arm pat_list: [{<start>}] action: [(C {<mount_filesystems>} {<mount_noupdate>})] spids: [258 259 267 -1] ) (case_arm pat_list: [{<restart>} {<reload>} {<force-reload>}] action: [(C {<mount_filesystems>} {<remount>})] spids: [270 275 283 -1] ) (case_arm pat_list:[{<stop>} {<status>}] action:[] spids:[286 289 296 -1]) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Simple words: [{<echo>} {(DQ <'Usage: mountdevsubfs [start|stop]'>)}] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] more_env: [] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<3>}) ] spids: [299 300 318 -1] ) ] redirects: [] ) ] )