(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PATH) op: assign_op.Equal rhs: {<'/usr/local/sbin'> <Id.Lit_Colon ':'> <'/usr/local/bin'> <Id.Lit_Colon ':'> <'/sbin'> <Id.Lit_Colon ':'> <'/bin'> <Id.Lit_Colon ':'> <'/usr/sbin'> <Id.Lit_Colon ':'> <'/usr/bin'> } spids: [50] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DAEMON) op: assign_op.Equal rhs: {<'/usr/sbin/cupsd'>} spids: [63] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:NAME) op: assign_op.Equal rhs: {<cupsd>} spids: [66] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PIDFILE) op: assign_op.Equal rhs: {<'/var/run/cups/'> ($ Id.VSub_DollarName '$NAME') <.pid>} spids: [69] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DESC) op: assign_op.Equal rhs: {(DQ <'Common Unix Printing System'>)} spids: [74] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:SCRIPTNAME) op: assign_op.Equal rhs: {<'/etc/init.d/cups'>} spids: [79] ) ] ) (C {<unset>} {<TMPDIR>}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-x>} {($ Id.VSub_DollarName '$DAEMON')}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] ) (C {<mkdir>} {<-p>} {<'/var/run/cups/certs'>}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-x>} {<'/sbin/restorecon'>} {<Id.Lit_RBracket ']'>}) (C {<'/sbin/restorecon'>} {<-R>} {<'/var/run/cups'>}) ] ) (C {<.>} {<'/lib/lsb/init-functions'>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$TZ'))} {<-a>} {<-e>} {<'/etc/timezone'>} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TZ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<cat>} {<'/etc/timezone'>}) ) } spids: [166] ) ] ) (C {<export>} {<TZ>}) ] spids: [144 163] ) ] ) (command.ShFunction name: coldplug_usb_printers body: (BraceGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (command.Simple words: [{<type>} {<udevadm>}] 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 ) (C {<Id.Lit_LBracket '['>} {<-x>} {<'/lib/udev/udev-configure-printer'>} {<Id.Lit_RBracket ']'>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: printer iter_words: [ { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.CommandList children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [ {<udevadm>} {<trigger>} {<--verbose>} {<--dry-run>} {<--subsystem-match> <Id.Lit_Equals '='> <usb>} {<--attr-match> <Id.Lit_Equals '='> <Id.Lit_VarLike 'bInterfaceClass='> <07> } {<--attr-match> <Id.Lit_Equals '='> <Id.Lit_VarLike 'bInterfaceSubClass='> <01> } ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (C {<true>}) ] ) terminator: <Id.Op_Semi _> ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [ {<udevadm>} {<trigger>} {<--verbose>} {<--dry-run>} {<--subsystem-match> <Id.Lit_Equals '='> <usb>} {<--sysname-match> <Id.Lit_Equals '='> (SQ <'lp[0-9]*'>)} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (C {<true>}) ] ) ] ) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (C {<'/lib/udev/udev-configure-printer'>} {<add>} { (DQ (braced_var_sub token: <Id.VSub_Name printer> suffix_op: (suffix_op.Unary tok: <Id.VOp1_Pound '#'> arg_word: {<Id.Lit_Slash '/'> <sys>} ) ) ) } ) ] ) ) ] spids: [190 214] ) ] ) ] ) ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{<start>}] action: [ (C {<log_daemon_msg>} {(DQ <'Starting '> ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (C {<mkdir>} {<-p>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<dirname>} {(DQ ($ Id.VSub_DollarName '$PIDFILE'))}) ) } ) (C {<start-stop-daemon>} {<--start>} {<--quiet>} {<--oknodo>} {<--pidfile>} {(DQ ($ Id.VSub_DollarName '$PIDFILE'))} {<--exec>} {($ Id.VSub_DollarName '$DAEMON')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [383] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$status')} {<Id.Lit_Equals '='>} {<0>} {<Id.Lit_RBracket ']'>} ) (C {<coldplug_usb_printers>}) ] ) (C {<log_end_msg>} {($ Id.VSub_DollarName '$status')}) ] spids: [332 333 407 -1] ) (case_arm pat_list: [{<stop>}] action: [ (C {<log_daemon_msg>} {(DQ <'Stopping '> ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (C {<start-stop-daemon>} {<--stop>} {<--quiet>} {<--retry>} {<5>} {<--oknodo>} {<--pidfile>} {($ Id.VSub_DollarName '$PIDFILE')} {<--name>} {($ Id.VSub_DollarName '$NAME')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [447] ) ] ) (C {<log_end_msg>} {($ Id.VSub_DollarName '$status')}) ] spids: [410 411 456 -1] ) (case_arm pat_list: [{<reload>} {<force-reload>}] action: [ (C {<log_daemon_msg>} {(DQ <'Reloading '> ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (C {<start-stop-daemon>} {<--stop>} {<--quiet>} {<--pidfile>} {($ Id.VSub_DollarName '$PIDFILE')} {<--name>} {($ Id.VSub_DollarName '$NAME')} {<--signal>} {<1>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [496] ) ] ) (C {<log_end_msg>} {($ Id.VSub_DollarName '$status')}) ] spids: [459 462 505 -1] ) (case_arm pat_list: [{<restart>}] action: [ (C {<log_daemon_msg>} {(DQ <'Restarting '> ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<start-stop-daemon>} {<--stop>} {<--quiet>} {<--retry>} {<5>} {<--oknodo>} {<--pidfile>} {($ Id.VSub_DollarName '$PIDFILE')} {<--name>} {($ Id.VSub_DollarName '$NAME')} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<start-stop-daemon>} {<--start>} {<--quiet>} {<--pidfile>} {(DQ ($ Id.VSub_DollarName '$PIDFILE'))} {<--exec>} {($ Id.VSub_DollarName '$DAEMON')} ) ] spids: [524 547] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [570] ) ] ) (C {<log_end_msg>} {($ Id.VSub_DollarName '$status')}) ] spids: [508 509 579 -1] ) (case_arm pat_list: [{<status>}] action: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DPipe] children: [ (C {<status_of_proc>} {<-p>} {(DQ ($ Id.VSub_DollarName '$PIDFILE'))} {(DQ ($ Id.VSub_DollarName '$DAEMON'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ] spids: [582 583 615 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Simple words: [ {<echo>} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$SCRIPTNAME') <' {start|stop|restart|force-reload|status}'> ) } ] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<3>}) ] spids: [618 619 639 -1] ) ] ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] )