After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 687781 - udpsrc does not handle EHOSTUNREACH for Linux as it does for Win32
udpsrc does not handle EHOSTUNREACH for Linux as it does for Win32
Status: RESOLVED DUPLICATE of bug 687782
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
0.10.x
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-11-06 16:23 UTC by Robert Krakora
Modified: 2012-11-09 10:05 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Robert Krakora 2012-11-06 16:23:29 UTC
I have found that the same code that was added to udpsrc for WSAECONNRESET for WIN32 is also needed for EHOSTUNREACH for Linux.  I have spend the last two days tracking this down and would not have found it for some time had the WSAECONNRESET fix for WIN32 not been present in the code.

#ifdef G_OS_WIN32
      /* WSAECONNRESET for a UDP socket means that a packet sent with udpsink
       * generated a "port unreachable" ICMP response. We ignore that and try
       * again. */
      if (WSAGetLastError () == WSAECONNRESET) {
        g_free (pktdata);
        pktdata = NULL;
        goto retry;
      }
      if (WSAGetLastError () != WSAEINTR)
        goto receive_error;
#else
      /* EHOSTUNREACH for a UDP socket means that a packet sent with udpsink
       * generated a "port unreachable" ICMP response. We ignore that and try
       * again. */
       
      if (errno == EHOSTUNREACH) {
        g_free (pktdata);
        pktdata = NULL;
        goto retry;
      }
      if (errno != EAGAIN && errno != EINTR)
        goto receive_error;
#endif
Comment 1 Sebastian Dröge (slomo) 2012-11-09 10:05:17 UTC
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 687782 ***