diff options
author | Miao Xie <miaox@cn.fujitsu.com> | 2008-07-29 23:57:58 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-07-29 23:57:58 -0700 |
commit | 4a36702e016947a0ce6c0c024673bb5b16d3f618 (patch) | |
tree | 16ae893432a4ea9677a2856bd1ae3d6bc65cc46e /net/ipv6/datagram.c | |
parent | e93dc4891df93d7efa59d861fdcbb529a1819343 (diff) | |
download | op-kernel-dev-4a36702e016947a0ce6c0c024673bb5b16d3f618.zip op-kernel-dev-4a36702e016947a0ce6c0c024673bb5b16d3f618.tar.gz |
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/datagram.c')
-rw-r--r-- | net/ipv6/datagram.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c index f7b535d..410046a 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; } } |