gio: add g_socket_join_multicast_group_ssm (IGMPv3 SSM)

It adds support for source-specific multicast IGMPv3.

Allow receiving data only from a specified source when joining
a multicast group.

g_socket_join_multicast_group_ssm can be called multiple times
to allow receiving data from more than one source.

Support IPv4 and IPv6.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=740791
This commit is contained in:
Julien Isorce
2014-11-27 00:04:25 +00:00
committed by Philip Withnall
parent a79ca79a85
commit ea725a6414
6 changed files with 332 additions and 0 deletions

View File

@@ -157,6 +157,18 @@ gboolean g_socket_leave_multicast_group (GSocket
gboolean source_specific,
const gchar *iface,
GError **error);
GLIB_AVAILABLE_IN_2_56
gboolean g_socket_join_multicast_group_ssm (GSocket *socket,
GInetAddress *group,
GInetAddress *source_specific,
const gchar *iface,
GError **error);
GLIB_AVAILABLE_IN_2_56
gboolean g_socket_leave_multicast_group_ssm (GSocket *socket,
GInetAddress *group,
GInetAddress *source_specific,
const gchar *iface,
GError **error);
GLIB_AVAILABLE_IN_ALL
gboolean g_socket_connect (GSocket *socket,
GSocketAddress *address,