xtables-addons example target xt_ECHO was omitted from 2.6.31 skb->dst changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux