Re: [RFC PATCH] 2.6.22.6 netfilter: sk_setup_caps in ip_make_route_harder

2007-09-19 Thread Patrick McHardy
lepton wrote:
> Hi,
>   For local src packets, it is better to update sk_route_caps in
>   ip_route_me_harder.


This seems like a good idea to me. But why only for local src
(address) packets? This function can also be used for locally
generated packet that have been (f.i.) NATed to a foreign
address ...


> Signed-off-by: Lepton Wu <[EMAIL PROTECTED]>
> 
> diff -pru -X linux-2.6.22.6/Documentation/dontdiff 
> linux-2.6.22.6/net/ipv4/netfilter.c linux-2.6.22.6-lepton/net/ipv4/netfilter.c
> --- linux-2.6.22.6/net/ipv4/netfilter.c   2007-09-19 13:19:13.0 
> +0800
> +++ linux-2.6.22.6-lepton/net/ipv4/netfilter.c2007-09-19 
> 17:10:36.0 +0800
> @@ -37,6 +37,10 @@ int ip_route_me_harder(struct sk_buff **
>   /* Drop old route. */
>   dst_release((*pskb)->dst);
>   (*pskb)->dst = >u.dst;
> + if((*pskb)->sk){
> + dst_hold((*pskb)->dst);
> + sk_setup_caps((*pskb)->sk, (*pskb)->dst);
> + }
>   } else {
>   /* non-local src, find valid iif to satisfy
>* rp-filter when calling ip_route_input. */
> 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[RFC PATCH] 2.6.22.6 netfilter: sk_setup_caps in ip_make_route_harder

2007-09-19 Thread lepton
Hi,
  For local src packets, it is better to update sk_route_caps in
  ip_route_me_harder.

Signed-off-by: Lepton Wu <[EMAIL PROTECTED]>

diff -pru -X linux-2.6.22.6/Documentation/dontdiff 
linux-2.6.22.6/net/ipv4/netfilter.c linux-2.6.22.6-lepton/net/ipv4/netfilter.c
--- linux-2.6.22.6/net/ipv4/netfilter.c 2007-09-19 13:19:13.0 +0800
+++ linux-2.6.22.6-lepton/net/ipv4/netfilter.c  2007-09-19 17:10:36.0 
+0800
@@ -37,6 +37,10 @@ int ip_route_me_harder(struct sk_buff **
/* Drop old route. */
dst_release((*pskb)->dst);
(*pskb)->dst = >u.dst;
+   if((*pskb)->sk){
+   dst_hold((*pskb)->dst);
+   sk_setup_caps((*pskb)->sk, (*pskb)->dst);
+   }
} else {
/* non-local src, find valid iif to satisfy
 * rp-filter when calling ip_route_input. */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[RFC PATCH] 2.6.22.6 netfilter: sk_setup_caps in ip_make_route_harder

2007-09-19 Thread lepton
Hi,
  For local src packets, it is better to update sk_route_caps in
  ip_route_me_harder.

Signed-off-by: Lepton Wu [EMAIL PROTECTED]

diff -pru -X linux-2.6.22.6/Documentation/dontdiff 
linux-2.6.22.6/net/ipv4/netfilter.c linux-2.6.22.6-lepton/net/ipv4/netfilter.c
--- linux-2.6.22.6/net/ipv4/netfilter.c 2007-09-19 13:19:13.0 +0800
+++ linux-2.6.22.6-lepton/net/ipv4/netfilter.c  2007-09-19 17:10:36.0 
+0800
@@ -37,6 +37,10 @@ int ip_route_me_harder(struct sk_buff **
/* Drop old route. */
dst_release((*pskb)-dst);
(*pskb)-dst = rt-u.dst;
+   if((*pskb)-sk){
+   dst_hold((*pskb)-dst);
+   sk_setup_caps((*pskb)-sk, (*pskb)-dst);
+   }
} else {
/* non-local src, find valid iif to satisfy
 * rp-filter when calling ip_route_input. */
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [RFC PATCH] 2.6.22.6 netfilter: sk_setup_caps in ip_make_route_harder

2007-09-19 Thread Patrick McHardy
lepton wrote:
 Hi,
   For local src packets, it is better to update sk_route_caps in
   ip_route_me_harder.


This seems like a good idea to me. But why only for local src
(address) packets? This function can also be used for locally
generated packet that have been (f.i.) NATed to a foreign
address ...


 Signed-off-by: Lepton Wu [EMAIL PROTECTED]
 
 diff -pru -X linux-2.6.22.6/Documentation/dontdiff 
 linux-2.6.22.6/net/ipv4/netfilter.c linux-2.6.22.6-lepton/net/ipv4/netfilter.c
 --- linux-2.6.22.6/net/ipv4/netfilter.c   2007-09-19 13:19:13.0 
 +0800
 +++ linux-2.6.22.6-lepton/net/ipv4/netfilter.c2007-09-19 
 17:10:36.0 +0800
 @@ -37,6 +37,10 @@ int ip_route_me_harder(struct sk_buff **
   /* Drop old route. */
   dst_release((*pskb)-dst);
   (*pskb)-dst = rt-u.dst;
 + if((*pskb)-sk){
 + dst_hold((*pskb)-dst);
 + sk_setup_caps((*pskb)-sk, (*pskb)-dst);
 + }
   } else {
   /* non-local src, find valid iif to satisfy
* rp-filter when calling ip_route_input. */
 

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/