1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-01-08 21:17:47 +03:00

networkd: Be opportunistic when declaring link configured

The DHCP variable in the [Network] section of the network configuration
file moves the link to the configured state according to the following:

DHCP=yes   Link is configured when either DHCPv4 or DHCPv6 succeed
DHCP=ipv4  Link is configured only when DHCPv4 succeeds
DHCP=ipv6  Link is configured only when DHCPv6 succeeds
DHCP=no    Neither DHCPv4 or DHCPv6 is attempted

Reported by Martin Pitt.

Fixes https://github.com/systemd/systemd/issues/1368
This commit is contained in:
Patrik Flykt 2015-09-24 15:04:17 +03:00
parent 2e396de8b2
commit 3ada37a21e

View File

@ -501,10 +501,12 @@ void link_client_handler(Link *link) {
!link->ipv4ll_route)
return;
if (link_dhcp4_enabled(link) && !link->dhcp4_configured)
return;
if (link_dhcp6_enabled(link) && !link->dhcp6_configured)
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->state != LINK_STATE_CONFIGURED)