UDP multicast on iOS with WWAN turned on

Sebastian Dröge sebastian at centricular.com
Fri Dec 9 05:52:01 UTC 2016


On Thu, 2016-12-08 at 12:54 +0100, Dries Langsweirdt wrote:
> 
> When I compare this with the socket creation code in Glib, I see a
> few differences:
> 
> - https://github.com/GNOME/glib/blob/master/gio/gsocket.c#L2280 =>
> GlIb is using the group join operation IP_ADD_SOURCE_MEMBERSHIP,
> while the above code uses MCAST_JOIN_GROUP.
> - https://github.com/GNOME/glib/blob/master/gio/gsocket.c#L2236 =>
> GLib is only setting if_nametoindex (iface), but not
> mc_req.imr_interface.s_addr = g_htonl (INADDR_ANY), while in the
> above code: addr.sin_addr.s_addr = INADDR_ANY; and mreq.gr_interface
> = if_nametoindex (iface);

That would seem like a bug in iOS's network stack then.
IP_ADD_SOURCE_MEMBERSHIP and MCAST_JOIN_GROUP should have the same
effect. But we should probably change GLib to switch to the other one
in that case.

You said, you talked to an Apple engineer. Maybe ask him about the
differences between the two sockopts and if they can fix their code so
they behave the same in the future.


Please also file a bug about this against GLib:
https://bugzilla.gnome.org/enter_bug.cgi?product=glib

-- 
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20161209/13e3dd63/attachment.sig>


More information about the gstreamer-devel mailing list