vti4: ipip tunnel deregistration fixes.
[ Upstream commit 5483844c3fc18474de29f5d6733003526e0a9f78 ] If tunnel registration failed during module initialization, the module would fail to deregister the IPPROTO_COMP protocol and would attempt to deregister the tunnel. The tunnel was not deregistered during module-exit. Fixes: dd9ee3444014e ("vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel") Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
8fd94b65d2
commit
cd0848733f
1 changed files with 3 additions and 2 deletions
|
@ -648,9 +648,9 @@ static int __init vti_init(void)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
rtnl_link_failed:
|
rtnl_link_failed:
|
||||||
xfrm4_protocol_deregister(&vti_ipcomp4_protocol, IPPROTO_COMP);
|
|
||||||
xfrm_tunnel_failed:
|
|
||||||
xfrm4_tunnel_deregister(&ipip_handler, AF_INET);
|
xfrm4_tunnel_deregister(&ipip_handler, AF_INET);
|
||||||
|
xfrm_tunnel_failed:
|
||||||
|
xfrm4_protocol_deregister(&vti_ipcomp4_protocol, IPPROTO_COMP);
|
||||||
xfrm_proto_comp_failed:
|
xfrm_proto_comp_failed:
|
||||||
xfrm4_protocol_deregister(&vti_ah4_protocol, IPPROTO_AH);
|
xfrm4_protocol_deregister(&vti_ah4_protocol, IPPROTO_AH);
|
||||||
xfrm_proto_ah_failed:
|
xfrm_proto_ah_failed:
|
||||||
|
@ -666,6 +666,7 @@ pernet_dev_failed:
|
||||||
static void __exit vti_fini(void)
|
static void __exit vti_fini(void)
|
||||||
{
|
{
|
||||||
rtnl_link_unregister(&vti_link_ops);
|
rtnl_link_unregister(&vti_link_ops);
|
||||||
|
xfrm4_tunnel_deregister(&ipip_handler, AF_INET);
|
||||||
xfrm4_protocol_deregister(&vti_ipcomp4_protocol, IPPROTO_COMP);
|
xfrm4_protocol_deregister(&vti_ipcomp4_protocol, IPPROTO_COMP);
|
||||||
xfrm4_protocol_deregister(&vti_ah4_protocol, IPPROTO_AH);
|
xfrm4_protocol_deregister(&vti_ah4_protocol, IPPROTO_AH);
|
||||||
xfrm4_protocol_deregister(&vti_esp4_protocol, IPPROTO_ESP);
|
xfrm4_protocol_deregister(&vti_esp4_protocol, IPPROTO_ESP);
|
||||||
|
|
Loading…
Add table
Reference in a new issue