mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-17 21:00:22 +01:00
dhcp/nettools: cleanup logging for dhcp4_event_handle()
It's pretty pointless to log <trace> [1653389116.6288] dhcp4 (br0): client event 7 <debug> [1653389116.6288] dhcp4 (br0): received OFFER of 192.168.121.110 from 192.168.121.1 where the obscure event #7 is only telling you that we are going to log something. Handle logging events first. In general, drop the "client event %d" message and make sure that all code paths log something (useful), so we can see in the log that the event was reached.
This commit is contained in:
parent
52a0fe584c
commit
85b15e02fd
1 changed files with 32 additions and 30 deletions
|
|
@ -914,14 +914,17 @@ bound4_handle(NMDhcpNettools *self, guint event, NDhcp4ClientLease *lease)
|
|||
static void
|
||||
dhcp4_event_handle(NMDhcpNettools *self, NDhcp4ClientEvent *event)
|
||||
{
|
||||
NMDhcpNettoolsPrivate *priv = NM_DHCP_NETTOOLS_GET_PRIVATE(self);
|
||||
const NMDhcpClientConfig *client_config;
|
||||
struct in_addr server_id;
|
||||
char addr_str[INET_ADDRSTRLEN];
|
||||
int r;
|
||||
NMDhcpNettoolsPrivate *priv = NM_DHCP_NETTOOLS_GET_PRIVATE(self);
|
||||
struct in_addr server_id;
|
||||
struct in_addr yiaddr;
|
||||
char addr_str[INET_ADDRSTRLEN];
|
||||
char addr_str2[INET_ADDRSTRLEN];
|
||||
int r;
|
||||
|
||||
_LOGT("client event %d", event->event);
|
||||
client_config = nm_dhcp_client_get_config(NM_DHCP_CLIENT(self));
|
||||
if (event->event == N_DHCP4_CLIENT_EVENT_LOG) {
|
||||
_NMLOG(nm_log_level_from_syslog(event->log.level), "event: %s", event->log.message);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!NM_IN_SET(event->event, N_DHCP4_CLIENT_EVENT_LOG)) {
|
||||
/* In almost all events (even those that we don't expect below), we clear
|
||||
|
|
@ -941,52 +944,51 @@ dhcp4_event_handle(NMDhcpNettools *self, NDhcp4ClientEvent *event)
|
|||
return;
|
||||
}
|
||||
|
||||
n_dhcp4_client_lease_get_yiaddr(event->offer.lease, &yiaddr);
|
||||
if (yiaddr.s_addr == INADDR_ANY) {
|
||||
_LOGD("selecting lease failed: no yiaddr address");
|
||||
return;
|
||||
}
|
||||
|
||||
if (nm_dhcp_client_server_id_is_rejected(NM_DHCP_CLIENT(self), &server_id)) {
|
||||
_LOGD("server-id %s is in the reject-list, ignoring",
|
||||
nm_utils_inet_ntop(AF_INET, &server_id, addr_str));
|
||||
return;
|
||||
}
|
||||
|
||||
_LOGT("selecting offered lease from %s for %s",
|
||||
_nm_utils_inet4_ntop(server_id.s_addr, addr_str),
|
||||
_nm_utils_inet4_ntop(yiaddr.s_addr, addr_str2));
|
||||
|
||||
r = n_dhcp4_client_lease_select(event->offer.lease);
|
||||
if (r) {
|
||||
_LOGW("selecting lease failed: %d", r);
|
||||
return;
|
||||
}
|
||||
break;
|
||||
|
||||
return;
|
||||
case N_DHCP4_CLIENT_EVENT_RETRACTED:
|
||||
case N_DHCP4_CLIENT_EVENT_EXPIRED:
|
||||
_nm_dhcp_client_notify(NM_DHCP_CLIENT(self), NM_DHCP_CLIENT_EVENT_TYPE_EXPIRE, NULL);
|
||||
break;
|
||||
return;
|
||||
case N_DHCP4_CLIENT_EVENT_CANCELLED:
|
||||
_nm_dhcp_client_notify(NM_DHCP_CLIENT(self), NM_DHCP_CLIENT_EVENT_TYPE_FAIL, NULL);
|
||||
break;
|
||||
return;
|
||||
case N_DHCP4_CLIENT_EVENT_GRANTED:
|
||||
bound4_handle(self, event->event, event->granted.lease);
|
||||
break;
|
||||
return;
|
||||
case N_DHCP4_CLIENT_EVENT_EXTENDED:
|
||||
bound4_handle(self, event->event, event->extended.lease);
|
||||
break;
|
||||
return;
|
||||
case N_DHCP4_CLIENT_EVENT_DOWN:
|
||||
/* ignore down events, they are purely informational */
|
||||
break;
|
||||
case N_DHCP4_CLIENT_EVENT_LOG:
|
||||
{
|
||||
NMLogLevel nm_level;
|
||||
|
||||
nm_level = nm_log_level_from_syslog(event->log.level);
|
||||
if (nm_logging_enabled(nm_level, LOGD_DHCP4)) {
|
||||
nm_log(nm_level,
|
||||
LOGD_DHCP4,
|
||||
NULL,
|
||||
NULL,
|
||||
"dhcp4 (%s): %s",
|
||||
client_config->iface,
|
||||
event->log.message);
|
||||
}
|
||||
} break;
|
||||
_LOGT("event: down (ignore)");
|
||||
return;
|
||||
default:
|
||||
_LOGW("unhandled DHCP event %d", event->event);
|
||||
break;
|
||||
_LOGE("unhandled DHCP event %d", event->event);
|
||||
nm_assert(event->event != N_DHCP4_CLIENT_EVENT_LOG);
|
||||
nm_assert_not_reached();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue