(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_Other ':'> </usr/local/bin> <Id.Lit_Other ':'> </sbin> <Id.Lit_Other ':'> </bin> <Id.Lit_Other ':'> </usr/sbin> <Id.Lit_Other ':'> </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: [ (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 '`'> command_list: (command.CommandList children:[(C {<cat>} {</etc/timezone>})]) ) } spids: [166] ) ] ) (C {<export>} {<TZ>}) ] spids: [144 163] ) ] ) (command.ShFunction name: coldplug_usb_printers body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (command.Simple words: [{<type>} {<udevadm>}] redirects: [ (redir.Redir op: <Id.Redir_Great '>'> fd: -1 arg_word: {</dev/null>} ) (redir.Redir op: <Id.Redir_GreatAnd '2>&'> fd: 2 arg_word: {<1>} ) ] ) (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 '`'> command_list: (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.Redir op: <Id.Redir_Great '2>'> fd: 2 arg_word: {</dev/null>} ) ] ) (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.Redir op: <Id.Redir_Great '2>'> fd: 2 arg_word: {</dev/null>} ) ] ) (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 op_id: 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 '`'> command_list: (command.CommandList children: [(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: [ (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.Redir op:<Id.Redir_GreatAnd '>&'> fd:-1 arg_word:{<2>})] ) (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>}) ] )