]> git.sesse.net Git - vlc/blobdiff - src/network/tcp.c
Print error when setting TTL fails
[vlc] / src / network / tcp.c
index adbd4602f5f80999a9ac52e668627589ff4dedd9..7b1cdfa30135b9b3d16017b524ee4ee7db7a89c0 100644 (file)
@@ -244,18 +244,7 @@ next_ai: /* failure */
 
 int net_AcceptSingle (vlc_object_t *obj, int lfd)
 {
-    int fd;
-
-    do
-    {
-#ifdef HAVE_ACCEPT4
-        fd = accept4 (lfd, NULL, NULL, SOCK_CLOEXEC);
-        if (fd == -1 && errno == ENOSYS)
-#endif
-        fd = accept (lfd, NULL, NULL);
-    }
-    while (fd == -1 && errno == EINTR);
-
+    int fd = vlc_accept (lfd, NULL, NULL, true);
     if (fd == -1)
     {
         if (net_errno != EAGAIN && net_errno != EWOULDBLOCK)
@@ -264,7 +253,7 @@ int net_AcceptSingle (vlc_object_t *obj, int lfd)
     }
 
     msg_Dbg (obj, "accepted socket %d (from socket %d)", fd, lfd);
-    net_SetupSocket (fd);
+    setsockopt (fd, SOL_SOCKET, SO_REUSEADDR, &(int){ 1 }, sizeof(int));
     return fd;
 }