]> git.baikalelectronics.ru Git - kernel.git/commit
xfrm/compat: Add 64=>32-bit messages translator
authorDmitry Safonov <dima@arista.com>
Mon, 21 Sep 2020 14:36:52 +0000 (15:36 +0100)
committerSteffen Klassert <steffen.klassert@secunet.com>
Thu, 24 Sep 2020 06:53:03 +0000 (08:53 +0200)
commit5461fc0c8d9f23956b99f5907f69726a293ccb67
treec7cd6ef843f83276a0743f6f6e11ae1357ff5a84
parentc9e7c76d70fa50582ca96759829c93d0dd024662
xfrm/compat: Add 64=>32-bit messages translator

Provide the kernel-to-user translator under XFRM_USER_COMPAT, that
creates for 64-bit xfrm-user message a 32-bit translation and puts it
in skb's frag_list. net/compat.c layer provides MSG_CMSG_COMPAT to
decide if the message should be taken from skb or frag_list.
(used by wext-core which has also an ABI difference)

Kernel sends 64-bit xfrm messages to the userspace for:
- multicast (monitor events)
- netlink dumps

Wire up the translator to xfrm_nlmsg_multicast().

Signed-off-by: Dmitry Safonov <dima@arista.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
include/net/xfrm.h
net/xfrm/xfrm_compat.c
net/xfrm/xfrm_user.c