(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PATH) op: Equal rhs: {(/sbin) (Lit_Other ':') (/bin) (Lit_Other ':') (/usr/bin)} spids: [43] ) ] spids: [43] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FSCK_LOGFILE) op: Equal rhs: {(/var/log/fsck/checkroot)} spids: [50] ) ] spids: [50] ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKFIX'))} {(Lit_Other ']')}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FSCKFIX) op:Equal rhs:{(no)} spids:[63])] spids: [63] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$SULOGIN'))} {(Lit_Other ']')}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:SULOGIN) op:Equal rhs:{(no)} spids:[76])] spids: [76] ) ] ) (C {(.)} {(/lib/init/vars.sh)}) (C {(.)} {(/lib/lsb/init-functions)}) (C {(.)} {(/lib/init/mount-functions.sh)}) (FuncDef name: do_start body: (BraceGroup children: [ (C {(trap)} {(DQ )} {(INT)}) (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$SULOGIN'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(sulogin)} {(-t)} {(30)} {($ VSub_Name '$CONSOLE')}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KERNEL) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children:[(C {(uname)} {(-s)})]) left_token: <Left_CommandSub '$('> spids: [160 164] ) ) } spids: [158] ) ] spids: [158] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MACHINE) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children:[(C {(uname)} {(-m)})]) left_token: <Left_CommandSub '$('> spids: [170 174] ) ) } spids: [168] ) ] spids: [168] ) (C {(read_fstab)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ENABLE_SWAP) op:Equal rhs:{(no)} spids:[199])] spids: [199] ) (Case to_match: {(DQ ($ VSub_Name '$KERNEL'))} arms: [ (case_arm pat_list: [{(Linux)}] action: [ (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$NOSWAP'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_warning_msg)} {(DQ ('Not activating swap as requested via bootoption noswap.'))} ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ENABLE_SWAP) op: Equal rhs: {(no)} spids: [255] ) ] spids: [255] ) ] spids: [16777215 231] ) ] else_action: [ (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$swap_on_lv'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_warning_msg)} {(DQ ('Not activating swap on logical volume.'))} ) ] ) ] spids: [16777215 277] ) (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$swap_on_file'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_warning_msg)} {(DQ ('Not activating swap on swapfile.'))}) ] ) ] spids: [301 316] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ENABLE_SWAP) op: Equal rhs: {(yes)} spids: [343] ) ] spids: [343] ) ] spids: [340 347] ) ] spids: [259 350] ) ] spids: [212 213 353 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ENABLE_SWAP) op: Equal rhs: {(yes)} spids: [360] ) ] spids: [360] ) ] spids: [356 357 364 16777215] ) ] spids: [203 209 367] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$ENABLE_SWAP'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) ] action: [ (C {(log_action_begin_msg)} {(DQ ('Activating swap'))}) (SimpleCommand words: [{(swapon)} {(-a)} {(-e)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [419] ) (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [422] ) ] ) (C {(log_action_end_msg)} {($ VSub_QMark '$?')}) ] spids: [16777215 403] ) ] else_action: [ (C {(log_daemon_msg)} {(DQ ('Activating swap'))}) (C {(swapon)} {(-a)} {(-v)}) (C {(log_end_msg)} {($ VSub_QMark '$?')}) ] spids: [431 453] ) ] spids: [16777215 385] ) ] spids: [16777215 456] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KERNEL) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children:[(C {(uname)})]) left_token: <Left_CommandSub '$('> spids: [494 496] ) ) } spids: [492] ) ] spids: [492] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootcheck'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$KERNEL'))} {(Lit_Other '=')} {(Linux)} {(Lit_Other ']')} ) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ddev) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [(C {(mountpoint)} {(-qx)} {($ VSub_Name '$rootdev')})] ) left_token: <Left_CommandSub '$('> spids: [534 540] ) ) } spids: [532] ) ] spids: [532] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rdev) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [(C {(mountpoint)} {(-d)} {(/)})] ) left_token: <Left_CommandSub '$('> spids: [546 552] ) ) } spids: [544] ) ] spids: [544] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$ddev'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$rdev'))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$ddev'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ('4:0'))} {(Lit_Other ']')} ) ] ) ] action: [ (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [(C {(mountpoint)} {(-qx)} {(/dev/root)})] ) left_token: <Left_CommandSub '$('> spids: [599 605] ) ) } {(Lit_Other '=')} {(DQ ('4:0'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootdev) op: Equal rhs: {(/dev/root)} spids: [620] ) ] spids: [620] ) ] spids: [16777215 617] ) ] else_action: [ (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(rm)} {(-f)} {(/run/rootdev)}) (C {(mknod)} {(-m)} {(600)} {(/run/rootdev)} {(b)} { (BracedVarSub token: <VSub_Name rdev> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(':*')} ) spids: [651 655] ) } { (BracedVarSub token: <VSub_Name rdev> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {('*:')} ) spids: [657 661] ) } ) (C {(Lit_Other '[')} {(-e)} {(/run/rootdev)} {(Lit_Other ']')} ) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootdev) op: Equal rhs: {(/run/rootdev)} spids: [679] ) ] spids: [679] ) ] spids: [16777215 676] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootfatal) op: Equal rhs: {(yes)} spids: [686] ) ] spids: [686] ) ] spids: [683 690] ) ] spids: [624 693] ) ] spids: [16777215 591] ) ] spids: [16777215 696] ) ] spids: [16777215 529] ) ] spids: [16777215 699] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootfatal'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (C {(log_failure_msg)} { (DQ ('The device node ') ($ VSub_Name '$rootdev') (' for the root filesystem is missing or incorrect \n') ('or there is no entry for the root filesystem listed in /etc/fstab. \n') ('The system is also unable to create a temporary node in /run. \n') ('This means you have to fix the problem manually.') ) } ) (C {(log_warning_msg)} { (DQ ('A maintenance shell will now be started. \n') ('CONTROL-D will terminate this shell and restart the system.') ) } ) (If arms: [ (if_arm cond: [ (Pipeline children: [(C {(sulogin)} {($ VSub_Name '$CONSOLE')})] negated: T ) ] action: [ (C {(log_failure_msg)} { (DQ ('Attempt to start maintenance shell failed. \n') ('Will restart in 5 seconds.') ) } ) (C {(sleep)} {(5)}) ] spids: [16777215 766] ) ] spids: [16777215 782] ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_action_msg)} {(DQ ('Will now restart'))}) ] ) (C {(reboot)} {(-f)}) ] spids: [16777215 730] ) ] spids: [16777215 811] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FSCKCODE) op:Equal rhs:{(0)} spids:[873])] spids: [873] ) (If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {(-e)} {(/run/initramfs/fsck-root)} {(Lit_Other ']')})] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootcheck) op: Equal rhs: {(no)} spids: [892] ) ] spids: [892] ) ] spids: [16777215 889] ) ] spids: [16777215 896] ) (If arms: [ (if_arm cond: [(C {(is_fastboot_active)})] action: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootcheck'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(log_warning_msg)} {(DQ ('Fast boot enabled, so skipping root file system check.'))} ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootcheck) op: Equal rhs: {(no)} spids: [929] ) ] spids: [929] ) ] spids: [16777215 905] ) ] spids: [16777215 933] ) (If arms: [ (if_arm cond: [ (SimpleCommand words: [{(which)} {(findmnt)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [943] ) (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [946] ) ] ) ] action: [ (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(findmnt)} {(-f)} {(-n)} {(-o)} {(FSTYPE)} {(/)}) ] ) left_token: <Left_CommandSub '$('> spids: [958 970] ) ) } {(Lit_Other '=')} {(DQ (btrfs))} {(Lit_Other ']')} ) ] action: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootcheck'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(log_warning_msg)} {(DQ ('btrfs root detected, so skipping root file system check.'))} ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootcheck) op: Equal rhs: {(no)} spids: [1006] ) ] spids: [1006] ) ] spids: [16777215 982] ) ] spids: [16777215 1010] ) ] spids: [16777215 950] ) ] spids: [16777215 1013] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootcheck'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp Op_DAmp] children: [ (Pipeline children: [ (C {(mount)} {(-n)} {(-o)} {(remount) (Lit_Comma ',') (ro)} {($ VSub_Name '$rootdev')} {(/)} ) ] negated: T ) (Pipeline children: [ (SimpleCommand words: [ {(mount)} {(-n)} {(-o)} {(remount) (Lit_Comma ',') (ro)} {(-t)} {(dummytype)} {($ VSub_Name '$rootdev')} {(/)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [1131] ) ] ) ] negated: T ) (Pipeline children: [ (SimpleCommand words: [ {(mount)} {(-n)} {(-o)} {(remount) (Lit_Comma ',') (ro)} {(/)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [1152] ) ] ) ] negated: T ) ] ) ] action: [ (C {(log_failure_msg)} { (DQ ( 'Cannot check root file system because it is not mounted read-only.' ) ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootcheck) op: Equal rhs: {(no)} spids: [1166] ) ] spids: [1166] ) ] spids: [16777215 1156] ) ] spids: [16777215 1170] ) ] spids: [16777215 1032] ) ] spids: [16777215 1173] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootcheck'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(-f)} {(/forcefsck)} {(Lit_Other ']')}) (C {(grep)} {(-q)} {(-s)} {(-w)} {(-i)} {(DQ (forcefsck))} {(/proc/cmdline)}) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:force) op: Equal rhs: {(DQ (-f))} spids: [1239] ) ] spids: [1239] ) ] spids: [16777215 1236] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:force) op: Equal rhs: {(DQ )} spids: [1248] ) ] spids: [1248] ) ] spids: [1245 1253] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKFIX'))} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fix) op: Equal rhs: {(DQ (-y))} spids: [1275] ) ] spids: [1275] ) ] spids: [16777215 1272] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fix) op: Equal rhs: {(DQ (-a))} spids: [1284] ) ] spids: [1284] ) ] spids: [1281 1290] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:spinner) op: Equal rhs: {(DQ (-C))} spids: [1294] ) ] spids: [1294] ) (Case to_match: {(DQ ($ VSub_Name '$TERM'))} arms: [ (case_arm pat_list: [{(dumb)} {(network)} {(unknown)} {(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:spinner) op: Equal rhs: {(DQ )} spids: [1320] ) ] spids: [1320] ) ] spids: [1309 1317 1324 16777215] ) ] spids: [1300 1306 1327] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ (${ VSub_Name KERNEL) (':') (${ VSub_Name MACHINE))} {(Lit_Other '=')} {(Linux) (Lit_Other ':') (s390x)} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:spinner) op: Equal rhs: {(DQ )} spids: [1360] ) ] spids: [1360] ) ] spids: [16777215 1357] ) ] spids: [16777215 1365] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) ] action: [ (C {(log_action_begin_msg)} {(DQ ('Checking root file system'))}) (C {(logsave)} {(-s)} {($ VSub_Name '$FSCK_LOGFILE')} {(fsck)} {($ VSub_Name '$spinner')} {($ VSub_Name '$force')} {($ VSub_Name '$fix')} {(-t)} {($ VSub_Name '$roottype')} {($ VSub_Name '$rootdev')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FSCKCODE) op: Equal rhs: {($ VSub_QMark '$?')} spids: [1416] ) ] spids: [1416] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKCODE'))} {(Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(log_action_end_msg)} {(0)})] spids: [16777215 1435] ) ] else_action: [ (C {(log_action_end_msg)} {(1)} {(DQ ('code ') ($ VSub_Name '$FSCKCODE'))} ) ] spids: [1443 1456] ) ] spids: [16777215 1385] ) ] else_action: [ (C {(log_daemon_msg)} {(DQ ('Will now check root file system'))}) (C {(logsave)} {(-s)} {($ VSub_Name '$FSCK_LOGFILE')} {(fsck)} {($ VSub_Name '$spinner')} {($ VSub_Name '$force')} {($ VSub_Name '$fix')} {(-V)} {(-t)} {($ VSub_Name '$roottype')} {($ VSub_Name '$rootdev')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FSCKCODE) op: Equal rhs: {($ VSub_QMark '$?')} spids: [1492] ) ] spids: [1492] ) (C {(log_end_msg)} {($ VSub_Name '$FSCKCODE')}) ] spids: [1459 1501] ) ] spids: [16777215 1204] ) ] spids: [16777215 1504] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKCODE'))} {(-eq)} {(32)} {(Lit_Other ']')}) ] action: [(C {(log_warning_msg)} {(DQ ('File system check was interrupted by user'))})] spids: [16777215 1555] ) (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKCODE'))} {(-gt)} {(3)} {(Lit_Other ']')}) ] action: [ (C {(log_failure_msg)} { (DQ ( 'An automatic file system check (fsck) of the root filesystem failed. \n' ) ('A manual fsck must be performed, then the system restarted. \n') ('The fsck should be performed in maintenance mode with the \n') ('root filesystem mounted in read-only mode.') ) } ) (C {(log_warning_msg)} { (DQ ('The root filesystem is currently mounted in read-only mode. \n') ('A maintenance shell will now be started. \n') ('After performing system maintenance, press CONTROL-D \n') ('to terminate the maintenance shell and restart the system.') ) } ) (If arms: [ (if_arm cond: [ (Pipeline children: [(C {(sulogin)} {($ VSub_Name '$CONSOLE')})] negated: T ) ] action: [ (C {(log_failure_msg)} { (DQ ('Attempt to start maintenance shell failed. \n') ('Will restart in 5 seconds.') ) } ) (C {(sleep)} {(5)}) ] spids: [16777215 1624] ) ] spids: [16777215 1640] ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_action_msg)} {(DQ ('Will now restart'))}) ] ) (C {(reboot)} {(-f)}) ] spids: [1565 1580] ) (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FSCKCODE'))} {(-gt)} {(1)} {(Lit_Other ']')}) ] action: [ (C {(log_failure_msg)} { (DQ ('The file system check corrected errors on the root partition \n') ('but requested that the system be restarted.') ) } ) (C {(log_warning_msg)} {(DQ ('The system will be restarted in 5 seconds.'))}) (C {(sleep)} {(5)}) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) (C {(log_action_msg)} {(DQ ('Will now restart'))}) ] ) (C {(reboot)} {(-f)}) ] spids: [1669 1684] ) ] spids: [16777215 1733] ) (If arms: [ (if_arm cond: [ (Pipeline children: [ (SimpleCommand words: [ {(mount)} {(-n)} {(-o)} {(remount) (Lit_Comma ',') ($ VSub_Name '$rootopts') (Lit_Comma ',') ($ VSub_Name '$rootmode') } {($ VSub_Name '$fstabroot')} {(/)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [1781] ) ] ) ] negated: T ) ] action: [ (C {(mount)} {(-n)} {(-o)} {(remount) (Lit_Comma ',') ($ VSub_Name '$rootopts') (Lit_Comma ',') ($ VSub_Name '$rootmode') } {(/)} ) ] spids: [16777215 1785] ) ] spids: [16777215 1803] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rootmode'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (ro))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(mtab_migrate)})] spids: [16777215 1837] ) ] spids: [16777215 1843] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(selinux_enabled)}) (C {(Lit_Other '[')} {(-x)} {(/sbin/restorecon)} {(Lit_Other ']')}) (C {(Lit_Other '[')} {(-r)} {(/etc/mtab)} {(Lit_Other ']')}) ] ) ] action: [(C {(restorecon)} {(/etc/mtab)})] spids: [16777215 1872] ) ] spids: [16777215 1880] ) (C {(rm)} {(-f)} {(/run/rootdev)}) (C {(/etc/init.d/mountkernfs.sh)} {(reload)}) (C {(/etc/init.d/mountdevsubfs.sh)} {(reload)}) ] spids: [98] ) spids: [93 97] ) (FuncDef name: do_status body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:rootrw) op:Equal rhs:{(false)} spids:[1945])] spids: [1945] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:swapon) op:Equal rhs:{(false)} spids:[1949])] spids: [1949] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(/etc/mtab)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(grep)} {(DQ (' / '))} {(/etc/mtab)}) (C {(grep)} {(-q)} {(rw)}) ] negated: F ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rootrw) op: Equal rhs: {(true)} spids: [1990] ) ] spids: [1990] ) ] spids: [16777215 1987] ) ] spids: [16777215 1994] ) ] spids: [16777215 1965] ) ] spids: [16777215 1997] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(/proc/swaps)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(cat)} {(/proc/swaps)}) (C {(grep)} {(-v)} {(Lit_Other '^') (Filename)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [2020 2032] ) ) } {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:swapon) op: Equal rhs: {(true)} spids: [2042] ) ] spids: [2042] ) ] spids: [16777215 2039] ) ] spids: [16777215 2046] ) ] spids: [16777215 2012] ) ] spids: [16777215 2049] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(true)} {(Lit_Other '=')} {(DQ ($ VSub_Name '$rootrw'))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(true)} {(Lit_Other '=')} {(DQ ($ VSub_Name '$swapon'))} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})] spids: [16777215 2082] ) ] else_action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(4)})] spids: [2090 2098] ) ] spids: [1934] ) spids: [1929 1933] ) (Case to_match: {(DQ ($ VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(start)} {(DQ )}] action: [(C {(do_start)})] spids: [2112 2116 2122 16777215] ) (case_arm pat_list: [{(restart)} {(reload)} {(force-reload)}] action: [ (SimpleCommand words: [{(echo)} {(DQ ("Error: argument '") ($ VSub_Number '$1') ("' not supported"))}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[2141])] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(3)}) ] spids: [2125 2130 2150 16777215] ) (case_arm pat_list:[{(stop)}] spids:[2153 2154 2161 16777215]) (case_arm pat_list: [{(status)}] action: [ (C {(do_status)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{($ VSub_QMark '$?')}) ] spids: [2164 2165 2176 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (SimpleCommand words: [{(echo)} {(DQ ('Usage: checkroot.sh [start|stop]'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[2189])] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(3)}) ] spids: [2179 2180 2198 16777215] ) ] spids: [2103 2109 2200] ) (C {(Lit_Other ':')}) ] )