Commit fcd7074e authored by Linus Torvalds's avatar Linus Torvalds

Merge master.kernel.org:/home/davem/BK/net-2.5

into home.osdl.org:/home/torvalds/v2.5/linux
parents 58392dbd a550a014
...@@ -180,7 +180,7 @@ static int br_nf_pre_routing_finish(struct sk_buff *skb) ...@@ -180,7 +180,7 @@ static int br_nf_pre_routing_finish(struct sk_buff *skb)
struct rtable *rt; struct rtable *rt;
struct flowi fl = { .nl_u = struct flowi fl = { .nl_u =
{ .ip4_u = { .daddr = iph->daddr, .saddr = 0 , { .ip4_u = { .daddr = iph->daddr, .saddr = 0 ,
.tos = iph->tos} }, .proto = 0}; .tos = RT_TOS(iph->tos)} }, .proto = 0};
if (!ip_route_output_key(&rt, &fl)) { if (!ip_route_output_key(&rt, &fl)) {
/* Bridged-and-DNAT'ed traffic doesn't /* Bridged-and-DNAT'ed traffic doesn't
......
...@@ -201,7 +201,8 @@ static unsigned int ip_refrag(unsigned int hooknum, ...@@ -201,7 +201,8 @@ static unsigned int ip_refrag(unsigned int hooknum,
/* Local packets are never produced too large for their /* Local packets are never produced too large for their
interface. We degfragment them at LOCAL_OUT, however, interface. We degfragment them at LOCAL_OUT, however,
so we have to refragment them here. */ so we have to refragment them here. */
if ((*pskb)->len > dst_pmtu(&rt->u.dst)) { if ((*pskb)->len > dst_pmtu(&rt->u.dst) &&
!skb_shinfo(*pskb)->tso_size) {
/* No hook can be after us, so this should be OK. */ /* No hook can be after us, so this should be OK. */
ip_fragment(*pskb, okfn); ip_fragment(*pskb, okfn);
return NF_STOLEN; return NF_STOLEN;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment