mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-04 01:20:35 +01:00
cli: monitor whether NetworkManager is running
Print a message when NetworkManager is not running upon 'nmcli monitor' start.
This commit is contained in:
parent
800bd1aa18
commit
56518bb8a1
1 changed files with 33 additions and 0 deletions
|
|
@ -901,6 +901,28 @@ finish:
|
|||
return nmc->return_value;
|
||||
}
|
||||
|
||||
static void
|
||||
networkmanager_running (NMClient *client, GParamSpec *param, NmCli *nmc)
|
||||
{
|
||||
gboolean running;
|
||||
NmcTermColor color;
|
||||
const char *message;
|
||||
char *str;
|
||||
|
||||
running = nm_client_get_nm_running (client);
|
||||
if (running) {
|
||||
color = NMC_TERM_COLOR_GREEN;
|
||||
message = _("NetworkManager has started");
|
||||
} else {
|
||||
color = NMC_TERM_COLOR_RED;
|
||||
message = _("NetworkManager has stopped");
|
||||
}
|
||||
|
||||
str = nmc_colorize (nmc, color, NMC_TERM_FORMAT_NORMAL, message);
|
||||
g_print ("%s\n", str);
|
||||
g_free (str);
|
||||
}
|
||||
|
||||
static void
|
||||
client_hostname (NMClient *client, GParamSpec *param, NmCli *nmc)
|
||||
{
|
||||
|
|
@ -970,6 +992,17 @@ do_monitor (NmCli *nmc, int argc, char **argv)
|
|||
|
||||
nmc->get_client (nmc); /* create NMClient */
|
||||
|
||||
if (!nm_client_get_nm_running (nmc->client)) {
|
||||
char *str;
|
||||
|
||||
str = nmc_colorize (nmc, NMC_TERM_COLOR_RED, NMC_TERM_FORMAT_NORMAL,
|
||||
_("Networkmanager is not running (waiting for it)\n"));
|
||||
g_print ("%s", str);
|
||||
g_free (str);
|
||||
}
|
||||
|
||||
g_signal_connect (nmc->client, "notify::" NM_CLIENT_NM_RUNNING,
|
||||
G_CALLBACK (networkmanager_running), nmc);
|
||||
g_signal_connect (nmc->client, "notify::" NM_CLIENT_HOSTNAME,
|
||||
G_CALLBACK (client_hostname), nmc);
|
||||
g_signal_connect (nmc->client, "notify::" NM_CLIENT_PRIMARY_CONNECTION,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue