]> git.sesse.net Git - vlc/blobdiff - src/network/io.c
Removes trailing spaces. Removes tabs.
[vlc] / src / network / io.c
index 89a1d6cc022733cdcf097bc5d3197157ca7b4616..e83f985dafb53ff9f0c021d9f5c01e72d1d25bd1 100644 (file)
@@ -97,11 +97,11 @@ int net_Socket (vlc_object_t *p_this, int family, int socktype,
 
 #ifdef IPV6_V6ONLY
     /*
-     * Accepts only IPv6 and IPv4 connections on IPv6 sockets.
+     * Accepts only IPv6 connections on IPv6 sockets.
      * If possible, we should open two sockets, but it is not always possible.
      */
     if (family == AF_INET6)
-        setsockopt (fd, IPPROTO_IPV6, IPV6_V6ONLY, &(int){ 0 }, sizeof (int));
+        setsockopt (fd, IPPROTO_IPV6, IPV6_V6ONLY, &(int){ 1 }, sizeof (int));
 #endif
 
 #if defined (WIN32) || defined (UNDER_CE)
@@ -211,6 +211,9 @@ int *net_Listen (vlc_object_t *p_this, const char *psz_host,
             case SOCK_STREAM:
             case SOCK_RDM:
             case SOCK_SEQPACKET:
+#ifdef SOCK_DCCP
+            case SOCK_DCCP:
+#endif
                 if (listen (fd, INT_MAX))
                 {
                     msg_Err (p_this, "socket listen error (%s)",
@@ -239,28 +242,6 @@ int *net_Listen (vlc_object_t *p_this, const char *psz_host,
 }
 
 
-int net_ListenSingle (vlc_object_t *obj, const char *host, int port,
-                      int family, int socktype, int protocol)
-{
-    int *fdv = net_Listen (obj, host, port, family, socktype, protocol);
-    if (fdv == NULL)
-        return -1;
-
-    for (unsigned i = 1; fdv[i] != -1; i++)
-    {
-        msg_Warn (obj, "Multiple sockets opened. Dropping extra ones!");
-        net_Close (fdv[i]);
-    }
-
-    int fd = fdv[0];
-    assert (fd != -1);
-
-    free (fdv);
-    return fd;
-}
-
-
-
 static ssize_t
 net_ReadInner (vlc_object_t *restrict p_this, unsigned fdc, const int *fdv,
                const v_socket_t *const *restrict vsv,
@@ -270,7 +251,7 @@ net_ReadInner (vlc_object_t *restrict p_this, unsigned fdc, const int *fdv,
 
     while (i_buflen > 0)
     {
-        if (p_this->b_die)
+        if( ( p_this->b_die ) || ( p_this->p_libvlc->b_die ) )
         {
 #if defined(WIN32) || defined(UNDER_CE)
             WSASetLastError (WSAEINTR);
@@ -292,8 +273,6 @@ net_ReadInner (vlc_object_t *restrict p_this, unsigned fdc, const int *fdv,
         switch (poll (ufd, fdc, 500))
         {
             case -1:
-                if( errno == EINTR )
-                    continue;
                 goto error;
 
             case 0: // timeout
@@ -442,8 +421,6 @@ ssize_t __net_Write( vlc_object_t *p_this, int fd, const v_socket_t *p_vs,
         switch (val)
         {
             case -1:
-                if( errno == EINTR )
-                    continue;
                msg_Err (p_this, "Write error: %s", net_strerror (net_errno));
                goto out;
 
@@ -628,8 +605,8 @@ const char *inet_ntop(int af, const void * src,
                 memset(&addr, 0, sizeof(addr));
                 addr.sin6_family = AF_INET6;
                 addr.sin6_addr = *((struct in6_addr*)src);
-                if( 0 == WSAAddressToStringA((LPSOCKADDR)&addr, 
-                                             sizeof(struct sockaddr_in6), 
+                if( 0 == WSAAddressToStringA((LPSOCKADDR)&addr,
+                                             sizeof(struct sockaddr_in6),
                                              NULL, dst, &cnt) )
                 {
                     dst[cnt] = '\0';