git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge to Fedora kernel-2.6.18-1.2224_FC5 patched with stable patch-2.6.18.1-vs2.0...
[linux-2.6.git]
/
net
/
ipv4
/
ip_forward.c
diff --git
a/net/ipv4/ip_forward.c
b/net/ipv4/ip_forward.c
index
be1e87c
..
a22d11d
100644
(file)
--- a/
net/ipv4/ip_forward.c
+++ b/
net/ipv4/ip_forward.c
@@
-21,7
+21,6
@@
* Mike McLagan : Routing by source
*/
* Mike McLagan : Routing by source
*/
-#include <linux/config.h>
#include <linux/types.h>
#include <linux/mm.h>
#include <linux/sched.h>
#include <linux/types.h>
#include <linux/mm.h>
#include <linux/sched.h>
@@
-46,7
+45,7
@@
static inline int ip_forward_finish(struct sk_buff *skb)
{
struct ip_options * opt = &(IPCB(skb)->opt);
{
struct ip_options * opt = &(IPCB(skb)->opt);
- IP_INC_STATS_BH(
OutForwDatagrams
);
+ IP_INC_STATS_BH(
IPSTATS_MIB_OUTFORWDATAGRAMS
);
if (unlikely(opt->optlen))
ip_forward_options(skb);
if (unlikely(opt->optlen))
ip_forward_options(skb);
@@
-76,16
+75,12
@@
int ip_forward(struct sk_buff *skb)
* that reaches zero, we must reply an ICMP control message telling
* that the packet's lifetime expired.
*/
* that reaches zero, we must reply an ICMP control message telling
* that the packet's lifetime expired.
*/
-
- iph = skb->nh.iph;
-
- if (iph->ttl <= 1)
+ if (skb->nh.iph->ttl <= 1)
goto too_many_hops;
if (!xfrm4_route_forward(skb))
goto drop;
goto too_many_hops;
if (!xfrm4_route_forward(skb))
goto drop;
- iph = skb->nh.iph;
rt = (struct rtable*)skb->dst;
if (opt->is_strictroute && rt->rt_dst != rt->rt_gateway)
rt = (struct rtable*)skb->dst;
if (opt->is_strictroute && rt->rt_dst != rt->rt_gateway)
@@
-120,6
+115,7
@@
sr_failed:
too_many_hops:
/* Tell the sender its packet died... */
too_many_hops:
/* Tell the sender its packet died... */
+ IP_INC_STATS_BH(IPSTATS_MIB_INHDRERRORS);
icmp_send(skb, ICMP_TIME_EXCEEDED, ICMP_EXC_TTL, 0);
drop:
kfree_skb(skb);
icmp_send(skb, ICMP_TIME_EXCEEDED, ICMP_EXC_TTL, 0);
drop:
kfree_skb(skb);