BSD: Propagate OS-level IFF_MULTICAST to internal IF_MULTICAST flag
The BSD code did not propagate the OS-level IFF_MULTICAST flag to the Bird-internal IF_MULTICAST flag, which causes problems with Wireguard interfaces on FreeBSD. The Linux sysdep code does propagate the flag already, so just copy over the same check and flag update.
This commit is contained in:
parent
2a0af925b8
commit
b17adf0735
1 changed files with 3 additions and 0 deletions
|
@ -665,6 +665,9 @@ krt_read_ifinfo(struct ks_msg *msg, int scan)
|
||||||
else
|
else
|
||||||
f.flags |= IF_MULTIACCESS; /* NBMA */
|
f.flags |= IF_MULTIACCESS; /* NBMA */
|
||||||
|
|
||||||
|
if (fl & IFF_MULTICAST)
|
||||||
|
f.flags |= IF_MULTICAST;
|
||||||
|
|
||||||
iface = if_update(&f);
|
iface = if_update(&f);
|
||||||
|
|
||||||
if (!scan)
|
if (!scan)
|
||||||
|
|
Loading…
Reference in a new issue