diff options
author | Dmitry Safonov <dima@arista.com> | 2020-09-21 15:36:51 +0100 |
---|---|---|
committer | Steffen Klassert <steffen.klassert@secunet.com> | 2020-09-24 08:53:03 +0200 |
commit | c9e7c76d70fa50582ca96759829c93d0dd024662 (patch) | |
tree | 449b6f268623b85daf205b2ba6e57a89981cdb2c /net/xfrm/Kconfig | |
parent | 02a20d4fef3da0278bd2d95c86f48318a9902b76 (diff) | |
download | lwn-c9e7c76d70fa50582ca96759829c93d0dd024662.tar.gz lwn-c9e7c76d70fa50582ca96759829c93d0dd024662.zip |
xfrm: Provide API to register translator module
Add a skeleton for xfrm_compat module and provide API to register it in
xfrm_state.ko. struct xfrm_translator will have function pointers to
translate messages received from 32-bit userspace or to be sent to it
from 64-bit kernel.
module_get()/module_put() are used instead of rcu_read_lock() as the
module will vmalloc() memory for translation.
The new API is registered with xfrm_state module, not with xfrm_user as
the former needs translator for user_policy set by setsockopt() and
xfrm_user already uses functions from xfrm_state.
Signed-off-by: Dmitry Safonov <dima@arista.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Diffstat (limited to 'net/xfrm/Kconfig')
-rw-r--r-- | net/xfrm/Kconfig | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/xfrm/Kconfig b/net/xfrm/Kconfig index 5b9a5ab48111..e79b48dab61b 100644 --- a/net/xfrm/Kconfig +++ b/net/xfrm/Kconfig @@ -28,6 +28,16 @@ config XFRM_USER If unsure, say Y. +config XFRM_USER_COMPAT + tristate "Compatible ABI support" + depends on XFRM_USER && COMPAT_FOR_U64_ALIGNMENT + select WANT_COMPAT_NETLINK_MESSAGES + help + Transformation(XFRM) user configuration interface like IPsec + used by compatible Linux applications. + + If unsure, say N. + config XFRM_INTERFACE tristate "Transformation virtual interface" depends on XFRM && IPV6 |