diff options
author | Xin Long <lucien.xin@gmail.com> | 2016-12-20 13:49:49 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-12-20 14:15:44 -0500 |
commit | 165f2cf6405a9e2153b69302845c7d5c9f3cb23b (patch) | |
tree | a3825f30ed802dd11acbfd7a18728352bca48b18 /net/sctp | |
parent | 92f95322c65fef330cc0a6bb6ed3e7966f8635d5 (diff) | |
download | linux-165f2cf6405a9e2153b69302845c7d5c9f3cb23b.tar.gz linux-165f2cf6405a9e2153b69302845c7d5c9f3cb23b.tar.bz2 linux-165f2cf6405a9e2153b69302845c7d5c9f3cb23b.zip |
sctp: reduce indent level in sctp_copy_local_addr_list
This patch is to reduce indent level by using continue when the addr
is not allowed, and also drop end_copy by using break.
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp')
-rw-r--r-- | net/sctp/protocol.c | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c index 7b523e3f551f..da5d82bec1dc 100644 --- a/net/sctp/protocol.c +++ b/net/sctp/protocol.c @@ -205,26 +205,27 @@ int sctp_copy_local_addr_list(struct net *net, struct sctp_bind_addr *bp, list_for_each_entry_rcu(addr, &net->sctp.local_addr_list, list) { if (!addr->valid) continue; - if (sctp_in_scope(net, &addr->a, scope)) { - /* Now that the address is in scope, check to see if - * the address type is really supported by the local - * sock as well as the remote peer. - */ - if ((((AF_INET == addr->a.sa.sa_family) && - (copy_flags & SCTP_ADDR4_PEERSUPP))) || - (((AF_INET6 == addr->a.sa.sa_family) && - (copy_flags & SCTP_ADDR6_ALLOWED) && - (copy_flags & SCTP_ADDR6_PEERSUPP)))) { - error = sctp_add_bind_addr(bp, &addr->a, - sizeof(addr->a), - SCTP_ADDR_SRC, GFP_ATOMIC); - if (error) - goto end_copy; - } - } + if (!sctp_in_scope(net, &addr->a, scope)) + continue; + + /* Now that the address is in scope, check to see if + * the address type is really supported by the local + * sock as well as the remote peer. + */ + if (addr->a.sa.sa_family == AF_INET && + !(copy_flags & SCTP_ADDR4_PEERSUPP)) + continue; + if (addr->a.sa.sa_family == AF_INET6 && + (!(copy_flags & SCTP_ADDR6_ALLOWED) || + !(copy_flags & SCTP_ADDR6_PEERSUPP))) + continue; + + error = sctp_add_bind_addr(bp, &addr->a, sizeof(addr->a), + SCTP_ADDR_SRC, GFP_ATOMIC); + if (error) + break; } -end_copy: rcu_read_unlock(); return error; } |