1*b2441318SGreg Kroah-Hartman // SPDX-License-Identifier: GPL-2.0 21da177e4SLinus Torvalds /* 31da177e4SLinus Torvalds * xfrm6_state.c: based on xfrm4_state.c 41da177e4SLinus Torvalds * 51da177e4SLinus Torvalds * Authors: 61da177e4SLinus Torvalds * Mitsuru KANDA @USAGI 71da177e4SLinus Torvalds * Kazunori MIYAZAWA @USAGI 81da177e4SLinus Torvalds * Kunihiro Ishiguro <kunihiro@ipinfusion.com> 91da177e4SLinus Torvalds * IPv6 support 101da177e4SLinus Torvalds * YOSHIFUJI Hideaki @USAGI 111da177e4SLinus Torvalds * Split up af-specific portion 121da177e4SLinus Torvalds * 131da177e4SLinus Torvalds */ 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds #include <net/xfrm.h> 1636cf9acfSHerbert Xu 171da177e4SLinus Torvalds static struct xfrm_state_afinfo xfrm6_state_afinfo = { 181da177e4SLinus Torvalds .family = AF_INET6, 1936cf9acfSHerbert Xu .proto = IPPROTO_IPV6, 20cdca7265SMiika Komu .output = xfrm6_output, 21716062fdSHerbert Xu .transport_finish = xfrm6_transport_finish, 22628e341fSHannes Frederic Sowa .local_error = xfrm6_local_error, 231da177e4SLinus Torvalds }; 241da177e4SLinus Torvalds xfrm6_state_init(void)250013cabaSDaniel Lezcanoint __init xfrm6_state_init(void) 261da177e4SLinus Torvalds { 270013cabaSDaniel Lezcano return xfrm_state_register_afinfo(&xfrm6_state_afinfo); 281da177e4SLinus Torvalds } 291da177e4SLinus Torvalds xfrm6_state_fini(void)301da177e4SLinus Torvaldsvoid xfrm6_state_fini(void) 311da177e4SLinus Torvalds { 321da177e4SLinus Torvalds xfrm_state_unregister_afinfo(&xfrm6_state_afinfo); 331da177e4SLinus Torvalds } 34