mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-17 02:20:49 +01:00
ipv4: improve logging for ipv4.dhcp-ipv6-only-preferred
This commit is contained in:
parent
1c32775005
commit
534d32cf81
2 changed files with 15 additions and 6 deletions
|
|
@ -1944,12 +1944,14 @@ _prop_get_ipvx_may_fail_cached(NMDevice *self, int addr_family, NMTernary *cache
|
|||
}
|
||||
|
||||
static gboolean
|
||||
_prop_get_ipv4_dhcp_ipv6_only_preferred(NMDevice *self)
|
||||
_prop_get_ipv4_dhcp_ipv6_only_preferred(NMDevice *self, gboolean *out_is_auto)
|
||||
{
|
||||
NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self);
|
||||
NMSettingIP4Config *s_ip4;
|
||||
NMSettingIP4DhcpIpv6OnlyPreferred ipv6_only;
|
||||
|
||||
NM_SET_OUT(out_is_auto, FALSE);
|
||||
|
||||
s_ip4 = nm_device_get_applied_setting(self, NM_TYPE_SETTING_IP4_CONFIG);
|
||||
if (!s_ip4)
|
||||
return FALSE;
|
||||
|
|
@ -1976,6 +1978,8 @@ _prop_get_ipv4_dhcp_ipv6_only_preferred(NMDevice *self)
|
|||
return ipv6_only == NM_SETTING_IP4_DHCP_IPV6_ONLY_PREFERRED_YES;
|
||||
|
||||
/* auto */
|
||||
NM_SET_OUT(out_is_auto, TRUE);
|
||||
|
||||
if (nm_streq0(priv->ipv6_method, NM_SETTING_IP6_CONFIG_METHOD_AUTO)
|
||||
&& _prop_get_ipv6_clat(self, nm_device_get_applied_connection(self))
|
||||
!= NM_SETTING_IP6_CONFIG_CLAT_NO) {
|
||||
|
|
@ -11833,8 +11837,9 @@ _dev_ipdhcpx_start(NMDevice *self, int addr_family)
|
|||
gboolean hostname_is_fqdn;
|
||||
gboolean send_client_id;
|
||||
guint8 dscp;
|
||||
gboolean dscp_explicit = FALSE;
|
||||
gboolean ipv6_only_pref = FALSE;
|
||||
gboolean dscp_explicit = FALSE;
|
||||
gboolean ipv6_only_pref = FALSE;
|
||||
gboolean ipv6_only_pref_auto = FALSE;
|
||||
|
||||
client_id = _prop_get_ipv4_dhcp_client_id(self, connection, hwaddr, &send_client_id);
|
||||
dscp = _prop_get_ipv4_dhcp_dscp(self, &dscp_explicit);
|
||||
|
|
@ -11853,13 +11858,15 @@ _dev_ipdhcpx_start(NMDevice *self, int addr_family)
|
|||
hostname = nm_setting_ip_config_get_dhcp_hostname(s_ip);
|
||||
}
|
||||
|
||||
if (_prop_get_ipv4_dhcp_ipv6_only_preferred(self)) {
|
||||
if (_prop_get_ipv4_dhcp_ipv6_only_preferred(self, &ipv6_only_pref_auto)) {
|
||||
if (nm_streq0(priv->ipv6_method, NM_SETTING_IP6_CONFIG_METHOD_DISABLED)) {
|
||||
_LOGI_ipdhcp(
|
||||
addr_family,
|
||||
"not requesting the \"IPv6-only preferred\" option because IPv6 is disabled");
|
||||
} else {
|
||||
_LOGD_ipdhcp(addr_family, "requesting the \"IPv6-only preferred\" option");
|
||||
_LOGD_ipdhcp(addr_family,
|
||||
"requesting the \"IPv6-only preferred\" option (%s enabled)",
|
||||
ipv6_only_pref_auto ? "automatically" : "explicitly");
|
||||
ipv6_only_pref = TRUE;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1460,7 +1460,9 @@ nm_dhcp_client_schedule_ipv6_only_restart(NMDhcpClient *self, guint timeout)
|
|||
nm_assert(!priv->is_stopped);
|
||||
|
||||
timeout = NM_MAX(priv->v4.ipv6_only_min_wait, timeout);
|
||||
_LOGI("received option \"ipv6-only-preferred\": stopping DHCPv4 for %u seconds", timeout);
|
||||
_LOGI("received option \"ipv6-only-preferred\": stopping DHCPv4 for %u seconds. Set "
|
||||
"ipv4.dhcp-ipv6-only-preferred=no to force the use of IPv4 on this IPv6-mostly network",
|
||||
timeout);
|
||||
|
||||
nm_dhcp_client_stop(self, FALSE);
|
||||
nm_clear_g_source_inst(&priv->no_lease_timeout_source);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue