Using a simple integer makes the code easier to read and removes the
need to blank out array elements in case of errors.

Signed-Off-By: Anthony Foiani <anthony.foi...@gmail.com>
---
 drivers/staging/usbip/userspace/src/usbipd.c | 27 ++++++++++++---------------
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/drivers/staging/usbip/userspace/src/usbipd.c 
b/drivers/staging/usbip/userspace/src/usbipd.c
index 9d38241..d833e7b 100644
--- a/drivers/staging/usbip/userspace/src/usbipd.c
+++ b/drivers/staging/usbip/userspace/src/usbipd.c
@@ -348,36 +348,33 @@ static int listen_all_addrinfo(struct addrinfo *ai_head, 
int sockfdlist[])
        int ret, nsockfd = 0;
 
        for (ai = ai_head; ai && nsockfd < MAXSOCKFD; ai = ai->ai_next) {
-               sockfdlist[nsockfd] = socket(ai->ai_family, ai->ai_socktype,
-                                            ai->ai_protocol);
-               if (sockfdlist[nsockfd] < 0)
+               int sock = socket(ai->ai_family, ai->ai_socktype,
+                                 ai->ai_protocol);
+               if (sock < 0)
                        continue;
 
-               usbip_net_set_reuseaddr(sockfdlist[nsockfd]);
-               usbip_net_set_nodelay(sockfdlist[nsockfd]);
+               usbip_net_set_reuseaddr(sock);
+               usbip_net_set_nodelay(sock);
 
-               if (sockfdlist[nsockfd] >= FD_SETSIZE) {
-                       close(sockfdlist[nsockfd]);
-                       sockfdlist[nsockfd] = -1;
+               if (sock >= FD_SETSIZE) {
+                       close(sock);
                        continue;
                }
 
-               ret = bind(sockfdlist[nsockfd], ai->ai_addr, ai->ai_addrlen);
+               ret = bind(sock, ai->ai_addr, ai->ai_addrlen);
                if (ret < 0) {
-                       close(sockfdlist[nsockfd]);
-                       sockfdlist[nsockfd] = -1;
+                       close(sock);
                        continue;
                }
 
-               ret = listen(sockfdlist[nsockfd], SOMAXCONN);
+               ret = listen(sock, SOMAXCONN);
                if (ret < 0) {
-                       close(sockfdlist[nsockfd]);
-                       sockfdlist[nsockfd] = -1;
+                       close(sock);
                        continue;
                }
 
                log_addrinfo(ai);
-               nsockfd++;
+               sockfdlist[nsockfd++] = sock;
        }
 
        if (nsockfd == 0)
-- 
1.8.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to