ronnie
printf(\ } //icmp_type为0是回显回答 if(recv_icmp->icmp_type!=0) { //主机未响应是不能调用回显地址,只能用测试时的主机地址starthost printf(\
Nonresponse\\ttype:%d\\tcode:%d\\n\ //exit(EXIT_FAILURE); } /*if(recv_icmp->icmp_id != GetCurrentProcessId()) { printf(\ exit(EXIT_FAILURE); }*/ else{ printf(\Response\\t\\ttype:%d\\tcode:%d\\t\\t%d ms\\n\cmp_timestamp); } } printf(\ closesocket(sock); }
void main() { /*char starthost[100],endhost[100]; //起始结尾IP地址 int startport,endport; //起始和结束端口,确定端口区间 char hostname[100]; //主机地址或域名 /*printf(\ gets(hostname); printf(\ scanf(\ ConnectScan(startport,endport,hostname);*/ /*printf(\ gets(starthost);gets(endhost); SegmentScan(starthost,endhost);*/ int choice; char host[100],starthost[100],endhost[100]; //起始结尾IP地址 int startport,endport; //起始和结
31
ronnie
束端口,确定端口区间 while (TRUE) { printf(\ printf(\ A simple scanner \\n\ printf(\ printf(\ \\n\ printf(\ \\n\ printf(\ \\n\ printf(\ \\n\ printf(\ choice=getch(); switch(choice) { case '1': printf(\ gets(starthost); gets(endhost); fflush(stdin); SegmentScan(starthost,endhost); break; case '2': printf(\ gets(host); printf(\ scanf(\ fflush(stdin); ConnectScan(startport,endport,host); break; case '3': system(\ break; case '4': WSACleanup(); exit(0); break; default: system(\ break; } } }
32