/* Generated by ./xlat/gen.sh from ./xlat/tcp_states.in; do not edit. */
#if !(defined(TCP_ESTABLISHED) || (defined(HAVE_DECL_TCP_ESTABLISHED) && HAVE_DECL_TCP_ESTABLISHED))
# define TCP_ESTABLISHED 1
#endif
#if !(defined(TCP_SYN_SENT) || (defined(HAVE_DECL_TCP_SYN_SENT) && HAVE_DECL_TCP_SYN_SENT))
# define TCP_SYN_SENT 2
#endif
#if !(defined(TCP_SYN_RECV) || (defined(HAVE_DECL_TCP_SYN_RECV) && HAVE_DECL_TCP_SYN_RECV))
# define TCP_SYN_RECV 3
#endif
#if !(defined(TCP_FIN_WAIT1) || (defined(HAVE_DECL_TCP_FIN_WAIT1) && HAVE_DECL_TCP_FIN_WAIT1))
# define TCP_FIN_WAIT1 4
#endif
#if !(defined(TCP_FIN_WAIT2) || (defined(HAVE_DECL_TCP_FIN_WAIT2) && HAVE_DECL_TCP_FIN_WAIT2))
# define TCP_FIN_WAIT2 5
#endif
#if !(defined(TCP_TIME_WAIT) || (defined(HAVE_DECL_TCP_TIME_WAIT) && HAVE_DECL_TCP_TIME_WAIT))
# define TCP_TIME_WAIT 6
#endif
#if !(defined(TCP_CLOSE) || (defined(HAVE_DECL_TCP_CLOSE) && HAVE_DECL_TCP_CLOSE))
# define TCP_CLOSE 7
#endif
#if !(defined(TCP_CLOSE_WAIT) || (defined(HAVE_DECL_TCP_CLOSE_WAIT) && HAVE_DECL_TCP_CLOSE_WAIT))
# define TCP_CLOSE_WAIT 8
#endif
#if !(defined(TCP_LAST_ACK) || (defined(HAVE_DECL_TCP_LAST_ACK) && HAVE_DECL_TCP_LAST_ACK))
# define TCP_LAST_ACK 9
#endif
#if !(defined(TCP_LISTEN) || (defined(HAVE_DECL_TCP_LISTEN) && HAVE_DECL_TCP_LISTEN))
# define TCP_LISTEN 10
#endif
#if !(defined(TCP_CLOSING) || (defined(HAVE_DECL_TCP_CLOSING) && HAVE_DECL_TCP_CLOSING))
# define TCP_CLOSING 11
#endif
#if !(defined(TCP_NEW_SYN_RECV) || (defined(HAVE_DECL_TCP_NEW_SYN_RECV) && HAVE_DECL_TCP_NEW_SYN_RECV))
# define TCP_NEW_SYN_RECV 12
#endif

#ifdef IN_MPERS

# error static const struct xlat tcp_states in mpers mode

#else

static
const struct xlat tcp_states[] = {
 XLAT(TCP_ESTABLISHED),
 XLAT(TCP_SYN_SENT),
 XLAT(TCP_SYN_RECV),
 XLAT(TCP_FIN_WAIT1),
 XLAT(TCP_FIN_WAIT2),
 XLAT(TCP_TIME_WAIT),
 XLAT(TCP_CLOSE),
 XLAT(TCP_CLOSE_WAIT),
 XLAT(TCP_LAST_ACK),
 XLAT(TCP_LISTEN),
 XLAT(TCP_CLOSING),
 XLAT(TCP_NEW_SYN_RECV),
 XLAT_END
};

#endif /* !IN_MPERS */
