X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=net%2Fipv4%2Fip_input.c;h=c7b3b6050207b084d5189d05c19cc9e91b0bf92e;hb=9bf4aaab3e101692164d49b7ca357651eb691cb6;hp=2f71ed5cfcc9eca99689f2e77d2dd99cce458faa;hpb=db216c3d5e4c040e557a50f8f5d35d5c415e8c1c;p=linux-2.6.git diff --git a/net/ipv4/ip_input.c b/net/ipv4/ip_input.c index 2f71ed5cf..c7b3b6050 100644 --- a/net/ipv4/ip_input.c +++ b/net/ipv4/ip_input.c @@ -202,17 +202,13 @@ static inline int ip_local_deliver_finish(struct sk_buff *skb) #ifdef CONFIG_NETFILTER_DEBUG nf_debug_ip_local_deliver(skb); - skb->nf_debug = 0; #endif /*CONFIG_NETFILTER_DEBUG*/ __skb_pull(skb, ihl); -#ifdef CONFIG_NETFILTER /* Free reference early: we don't need it any more, and it may hold ip_conntrack module loaded indefinitely. */ - nf_conntrack_put(skb->nfct); - skb->nfct = NULL; -#endif /*CONFIG_NETFILTER*/ + nf_reset(skb); /* Point into the IP datagram, just past the header. */ skb->h.raw = skb->data; @@ -223,7 +219,7 @@ static inline int ip_local_deliver_finish(struct sk_buff *skb) int protocol = skb->nh.iph->protocol; int hash; struct sock *raw_sk; - struct inet_protocol *ipprot; + struct net_protocol *ipprot; resubmit: hash = protocol & (MAX_INET_PROTOS - 1); @@ -249,16 +245,16 @@ static inline int ip_local_deliver_finish(struct sk_buff *skb) protocol = -ret; goto resubmit; } - IP_INC_STATS_BH(InDelivers); + IP_INC_STATS_BH(IPSTATS_MIB_INDELIVERS); } else { if (!raw_sk) { if (xfrm4_policy_check(NULL, XFRM_POLICY_IN, skb)) { - IP_INC_STATS_BH(InUnknownProtos); + IP_INC_STATS_BH(IPSTATS_MIB_INUNKNOWNPROTOS); icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, 0); } } else - IP_INC_STATS_BH(InDelivers); + IP_INC_STATS_BH(IPSTATS_MIB_INDELIVERS); kfree_skb(skb); } } @@ -324,7 +320,7 @@ static inline int ip_rcv_finish(struct sk_buff *skb) */ if (skb_cow(skb, skb_headroom(skb))) { - IP_INC_STATS_BH(InDiscards); + IP_INC_STATS_BH(IPSTATS_MIB_INDISCARDS); goto drop; } iph = skb->nh.iph; @@ -353,7 +349,7 @@ static inline int ip_rcv_finish(struct sk_buff *skb) return dst_input(skb); inhdr_error: - IP_INC_STATS_BH(InHdrErrors); + IP_INC_STATS_BH(IPSTATS_MIB_INHDRERRORS); drop: kfree_skb(skb); return NET_RX_DROP; @@ -372,10 +368,10 @@ int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt) if (skb->pkt_type == PACKET_OTHERHOST) goto drop; - IP_INC_STATS_BH(InReceives); + IP_INC_STATS_BH(IPSTATS_MIB_INRECEIVES); if ((skb = skb_share_check(skb, GFP_ATOMIC)) == NULL) { - IP_INC_STATS_BH(InDiscards); + IP_INC_STATS_BH(IPSTATS_MIB_INDISCARDS); goto out; } @@ -426,7 +422,7 @@ int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt) ip_rcv_finish); inhdr_error: - IP_INC_STATS_BH(InHdrErrors); + IP_INC_STATS_BH(IPSTATS_MIB_INHDRERRORS); drop: kfree_skb(skb); out: