summaryrefslogtreecommitdiffstats
path: root/proto/ospf/iface.c
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-01-08 22:19:41 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2010-01-08 22:19:41 +0100
commit99f5fc14cd457f71973bc2264566284049ccfb2c (patch)
treea9448b1b462934b64ff0350f787036bd892da3eb /proto/ospf/iface.c
parentfc33143f02642cc775a704dec37446e0b4343a43 (diff)
downloadbird-99f5fc14cd457f71973bc2264566284049ccfb2c.tar
bird-99f5fc14cd457f71973bc2264566284049ccfb2c.zip
A partial vlink fix.
Diffstat (limited to 'proto/ospf/iface.c')
-rw-r--r--proto/ospf/iface.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/proto/ospf/iface.c b/proto/ospf/iface.c
index e6ae91b..25a9822 100644
--- a/proto/ospf/iface.c
+++ b/proto/ospf/iface.c
@@ -69,8 +69,11 @@ ospf_open_socket(struct ospf_iface *ifa, int mc)
ipsk->dport = OSPF_PROTO;
#ifdef OSPFv2
- // ipsk->saddr = ifa->iface->addr->ip;
- ipsk->saddr = IPA_NONE;
+ /* FIXME - why there is IPA_NONE on multicast sockets ? */
+ if (mc)
+ ipsk->saddr = IPA_NONE;
+ else
+ ipsk->saddr = ifa->iface->addr->ip;
#else /* OSPFv3 */
ipsk->saddr = ifa->lladdr;
#endif