From: Patrick McHardy <kaber@trash.net>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@redhat.com>,
netdev@oss.sgi.com, netfilter-devel@lists.netfilter.org
Subject: Re: [RFC, PATCH 4/5]: netfilter+ipsec - policy lookup
Date: Fri, 19 Mar 2004 17:34:58 +0100 [thread overview]
Message-ID: <405B2132.6060403@trash.net> (raw)
In-Reply-To: <20040319115130.GE29066@gondor.apana.org.au>
Herbert Xu wrote:
> On Thu, Mar 18, 2004 at 05:32:23PM +0100, Patrick McHardy wrote:
>
>>@@ -635,7 +636,6 @@
>> #ifdef CONFIG_IP_ROUTE_FWMARK
>> fl.nl_u.ip4_u.fwmark = (*pskb)->nfmark;
>> #endif
>>- fl.proto = iph->protocol;
>
>
> Better call __ip_route_output_key rather than not setting proto because
> you'll need proto in xfrm_lookup.
>
>
>> if (ip_route_output_key(&rt, &fl) != 0)
>> return -1;
>>
>
>
>>@@ -661,6 +661,20 @@
>>
>> if ((*pskb)->dst->error)
>> return -1;
>>+
>>+#ifdef CONFIG_XFRM
>>+ if (!(IPCB(*pskb)->flags & IPSKB_XFRM_TRANSFORMED)) {
>>+ struct xfrm_policy_afinfo *afinfo;
>>+
>>+ afinfo = xfrm_policy_get_afinfo(AF_INET);
>>+ if (afinfo != NULL) {
>>+ afinfo->decode_session(*pskb, &fl);
>>+ xfrm_policy_put_afinfo(afinfo);
>>+ if (xfrm_lookup(&(*pskb)->dst, &fl, (*pskb)->sk, 0) != 0)
>>+ return -1;
>>+ }
>>+ }
>>+#endif
>
>
> If we can reinject transport packets then we can move this back into
> the if clause.
I don't understand the relationship to transport mode packets. I used an
explicit call to xfrm_lookup so packets with non-local source are also
handled. We also need to protect against loops, packets which are
already transformed should not be transformed again.
Regards
Patrick
next prev parent reply other threads:[~2004-03-19 16:34 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-08 11:03 ip_route_me_harder -> xfrm_lookup Herbert Xu
2004-03-08 14:46 ` Patrick McHardy
2004-03-08 19:58 ` David S. Miller
2004-03-18 16:31 ` Patrick McHardy
2004-03-18 16:31 ` [RFC, PATCH 1/5]: netfilter+ipsec - nf_reset Patrick McHardy
2004-03-19 6:08 ` David S. Miller
2004-03-18 16:31 ` [RFC, PATCH 2/5]: netfilter+ipsec - output hooks Patrick McHardy
2004-03-19 6:09 ` David S. Miller
2004-03-19 10:59 ` Herbert Xu
2004-03-20 21:45 ` Alexander Samad
2004-03-18 16:32 ` [RFC, PATCH 3/5]: netfilter+ipsec - input hooks Patrick McHardy
2004-03-19 6:15 ` David S. Miller
2004-03-19 11:47 ` Herbert Xu
2004-03-19 16:17 ` Patrick McHardy
2004-03-19 21:05 ` Herbert Xu
2004-03-19 11:07 ` Herbert Xu
2004-03-19 11:46 ` Herbert Xu
2004-03-19 16:29 ` Patrick McHardy
2004-03-18 16:32 ` [RFC, PATCH 4/5]: netfilter+ipsec - policy lookup Patrick McHardy
2004-03-19 6:16 ` David S. Miller
2004-03-19 15:30 ` Patrick McHardy
2004-03-19 11:51 ` Herbert Xu
2004-03-19 16:34 ` Patrick McHardy [this message]
2004-03-19 21:05 ` Herbert Xu
2004-03-20 14:01 ` Patrick McHardy
2004-03-21 6:35 ` Herbert Xu
2004-03-21 22:16 ` Herbert Xu
2004-03-21 23:34 ` Patrick McHardy
2004-03-22 2:03 ` Herbert Xu
2004-03-22 2:29 ` Patrick McHardy
2004-03-24 2:15 ` Alexander Samad
2004-03-24 2:39 ` Patrick McHardy
2004-03-24 3:33 ` Alexander Samad
2004-03-18 16:32 ` [RFC, PATCH 5/5]: netfilter+ipsec - policy checks Patrick McHardy
2004-03-19 6:19 ` David S. Miller
2004-03-19 6:31 ` Alexander Samad
2004-03-20 5:58 ` Alexander Samad
2004-03-20 15:58 ` Patrick McHardy
2004-03-19 16:24 ` Patrick McHardy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=405B2132.6060403@trash.net \
--to=kaber@trash.net \
--cc=davem@redhat.com \
--cc=herbert@gondor.apana.org.au \
--cc=netdev@oss.sgi.com \
--cc=netfilter-devel@lists.netfilter.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.