[IP]: Introduce ip_hdrlen()

For the common sequence "skb->nh.iph->ihl * 4", removing a good number of open
coded skb->nh.iph uses, now to go after the rest...

Just out of curiosity, here are the idioms found to get the same result:

skb->nh.iph->ihl << 2
skb->nh.iph->ihl<<2
skb->nh.iph->ihl * 4
skb->nh.iph->ihl*4
(skb->nh.iph)->ihl * sizeof(u32)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Arnaldo Carvalho de Melo 2007-03-12 20:09:15 -03:00 committed by David S. Miller
parent 0272ffc46f
commit c9bdd4b525
47 changed files with 145 additions and 141 deletions

View file

@ -25,6 +25,7 @@
#include <linux/types.h>
#include <linux/ip.h>
#include <linux/in.h>
#include <linux/skbuff.h>
#include <net/inet_sock.h>
#include <net/snmp.h>
@ -43,6 +44,11 @@ struct inet_skb_parm
#define IPSKB_REROUTED 16
};
static inline unsigned int ip_hdrlen(const struct sk_buff *skb)
{
return skb->nh.iph->ihl * 4;
}
struct ipcm_cookie
{
__be32 addr;
@ -74,7 +80,6 @@ struct msghdr;
struct net_device;
struct packet_type;
struct rtable;
struct sk_buff;
struct sockaddr;
extern void ip_mc_dropsocket(struct sock *);