mirror of
https://github.com/xcat2/xNBA.git
synced 2024-12-15 07:41:45 +00:00
05b284399e
tcp.h.
38 lines
972 B
C
38 lines
972 B
C
#ifndef _TCP_H
|
|
#define _TCP_H
|
|
|
|
#define TCP_INITIAL_TIMEOUT (3*TICKS_PER_SEC)
|
|
#define TCP_MAX_TIMEOUT (60*TICKS_PER_SEC)
|
|
#define TCP_MIN_TIMEOUT (TICKS_PER_SEC)
|
|
#define TCP_MAX_RETRY 10
|
|
#define TCP_MAX_HEADER ((int)sizeof(struct iphdr)+64)
|
|
#define TCP_MIN_WINDOW (1500-TCP_MAX_HEADER)
|
|
#define TCP_MAX_WINDOW (65535-TCP_MAX_HEADER)
|
|
|
|
#define FIN 1
|
|
#define SYN 2
|
|
#define RST 4
|
|
#define PSH 8
|
|
#define ACK 16
|
|
#define URG 32
|
|
|
|
|
|
struct tcphdr {
|
|
uint16_t src;
|
|
uint16_t dst;
|
|
int32_t seq;
|
|
int32_t ack;
|
|
uint16_t ctrl;
|
|
uint16_t window;
|
|
uint16_t chksum;
|
|
uint16_t urgent;
|
|
};
|
|
|
|
extern int tcp_transaction ( unsigned long destip, unsigned int destsock,
|
|
void *ptr,
|
|
int (*send)(int len, void *buf, void *ptr),
|
|
int (*recv)(int len, const void *buf, void *ptr));
|
|
|
|
|
|
#endif /* _TCP_H */
|