From: Asias He Date: Wed, 29 Jun 2011 08:47:22 +0000 (+0800) Subject: kvm tools: Add helpers to test whether SYN or FIN bit is set. X-Git-Tag: next-20110824~3^2~170 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=2772839ecb128f05b5a0c55f1d5a96c77bf0dfdb;p=karo-tx-linux.git kvm tools: Add helpers to test whether SYN or FIN bit is set. 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 Signed-off-by: Pekka Enberg --- diff --git a/tools/kvm/include/kvm/uip.h b/tools/kvm/include/kvm/uip.h index a3fd1b071a87..558568062dcb 100644 --- a/tools/kvm/include/kvm/uip.h +++ b/tools/kvm/include/kvm/uip.h @@ -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);