]> git.karo-electronics.de Git - linux-beck.git/commitdiff
staging: usbip: use local variable while setting up socket
authorAnthony Foiani <anthony.foiani@gmail.com>
Mon, 8 Jul 2013 06:52:41 +0000 (00:52 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 23 Jul 2013 22:04:19 +0000 (15:04 -0700)
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.foiani@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/usbip/userspace/src/usbipd.c

index 9d3824133e85eb8b80663896cf2e33e752d55d71..d833e7b5fdf94887cd7554771a81d617a6b49510 100644 (file)
@@ -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)