dhcp: log DHCP client exit status better
This commit is contained in:
@@ -306,21 +306,30 @@ daemon_watch_cb (GPid pid, gint status, gpointer user_data)
|
|||||||
NMDhcpClient *self = NM_DHCP_CLIENT (user_data);
|
NMDhcpClient *self = NM_DHCP_CLIENT (user_data);
|
||||||
NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE (self);
|
NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE (self);
|
||||||
NMDhcpState new_state;
|
NMDhcpState new_state;
|
||||||
|
guint64 log_domain;
|
||||||
|
guint ip_ver;
|
||||||
|
|
||||||
if (priv->ipv6) {
|
log_domain = priv->ipv6 ? LOGD_DHCP6 : LOGD_DHCP4;
|
||||||
nm_log_info (LOGD_DHCP6, "(%s): DHCPv6 client pid %d exited with status %d",
|
ip_ver = priv->ipv6 ? 6 : 4;
|
||||||
priv->iface, pid,
|
|
||||||
WIFEXITED (status) ? WEXITSTATUS (status) : -1);
|
|
||||||
} else {
|
|
||||||
nm_log_info (LOGD_DHCP4, "(%s): DHCPv4 client pid %d exited with status %d",
|
|
||||||
priv->iface, pid,
|
|
||||||
WIFEXITED (status) ? WEXITSTATUS (status) : -1);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!WIFEXITED (status)) {
|
if (WIFEXITED (status))
|
||||||
new_state = NM_DHCP_STATE_FAIL;
|
nm_log_info (log_domain, "(%s): DHCPv%d client pid %d exited with status %d",
|
||||||
|
priv->iface, ip_ver, pid, WEXITSTATUS (status));
|
||||||
|
else if (WIFSIGNALED (status))
|
||||||
|
nm_log_info (log_domain, "(%s): DHCPv%d client pid %d killed by signal %d",
|
||||||
|
priv->iface, ip_ver, pid, WTERMSIG (status));
|
||||||
|
else if (WIFSTOPPED(status))
|
||||||
|
nm_log_info (log_domain, "(%s): DHCPv%d client pid %d stopped by signal %d",
|
||||||
|
priv->iface, ip_ver, pid, WSTOPSIG (status));
|
||||||
|
else if (WIFCONTINUED (status))
|
||||||
|
nm_log_info (log_domain, "(%s): DHCPv%d client pid %d resumed (by SIGCONT)",
|
||||||
|
priv->iface, ip_ver, pid);
|
||||||
|
else
|
||||||
nm_log_warn (LOGD_DHCP, "DHCP client died abnormally");
|
nm_log_warn (LOGD_DHCP, "DHCP client died abnormally");
|
||||||
} else
|
|
||||||
|
if (!WIFEXITED (status))
|
||||||
|
new_state = NM_DHCP_STATE_FAIL;
|
||||||
|
else
|
||||||
new_state = NM_DHCP_STATE_DONE;
|
new_state = NM_DHCP_STATE_DONE;
|
||||||
|
|
||||||
priv->pid = -1;
|
priv->pid = -1;
|
||||||
|
Reference in New Issue
Block a user