Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5ce1bbb9 authored by Ilpo Järvinen's avatar Ilpo Järvinen Committed by David S. Miller
Browse files

xfrm6_tunnel: join error paths using goto

parent 857a6e0a
Loading
Loading
Loading
Loading
+16 −17
Original line number Diff line number Diff line
@@ -345,25 +345,24 @@ static struct xfrm6_tunnel xfrm46_tunnel_handler = {
static int __init xfrm6_tunnel_init(void)
{
	if (xfrm_register_type(&xfrm6_tunnel_type, AF_INET6) < 0)
		return -EAGAIN;
		goto err;
	if (xfrm6_tunnel_register(&xfrm6_tunnel_handler, AF_INET6))
		goto unreg;
	if (xfrm6_tunnel_register(&xfrm46_tunnel_handler, AF_INET))
		goto dereg6;
	if (xfrm6_tunnel_spi_init() < 0)
		goto dereg46;
	return 0;

	if (xfrm6_tunnel_register(&xfrm6_tunnel_handler, AF_INET6)) {
		xfrm_unregister_type(&xfrm6_tunnel_type, AF_INET6);
		return -EAGAIN;
	}
	if (xfrm6_tunnel_register(&xfrm46_tunnel_handler, AF_INET)) {
		xfrm6_tunnel_deregister(&xfrm6_tunnel_handler, AF_INET6);
		xfrm_unregister_type(&xfrm6_tunnel_type, AF_INET6);
		return -EAGAIN;
	}
	if (xfrm6_tunnel_spi_init() < 0) {
dereg46:
	xfrm6_tunnel_deregister(&xfrm46_tunnel_handler, AF_INET);
dereg6:
	xfrm6_tunnel_deregister(&xfrm6_tunnel_handler, AF_INET6);
unreg:
	xfrm_unregister_type(&xfrm6_tunnel_type, AF_INET6);
err:
	return -EAGAIN;
}
	return 0;
}

static void __exit xfrm6_tunnel_fini(void)
{