TCPF_LISTEN
return (1 << sk->sk_state) & (TCPF_LISTEN | TCPF_NEW_SYN_RECV);
(TCPF_LISTEN | TCPF_NEW_SYN_RECV | TCPF_TIME_WAIT);
(TCPF_CLOSE | TCPF_LISTEN))
return (1 << sk->sk_state) & (TCPF_ESTABLISHED | TCPF_LISTEN);
if (!((1 << old_state) & (TCPF_CLOSE | TCPF_LISTEN)))
if (((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE)) &&
(TCPF_LISTEN | TCPF_CLOSE)) &&
!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))) {
if ((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE))
TCPF_LISTEN))) {
else if (!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)))
((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)))
if ((1 << state) & (TCPF_LISTEN | TCPF_NEW_SYN_RECV)) {
if (!((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE)))
if (!((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE))) {
if (!((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE)))
if ((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_NEW_SYN_RECV)) {
if (!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)))
if (!(idiag_states & TCPF_LISTEN) || r->id.idiag_dport)
if (!(idiag_states & ~TCPF_LISTEN))
if ((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE))
if ((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))
if (((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)) ||
if ((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))
!((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE)) &&
!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))) {
if ((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE))
if ((r->idiag_states & TCPF_LISTEN) && r->id.idiag_dport == 0)
if (!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)))
if (((1 << ssk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)) ||
if ((1 << ssk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE))
if (unlikely((1 << state) & (TCPF_CLOSE | TCPF_LISTEN)))
if ((1 << sk->sk_state) & (TCPF_LISTEN | TCPF_CLOSE)) {
(TCPF_SYN_SENT | TCPF_SYN_RECV | TCPF_TIME_WAIT | TCPF_CLOSE | TCPF_LISTEN));
TCPF_SYN_RECV | TCPF_LISTEN));
if (state & TCPF_LISTEN) {
if (unlikely((1 << sk->sk_state & (TCPF_CLOSE|TCPF_LISTEN)) ||
if ((1 << sk->sk_state) & (TCPF_LISTEN|TCPF_CLOSE)) {
if (unlikely(1 << sk->sk_state & (TCPF_LISTEN | TCPF_CLOSE)))
& ~(TCPF_CLOSE|TCPF_LISTEN|TCPF_CLOSE_WAIT))
if (!(r->idiag_states & TCPF_LISTEN) && !list_empty(&ep->asocs))
if (!(idiag_states & TCPF_LISTEN))
if (!(idiag_states & ~(TCPF_LISTEN | TCPF_CLOSE)))
return (1 << sk->__sk_common.skc_state) & (TCPF_LISTEN | TCPF_NEW_SYN_RECV);