sctp: reduce indent level in sctp_copy_local_addr_list
authorXin Long <lucien.xin@gmail.com>
Tue, 20 Dec 2016 05:49:49 +0000 (13:49 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 20 Dec 2016 19:15:44 +0000 (14:15 -0500)
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>
net/sctp/protocol.c

index 7b523e3f551f1761d891b606f293b2b721a87ca8..da5d82bec1dc9aa6eacc141f5d35a49fcdd0f9ec 100644 (file)
@@ -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;
 }