sniff
От: matros Украина http://www.palmorder.com
Дата: 03.10.03 11:14
Оценка:
что я делаю не так???

ловит пакеты приходящие
только ко мне
только репли на пинг

int main(int argc, char* argv[])
{
    char *Buffer = new char; 
    SOCKET      Sock;
    HOSTENT*    hostinfo;       
    SOCKADDR_IN Addr;
    SOCKADDR_IN rAddr;
    long        flag = 1;  
  WSADATA WSAData;
  if(WSAStartup(0x0101,&WSAData)) 
  {
   cout << "cannot init WSADATA\n";
   _getch();
   exit(0);
  }
  if ( (Sock = WSASocket (AF_INET,    SOCK_RAW,    IPPROTO_IP,    NULL, 0,0)) == SOCKET_ERROR)
  {
      cout << "cocket errror\n";
  }
  ZeroMemory( &Addr, sizeof(Addr) );
  Addr.sin_family = AF_INET;
  Addr.sin_addr.s_addr = INADDR_ANY;
  bind(Sock, (SOCKADDR *)&Addr, sizeof(SOCKADDR));
  ioctlsocket(Sock, SIO_RCVALL, (unsigned long*)&flag);
  IPHeader* hdr = new IPHeader;
  while( !_kbhit() )
  {
    int count;
    count = recv( Sock, Buffer, sizeof(Buffer), 0 );

    if( count >= sizeof(IPHeader) )
    {
       hdr = (IPHeader *)Buffer;
.....
    }
    
  }
  closesocket( Sock );
  WSACleanup();
return 0;
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.