Probably overlooked in commit fdf42a3a50c9e659c4b9ade5b501ac4c6af589f7. Have a nice day. diff -Nupr a/extensions/xt_ECHO.c b/extensions/xt_ECHO.c --- a/extensions/xt_ECHO.c 2009-07-21 18:22:22.000000000 +0200 +++ b/extensions/xt_ECHO.c 2009-07-21 18:22:22.000000000 +0200 @@ -32,7 +32,7 @@ echo_tg4(struct sk_buff **poldskb, const unsigned int addr_type, data_len; void *payload; - printk(KERN_INFO "dst_out=%p\n", (*poldskb)->dst->output); + printk(KERN_INFO "dst_out=%p\n", skb_dst(*poldskb)->output); /* This allows us to do the copy operation in fewer lines of code. */ if (skb_linearize(*poldskb) < 0) @@ -84,18 +84,17 @@ echo_tg4(struct sk_buff **poldskb, const #endif addr_type = RTN_LOCAL; - /* ip_route_me_harder expects skb->dst to be set */ - dst_hold(oldskb->dst); - newskb->dst = oldskb->dst; + /* ip_route_me_harder expects skb->_skb_dst to be set */ + skb_dst_set(newskb, dst_clone(skb_dst(oldskb))); if (ip_route_me_harder(&newskb, addr_type) < 0) goto free_nskb; - newip->ttl = dst_metric(newskb->dst, RTAX_HOPLIMIT); + newip->ttl = dst_metric(skb_dst(newskb), RTAX_HOPLIMIT); newskb->ip_summed = CHECKSUM_NONE; /* "Never happens" (?) */ - if (newskb->len > dst_mtu(newskb->dst)) + if (newskb->len > dst_mtu(skb_dst(newskb))) goto free_nskb; nf_ct_attach(newskb, *poldskb); -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html