162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * xfrm6_state.c: based on xfrm4_state.c
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Authors:
662306a36Sopenharmony_ci *	Mitsuru KANDA @USAGI
762306a36Sopenharmony_ci *	Kazunori MIYAZAWA @USAGI
862306a36Sopenharmony_ci *	Kunihiro Ishiguro <kunihiro@ipinfusion.com>
962306a36Sopenharmony_ci *		IPv6 support
1062306a36Sopenharmony_ci *	YOSHIFUJI Hideaki @USAGI
1162306a36Sopenharmony_ci *		Split up af-specific portion
1262306a36Sopenharmony_ci *
1362306a36Sopenharmony_ci */
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci#include <net/xfrm.h>
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_cistatic struct xfrm_state_afinfo xfrm6_state_afinfo = {
1862306a36Sopenharmony_ci	.family			= AF_INET6,
1962306a36Sopenharmony_ci	.proto			= IPPROTO_IPV6,
2062306a36Sopenharmony_ci	.output			= xfrm6_output,
2162306a36Sopenharmony_ci	.transport_finish	= xfrm6_transport_finish,
2262306a36Sopenharmony_ci	.local_error		= xfrm6_local_error,
2362306a36Sopenharmony_ci};
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciint __init xfrm6_state_init(void)
2662306a36Sopenharmony_ci{
2762306a36Sopenharmony_ci	return xfrm_state_register_afinfo(&xfrm6_state_afinfo);
2862306a36Sopenharmony_ci}
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_civoid xfrm6_state_fini(void)
3162306a36Sopenharmony_ci{
3262306a36Sopenharmony_ci	xfrm_state_unregister_afinfo(&xfrm6_state_afinfo);
3362306a36Sopenharmony_ci}
34