mirror of
https://github.com/systemd/systemd.git
synced 2024-10-31 16:21:26 +03:00
Merge pull request #6918 from ssahani/issue-5625
networkd: ndisc - do not stop ndisc client incase of conf error.
This commit is contained in:
commit
4ff971ac08
@ -747,20 +747,23 @@ void link_check_ready(Link *link) {
|
||||
!link->ipv4ll_route)
|
||||
return;
|
||||
|
||||
if (link_ipv6ll_enabled(link))
|
||||
if (in_addr_is_null(AF_INET6, (const union in_addr_union*) &link->ipv6ll_address) > 0)
|
||||
if (!link->network->bridge) {
|
||||
|
||||
if (link_ipv6ll_enabled(link))
|
||||
if (in_addr_is_null(AF_INET6, (const union in_addr_union*) &link->ipv6ll_address) > 0)
|
||||
return;
|
||||
|
||||
if ((link_dhcp4_enabled(link) && !link_dhcp6_enabled(link) &&
|
||||
!link->dhcp4_configured) ||
|
||||
(link_dhcp6_enabled(link) && !link_dhcp4_enabled(link) &&
|
||||
!link->dhcp6_configured) ||
|
||||
(link_dhcp4_enabled(link) && link_dhcp6_enabled(link) &&
|
||||
!link->dhcp4_configured && !link->dhcp6_configured))
|
||||
return;
|
||||
|
||||
if ((link_dhcp4_enabled(link) && !link_dhcp6_enabled(link) &&
|
||||
!link->dhcp4_configured) ||
|
||||
(link_dhcp6_enabled(link) && !link_dhcp4_enabled(link) &&
|
||||
!link->dhcp6_configured) ||
|
||||
(link_dhcp4_enabled(link) && link_dhcp6_enabled(link) &&
|
||||
!link->dhcp4_configured && !link->dhcp6_configured))
|
||||
return;
|
||||
|
||||
if (link_ipv6_accept_ra_enabled(link) && !link->ndisc_configured)
|
||||
return;
|
||||
if (link_ipv6_accept_ra_enabled(link) && !link->ndisc_configured)
|
||||
return;
|
||||
}
|
||||
|
||||
SET_FOREACH(a, link->addresses, i)
|
||||
if (!address_is_ready(a))
|
||||
|
@ -40,10 +40,8 @@ static int ndisc_netlink_handler(sd_netlink *rtnl, sd_netlink_message *m, void *
|
||||
link->ndisc_messages--;
|
||||
|
||||
r = sd_netlink_message_get_errno(m);
|
||||
if (r < 0 && r != -EEXIST) {
|
||||
if (r < 0 && r != -EEXIST)
|
||||
log_link_error_errno(link, r, "Could not set NDisc route or address: %m");
|
||||
link_enter_failed(link);
|
||||
}
|
||||
|
||||
if (link->ndisc_messages == 0) {
|
||||
link->ndisc_configured = true;
|
||||
|
Loading…
Reference in New Issue
Block a user