Commit | Line | Data |
---|---|---|
2874c5fd | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
c752f073 ACM |
2 | /* |
3 | * INET An implementation of the TCP/IP protocol suite for the LINUX | |
4 | * operating system. INET is implemented using the BSD Socket | |
5 | * interface as the means of communication with the user level. | |
6 | * | |
7 | * Definitions for the TCP protocol sk_state field. | |
c752f073 ACM |
8 | */ |
9 | #ifndef _LINUX_TCP_STATES_H | |
10 | #define _LINUX_TCP_STATES_H | |
11 | ||
12 | enum { | |
13 | TCP_ESTABLISHED = 1, | |
14 | TCP_SYN_SENT, | |
15 | TCP_SYN_RECV, | |
16 | TCP_FIN_WAIT1, | |
17 | TCP_FIN_WAIT2, | |
18 | TCP_TIME_WAIT, | |
19 | TCP_CLOSE, | |
20 | TCP_CLOSE_WAIT, | |
21 | TCP_LAST_ACK, | |
22 | TCP_LISTEN, | |
23 | TCP_CLOSING, /* Now a valid state */ | |
10feb428 | 24 | TCP_NEW_SYN_RECV, |
c752f073 ACM |
25 | |
26 | TCP_MAX_STATES /* Leave at the end! */ | |
27 | }; | |
28 | ||
29 | #define TCP_STATE_MASK 0xF | |
30 | ||
a823fed0 | 31 | #define TCP_ACTION_FIN (1 << TCP_CLOSE) |
22712813 ACM |
32 | |
33 | enum { | |
a823fed0 YS |
34 | TCPF_ESTABLISHED = (1 << TCP_ESTABLISHED), |
35 | TCPF_SYN_SENT = (1 << TCP_SYN_SENT), | |
36 | TCPF_SYN_RECV = (1 << TCP_SYN_RECV), | |
37 | TCPF_FIN_WAIT1 = (1 << TCP_FIN_WAIT1), | |
38 | TCPF_FIN_WAIT2 = (1 << TCP_FIN_WAIT2), | |
39 | TCPF_TIME_WAIT = (1 << TCP_TIME_WAIT), | |
40 | TCPF_CLOSE = (1 << TCP_CLOSE), | |
41 | TCPF_CLOSE_WAIT = (1 << TCP_CLOSE_WAIT), | |
42 | TCPF_LAST_ACK = (1 << TCP_LAST_ACK), | |
43 | TCPF_LISTEN = (1 << TCP_LISTEN), | |
44 | TCPF_CLOSING = (1 << TCP_CLOSING), | |
45 | TCPF_NEW_SYN_RECV = (1 << TCP_NEW_SYN_RECV), | |
22712813 ACM |
46 | }; |
47 | ||
c752f073 | 48 | #endif /* _LINUX_TCP_STATES_H */ |