summaryrefslogtreecommitdiff
path: root/proto/bfd
diff options
context:
space:
mode:
Diffstat (limited to 'proto/bfd')
-rw-r--r--proto/bfd/bfd.c2
-rw-r--r--proto/bfd/packets.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/proto/bfd/bfd.c b/proto/bfd/bfd.c
index c6fd311a..315d132b 100644
--- a/proto/bfd/bfd.c
+++ b/proto/bfd/bfd.c
@@ -740,7 +740,7 @@ bfd_neigh_notify(struct neighbor *nb)
if ((nb->scope > 0) && !n->req)
{
- ip_addr local = ipa_nonzero(n->local) ? n->local : nb->iface->addr->ip;
+ ip_addr local = ipa_nonzero(n->local) ? n->local : nb->ifa->ip;
n->req = bfd_request_session(p->p.pool, n->addr, local, nb->iface, NULL, NULL);
}
diff --git a/proto/bfd/packets.c b/proto/bfd/packets.c
index fc2616ca..964172d8 100644
--- a/proto/bfd/packets.c
+++ b/proto/bfd/packets.c
@@ -230,7 +230,7 @@ bfd_open_tx_sk(struct bfd_proto *p, ip_addr local, struct iface *ifa)
sk->tos = IP_PREC_INTERNET_CONTROL;
sk->priority = sk_priority_control;
sk->ttl = ifa ? 255 : -1;
- sk->flags = SKF_THREAD;
+ sk->flags = SKF_THREAD | SKF_BIND;
#ifdef IPV6
sk->flags |= SKF_V6ONLY;