kvm tools: Add helpers to return TCP {header, total, payload} length

This patch adds three helpers uip_tcp_hdrlen(), uip_tcp_len(),
uip_tcp_payloadlen() to return TCP header length, TCP totoal
length, and tcp payload length.

Signed-off-by: Asias He <asias.hejun@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
This commit is contained in:
Asias He
2015-06-01 16:39:45 +01:00
committed by Will Deacon
parent b821664b2e
commit 34be5efa92
+19
View File
@@ -203,6 +203,25 @@ static inline u16 uip_udp_len(struct uip_udp *udp)
return ntohs(udp->len);
}
static inline u16 uip_tcp_hdrlen(struct uip_tcp *tcp)
{
return (tcp->off >> 4) * 4;
}
static inline u16 uip_tcp_len(struct uip_tcp *tcp)
{
struct uip_ip *ip;
ip = &tcp->ip;
return uip_ip_len(ip) - uip_ip_hdrlen(ip);
}
static inline u16 uip_tcp_payloadlen(struct uip_tcp *tcp)
{
return uip_tcp_len(tcp) - uip_tcp_hdrlen(tcp);
}
static inline u16 uip_eth_hdrlen(struct uip_eth *eth)
{
return sizeof(*eth);