]> git.sesse.net Git - vlc/commitdiff
Uncomment if multicast starts failing on Windows
authorRémi Denis-Courmont <rem@videolan.org>
Sun, 5 Nov 2006 20:05:48 +0000 (20:05 +0000)
committerRémi Denis-Courmont <rem@videolan.org>
Sun, 5 Nov 2006 20:05:48 +0000 (20:05 +0000)
src/network/io.c

index 28812219f65a8fb93512dedf8a938406a443e9e4..c6cad1649e132537ec429904040bba218c82b483 100644 (file)
@@ -149,6 +149,25 @@ int *net_Listen (vlc_object_t *p_this, const char *psz_host, int i_port,
         }
 
         /* Bind the socket */
+#if 0//defined (WIN32) || defined (UNDER_CE)
+        /*
+         * Under Win32 and for multicasting, we bind to INADDR_ANY.
+         * This is of course a severe bug, since the socket would logically
+         * receive unicast traffic, and multicast traffic of groups subscribed
+         * to via other sockets.
+         */
+        if (net_SockAddrIsMulticast (ptr->ai_addr, ptr->ai_addrlen)
+         && (sizeof (struct sockaddr_storage) >= ptr->ai_addrlen))
+        {
+            struct sockaddr_storage dumb =
+            {
+                .ss_family = ptr->ai_addr->sa_family
+            };
+
+            bind (fd, (struct sockaddr *)&dumb, ptr->ai_addrlen);
+        }
+        else
+#endif
         if (bind (fd, ptr->ai_addr, ptr->ai_addrlen))
         {
             int saved_errno = net_errno;