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

Commit c47cf417 authored by Steffen Klassert's avatar Steffen Klassert Committed by Dmitry Shmidt
Browse files

BACKPORT: xfrm: Fix return value check of copy_sec_ctx.



commit 8598112d04af21cf6c895670e72dcb8a9f58e74f upstream.

A recent commit added an output_mark. When copying
this output_mark, the return value of copy_sec_ctx
is overwitten without a check. Fix this by copying
the output_mark before the security context.

Fixes: 077fbac405bf ("net: xfrm: support setting an output mark.")
Signed-off-by: default avatarSteffen Klassert <steffen.klassert@secunet.com>

Change-Id: I25e9ac6cf79dc8d0ee599bbd23e9d5b5f34a4284
Fixes: Change-Id: I76120fba036e21780ced31ad390faf491ea81e52
       ("BACKPORT: net: xfrm: support setting an output mark.")
Signed-off-by: default avatarAmit Pundir <amit.pundir@linaro.org>
parent 49790691
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -841,13 +841,13 @@ static int copy_to_user_state_extra(struct xfrm_state *x,
		if (ret)
			goto out;
	}
	if (x->security)
		ret = copy_sec_ctx(x->security, skb);
	if (x->props.output_mark) {
		ret = nla_put_u32(skb, XFRMA_OUTPUT_MARK, x->props.output_mark);
		if (ret)
			goto out;
	}
	if (x->security)
		ret = copy_sec_ctx(x->security, skb);
out:
	return ret;
}