|
|
1.1 root 1: /* tcp_seq.h 6.1 83/07/29 */
2:
3: /*
4: * TCP sequence numbers are 32 bit integers operated
5: * on with modular arithmetic. These macros can be
6: * used to compare such integers.
7: */
8: #define SEQ_LT(a,b) ((int)((a)-(b)) < 0)
9: #define SEQ_LEQ(a,b) ((int)((a)-(b)) <= 0)
10: #define SEQ_GT(a,b) ((int)((a)-(b)) > 0)
11: #define SEQ_GEQ(a,b) ((int)((a)-(b)) >= 0)
12:
13: /*
14: * Macros to initialize tcp sequence numbers for
15: * send and receive from initial send and receive
16: * sequence numbers.
17: */
18: #define tcp_rcvseqinit(tp) \
19: (tp)->rcv_nxt = (tp)->irs + 1
20:
21: #define tcp_sendseqinit(tp) \
22: (tp)->snd_una = (tp)->snd_nxt = (tp)->snd_max = (tp)->snd_up = \
23: (tp)->iss
24:
25: #define TCP_ISSINCR 128 /* increment for tcp_iss each second */
26:
27: #ifdef KERNEL
28: tcp_seq tcp_iss; /* tcp initial send seq # */
29: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.