@@ -18,6 +18,13 @@
#define UIP_IP_TTL 0X40
#define UIP_IP_P_UDP 0X11
+#define UIP_TCP_FLAG_FIN 1
+#define UIP_TCP_FLAG_SYN 2
+#define UIP_TCP_FLAG_RST 4
+#define UIP_TCP_FLAG_PSH 8
+#define UIP_TCP_FLAG_ACK 16
+#define UIP_TCP_FLAG_URG 32
+
/*
* IP package maxium len == 64 KBytes
* IP header == 20 Bytes
@@ -227,6 +234,16 @@ static inline u8 *uip_tcp_payload(struct uip_tcp *tcp)
return (u8 *)&tcp->sport + uip_tcp_hdrlen(tcp);
}
+static inline bool uip_tcp_is_syn(struct uip_tcp *tcp)
+{
+ return (tcp->flg & UIP_TCP_FLAG_SYN) != 0;
+}
+
+static inline bool uip_tcp_is_fin(struct uip_tcp *tcp)
+{
+ return (tcp->flg & UIP_TCP_FLAG_FIN) != 0;
+}
+
static inline u16 uip_eth_hdrlen(struct uip_eth *eth)
{
return sizeof(*eth);
This patch adds too helpers uip_tcp_is_syn(), uip_tcp_is_fin() to check if SYN and FIN bit is set. Signed-off-by: Asias He <asias.hejun@gmail.com> --- tools/kvm/include/kvm/uip.h | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-)