adb: use asocket's close function when closing.

close_all_sockets was assuming that all registered local sockets used
local_socket_close as their close function. However, this is not true
for JDWP sockets.

Bug: http://b/28347842
Change-Id: I40a1174845cd33f15f30ce70828a7081cd5a087e
(cherry picked from commit 53eb31d87cb84a4212f4850bf745646e1fb12814)
(cherry picked from commit 014b01706cc64dc9c2ad94a96f62e07c058d0b5d)
diff --git a/adb/sockets.cpp b/adb/sockets.cpp
index 31b5443..3919147 100644
--- a/adb/sockets.cpp
+++ b/adb/sockets.cpp
@@ -43,8 +43,6 @@
 using std::recursive_mutex;
 #endif
 
-static void local_socket_close(asocket* s);
-
 static recursive_mutex& local_socket_list_lock = *new recursive_mutex();
 static unsigned local_socket_next_id = 1;
 
@@ -128,7 +126,7 @@
 restart:
     for (s = local_socket_list.next; s != &local_socket_list; s = s->next) {
         if (s->transport == t || (s->peer && s->peer->transport == t)) {
-            local_socket_close(s);
+            s->close(s);
             goto restart;
         }
     }