xref: /kernel/linux/linux-5.10/net/ipv6/xfrm6_state.c (revision 8c2ecf20)
18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * xfrm6_state.c: based on xfrm4_state.c
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Authors:
68c2ecf20Sopenharmony_ci *	Mitsuru KANDA @USAGI
78c2ecf20Sopenharmony_ci *	Kazunori MIYAZAWA @USAGI
88c2ecf20Sopenharmony_ci *	Kunihiro Ishiguro <kunihiro@ipinfusion.com>
98c2ecf20Sopenharmony_ci *		IPv6 support
108c2ecf20Sopenharmony_ci *	YOSHIFUJI Hideaki @USAGI
118c2ecf20Sopenharmony_ci *		Split up af-specific portion
128c2ecf20Sopenharmony_ci *
138c2ecf20Sopenharmony_ci */
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci#include <net/xfrm.h>
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_cistatic struct xfrm_state_afinfo xfrm6_state_afinfo = {
188c2ecf20Sopenharmony_ci	.family			= AF_INET6,
198c2ecf20Sopenharmony_ci	.proto			= IPPROTO_IPV6,
208c2ecf20Sopenharmony_ci	.output			= xfrm6_output,
218c2ecf20Sopenharmony_ci	.transport_finish	= xfrm6_transport_finish,
228c2ecf20Sopenharmony_ci	.local_error		= xfrm6_local_error,
238c2ecf20Sopenharmony_ci};
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciint __init xfrm6_state_init(void)
268c2ecf20Sopenharmony_ci{
278c2ecf20Sopenharmony_ci	return xfrm_state_register_afinfo(&xfrm6_state_afinfo);
288c2ecf20Sopenharmony_ci}
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_civoid xfrm6_state_fini(void)
318c2ecf20Sopenharmony_ci{
328c2ecf20Sopenharmony_ci	xfrm_state_unregister_afinfo(&xfrm6_state_afinfo);
338c2ecf20Sopenharmony_ci}
34