From: Julia Lawall Date: Wed, 29 Aug 2012 06:49:15 +0000 (+0000) Subject: net/xfrm/xfrm_state.c: fix error return code X-Git-Tag: upstream/snapshot3+hdmi~6753^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=599901c3e4204e9d9c5a24df5402cd91617a2a26;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git net/xfrm/xfrm_state.c: fix error return code Initialize return variable before exiting on an error path. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // ( if@p1 (\(ret < 0\|ret != 0\)) { ... return ret; } | ret@p1 = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller --- diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index 87cd0e4..210be48 100644 --- a/net/xfrm/xfrm_state.c +++ b/net/xfrm/xfrm_state.c @@ -1994,8 +1994,10 @@ int __xfrm_init_state(struct xfrm_state *x, bool init_replay) goto error; x->outer_mode = xfrm_get_mode(x->props.mode, family); - if (x->outer_mode == NULL) + if (x->outer_mode == NULL) { + err = -EPROTONOSUPPORT; goto error; + } if (init_replay) { err = xfrm_init_replay(x);