Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

12345678910111213141516171819202122232425262728293031323334353637
  1. #ifndef _TCP_H
  2. #define _TCP_H
  3. #define TCP_INITIAL_TIMEOUT (3*TICKS_PER_SEC)
  4. #define TCP_MAX_TIMEOUT (60*TICKS_PER_SEC)
  5. #define TCP_MIN_TIMEOUT (TICKS_PER_SEC)
  6. #define TCP_MAX_RETRY 10
  7. #define TCP_MAX_HEADER ((int)sizeof(struct iphdr)+64)
  8. #define TCP_MIN_WINDOW (1500-TCP_MAX_HEADER)
  9. #define TCP_MAX_WINDOW (65535-TCP_MAX_HEADER)
  10. #define FIN 1
  11. #define SYN 2
  12. #define RST 4
  13. #define PSH 8
  14. #define ACK 16
  15. #define URG 32
  16. struct tcphdr {
  17. uint16_t src;
  18. uint16_t dst;
  19. int32_t seq;
  20. int32_t ack;
  21. uint16_t ctrl;
  22. uint16_t window;
  23. uint16_t chksum;
  24. uint16_t urgent;
  25. };
  26. extern int tcp_transaction ( unsigned long destip, unsigned int destsock,
  27. void *ptr,
  28. int (*send)(int len, void *buf, void *ptr),
  29. int (*recv)(int len, const void *buf, void *ptr));
  30. #endif /* _TCP_H */