(List (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -f]} {[LIT_CHARS /proc/modules]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -x]} {[LIT_CHARS /sbin/modprobe]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -f]} {[LIT_CHARS /etc/default/rcS]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS .]} {[LIT_CHARS /etc/default/rcS]}) ) (Com {[LIT_CHARS .]} {[LIT_CHARS /lib/lsb/init-functions]}) (= scope= flags=0 words=[] bindings=[('PATH', {[SQ ]})]) (Case to_match={[DQ [VarSub 1]]}, pat_word_list=[[{[LIT_CHARS start]}], [{[LIT_CHARS stop]}, {[LIT_CHARS restart]}, {[LIT_CHARS reload]}, {[LIT_CHARS force-reload]}], [{[LIT_OTHER "*"]}]] (ElseTrue) (List (Com {[LIT_CHARS log_warning_msg]} {[DQ [LIT_CHARS "Action '"][VarSub 1][LIT_CHARS "' is meaningless for this init script"]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (List (Com {[LIT_CHARS log_success_msg]} {[DQ [LIT_CHARS "Usage: "][VarSub 0][LIT_CHARS " start"]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (FunctionDef load_module [] (List (= scope= flags=0 words=[{[LIT_CHARS module]}, {[LIT_CHARS args]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('module', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('args', {[DQ [VarSub 2]]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub VERBOSE]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[LIT_CHARS no]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS log_action_msg]} {[DQ [LIT_CHARS "Loading kernel module "][VarSub module]]}) (AndOr OP_OR_IF (Com {[LIT_CHARS modprobe]} {[VarSub module]} {[VarSub args]}) (Com {[LIT_CHARS true]}) ) ) (ElseTrue) (AndOr OP_OR_IF (Com {[LIT_CHARS modprobe]} {[VarSub module]} {[VarSub args]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), (DescriptorRedirectNode target={[LIT_CHARS 1]} &"> 2), > ) (Com {[LIT_CHARS true]}) ) ) ) ) (FunctionDef modules_files [] (List (= scope= flags=0 words=[] bindings=[('modules_load_dirs', {[SQ ]})]) (= scope= flags=0 words=[] bindings=[('processed', {[SQ ]})]) (= scope= flags=0 words=[] bindings=[('add_etc_modules', {[LIT_CHARS true]})]) (For dir [{[VarSub modules_load_dirs]}]) (List (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -d]} {[VarSub dir]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS continue]}) ) (For file [{[ComSub (AndOr OP_OR_IF (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS run-parts]} {[LIT_CHARS --list]} {[LIT_CHARS --regex] [LIT_OTHER "="] [SQ ]} {[VarSub dir]}) (Com {[LIT_CHARS true]}) )]}]) (List (= scope= flags=0 words=[] bindings=[('base', {[VarSub file transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]})]) (If (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[DQ [VarSub processed]]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -qF]} {[DQ [LIT_CHARS " "][VarSub base][LIT_CHARS " "]]}) ) (Com {[LIT_CHARS continue]}) ) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub add_etc_modules]]} {[LIT_CHARS -a]} {[LIT_CHARS -L]} {[VarSub file]} {[LIT_CHARS -a]} {[DQ [ComSub (Com {[LIT_CHARS readlink]} {[LIT_CHARS -f]} {[VarSub file]})]]} {[LIT_OTHER "="]} {[LIT_CHARS /etc/modules]} {[LIT_OTHER "]"]}) (= scope= flags=0 words=[] bindings=[('add_etc_modules', {[SQ ]})]) ) (= scope= flags=0 words=[] bindings=[('processed', {[DQ [VarSub processed][VarSub base][LIT_CHARS " "]]})]) (Com {[LIT_CHARS echo]} {[VarSub file]}) ) ) ) ) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub add_etc_modules]]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS echo]} {[LIT_CHARS /etc/modules]}) ) ) ) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub VERBOSE]]} {[LIT_OTHER "="]} {[LIT_CHARS no]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS log_action_begin_msg]} {[SQ ]}) ) (= scope= flags=0 words=[] bindings=[('files', {[ComSub (Com {[LIT_CHARS modules_files]})]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub files]]} {[LIT_OTHER "]"]}) (Pipeline (Com {[LIT_CHARS grep]} {[LIT_CHARS -h]} {[SQ ]} {[VarSub files]}) (While (Com {[LIT_CHARS read]} {[LIT_CHARS module]} {[LIT_CHARS args]}) (List (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[DQ [VarSub module]]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS continue]}) ) (Com {[LIT_CHARS load_module]} {[DQ [VarSub module]]} {[DQ [VarSub args]]}) ) ) ) ) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub VERBOSE]]} {[LIT_OTHER "="]} {[LIT_CHARS no]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS log_action_end_msg]} {[LIT_CHARS 0]}) ) )