summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Georg <mail@jensge.org>2016-02-18 11:20:17 +0100
committerJens Georg <mail@jensge.org>2018-10-31 17:38:14 +0100
commit363cf6418f7b7a0ba4ea00a55c520afab906d660 (patch)
tree99f3e61de8d7a7b975be677b510c84659d145c28
parent7395a87adc27ac88862acb0ff2ea949edfd604f2 (diff)
downloadgssdp-wip/master/ipv6.tar.gz
wip: Add max hops for v6wip/master/ipv6
Signed-off-by: Jens Georg <mail@jensge.org>
-rw-r--r--libgssdp/gssdp-socket-source.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libgssdp/gssdp-socket-source.c b/libgssdp/gssdp-socket-source.c
index de27394..01a81f0 100644
--- a/libgssdp/gssdp-socket-source.c
+++ b/libgssdp/gssdp-socket-source.c
@@ -239,9 +239,14 @@ gssdp_socket_source_do_init (GInitable *initable,
}
/* TTL */
- if (!priv->ttl)
+ if (priv->ttl == 0) {
/* UDA/1.0 says 4, UDA/1.1 says 2 */
priv->ttl = 4;
+ if (family == G_SOCKET_FAMILY_IPV6) {
+ /* UDA 2.0, Annex A says 10 hops */
+ priv->ttl = 10;
+ }
+ }
g_socket_set_multicast_ttl (priv->socket, priv->ttl);