Capture.h
上传用户:xakehao
上传日期:2013-08-28
资源大小:100k
文件大小:1k
源码类别:

CA认证

开发平台:

Visual C++

  1. #if !defined(CAPTURE_H)
  2. #define CAPTURE_H
  3. #include <pcap.h>
  4. /* 4 bytes IP address */
  5. typedef struct ip_address{
  6. u_char byte1;
  7. u_char byte2;
  8. u_char byte3;
  9. u_char byte4;
  10. }ip_address;
  11. /* IPv4 header */
  12. typedef struct ip_header{
  13. u_char ver_ihl; // Version (4 bits) + Internet header length (4 bits)
  14. u_char tos; // Type of service 
  15. u_short tlen; // Total length 
  16. u_short identification; // Identification
  17. u_short flags_fo; // Flags (3 bits) + Fragment offset (13 bits)
  18. u_char ttl; // Time to live
  19. u_char proto; // Protocol
  20. u_short crc; // Header checksum
  21. ip_address saddr; // Source address
  22. ip_address daddr; // Destination address
  23. u_int op_pad; // Option + Padding
  24. }ip_header;
  25. /* UDP header*/
  26. typedef struct udp_header{
  27. u_short sport; // Source port
  28. u_short dport; // Destination port
  29. u_short len; // Datagram length
  30. u_short crc; // Checksum
  31. }udp_header;
  32. /* prototype of the packet handler */
  33. //void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data);
  34. #endif