Update of /cvsroot/javanetsim/IceScan
In directory sc8-pr-cvs6.sourceforge.net:/tmp/cvs-serv20729
Modified Files:
udpscan.h
Log Message:
Index: udpscan.h
===================================================================
RCS file: /cvsroot/javanetsim/IceScan/udpscan.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** udpscan.h 16 Dec 2006 12:18:05 -0000 1.6
--- udpscan.h 16 Dec 2006 12:37:31 -0000 1.7
***************
*** 51,61 ****
void udpscan(icestring hostname, icestring destname, std::map <int, scanning_port> scanning_ports, iceparams *par, iceoutput *out, csubtarget* subtarget){
- //char recvpackettest[56] = {0x45,0x00,0x00,0x38,0x36,0xd8,0x00,0x00,0xf2,0x01,0x0b,0x5e,0x52,0x8c,0x67,0x12,
- // 0x57,0xed,0x75,0x03,0x03,0x03,0x83,0xa5,0x00,0x00,0x00,0x00,0x45,0x00,0x00,0x1c,
- // 0x43,0x23,0x00,0x00,0x73,0x11,0x7e,0x1f,0x57,0xed,0x75,0x03,0x52,0x8c,0x67,0x12,
- // 0x1a,0xf6,0x01,0xBC,0x00,0x08,0x5c,0xc9};
- //char recvpackettest2[8] = {0x01,0xBD,0x1a,0xf6,0x00,0x08,0x5c,0xc9};
- //bool alreadyscan = false;
- //bool alreadyscan2 = false;
#ifndef __CYGWIN__
--- 51,54 ----
***************
*** 87,110 ****
sicmp.setsockopt(SOL_SOCKET, SO_RCVBUF, &size, sizeof(size));
! //sicmp.setsockopt(SOL_SOCKET, SO_RCVBUF, &recvsize, sizeof(recvsize));
! // sicmp.setsockopt(SOL_SOCKET, SO_RCVBUF, &recvsize, sizeof(recvsize));
! for(repeats = 0; repeats < UDP_SCAN_REPEATS; repeats++){
! // DBGOUTPUT("STARTING...");
for(std::map <int, scanning_port>::iterator i = scanning_ports.begin(); i!= scanning_ports.end(); ++i){
if(! (*i).second.done ){
- //DBGOUTPUT((*i).first);
sudp.sendto(destname.c_str(), (*i).first, zmsg, UDP_SCAN_ZSIZE, 0);
! iceusleep(100000);
! //recvbytes = sicmp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL);
}
! // alreadyscan = false;
! // alreadyscan2 = false;
do{
recvbytes = sudp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL, NULL);
- // if((*i).first == 445 && !alreadyscan2){
- // recvbytes = 8;
- // memcpy(recvmsg, recvpackettest2, 8);
- // alreadyscan2 = true;
- // }
p = recvbytes > 0;
if(p){
--- 80,92 ----
sicmp.setsockopt(SOL_SOCKET, SO_RCVBUF, &size, sizeof(size));
! for(repeats = 1; repeats <= UDP_SCAN_REPEATS; repeats++){
for(std::map <int, scanning_port>::iterator i = scanning_ports.begin(); i!= scanning_ports.end(); ++i){
if(! (*i).second.done ){
sudp.sendto(destname.c_str(), (*i).first, zmsg, UDP_SCAN_ZSIZE, 0);
! iceusleep(50000*repeats);
}
!
do{
recvbytes = sudp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL, NULL);
p = recvbytes > 0;
if(p){
***************
*** 117,133 ****
}
else{
! int att = 0;
! while(att++ < 5 && recvbytes <= 0){
recvbytes = sicmp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL);
- iceusleep(100000);
- }
-
- // if((*i).first == 444 && !alreadyscan){
- // recvbytes = 56;
- // memcpy(recvmsg, recvpackettest, 56);
- // alreadyscan = true;
- // }
-
- // recvbytes = recvfrom(sicmp.get_socketid(), recvmsg, RECVSIZE, 0, NULL, NULL);
if(recvbytes > 0){
port = parse_icmp_udp_packet(recvmsg, recvbytes, par, out);
--- 99,108 ----
}
else{
! // int att = 0;
! // while(att++ < 5 && recvbytes <= 0){
! // recvbytes = sicmp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL);
! // iceusleep(100000);
! // }
recvbytes = sicmp.recvfrom(recvmsg, UDP_SCAN_RECVSIZE, 0, NULL);
if(recvbytes > 0){
port = parse_icmp_udp_packet(recvmsg, recvbytes, par, out);
***************
*** 138,148 ****
p = true;
}
! else if(recvbytes != -1){
! //DBGOUTPUT("NO DATA...");
! //DBGOUTPUT(recvbytes);
! }
! if(!p) rep2++;
}
! iceusleep(100000);
}while(recvbytes > 0);
}
--- 113,119 ----
p = true;
}
! // if(!p) rep2++;
}
! iceusleep(50000*repeats);
}while(recvbytes > 0);
}
|