summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorMiao Xie <miaox@cn.fujitsu.com>2008-07-29 23:57:58 -0700
committerDavid S. Miller <davem@davemloft.net>2008-07-29 23:57:58 -0700
commit4a36702e016947a0ce6c0c024673bb5b16d3f618 (patch)
tree16ae893432a4ea9677a2856bd1ae3d6bc65cc46e /net/ipv6
parente93dc4891df93d7efa59d861fdcbb529a1819343 (diff)
downloadlinux-4a36702e016947a0ce6c0c024673bb5b16d3f618.tar.gz
linux-4a36702e016947a0ce6c0c024673bb5b16d3f618.tar.bz2
linux-4a36702e016947a0ce6c0c024673bb5b16d3f618.zip
IPv6: datagram_send_ctl() should exit immediately when an error occured
When an error occured, datagram_send_ctl() should exit immediately rather than continue to run the for loop. Otherwise, the variable err might be changed and the error might be hidden. Fix this bug by using "goto" instead of "break". Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/datagram.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c
index f7b535dec860..410046a8cc91 100644
--- a/net/ipv6/datagram.c
+++ b/net/ipv6/datagram.c
@@ -732,7 +732,7 @@ int datagram_send_ctl(struct net *net,
LIMIT_NETDEBUG(KERN_DEBUG "invalid cmsg type: %d\n",
cmsg->cmsg_type);
err = -EINVAL;
- break;
+ goto exit_f;
}
}