nd_uint16_t th_win; /* window */
nd_uint16_t th_sum; /* checksum */
nd_uint16_t th_urp; /* urgent pointer */
-} UNALIGNED;
+};
-#define TH_OFF(th) ((EXTRACT_U_1((th)->th_offx2) & 0xf0) >> 4)
+#define TH_OFF(th) ((GET_U_1((th)->th_offx2) & 0xf0) >> 4)
+#define tcp_get_flags(th) ((GET_U_1((th)->th_flags)) | \
+ ((GET_U_1((th)->th_offx2) & 0x0f) << 8))
/* TCP flags */
#define TH_FIN 0x01
#define TH_URG 0x20
#define TH_ECNECHO 0x40 /* ECN Echo */
#define TH_CWR 0x80 /* ECN Cwnd Reduced */
+#define TH_AE 0x100 /* AccECN (draft-ietf-tcpm-accurate-ecn;rfc7560) part of L4S (rfc9330) */
+extern const struct tok tcp_flag_values[];
#define TCPOPT_EOL 0
#ifndef HTTP_PORT
#define HTTP_PORT 80
#endif
-#ifndef NETBIOS_NS_PORT
-#define NETBIOS_NS_PORT 137 /* RFC 1001, RFC 1002 */
-#endif
#ifndef NETBIOS_SSN_PORT
#define NETBIOS_SSN_PORT 139 /* RFC 1001, RFC 1002 */
#endif
#ifndef NFS_PORT
#define NFS_PORT 2049
#endif
+#ifndef REDIS_PORT
+#define REDIS_PORT 6379
+#endif
#ifndef OPENFLOW_PORT_OLD
#define OPENFLOW_PORT_OLD 6633
#endif
#ifndef BEEP_PORT
#define BEEP_PORT 10288
#endif
-#ifndef REDIS_PORT
-#define REDIS_PORT 6379
-#endif