diff options
author | Dan Winship <danw@gnome.org> | 2013-11-21 09:19:18 -0500 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2013-11-22 13:51:25 -0500 |
commit | 461920bb96c352f81a7326deef83df1845b21d4f (patch) | |
tree | 4751f271885e7cee1b665d0924055bdcfb66c364 | |
parent | 472ee8104d3247ca9ee7a3fbea0da7939e0c99a2 (diff) | |
download | NetworkManager-461920bb96c352f81a7326deef83df1845b21d4f.tar.gz |
cli: add NMC_RESULT_ERROR_NOT_FOUND and use as appropriate
This will allow callers to distinguish "no such connection" from
"connection failed to activate", etc.
https://bugzilla.redhat.com/show_bug.cgi?id=1022256
-rw-r--r-- | cli/src/connections.c | 18 | ||||
-rw-r--r-- | cli/src/devices.c | 20 | ||||
-rw-r--r-- | cli/src/nmcli.h | 5 | ||||
-rw-r--r-- | man/nmcli.1.in | 2 |
4 files changed, 25 insertions, 20 deletions
diff --git a/cli/src/connections.c b/cli/src/connections.c index 138a83a76c..6a75a5c5fa 100644 --- a/cli/src/connections.c +++ b/cli/src/connections.c @@ -536,7 +536,7 @@ do_connections_show (NmCli *nmc, int argc, char **argv) printed = nmc_connection_detail (con, nmc); } else { g_string_printf (nmc->return_text, _("Error: %s - no such connection."), *argv); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; return nmc->return_value; } @@ -1065,7 +1065,7 @@ do_connections_show_active (NmCli *nmc, int argc, char **argv) printed = nmc_active_connection_detail (acon, nmc); /* separate connections by blank line */ } else { g_string_printf (nmc->return_text, _("Error: '%s' is not an active connection."), *argv); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; return nmc->return_value; } @@ -1536,12 +1536,12 @@ nmc_activate_connection (NmCli *nmc, } else if (ifname) { device = nm_client_get_device_by_iface (nmc->client, ifname); if (!device) { - g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_CON_ACTIVATION, + g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_NOT_FOUND, _("unknown device '%s'."), ifname); return FALSE; } } else { - g_set_error_literal (error, NMCLI_ERROR, NMC_RESULT_ERROR_CON_ACTIVATION, + g_set_error_literal (error, NMCLI_ERROR, NMC_RESULT_ERROR_NOT_FOUND, _("neither a valid connection nor device given")); return FALSE; } @@ -1662,7 +1662,7 @@ do_connection_up (NmCli *nmc, int argc, char **argv) if (!nmc_activate_connection (nmc, connection, ifname, ap, nsp, activate_connection_cb, &error)) { g_string_printf (nmc->return_text, _("Error: %s."), error ? error->message : _("unknown error")); - nmc->return_value = NMC_RESULT_ERROR_CON_ACTIVATION; + nmc->return_value = error ? error->code : NMC_RESULT_ERROR_CON_ACTIVATION; g_clear_error (&error); goto error; } @@ -1734,7 +1734,7 @@ do_connection_down (NmCli *nmc, int argc, char **argv) nm_client_deactivate_connection (nmc->client, active); } else { g_string_printf (nmc->return_text, _("Error: '%s' is not an active connection."), *arg_ptr); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -7018,7 +7018,7 @@ do_connection_edit (NmCli *nmc, int argc, char **argv) found_con = find_connection (nmc->system_connections, selector, con); if (!found_con) { g_string_printf (nmc->return_text, _("Error: Unknown connection '%s'."), con); - nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -7214,7 +7214,7 @@ do_connection_modify (NmCli *nmc, int argc, char **argv) connection = find_connection (nmc->system_connections, selector, name); if (!connection) { g_string_printf (nmc->return_text, _("Error: Unknown connection '%s'."), name); - nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto finish; } strv = g_strsplit (set_prop, ".", 2); @@ -7397,7 +7397,7 @@ finish: g_string_truncate (invalid_cons, invalid_cons->len-2); /* truncate trailing ", " */ g_string_printf (nmc->return_text, _("Error: cannot delete unknown connection(s): %s."), invalid_cons->str); - nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; g_string_free (invalid_cons, TRUE); } return nmc->return_value; diff --git a/cli/src/devices.c b/cli/src/devices.c index cad0723f9c..54a06893ff 100644 --- a/cli/src/devices.c +++ b/cli/src/devices.c @@ -1124,7 +1124,7 @@ do_devices_show (NmCli *nmc, int argc, char **argv) } if (!device) { g_string_printf (nmc->return_text, _("Error: Device '%s' not found."), ifname); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } show_device_info (device, nmc); @@ -1279,7 +1279,7 @@ do_device_connect (NmCli *nmc, int argc, char **argv) if (!device) { g_string_printf (nmc->return_text, _("Error: Device '%s' not found."), ifname); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -1414,7 +1414,7 @@ do_device_disconnect (NmCli *nmc, int argc, char **argv) if (!device) { g_string_printf (nmc->return_text, _("Error: Device '%s' not found."), ifname); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -1557,7 +1557,7 @@ do_device_wifi_list (NmCli *nmc, int argc, char **argv) } if (!device) { g_string_printf (nmc->return_text, _("Error: Device '%s' not found."), ifname); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -1581,7 +1581,7 @@ do_device_wifi_list (NmCli *nmc, int argc, char **argv) if (!ap) { g_string_printf (nmc->return_text, _("Error: Access point with bssid '%s' not found."), bssid_user); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } /* Add headers (field names) */ @@ -1650,7 +1650,7 @@ do_device_wifi_list (NmCli *nmc, int argc, char **argv) if (!ap) { g_string_printf (nmc->return_text, _("Error: Access point with bssid '%s' not found."), bssid_user); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } } else { @@ -2014,7 +2014,7 @@ do_device_wifi_connect_network (NmCli *nmc, int argc, char **argv) g_string_printf (nmc->return_text, _("Error: No network with SSID '%s' found."), param_user); else g_string_printf (nmc->return_text, _("Error: No access point with BSSID '%s' found."), param_user); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -2301,7 +2301,7 @@ do_device_wimax_list (NmCli *nmc, int argc, char **argv) if (!device) { g_string_printf (nmc->return_text, _("Error: Device '%s' not found."), ifname); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } @@ -2324,7 +2324,7 @@ do_device_wimax_list (NmCli *nmc, int argc, char **argv) } if (!nsp) { g_string_printf (nmc->return_text, _("Error: NSP with name '%s' not found."), nsp_user); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } /* Add headers (field names) */ @@ -2375,7 +2375,7 @@ do_device_wimax_list (NmCli *nmc, int argc, char **argv) } if (!nsp) { g_string_printf (nmc->return_text, _("Error: Access point with nsp '%s' not found."), nsp_user); - nmc->return_value = NMC_RESULT_ERROR_UNKNOWN; + nmc->return_value = NMC_RESULT_ERROR_NOT_FOUND; goto error; } } else { diff --git a/cli/src/nmcli.h b/cli/src/nmcli.h index d63a5cd5ff..c80c4fd4f7 100644 --- a/cli/src/nmcli.h +++ b/cli/src/nmcli.h @@ -55,7 +55,10 @@ typedef enum { NMC_RESULT_ERROR_NM_NOT_RUNNING = 8, /* nmcli and NetworkManager versions mismatch */ - NMC_RESULT_ERROR_VERSIONS_MISMATCH = 9 + NMC_RESULT_ERROR_VERSIONS_MISMATCH = 9, + + /* Connection/Device/AP not found */ + NMC_RESULT_ERROR_NOT_FOUND = 10 } NMCResultCode; typedef enum { diff --git a/man/nmcli.1.in b/man/nmcli.1.in index 540283f69c..6134ef77da 100644 --- a/man/nmcli.1.in +++ b/man/nmcli.1.in @@ -755,6 +755,8 @@ Connection deletion failed NetworkManager is not running .IP "9" 4 \fInmcli\fP and \fINetworkManager\fP versions mismatch +.IP "10" 4 +Connection, device, or access point does not exist. .SH EXAMPLES .PP |