@@ -109,14 +109,14 @@ masscan_echo_nic(struct Masscan *masscan, FILE *fp, unsigned i)
109109 (masscan -> nic [i ].adapter_ip >> 8 )& 0xFF ,
110110 (masscan -> nic [i ].adapter_ip >> 0 )& 0xFF
111111 );
112- fprintf (fp , "adapter-mac = %02x:%02x:%02x:%02x:%02x:%02x\n" , zzz ,
112+ fprintf (fp , "adapter-mac%s = %02x:%02x:%02x:%02x:%02x:%02x\n" , zzz ,
113113 masscan -> nic [i ].adapter_mac [0 ],
114114 masscan -> nic [i ].adapter_mac [1 ],
115115 masscan -> nic [i ].adapter_mac [2 ],
116116 masscan -> nic [i ].adapter_mac [3 ],
117117 masscan -> nic [i ].adapter_mac [4 ],
118118 masscan -> nic [i ].adapter_mac [5 ]);
119- fprintf (fp , "router-mac = %02x:%02x:%02x:%02x:%02x:%02x\n" , zzz ,
119+ fprintf (fp , "router-mac%s = %02x:%02x:%02x:%02x:%02x:%02x\n" , zzz ,
120120 masscan -> nic [i ].router_mac [0 ],
121121 masscan -> nic [i ].router_mac [1 ],
122122 masscan -> nic [i ].router_mac [2 ],
@@ -617,7 +617,8 @@ masscan_set_parameter(struct Masscan *masscan,
617617 }
618618 else if (EQUALS ("ports" , name ) || EQUALS ("port" , name )) {
619619 rangelist_parse_ports (& masscan -> ports , value );
620- masscan -> op = Operation_Scan ;
620+ if (masscan -> op == 0 )
621+ masscan -> op = Operation_Scan ;
621622 }
622623 else if (EQUALS ("exclude-ports" , name ) || EQUALS ("exclude-port" , name )) {
623624 rangelist_parse_ports (& masscan -> exclude_port , value );
@@ -650,7 +651,8 @@ masscan_set_parameter(struct Masscan *masscan,
650651 else
651652 offset ++ ; /* skip comma */
652653 }
653- masscan -> op = Operation_Scan ;
654+ if (masscan -> op == 0 )
655+ masscan -> op = Operation_Scan ;
654656 }
655657 else if (
656658 EQUALS ("exclude" , name ) ||
@@ -679,7 +681,8 @@ masscan_set_parameter(struct Masscan *masscan,
679681 else
680682 offset ++ ; /* skip comma */
681683 }
682- masscan -> op = Operation_Scan ;
684+ if (masscan -> op == 0 )
685+ masscan -> op = Operation_Scan ;
683686 } else if (EQUALS ("append-output" , name ) || EQUALS ("output-append" , name )) {
684687 if (EQUALS ("overwrite" , name ))
685688 masscan -> nmap .append = 0 ;
@@ -821,6 +824,8 @@ masscan_set_parameter(struct Masscan *masscan,
821824 masscan -> resume .seed = parseInt (value );
822825 } else if (EQUALS ("resume-index" , name )) {
823826 masscan -> resume .index = parseInt (value );
827+ } else if (EQUALS ("resume-count" , name )) {
828+ masscan -> resume .count = parseInt (value );
824829 } else if (EQUALS ("retries" , name ) || EQUALS ("retry" , name )) {
825830 unsigned x = strtoul (value , 0 , 0 );
826831 if (x >= 1000 ) {
@@ -1230,8 +1235,8 @@ masscan_command_line(struct Masscan *masscan, int argc, char *argv[])
12301235 fprintf (stderr , "nmap(%s): Zombie scans will never be supported\n" , argv [i ]);
12311236 exit (1 );
12321237 case 'L' : /* List Scan - simply list targets to scan */
1233- fprintf ( stderr , "nmap(%s): list scan unsupported\n" , argv [ i ]) ;
1234- exit ( 1 ) ;
1238+ masscan -> op = Operation_ListScan ;
1239+ break ;
12351240 case 'M' :
12361241 fprintf (stderr , "nmap(%s): Maimon scan not yet supported\n" , argv [i ]);
12371242 exit (1 );
0 commit comments