//Author : Prasshhant Pugalia //prashant
pugalia@gmail
com //Simple Sniffer in winsock //Sniffs only incoming packets// #include \"stdio
h\" #include \"winsock2
h\" #define SIO_RCVALL _WSAIOW(IOC_VENDOR,1) //this removes the need of mstcpip
h void StartSniffing (SOCKET Sock); //This will sniff here and there void ProcessPacket(unsigned char* Buffer, int Size); //This will decide how to digest void PrintIpHeader (unsigned char*, int); void PrintIcmpPacket (unsigned char* , int); void PrintUdpPacket (unsigned char* , int); void PrintTcpPacket (unsigned char* , int); void ConvertToHex (unsigned char* , unsigned int); void PrintData (unsigned char* , int); typedef struct ip_hdr { unsigned char ip_header_len:4; // 4-bit header length (in 32-bit words) normally=5 (Means 20 Bytes may be 24 also)