summaryrefslogtreecommitdiffstats
path: root/sysdep/unix
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-04-02 16:11:46 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2010-04-02 16:11:46 +0200
commite7b09e4ab99fc850480480bbb577ffa36a6c5cd7 (patch)
tree878afa02cdb11fc78664ea8ce5ac542e897d91d2 /sysdep/unix
parent97ab4c34986139b2419c563a3de7ddfe41727d07 (diff)
downloadbird-e7b09e4ab99fc850480480bbb577ffa36a6c5cd7.tar
bird-e7b09e4ab99fc850480480bbb577ffa36a6c5cd7.zip
Use SO_BINDTODEVICE also in Linux/IPv6.
Diffstat (limited to 'sysdep/unix')
-rw-r--r--sysdep/unix/io.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c
index abfa5c2..a0dbb41 100644
--- a/sysdep/unix/io.c
+++ b/sysdep/unix/io.c
@@ -876,6 +876,9 @@ sk_setup_multicast(sock *s)
if (setsockopt(s->fd, SOL_IPV6, IPV6_MULTICAST_IF, &index, sizeof(index)) < 0)
ERR("IPV6_MULTICAST_IF");
+ if (err = sysio_bind_to_iface(s))
+ goto bad;
+
return 0;
bad: