a_old->preferred_until != a_new->preferred_until)
replace = true;
- if ((a_new->flags & DEVADDR_FAMILY) == DEVADDR_INET4 &&
- a_new->broadcast != a_old->broadcast)
+ if (((a_new->flags & DEVADDR_FAMILY) == DEVADDR_INET4) &&
+ (a_new->broadcast != a_old->broadcast ||
+ a_new->point_to_point != a_old->point_to_point))
keep = false;
}
avl_for_each_element(&resolv_conf_iface_entries, entry, node) {
iface = (struct interface *)entry->node.key;
+ struct device *dev = iface->l3_dev.dev;
fprintf(f, "# Interface %s\n", iface->name);
- write_resolv_conf_entries(f, &iface->config_ip, iface->ifname);
+ write_resolv_conf_entries(f, &iface->config_ip, dev->ifname);
if (!iface->proto_ip.no_dns)
- write_resolv_conf_entries(f, &iface->proto_ip, iface->ifname);
+ write_resolv_conf_entries(f, &iface->proto_ip, dev->ifname);
}
avl_remove_all_elements(&resolv_conf_iface_entries, entry, node, n_entry)