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

Commit b262a695 authored by Florian Westphal's avatar Florian Westphal Committed by Steffen Klassert
Browse files

xfrm: place af number into xfrm_mode struct



This will be useful to know if we're supposed to decode ipv4 or ipv6.

While at it, make the unregister function return void, all module_exit
functions did just BUG(); there is never a point in doing error checks
if there is no way to handle such error.

Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
Reviewed-by: default avatarSabrina Dubroca <sd@queasysnail.net>
Signed-off-by: default avatarSteffen Klassert <steffen.klassert@secunet.com>
parent f981c57f
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -482,8 +482,9 @@ struct xfrm_mode {

	struct xfrm_state_afinfo *afinfo;
	struct module *owner;
	unsigned int encap;
	int flags;
	u8 encap;
	u8 family;
	u8 flags;
};

/* Flags for xfrm_mode. */
@@ -491,8 +492,8 @@ enum {
	XFRM_MODE_FLAG_TUNNEL = 1,
};

int xfrm_register_mode(struct xfrm_mode *mode, int family);
int xfrm_unregister_mode(struct xfrm_mode *mode, int family);
int xfrm_register_mode(struct xfrm_mode *mode);
void xfrm_unregister_mode(struct xfrm_mode *mode);

static inline int xfrm_af2proto(unsigned int family)
{
+3 −5
Original line number Diff line number Diff line
@@ -134,19 +134,17 @@ static struct xfrm_mode xfrm4_beet_mode = {
	.owner = THIS_MODULE,
	.encap = XFRM_MODE_BEET,
	.flags = XFRM_MODE_FLAG_TUNNEL,
	.family = AF_INET,
};

static int __init xfrm4_beet_init(void)
{
	return xfrm_register_mode(&xfrm4_beet_mode, AF_INET);
	return xfrm_register_mode(&xfrm4_beet_mode);
}

static void __exit xfrm4_beet_exit(void)
{
	int err;

	err = xfrm_unregister_mode(&xfrm4_beet_mode, AF_INET);
	BUG_ON(err);
	xfrm_unregister_mode(&xfrm4_beet_mode);
}

module_init(xfrm4_beet_init);
+3 −5
Original line number Diff line number Diff line
@@ -93,19 +93,17 @@ static struct xfrm_mode xfrm4_transport_mode = {
	.xmit = xfrm4_transport_xmit,
	.owner = THIS_MODULE,
	.encap = XFRM_MODE_TRANSPORT,
	.family = AF_INET,
};

static int __init xfrm4_transport_init(void)
{
	return xfrm_register_mode(&xfrm4_transport_mode, AF_INET);
	return xfrm_register_mode(&xfrm4_transport_mode);
}

static void __exit xfrm4_transport_exit(void)
{
	int err;

	err = xfrm_unregister_mode(&xfrm4_transport_mode, AF_INET);
	BUG_ON(err);
	xfrm_unregister_mode(&xfrm4_transport_mode);
}

module_init(xfrm4_transport_init);
+3 −5
Original line number Diff line number Diff line
@@ -131,19 +131,17 @@ static struct xfrm_mode xfrm4_tunnel_mode = {
	.owner = THIS_MODULE,
	.encap = XFRM_MODE_TUNNEL,
	.flags = XFRM_MODE_FLAG_TUNNEL,
	.family = AF_INET,
};

static int __init xfrm4_mode_tunnel_init(void)
{
	return xfrm_register_mode(&xfrm4_tunnel_mode, AF_INET);
	return xfrm_register_mode(&xfrm4_tunnel_mode);
}

static void __exit xfrm4_mode_tunnel_exit(void)
{
	int err;

	err = xfrm_unregister_mode(&xfrm4_tunnel_mode, AF_INET);
	BUG_ON(err);
	xfrm_unregister_mode(&xfrm4_tunnel_mode);
}

module_init(xfrm4_mode_tunnel_init);
+3 −5
Original line number Diff line number Diff line
@@ -110,19 +110,17 @@ static struct xfrm_mode xfrm6_beet_mode = {
	.owner = THIS_MODULE,
	.encap = XFRM_MODE_BEET,
	.flags = XFRM_MODE_FLAG_TUNNEL,
	.family = AF_INET6,
};

static int __init xfrm6_beet_init(void)
{
	return xfrm_register_mode(&xfrm6_beet_mode, AF_INET6);
	return xfrm_register_mode(&xfrm6_beet_mode);
}

static void __exit xfrm6_beet_exit(void)
{
	int err;

	err = xfrm_unregister_mode(&xfrm6_beet_mode, AF_INET6);
	BUG_ON(err);
	xfrm_unregister_mode(&xfrm6_beet_mode);
}

module_init(xfrm6_beet_init);
Loading