⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcp.h

📁 实用的程序代码
💻 H
字号:
/* * TCP Header File */#ifndef _TCP_H#define _TCP_H#include <net/ip.h>#define TCP_HDR_LEN       0x05  /* hlen in no.of 32-bit words */#define IP_PROTO_TCP      0x06  /* protocol field in ip header */#define TCP_PORT          8080  /* tcp port for web server */struct xilnet_tcp_hdr {  unsigned short src_port;  unsigned short dst_port;  unsigned int	seq_no;  unsigned int	ack_no;  unsigned short hdr_len:4,    reserved:6,    urg:1,    ack:1,    psh:1,    rst:1,    syn:1,    fin:1;  unsigned char window_size[2];  unsigned short check_sum;  unsigned short urg_ptr;};// tcp flags#define TCP_FIN   0x01#define TCP_SYN   0x02#define TCP_RST   0x04#define TCP_PSH   0x08#define TCP_ACK   0x10#define TCP_URG   0x20// offsets for fields in tcp pkt#define TCP_FLAGS_OFF   0x0d#define TCP_DEST_OFF    0x02#define TCP_SRC_OFF     0x0#define TCP_SEQ_OFF     0x04#define TCP_ACKSEQ_OFF  0x08#define TCP_HLEN_OFF    0x0c#define TCP_CHECK_OFF   0x10#define TCP_WND_OFF     0xe#define TCP_URGPTR_OFF  0x12// tcp mss max seg size#define TCP_MSS       (LINK_HDR_LEN - 40)#define TCP_WND_HIGH  (TCP_MSS >> 8)#define TCP_WND_LOW   (TCP_MSS & 0xff)// tcp statesenum {  TCP_CLOSED = 1,  TCP_LISTEN,  TCP_SYN_RCVD,  TCP_SYN_SENT,  TCP_ESTABLISHED,  TCP_CLOSE_WAIT,  TCP_LAST_ACK,  TCP_FIN_WAIT1,  TCP_FIN_WAIT2,  TCP_CLOSING,  TCP_TIME_WAIT,};// tcp conn management#define MAX_TCP_CONNS   5  // maximum no of open tcp connsstruct xilnet_tcp_conn {   unsigned short src_port;   unsigned short dst_port;   unsigned char src_ip[IP_VERSION];   unsigned char dst_ip[IP_VERSION];   unsigned char state;   int seqno;   int ack_seqno;   int exp_acknum;   int fd; // socket descriptor into xsock_sockets table};extern struct xilnet_tcp_conn xilnet_tcp_conns[MAX_TCP_CONNS];extern void xilnet_tcp_init_conns();#endif	/* _TCP_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -