(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LOCALRC) op:Equal rhs:{(/usr/etc/rc.local)} spids:[19])] spids: [19] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INETCONF) op:Equal rhs:{(/etc/inet.conf)} spids:[22])] spids: [22] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:RCNET) op:Equal rhs:{(/etc/rc.net)} spids:[25])] spids: [25] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:HOSTS) op:Equal rhs:{(/etc/hosts)} spids:[28])] spids: [28] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:HOSTNAME) op: Equal rhs: {(/etc/hostname.file)} spids: [31] ) ] spids: [31] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:USRKBFILE) op:Equal rhs:{(/.usrkb)} spids:[34])] spids: [34] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:step1) op:Equal rhs:{(DQ )} spids:[38])] spids: [38] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:step2) op:Equal rhs:{(DQ )} spids:[42])] spids: [42] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:step3) op:Equal rhs:{(DQ )} spids:[46])] spids: [46] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:v) op:Equal rhs:{(1)} spids:[50])] spids: [50] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:manual_opts) op:Equal rhs:{(0)} spids:[56])] spids: [56] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:prefix) op:Equal rhs:{(DQ )} spids:[59])] spids: [59] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cd) op:Equal rhs:{(DQ (no))} spids:[63])] spids: [63] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:eth) op:Equal rhs:{(DQ )} spids:[72])] spids: [72] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:driver) op:Equal rhs:{(DQ )} spids:[76])] spids: [76] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:driverargs) op:Equal rhs:{(DQ )} spids:[80])] spids: [80] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:config) op:Equal rhs:{(DQ )} spids:[85])] spids: [85] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:manual) op:Equal rhs:{(DQ )} spids:[89])] spids: [89] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:dhcp) op:Equal rhs:{(DQ (no))} spids:[93])] spids: [93] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:hostname) op:Equal rhs:{(DQ )} spids:[99])] spids: [99] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:hostname_prev) op:Equal rhs:{(DQ )} spids:[103])] spids: [103] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ip) op:Equal rhs:{(DQ )} spids:[107])] spids: [107] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ip_prev) op:Equal rhs:{(DQ )} spids:[111])] spids: [111] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:netmask) op:Equal rhs:{(DQ )} spids:[115])] spids: [115] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:netmask_prev) op:Equal rhs:{(DQ )} spids:[119])] spids: [119] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:gateway) op:Equal rhs:{(DQ )} spids:[123])] spids: [123] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:dns1) op:Equal rhs:{(DQ )} spids:[127])] spids: [127] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:dns2) op:Equal rhs:{(DQ )} spids:[131])] spids: [131] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname_default) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(uname)} {(-n)})]) left_token: <Left_Backtick '`'> spids: [140 144] ) } spids: [139] ) ] spids: [139] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-z)} {(DQ ($ VSub_Name '$hostname_default'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname_default) op: Equal rhs: {(DQ (Minix))} spids: [156] ) ] spids: [156] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ip_default) op:Equal rhs:{(DQ (10.0.0.1))} spids:[161])] spids: [161] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:netmask_default) op: Equal rhs: {(DQ (255.255.255.0))} spids: [166] ) ] spids: [166] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:gateway_default) op:Equal rhs:{(DQ )} spids:[171])] spids: [171] ) (FuncDef name: usage body: (BraceGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)}) (HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 214 stdin_parts: [ ('Usage:\n') ('\n') (' netconf [-q] [-p <prefix>] [-e <num>] [-a]\n') ( ' netconf [-H <name> -i <ip> -n <mask> -g <gw> -d <prim dns> [-s <sec dns>]]\n' ) ('\n') (' flags:\n') (' -q Limit generated output\n') ( ' -p Path prefix for configuration files (e.g., during install -p mnt is used as files are mounted on /mnt).\n' ) (' -e Ethernet card\n') (' -a Use DHCP (-H, -i, -n, -g, -d, and -s flags are discarded)\n') (' -H Hostname\n') (' -i IP address\n') (' -n Netmask\n') (' -g Default gateway\n') (' -d Primary DNS\n') (' -s Secondary DNS\n') (' -h Shows this help file\n') (' -c Shows a list of ethernet cards supported\n') ('\n') ( ' By default netconf starts in Interactive mode. By providing parameters on the\n' ) (' command line, some questions can be omitted.\n') ] ) ] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [180] ) spids: [176 179] ) (FuncDef name: card body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:card_number) op: Equal rhs: {($ VSub_Number '$1')} spids: [230] ) ] spids: [230] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:card_name) op: Equal rhs: {($ VSub_Number '$2')} spids: [234] ) ] spids: [234] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:card_avail) op:Equal rhs:{(0)} spids:[238])] spids: [238] ) (C {(shift)} {(2)}) (WhileUntil keyword: <KW_While while> cond: [(C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-gt)} {(0)} {(Lit_Other ']')})] body: (DoGroup children: [ (AndOr ops: [Op_DAmp] children: [ (Pipeline children: [ (C {(lspci)}) (SimpleCommand words: [{(grep)} {(DQ ('^') ($ VSub_Number '$1'))}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) ] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:card_avail) op: Equal rhs: {(1)} spids: [281] ) ] spids: [281] ) ] ) (C {(shift)}) ] spids: [260 288] ) ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_Name '$card_avail')} {(-gt)} {(0)} {(Lit_Other ']')}) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:card_mark) op: Equal rhs: {(DQ ('*'))} spids: [308] ) ] spids: [308] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:eth_default) op: Equal rhs: {($ VSub_Name '$card_number')} spids: [314] ) ] spids: [314] ) ] spids: [16777215 304] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:card_mark) op: Equal rhs: {(DQ (' '))} spids: [321] ) ] spids: [321] ) ] spids: [318 327] ) (C {(printf)} {(DQ ('%2d. %s %s') (Lit_Other '\\') (n))} {(DQ ($ VSub_Name '$card_number'))} {(DQ ($ VSub_Name '$card_mark'))} {(DQ ($ VSub_Name '$card_name'))} ) ] spids: [227] ) spids: [223 226] ) (FuncDef name: cards body: (BraceGroup children: [ (C {(card)} {(0)} {(DQ ('No Ethernet card (no networking)'))}) (C {(card)} {(1)} {(DQ ('Intel Pro/100'))} {(DQ ('8086:103D'))} {(DQ ('8086:1064'))} {(DQ ('8086:1229'))} {(DQ ('8086:2449'))} ) (C {(card)} {(2)} {(DQ ('3Com 501 or 3Com 509 based card'))}) (C {(card)} {(3)} {(DQ ('Realtek 8139 based card (also emulated by KVM)'))} {(DQ ('10EC:8139'))} {(DQ ('02AC:1012'))} {(DQ ('1065:8139'))} {(DQ ('1113:1211'))} {(DQ ('1186:1300'))} {(DQ ('1186:1340'))} {(DQ ('11DB:1234'))} {(DQ ('1259:A117'))} {(DQ ('1259:A11E'))} {(DQ ('126C:1211'))} {(DQ ('13D1:AB06'))} {(DQ ('1432:9130'))} {(DQ ('14EA:AB06'))} {(DQ ('14EA:AB07'))} {(DQ ('1500:1360'))} {(DQ ('1743:8139'))} {(DQ ('4033:1360'))} ) (C {(card)} {(4)} {(DQ ('Realtek 8169 based card'))} {(DQ ('10EC:8129'))} {(DQ ('10EC:8167'))} {(DQ ('10EC:8169'))} {(DQ ('1186:4300'))} {(DQ ('1259:C107'))} {(DQ ('1385:8169'))} {(DQ ('16EC:0116'))} {(DQ ('1737:1032'))} ) (C {(card)} {(5)} {(DQ ('Realtek 8029 based card (also emulated by Qemu)'))} {(DQ ('10EC:8029'))} ) (C {(card)} {(6)} {(DQ ('NE2000, 3com 503 or WD based card (also emulated by Bochs)'))}) (C {(card)} {(7)} {(DQ ('AMD LANCE (also emulated by VMWare and VirtualBox)'))} {(DQ ('1022:2000'))} ) (C {(card)} {(8)} {(DQ ('Intel PRO/1000 Gigabit'))} {(DQ ('8086:100E'))} {(DQ ('8086:107C'))} {(DQ ('8086:10CD'))} ) (C {(card)} {(9)} {(DQ ('Attansic/Atheros L2 FastEthernet'))} {(DQ ('1969:2048'))}) (C {(card)} {(10)} {(DQ ('DEC Tulip 21140A in VirtualPC'))} {(DQ ('1011:0009'))}) (C {(card)} {(11)} {(DQ ('Different Ethernet card (no networking)'))}) ] spids: [357] ) spids: [353 356] ) (FuncDef name: warn body: (BraceGroup children: [ (C {(echo)} {(-e)} { (DQ (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') ('b ! ') ($ VSub_Number '$1') ) } ) ] spids: [630] ) spids: [626 629] ) (FuncDef name: do_step1 body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:eth_default) op:Equal rhs:{(0)} spids:[695])] spids: [695] ) (C {(echo)} {(DQ ('MINIX 3 currently supports the following Ethernet cards. PCI cards detected'))} ) (C {(echo)} {(DQ ('by MINIX are marked with *. Please choose: '))}) (C {(echo)} {(DQ )}) (C {(cards)}) (C {(echo)} {(DQ )}) (WhileUntil keyword: <KW_While while> cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$step1'))} {(KW_Bang '!') (Lit_Other '=')} {(ok)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Sentence child: (C {(echo)} {(-n)} {(DQ ('Ethernet card? [') ($ VSub_Name '$eth_default') ('] '))} ) terminator: <Op_Semi ';'> ) (C {(read)} {(eth)}) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-z)} {($ VSub_Name '$eth')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:eth) op: Equal rhs: {($ VSub_Name '$eth_default')} spids: [778] ) ] spids: [778] ) ] ) (C {(drv_params)} {($ VSub_Name '$eth')}) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_Name '$driver'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:step1) op: Equal rhs: {(DQ (ok))} spids: [798] ) ] spids: [798] ) ] ) ] spids: [751 804] ) ) ] spids: [692] ) spids: [688 691] ) (FuncDef name: drv_params body: (BraceGroup children: [ (Case to_match: {(DQ ($ VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(0)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(psip0)} spids: [828] ) ] spids: [828] ) terminator: <Op_Semi ';'> ) ] spids: [825 826 832 16777215] ) (case_arm pat_list: [{(1)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(fxp)} spids: [839] ) ] spids: [839] ) terminator: <Op_Semi ';'> ) ] spids: [836 837 843 16777215] ) (case_arm pat_list: [{(2)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(dpeth)} spids: [849] ) ] spids: [849] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driverargs) op: Equal rhs: {(DQ ("#dpeth_arg='DPETH0=port:irq:memory'"))} spids: [853] ) ] spids: [853] ) terminator: <Op_Semi ';'> ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ )}) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} { (DQ ('Note: After installing, edit ') ($ VSub_Name '$LOCALRC') (' to the right configuration.') ) } ) ] ) ] spids: [846 847 899 16777215] ) (case_arm pat_list: [{(4)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(rtl8169)} spids: [905] ) ] spids: [905] ) terminator: <Op_Semi ';'> ) ] spids: [902 903 909 16777215] ) (case_arm pat_list: [{(3)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(rtl8139)} spids: [915] ) ] spids: [915] ) terminator: <Op_Semi ';'> ) ] spids: [912 913 919 16777215] ) (case_arm pat_list: [{(5)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(dp8390)} spids: [925] ) ] spids: [925] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driverargs) op: Equal rhs: {(DQ ("dp8390_arg='DPETH0=pci'"))} spids: [929] ) ] spids: [929] ) terminator: <Op_Semi ';'> ) ] spids: [922 923 935 16777215] ) (case_arm pat_list: [{(6)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(dp8390)} spids: [941] ) ] spids: [941] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driverargs) op: Equal rhs: {(DQ ("dp8390_arg='DPETH0=240:9'"))} spids: [945] ) ] spids: [945] ) terminator: <Op_Semi ';'> ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ )}) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} { (DQ ('Note: After installing, edit ') ($ VSub_Name '$LOCALRC') (' to the right configuration.') ) } ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} { (DQ ( ' chose option 4, the defaults for emulation by Bochs have been set.' ) ) } ) ] ) ] spids: [938 939 1011 16777215] ) (case_arm pat_list: [{(7)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(DQ (lance))} spids: [1017] ) ] spids: [1017] ) terminator: <Op_Semi ';'> ) ] spids: [1014 1015 1023 16777215] ) (case_arm pat_list: [{(8)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(DQ (e1000))} spids: [1030] ) ] spids: [1030] ) terminator: <Op_Semi ';'> ) ] spids: [1027 1028 1036 16777215] ) (case_arm pat_list: [{(9)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(DQ (atl2))} spids: [1042] ) ] spids: [1042] ) terminator: <Op_Semi ';'> ) ] spids: [1039 1040 1048 16777215] ) (case_arm pat_list: [{(10)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(DQ (dec21140A))} spids: [1054] ) ] spids: [1054] ) terminator: <Op_Semi ';'> ) ] spids: [1051 1052 1060 16777215] ) (case_arm pat_list: [{(11)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:driver) op: Equal rhs: {(DQ (psip0))} spids: [1067] ) ] spids: [1067] ) terminator: <Op_Semi ';'> ) ] spids: [1064 1065 1073 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(warn)} {(DQ ('choose a number'))})] spids: [1077 1078 16777215 1087] ) ] spids: [816 822 1087] ) ] spids: [813] ) spids: [809 812] ) (FuncDef name: do_step2 body: (BraceGroup children: [ (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('Configure network using DHCP or manually?'))}) (C {(echo)} {(DQ )}) (C {(echo)} {(DQ ('1. Automatically using DHCP'))}) (C {(echo)} {(DQ ('2. Manually'))}) (C {(echo)} {(DQ )}) (WhileUntil keyword: <KW_While while> cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$step2'))} {(KW_Bang '!') (Lit_Other '=')} {(ok)} {(Lit_Other ']')} ) ] body: (DoGroup children: [ (Sentence child: (C {(echo)} {(-n)} {(DQ ('Configure method? [1] '))}) terminator: <Op_Semi ';'> ) (C {(read)} {(config)}) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-z)} {($ VSub_Name '$config')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:config) op: Equal rhs: {(1)} spids: [1180] ) ] spids: [1180] ) ] ) (Case to_match: {(DQ ($ VSub_Name '$config'))} arms: [ (case_arm pat_list: [{(1)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:step2) op: Equal rhs: {(DQ (ok))} spids: [1198] ) ] spids: [1198] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dhcp) op: Equal rhs: {(DQ (yes))} spids: [1204] ) ] spids: [1204] ) terminator: <Op_Semi ';'> ) ] spids: [1195 1196 1211 16777215] ) (case_arm pat_list: [{(2)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:step2) op: Equal rhs: {(DQ (ok))} spids: [1217] ) ] spids: [1217] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual) op: Equal rhs: {(DQ (do))} spids: [1223] ) ] spids: [1223] ) terminator: <Op_Semi ';'> ) ] spids: [1214 1215 1229 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(warn)} {(DQ ('choose a number'))})] spids: [1232 1233 16777215 1242] ) ] spids: [1186 1192 1242] ) ] spids: [1155 1245] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$manual'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {($ VSub_Name '$hostname_prev')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname_prev) op: Equal rhs: {($ VSub_Name '$hostname_default')} spids: [1292] ) ] spids: [1292] ) ] spids: [16777215 1289] ) ] spids: [16777215 1296] ) (C {(echo)} {(-n)} {(DQ ('Hostname [') ($ VSub_Name '$hostname_prev') (']: '))}) (C {(read)} {(hostname)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$hostname')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname_prev) op: Equal rhs: {($ VSub_Name '$hostname')} spids: [1331] ) ] spids: [1331] ) ] spids: [16777215 1328] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname) op: Equal rhs: {($ VSub_Name '$hostname_prev')} spids: [1338] ) ] spids: [1338] ) ] spids: [1335 1342] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {($ VSub_Name '$ip_prev')} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ip_prev) op: Equal rhs: {($ VSub_Name '$ip_default')} spids: [1365] ) ] spids: [1365] ) ] spids: [16777215 1362] ) ] spids: [16777215 1369] ) (C {(echo)} {(-n)} {(DQ ('IP address [') ($ VSub_Name '$ip_prev') (']: '))}) (C {(read)} {(ip)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$ip')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ip_prev) op: Equal rhs: {($ VSub_Name '$ip')} spids: [1404] ) ] spids: [1404] ) ] spids: [16777215 1401] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ip) op: Equal rhs: {($ VSub_Name '$ip_prev')} spids: [1411] ) ] spids: [1411] ) ] spids: [1408 1415] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {($ VSub_Name '$netmask_prev')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:netmask_prev) op: Equal rhs: {($ VSub_Name '$netmask_default')} spids: [1438] ) ] spids: [1438] ) ] spids: [16777215 1435] ) ] spids: [16777215 1442] ) (C {(echo)} {(-n)} {(DQ ('Netmask [') ($ VSub_Name '$netmask_prev') (']: '))}) (C {(read)} {(netmask)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$netmask')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:netmask_prev) op: Equal rhs: {($ VSub_Name '$netmask')} spids: [1477] ) ] spids: [1477] ) ] spids: [16777215 1474] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:netmask) op: Equal rhs: {($ VSub_Name '$netmask_prev')} spids: [1484] ) ] spids: [1484] ) ] spids: [1481 1488] ) (C {(echo)} {(-n)} {(DQ ('Gateway: '))}) (C {(read)} {(gateway)}) (C {(echo)} {(-n)} {(DQ ('Primary DNS Server [') ($ VSub_Name '$dns1_prev') (']: '))}) (C {(read)} {(dns1)}) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dns1'))}) (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dns1_prev'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns1) op: Equal rhs: {($ VSub_Name '$dns1_prev')} spids: [1553] ) ] spids: [1553] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$dns1'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns1_prev) op: Equal rhs: {($ VSub_Name '$dns1')} spids: [1575] ) ] spids: [1575] ) (C {(echo)} {(-n)} {(DQ ('Secondary DNS Server [') ($ VSub_Name '$dns2_prev') (']: '))} ) (C {(read)} {(dns2)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$dns2')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns2_prev) op: Equal rhs: {($ VSub_Name '$dns2')} spids: [1613] ) ] spids: [1613] ) ] spids: [16777215 1610] ) ] spids: [16777215 1617] ) ] spids: [16777215 1572] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns2) op: Equal rhs: {(DQ )} spids: [1627] ) ] spids: [1627] ) ] spids: [1620 1632] ) ] spids: [16777215 1267] ) ] spids: [16777215 1635] ) ] spids: [1096] ) spids: [1092 1095] ) (WhileUntil keyword: <KW_While while> cond: [ (Sentence child: (C {(getopts)} {(DQ (':qe:p:aH:i:n:g:d:s:hc'))} {(arg)}) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$arg'))} arms: [ (case_arm pat_list: [{(q)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:v) op:Equal rhs:{(0)} spids:[1669])] spids: [1669] ) terminator: <Op_Semi ';'> ) ] spids: [1666 1667 1673 16777215] ) (case_arm pat_list: [{(e)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ethernet) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1679] ) ] spids: [1679] ) terminator: <Op_Semi ';'> ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [ {(test)} {(DQ ($ VSub_Name '$ethernet'))} {(-ge)} {(0)} {(-a)} {(DQ ($ VSub_Name '$ethernet'))} {(-le)} {(7)} ] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(usage)}) ] ) (C {(drv_params)} {($ VSub_Name '$ethernet')}) ] spids: [1676 1677 1718 16777215] ) (case_arm pat_list: [{(p)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:prefix) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1724] ) ] spids: [1724] ) terminator: <Op_Semi ';'> ) ] spids: [1721 1722 1728 16777215] ) (case_arm pat_list: [{(a)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dhcp) op: Equal rhs: {(DQ (yes))} spids: [1734] ) ] spids: [1734] ) terminator: <Op_Semi ';'> ) ] spids: [1731 1732 1740 16777215] ) (case_arm pat_list: [{(H)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:hostname) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1746] ) ] spids: [1746] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual_opts) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$manual_opts')} {(SQ <'+'>)} {(1)}) ] ) left_token: <Left_Backtick '`'> spids: [1751 1761] ) } spids: [1750] ) ] spids: [1750] ) ] spids: [1743 1744 1762 16777215] ) (case_arm pat_list: [{(i)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ip) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1768] ) ] spids: [1768] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual_opts) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$manual_opts')} {(SQ <'+'>)} {(1)}) ] ) left_token: <Left_Backtick '`'> spids: [1773 1783] ) } spids: [1772] ) ] spids: [1772] ) ] spids: [1765 1766 1784 16777215] ) (case_arm pat_list: [{(n)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:netmask) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1790] ) ] spids: [1790] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual_opts) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$manual_opts')} {(SQ <'+'>)} {(1)}) ] ) left_token: <Left_Backtick '`'> spids: [1795 1805] ) } spids: [1794] ) ] spids: [1794] ) ] spids: [1787 1788 1806 16777215] ) (case_arm pat_list: [{(g)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:gateway) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1812] ) ] spids: [1812] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual_opts) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$manual_opts')} {(SQ <'+'>)} {(1)}) ] ) left_token: <Left_Backtick '`'> spids: [1817 1827] ) } spids: [1816] ) ] spids: [1816] ) ] spids: [1809 1810 1828 16777215] ) (case_arm pat_list: [{(d)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns1) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1834] ) ] spids: [1834] ) terminator: <Op_Semi ';'> ) ] spids: [1831 1832 1838 16777215] ) (case_arm pat_list: [{(s)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dns2) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [1844] ) ] spids: [1844] ) terminator: <Op_Semi ';'> ) ] spids: [1841 1842 1848 16777215] ) (case_arm pat_list: [{(h)}] action: [(C {(usage)})] spids: [1851 1852 1856 16777215] ) (case_arm pat_list: [{(c)}] action: [ (Sentence child: (C {(echo)} {(-e)} {(DQ ('The following cards are supported by Minix:') (Lit_Other '\\') (n))} ) terminator: <Op_Semi ';'> ) (Sentence child:(C {(cards)}) terminator:<Op_Semi ';'>) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [1859 1860 1882 16777215] ) (case_arm pat_list: [{(EscapedLiteralPart token:<Lit_EscapedChar '\\?'>)}] action: [ (Sentence child: (C {(echo)} {(DQ ('Unknown option -') ($ VSub_Name '$OPTARG'))}) terminator: <Op_Semi ';'> ) (C {(usage)}) ] spids: [1885 1886 1898 16777215] ) (case_arm pat_list: [{(Lit_Other ':')}] action: [ (Sentence child: (C {(echo)} {(DQ ('Missing required argument for -') ($ VSub_Name '$OPTARG'))}) terminator: <Op_Semi ';'> ) (C {(usage)}) ] spids: [1901 1902 1914 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(usage)})] spids: [1917 1918 1922 16777215] ) ] spids: [1657 1663 1925] ) ] spids: [1654 1927] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$dhcp'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Name '$manual_opts')} {(-gt)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_Name '$manual_opts')} {(-eq)} {(4)} {(-a)} {(-n)} {(DQ ($ VSub_Name '$dns1'))} ) (C {(usage)}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:manual) op: Equal rhs: {(DQ (do))} spids: [1993] ) ] spids: [1993] ) ] spids: [16777215 1969] ) ] spids: [16777215 1999] ) ] spids: [16777215 1952] ) ] spids: [16777215 2001] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$prefix'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LOCALRC) op: Equal rhs: {($ VSub_Name '$prefix') ($ VSub_Name '$LOCALRC')} spids: [2021] ) ] spids: [2021] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:INETCONF) op: Equal rhs: {($ VSub_Name '$prefix') ($ VSub_Name '$INETCONF')} spids: [2026] ) ] spids: [2026] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RCNET) op: Equal rhs: {($ VSub_Name '$prefix') ($ VSub_Name '$RCNET')} spids: [2031] ) ] spids: [2031] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:HOSTS) op: Equal rhs: {($ VSub_Name '$prefix') ($ VSub_Name '$HOSTS')} spids: [2036] ) ] spids: [2036] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:HOSTNAME) op: Equal rhs: {($ VSub_Name '$prefix') ($ VSub_Name '$HOSTNAME')} spids: [2041] ) ] spids: [2041] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {($ VSub_Name '$INETCONF')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(-e)} { (DQ ('It seems the supplied prefix (') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$prefix') ("') is invalid.") ) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 2059] ) ] spids: [16777215 2079] ) ] spids: [16777215 2018] ) ] spids: [16777215 2081] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$USER'))} {(KW_Bang '!') (Lit_Other '=')} {(root)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Please run netconf as root.'))}) ] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 2101] ) ] spids: [16777215 2127] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$USRKBFILE'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cd) op:Equal rhs:{(DQ (yes))} spids:[2150])] spids: [2150] ) ] spids: [16777215 2147] ) ] spids: [16777215 2158] ) (AndOr ops: [Op_DAmp] children: [(C {(test)} {(-z)} {(DQ ($ VSub_Name '$ethernet'))}) (C {(do_step1)})] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_Name '$manual_opts')} {(-eq)} {(0)} {(-a)} {(DQ ($ VSub_Name '$dhcp'))} {(Lit_Other '=')} {(DQ (no))} ) (C {(do_step2)}) ] ) (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {($ VSub_Name '$INETCONF')}) (C {(mv)} {($ VSub_Name '$INETCONF')} {(DQ ($ VSub_Name '$INETCONF') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Backed up ') ($ VSub_Name '$INETCONF') (' to ') ($ VSub_Name '$INETCONF') ('~'))} ) ] ) (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {($ VSub_Name '$LOCALRC')}) (C {(mv)} {($ VSub_Name '$LOCALRC')} {(DQ ($ VSub_Name '$LOCALRC') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Backed up ') ($ VSub_Name '$LOCALRC') (' to ') ($ VSub_Name '$LOCALRC') ('~'))} ) ] ) (SimpleCommand words: [{(echo)} {(DQ ('eth0 ') ($ VSub_Name '$driver') (' 0 { default; } ;'))}] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{($ VSub_Name '$INETCONF')})] ) (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name '$driverargs'))}] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{($ VSub_Name '$LOCALRC')})] ) (If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$manual'))} {(Lit_Other ']')})] action: [ (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {($ VSub_Name '$RCNET')}) (C {(mv)} {($ VSub_Name '$RCNET')} {(DQ ($ VSub_Name '$RCNET') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Backed up ') ($ VSub_Name '$RCNET') (' to ') ($ VSub_Name '$RCNET') ('~'))} ) ] ) (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {($ VSub_Name '$HOSTS')}) (C {(mv)} {($ VSub_Name '$HOSTS')} {(DQ ($ VSub_Name '$HOSTS') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Backed up ') ($ VSub_Name '$HOSTS') (' to ') ($ VSub_Name '$HOSTS') ('~'))} ) ] ) (SimpleCommand words: [ {(echo)} { (DQ ('ifconfig -I /dev/ip0 -n ') ($ VSub_Name '$netmask') (' -h ') ($ VSub_Name '$ip')) } ] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{($ VSub_Name '$RCNET')})] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$gateway')}) (SimpleCommand words: [{(echo)} {(DQ ('add_route -g ') ($ VSub_Name '$gateway'))}] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_Name '$RCNET')} ) ] ) ] ) (SimpleCommand words: [{(echo)} {(DQ ('daemonize nonamed -L'))}] redirects: [(Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{($ VSub_Name '$RCNET')})] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$dns1')}) (SimpleCommand words: [ {(echo)} {(-e)} { (DQ ($ VSub_Name '$ip') (Lit_Other '\\') ('t%nameserver') (Lit_Other '\\') ('t#') ($ VSub_Name '$hostname') ) } ] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_Name '$HOSTS')} ) ] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$dns1')}) (SimpleCommand words: [ {(echo)} {(-e)} { (DQ ($ VSub_Name '$dns1') (Lit_Other '\\') ('t%nameserver') (Lit_Other '\\') ('t#DNS 1') ) } ] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_Name '$HOSTS')} ) ] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(KW_Bang '!')} {(-z)} {($ VSub_Name '$dns2')}) (SimpleCommand words: [ {(echo)} {(-e)} { (DQ ($ VSub_Name '$dns2') (Lit_Other '\\') ('t%nameserver') (Lit_Other '\\') ('t#DNS 2') ) } ] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_Name '$HOSTS')} ) ] ) ] ) (SimpleCommand words: [ {(echo)} {(-e)} { (DQ (Lit_Other '\\') (n) ($ VSub_Name '$ip') (Lit_Other '\\') (t) ($ VSub_Name '$hostname') ) } ] redirects: [(Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{($ VSub_Name '$HOSTS')})] ) (SimpleCommand words: [{(echo)} {($ VSub_Name '$hostname')}] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{($ VSub_Name '$HOSTNAME')})] ) ] spids: [16777215 2363] ) ] else_action: [ (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {(DQ ($ VSub_Name '$RCNET'))}) (C {(mv)} {(DQ ($ VSub_Name '$RCNET'))} {(DQ ($ VSub_Name '$RCNET') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} { (DQ ('Moved ') ($ VSub_Name '$RCNET') (' to ') ($ VSub_Name '$RCNET') ('~ to use default settings') ) } ) ] ) (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(-f)} {($ VSub_Name '$HOSTS')}) (C {(mv)} {($ VSub_Name '$HOSTS')} {(DQ ($ VSub_Name '$HOSTS') ('~'))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('Backed up ') ($ VSub_Name '$HOSTS') (' to ') ($ VSub_Name '$HOSTS') ('~'))} ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-f)} {(DQ ($ VSub_Name '$HOSTS') ('~'))}) (SimpleCommand words: [{(grep)} {(-v)} {(DQ ('%nameserver'))} {(DQ ($ VSub_Name '$HOSTS') ('~'))}] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{($ VSub_Name '$HOSTS')})] ) ] ) ] spids: [2648 2801] ) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$cd'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (yes))}) (C {(test)} {(DQ ($ VSub_Name '$v'))} {(Lit_Other '=')} {(1)}) (C {(echo)} {(DQ ('\n') ('You might have to reboot for the changes to take effect.'))}) ] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )