From: YOSHIFUJI Hideaki / $B5HF#1QL@(B <yoshfuji@linux-ipv6.org>
Date: Thu, 06 Mar 2003 00:48:20 +0900 (JST)
> The next large task will be to abstract out more common
> pieces of code. There is still quite a bit of code duplication
> between v4 and v6 xfrm methods,
Yes, we will do that. That patch is first step for reducing
duplicate codes between IPv4 and IPv6.
Great. I believe it should be possible, in the end, to make the XFRM
engine %100 address-family (v4, v6 etc.) and protocol (ah, esp)
independant. If that goal is achieved, we may move generic parts from
net/ipv4/xfrm_*.c to net/xfrm_*.c
Note that this coincides with the idea to eventually have
an address-family independant flow cache.
Most of the address-family specific areas are:
1) DST lookup (xfrm_dst_lookup_t)
2) selector key comparisons and state lookup
(xfrm$(AF)_selector_match, xfrm$(AF)_state_find)
3) receive processing (xfrm${AF}_rcv)
#1 is made for ipv6 by Miyazawa-san's patch. This could logically
be extended to handle issues #2 and #3 above.
All protocol specific (ESP, AH) and address-family specific references
should go away from places like include/net/xfrm.h
I think you understand all of this, and therefore I cannot wait for the
next ipsec cleanup patch from you :)
Finally, note that eventually we will need some reference counting scheme
for to allow xfrm address-family modules to be unloaded safely.
Currently, ipv4 cannot be a module and ipv6 as a module is not able
to unload :-) So the module unload problem does not exist right
at this moment. So ignore this issue for now.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Mar 07 2003 - 22:00:30 EST