Received: with ECARTIS (v1.0.0; list netdev); Thu, 30 Dec 2004 20:43:04 -0800 (PST) Received: from web51502.mail.yahoo.com (web51502.mail.yahoo.com [206.190.38.194]) by oss.sgi.com (8.13.0/8.13.0) with SMTP id iBV4gaWG024101 for ; Thu, 30 Dec 2004 20:42:56 -0800 Received: (qmail 28171 invoked by uid 60001); 31 Dec 2004 04:51:06 -0000 Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; b=hIPL7VoUJu+0kawYLCMvBTn8ehZRIpVqk4E2NJ2msDClK9FhN52z4QwcINKt2DMXhcSdvJUwuKdhFVMjURP2K0U1NPRKlst53Nq7JwwPm05854ezDN8Fvs0S9uBUZNj4Fzs23yESy8apQWHy2tsbx2yWPWmP+JPc1gJoxFGufU0= ; Message-ID: <20041231045106.28169.qmail@web51502.mail.yahoo.com> Received: from [221.15.137.76] by web51502.mail.yahoo.com via HTTP; Thu, 30 Dec 2004 20:51:06 PST Date: Thu, 30 Dec 2004 20:51:06 -0800 (PST) From: Park Lee Subject: Issue on packets sending through ip_route_output_key() to xfrm_lookup() in native IPsec To: netdev@oss.sgi.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: ClamAV 0.80/645/Mon Dec 27 14:56:20 2004 clamav-milter version 0.80j on 127.0.0.1 X-Virus-Status: Clean X-archive-position: 13270 X-ecartis-version: Ecartis v1.0.0 Sender: netdev-bounce@oss.sgi.com Errors-to: netdev-bounce@oss.sgi.com X-original-sender: parklee_sel@yahoo.com Precedence: bulk X-list: netdev Hi, In Linux native IPsec, there is a function xfrm_lookup(struct dst_entry **dst_p, struct flowi *fl, struct sock *sk, int flags) (in /usr/src/linux-2.6.5-1.358/net/xfrm/xfrm_policy.c). Whenever a packet is sending, kernel will call xfrm_lookup() to finds/creates a bundle for it. xfrm_lookup() can be called by many functions. one of these functions is ip_route_output_key(). we can see its definition as follows: int ip_route_output_key(struct rtable **rp, struct flowi *flp) { int err; if ((err = __ip_route_output_key(rp, flp)) != 0) return err; return flp->proto ? xfrm_lookup((struct dst_entry**)rp, flp, NULL, 0) : 0; } As ip_route_output_key() calls xfrm_lookup() with the argument sk set to NULL, Does this means that the packets sending through ip_route_output_key() to xfrm_lookup() have no corresponding local socket with them (because their sk is NULL)? Are these packets all created by special kernel socket (i.e. icmp_socket and tcp_socket)? Thank you very much. ===== Best Regards, Park Lee __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com