From 5c79b900b59a5ad162ecc836e424468207ff031e Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Tue, 6 Aug 2019 22:46:20 +0200 Subject: New upstream version 1.20.0 --- NEWS | 34 +- clients/cli/connections.c | 63 +- clients/common/nm-meta-setting-desc.c | 2 +- clients/tui/newt/nmt-newt-button-box.c | 10 +- configure | 28 +- configure.ac | 4 +- ...edesktop.NetworkManager.Settings.Connection.xml | 9 +- ...desktop.NetworkManager.Settings.Connection.html | 9 +- docs/api/html/index.html | 2 +- docs/api/html/ix01.html | 1484 ++++++++++---------- docs/api/html/nm-dbus-types.html | 10 +- docs/api/html/nm-settings-ifcfg-rh.html | 2 +- docs/api/version.xml | 2 +- docs/libnm/html/NMConnection.html | 2 +- docs/libnm/html/NMSettingIP6Config.html | 1 + docs/libnm/html/NMSettingVlan.html | 15 +- docs/libnm/html/NMSettingWireless.html | 1 + docs/libnm/html/index.html | 2 +- docs/libnm/html/libnm-nm-dbus-interface.html | 18 +- docs/libnm/html/libnm.devhelp2 | 4 +- docs/libnm/html/usage.html | 2 +- docs/libnm/version.xml | 2 +- examples/python/gi/nm-wg-set | 12 + ...edesktop.NetworkManager.Settings.Connection.xml | 9 +- libnm-core/nm-connection.h | 2 +- libnm-core/nm-dbus-interface.h | 12 +- libnm-core/nm-dbus-types.xml | 10 +- libnm-core/nm-keyfile.c | 7 +- libnm-core/nm-setting-ip6-config.c | 2 +- libnm-core/nm-setting-ip6-config.h | 2 + libnm-core/nm-setting-vlan.c | 41 +- libnm-core/nm-setting-vpn.c | 2 +- libnm-core/nm-setting-wireguard.c | 2 +- libnm-core/nm-setting-wireless.h | 2 + libnm-core/nm-team-utils.c | 4 +- libnm-core/nm-team-utils.h | 2 +- libnm-core/nm-utils.c | 6 +- libnm/nm-settings-ifcfg-rh-docs.xml | 2 +- man/NetworkManager.8 | 6 +- man/NetworkManager.conf.5 | 6 +- man/nm-initrd-generator.8 | 6 +- man/nm-online.1 | 6 +- man/nm-openvswitch.7 | 6 +- man/nm-settings-ifcfg-rh.5 | 8 +- man/nm-settings-ifcfg-rh.xml | 4 +- man/nm-settings-keyfile.5 | 6 +- man/nm-settings-keyfile.xml | 2 +- man/nm-settings.5 | 6 +- man/nm-settings.xml | 2 +- man/nmcli-examples.7 | 6 +- man/nmcli.1 | 6 +- man/nmtui.1 | 6 +- meson.build | 2 +- shared/n-acd/src/n-acd.c | 6 +- shared/n-dhcp4/src/n-dhcp4-c-lease.c | 5 +- shared/n-dhcp4/src/n-dhcp4-outgoing.c | 4 +- shared/nm-glib-aux/nm-hash-utils.h | 3 + shared/nm-glib-aux/nm-keyfile-aux.c | 2 +- shared/nm-glib-aux/nm-shared-utils.c | 15 +- shared/nm-version-macros.h | 4 +- src/devices/adsl/nm-device-adsl.c | 3 +- src/devices/bluetooth/nm-bluez5-dun.c | 2 +- src/devices/nm-device-bond.c | 6 + src/devices/nm-device-bridge.c | 6 + src/devices/nm-device-wireguard.c | 244 +--- src/devices/nm-device.c | 27 +- src/devices/nm-lldp-listener.c | 16 +- src/devices/team/nm-device-team.c | 6 + src/devices/wwan/nm-modem-broadband.c | 2 +- src/initrd/nmi-cmdline-reader.c | 2 +- src/nm-ip4-config.c | 6 + src/nm-ip6-config.c | 3 + src/nm-manager.c | 46 +- src/platform/tests/test-link.c | 2 +- src/platform/wifi/nm-wifi-utils-nl80211.c | 22 +- src/settings/nm-agent-manager.c | 10 - src/settings/nm-settings.c | 6 +- .../plugins/ifcfg-rh/nms-ifcfg-rh-reader.c | 19 +- .../plugins/ifupdown/nms-ifupdown-plugin.c | 2 +- src/supplicant/nm-supplicant-config.c | 14 +- src/supplicant/nm-supplicant-settings-verify.c | 100 +- 81 files changed, 1259 insertions(+), 1225 deletions(-) diff --git a/NEWS b/NEWS index cb2cbbb8..64aac1c4 100644 --- a/NEWS +++ b/NEWS @@ -9,7 +9,7 @@ with the later release. USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE! * The libnm-glib library, deprecated in favor of libnm since NetworkManager 1.0, - and disabled by default since NetworkManager 1.12 has now been removed. + and disabled by default since NetworkManager 1.12, has now been removed. * The DHCP client now defaults to "internal". The default can be overriden at build time by using the --with-config-dhcp-default option of the configure script or at run time by setting the main.dhcp option in the @@ -18,10 +18,10 @@ USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE! * Added a possibility for distributions to ship dispatcher scripts in /usr/lib. * Drop deprecated setting "main.monitor-connection-files" in NetworkManager.conf. This setting now has no more effect and was disabled by default for a long time. - Instead, after changes load files explicitly with `nmcli connection load` and + Instead, after changes, load files explicitly with `nmcli connection load` or `nmcli connection reload`. * Rework parsing team JSON config in libnm and stricter validate settings. - With this NetworkManager rejects settings that it considers invalid while + With this, NetworkManager rejects settings that it considers invalid while still allowing setting arbitrary JSON config directly. * Drop ibft settings plugin. This functionality is now covered by using nm-initrd-generator from initrd to pre-generate in-memory profiles. @@ -30,11 +30,13 @@ USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE! and the user can now manually configure such policy routing rules. * Support "wireguard.ip4-auto-default-route" and "wireguard.ip6-auto-default-route". This automatically implements the "Improved Rule-based Routing" of wg-quick - to help with routing loops. Note that this is now enabled by default, so - there is a change in behavior if your WireGuard connection profiles had the - default-route (0.0.0.0/0 or ::/0) in allowed-ips. + to help avoiding routing loops when setting the default-route on the WireGuard + interface. Note that this is now enabled by default, so there is a change in behavior + if your WireGuard connection profiles from before had a default-route (/0) + in allowed-ips. * Rework implementation of settings plugins and how profiles are presisted - to disk. + to disk. This is a large internal refactoring of the settings plugins that + allows to migrate a connection profile between plugins. * In-memory profiles are now only handled by keyfile plugin and will also be persisted to /run directory. This allows to restart NetworkManager without loosing these profiles and it provides a file-system based API for creating @@ -47,13 +49,17 @@ USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE! the profile at the moment when creating the profile. Also add support for this API to libnm. * Add flag "no-reapply" to Update2() D-Bus method. Normally, when a connection - profile gets modified, this only changes the profile itself. If the profile - is activated at a device, then the device's configuration does not update before - the profile is fully re-activated or Reapply on the device gets called. There - was an exception to this: the "connection.zone" and the "connection.metered" - properties take effect immediately. The "no-reapply" flag allows suppressing this, - so that not changes take effect automatically. The purpose is to really only modify - the profile itself without changes to the runtime configuration of the device. + profile gets modified, this only changes the profile itself. When the profile + is currently activated on a device, then the device's configuration does not update + before the profile is fully re-activated or Reapply on the device is called. There + is an exception to this: the "connection.zone" and the "connection.metered" + properties take effect immediately. The "no-reapply" flag allows suppressing to + reapply any properties, so that no changes take effect automatically. The purpose + is to really only modify the profile itself without changes to the runtime configuration + of the device. +* Add "ipv6.method=disabled" to disable IPv6 on a device, like also possible for + IPv4. Until now, the users could only set "ipv6.method=ignore" which means the + users are free to set IPv6 related sysctl values themselves. * Added support for Wi-Fi Mesh network. The following changes were backported to 1.18.x releases between 1.18.0 diff --git a/clients/cli/connections.c b/clients/cli/connections.c index 53105f95..e365980e 100644 --- a/clients/cli/connections.c +++ b/clients/cli/connections.c @@ -1298,17 +1298,16 @@ got_secrets (GObject *source_object, GAsyncResult *res, gpointer user_data) { NMRemoteConnection *remote = NM_REMOTE_CONNECTION (source_object); GetSecretsData *data = user_data; - GVariant *secrets; - GError *error = NULL; + gs_unref_variant GVariant *secrets = NULL; secrets = nm_remote_connection_get_secrets_finish (remote, res, NULL); if (secrets) { + gs_free_error GError *error = NULL; + if (!nm_connection_update_secrets (data->local, NULL, secrets, &error) && error) { g_printerr (_("Error updating secrets for %s: %s\n"), data->setting_name, error->message); - g_clear_error (&error); } - g_variant_unref (secrets); } g_main_loop_quit (data->loop); @@ -2712,7 +2711,6 @@ parse_passwords (const char *passwd_file, GError **error) if (!passwd_file) return g_steal_pointer (&pwds_hash); - /* Read the passwords file */ if (!g_file_get_contents (passwd_file, &contents, &len, &local_err)) { g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_USER_INPUT, _("failed to read passwd-file '%s': %s"), @@ -2722,7 +2720,7 @@ parse_passwords (const char *passwd_file, GError **error) } strv = nm_utils_strsplit_set (contents, "\r\n"); - for (iter = strv; *iter; iter++) { + for (iter = strv; strv && *iter; iter++) { gs_free char *iter_s = g_strdup (*iter); pwd = strchr (iter_s, ':'); @@ -2764,6 +2762,7 @@ parse_passwords (const char *passwd_file, GError **error) g_hash_table_insert (pwds_hash, pwd_spec, g_strdup (pwd)); } + return g_steal_pointer (&pwds_hash); } @@ -2783,22 +2782,24 @@ nmc_activate_connection (NmCli *nmc, NMDevice *device = NULL; const char *spec_object = NULL; gboolean device_found; - GError *local = NULL; g_return_val_if_fail (nmc, FALSE); g_return_val_if_fail (error == NULL || *error == NULL, FALSE); - if (connection && (ifname || ap || nsp)) { + if ( connection + && ( ifname + || ap + || nsp)) { + gs_free_error GError *local = NULL; + device_found = find_device_for_connection (nmc, connection, ifname, ap, nsp, &device, &spec_object, &local); /* Virtual connection may not have their interfaces created yet */ if (!device_found && !nm_connection_is_virtual (connection)) { g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_CON_ACTIVATION, "%s", local->message); - g_clear_error (&local); return FALSE; } - g_clear_error (&local); } else if (ifname) { device = nm_client_get_device_by_iface (nmc->client, ifname); if (!device) { @@ -2813,11 +2814,10 @@ nmc_activate_connection (NmCli *nmc, } /* Parse passwords given in passwords file */ - pwds_hash = parse_passwords (pwds, &local); - if (local) { - g_propagate_error (error, local); + pwds_hash = parse_passwords (pwds, error); + if (!pwds_hash) return FALSE; - } + if (nmc->pwds_hash) g_hash_table_destroy (nmc->pwds_hash); nmc->pwds_hash = pwds_hash; @@ -7572,18 +7572,19 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t } } else { gs_free char *prop_name = NULL; - GError *tmp_err = NULL; + gs_free GError *tmp_err = NULL; prop_name = is_property_valid (ss, cmd_arg_p, &tmp_err); if (prop_name) { if (!nmc_setting_set_property (nmc->client, ss, prop_name, '\0', NULL, &tmp_err)) { - g_print (_("Error: failed to remove value of '%s': %s\n"), prop_name, + g_print (_("Error: failed to remove value of '%s': %s\n"), + prop_name, tmp_err->message); - g_clear_error (&tmp_err); } } else { - /* If the string is not a property, try it as a setting */ NMSetting *s_tmp; + + /* If the string is not a property, try it as a setting */ s_tmp = is_setting_valid (connection, valid_settings_main, valid_settings_slave, @@ -7591,16 +7592,17 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t if (s_tmp) { /* Remove setting from the connection */ connection_remove_setting (connection, s_tmp); + /* coverity[copy_paste_error] - suppress Coverity COPY_PASTE_ERROR defect */ if (ss == menu_ctx.curr_setting) { /* If we removed the setting we are in, go up */ menu_switch_to_level0 (&nmc->nmc_config, &menu_ctx, BASE_PROMPT); nmc_tab_completion.setting = NULL; /* for TAB completion */ } - } else + } else { g_print (_("Error: %s properties, nor it is a setting name.\n"), tmp_err->message); - g_clear_error (&tmp_err); + } } } } @@ -7660,7 +7662,7 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t /* Show description for all properties */ print_setting_description (ss); } else { - GError *tmp_err = NULL; + gs_free_error GError *tmp_err = NULL; gs_free char *prop_name = NULL; prop_name = is_property_valid (ss, cmd_arg_p, &tmp_err); @@ -7677,11 +7679,11 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t cmd_arg_p); if (s_tmp) print_setting_description (s_tmp); - else + else { g_print (_("Error: invalid property: %s, " "neither a valid setting name.\n"), tmp_err->message); - g_clear_error (&tmp_err); + } } } } @@ -7768,19 +7770,21 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t if ( menu_ctx.curr_setting && (!cmd_arg || strcmp (cmd_arg, "all") != 0)) { - GError *tmp_err = NULL; - (void) nm_setting_verify (menu_ctx.curr_setting, NULL, &tmp_err); + gs_free_error GError *tmp_err = NULL; + + nm_setting_verify (menu_ctx.curr_setting, NULL, &tmp_err); g_print (_("Verify setting '%s': %s\n"), nm_setting_get_name (menu_ctx.curr_setting), tmp_err ? tmp_err->message : "OK"); - g_clear_error (&tmp_err); } else { - GError *tmp_err = NULL; - gboolean valid, modified; + gs_free_error GError *tmp_err = NULL; gboolean fixed = TRUE; + gboolean modified; + gboolean valid; valid = nm_connection_verify (connection, &tmp_err); - if (!valid && (g_strcmp0 (cmd_arg, "fix") == 0)) { + if ( !valid + && nm_streq0 (cmd_arg, "fix")) { /* Try to fix normalizable errors */ g_clear_error (&tmp_err); fixed = nm_connection_normalize (connection, NULL, &modified, &tmp_err); @@ -7789,7 +7793,6 @@ editor_menu_main (NmCli *nmc, NMConnection *connection, const char *connection_t tmp_err ? tmp_err->message : "OK"); if (!fixed) g_print (_("The error cannot be fixed automatically.\n")); - g_clear_error (&tmp_err); } break; diff --git a/clients/common/nm-meta-setting-desc.c b/clients/common/nm-meta-setting-desc.c index c1a5c2a7..5c71868d 100644 --- a/clients/common/nm-meta-setting-desc.c +++ b/clients/common/nm-meta-setting-desc.c @@ -3755,7 +3755,7 @@ _get_fcn_vlan_xgress_priority_map (ARGS_GET_FCN) NMVlanPriorityMap map_type = _vlan_priority_map_type_from_property_info (property_info); NMSettingVlan *s_vlan = NM_SETTING_VLAN (setting); GString *str = NULL; - guint32 i, num; + gint32 i, num; RETURN_UNSUPPORTED_GET_TYPE (); diff --git a/clients/tui/newt/nmt-newt-button-box.c b/clients/tui/newt/nmt-newt-button-box.c index 79222c9a..c69c1911 100644 --- a/clients/tui/newt/nmt-newt-button-box.c +++ b/clients/tui/newt/nmt-newt-button-box.c @@ -262,12 +262,10 @@ nmt_newt_button_box_size_request (NmtNewtWidget *widget, size_request_buttons (bbox, priv->start_buttons, width, height); size_request_buttons (bbox, priv->end_buttons, width, height); - if (priv->start_buttons && priv->end_buttons) { - if (priv->orientation == NMT_NEWT_BUTTON_BOX_HORIZONTAL) - *width += 1; - else - *height += 1; - } + if (priv->orientation == NMT_NEWT_BUTTON_BOX_HORIZONTAL) + *width += 1; + else + *height += 1; } static void diff --git a/configure b/configure index 0b1ecea7..b5f58427 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for NetworkManager 1.19.90. +# Generated by GNU Autoconf 2.69 for NetworkManager 1.20.0. # # Report bugs to . # @@ -591,8 +591,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='NetworkManager' PACKAGE_TARNAME='NetworkManager' -PACKAGE_VERSION='1.19.90' -PACKAGE_STRING='NetworkManager 1.19.90' +PACKAGE_VERSION='1.20.0' +PACKAGE_STRING='NetworkManager 1.20.0' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager' PACKAGE_URL='' @@ -1719,7 +1719,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures NetworkManager 1.19.90 to adapt to many kinds of systems. +\`configure' configures NetworkManager 1.20.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1789,7 +1789,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of NetworkManager 1.19.90:";; + short | recursive ) echo "Configuration of NetworkManager 1.20.0:";; esac cat <<\_ACEOF @@ -2127,7 +2127,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -NetworkManager configure 1.19.90 +NetworkManager configure 1.20.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2900,7 +2900,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by NetworkManager $as_me 1.19.90, which was +It was created by NetworkManager $as_me 1.20.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3770,7 +3770,7 @@ fi # Define the identity of the package. PACKAGE='NetworkManager' - VERSION='1.19.90' + VERSION='1.20.0' cat >>confdefs.h <<_ACEOF @@ -17953,9 +17953,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu NM_MAJOR_VERSION=1 -NM_MINOR_VERSION=19 -NM_MICRO_VERSION=90 -NM_VERSION=1.19.90 +NM_MINOR_VERSION=20 +NM_MICRO_VERSION=0 +NM_VERSION=1.20.0 @@ -17963,7 +17963,7 @@ NM_VERSION=1.19.90 -NM_GIT_SHA=e5912389c66d5545cd35e5497dee75933b1dcfb5 +NM_GIT_SHA=c438f01b19e180fc15cb860321c3ba5cd821adfd if test """" != "no-config-h" ; then @@ -28843,7 +28843,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by NetworkManager $as_me 1.19.90, which was +This file was extended by NetworkManager $as_me 1.20.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -28909,7 +28909,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -NetworkManager config.status 1.19.90 +NetworkManager config.status 1.20.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 86aac8a9..2d0e9252 100644 --- a/configure.ac +++ b/configure.ac @@ -7,8 +7,8 @@ dnl - add corresponding NM_VERSION_x_y_z macros in dnl "shared/nm-version-macros.h.in" dnl - update number in meson.build m4_define([nm_major_version], [1]) -m4_define([nm_minor_version], [19]) -m4_define([nm_micro_version], [90]) +m4_define([nm_minor_version], [20]) +m4_define([nm_micro_version], [0]) m4_define([nm_version], [nm_major_version.nm_minor_version.nm_micro_version]) diff --git a/docs/api/dbus-org.freedesktop.NetworkManager.Settings.Connection.xml b/docs/api/dbus-org.freedesktop.NetworkManager.Settings.Connection.xml index 5e08acf5..62e1130b 100644 --- a/docs/api/dbus-org.freedesktop.NetworkManager.Settings.Connection.xml +++ b/docs/api/dbus-org.freedesktop.NetworkManager.Settings.Connection.xml @@ -171,7 +171,8 @@ Update2 (IN a{sa{sv}} settings, "0x4" (in-memory-detached), "0x8" (in-memory-only), "0x10" (volatile), - "0x20" (block-autoconnect). + "0x20" (block-autoconnect), + "0x40" (no-reapply). Unknown flags cause the call to fail. args: optional arguments dictionary, for extensibility. Currently no arguments are accepted. Specifying unknown keys causes the call @@ -183,6 +184,12 @@ Update2 (IN a{sa{sv}} settings, the change is only made in memory (without touching an eventual profile on disk). If neither 0x1 nor 0x2 is set, the change is made in memory only, if the connection is already in memory only. + The flags 0x4 (in-memory-detached) and 0x8 (in-memory-only) are like + "in-memory", but behave slightly different when migrating the profile + from disk to in-memory. + The flag 0x20 (block-autoconnect) blocks auto-connect on the updated + profile, and 0x40 (no-reapply) prevents "connection.zone" and "connection.metered" + properties to take effect on currently active devices. Secrets may be part of the update request, and will be either stored in persistent storage or sent to a Secret Agent for storage, depending on the flags associated with each secret. diff --git a/docs/api/html/gdbus-org.freedesktop.NetworkManager.Settings.Connection.html b/docs/api/html/gdbus-org.freedesktop.NetworkManager.Settings.Connection.html index 030af0d6..7226560d 100644 --- a/docs/api/html/gdbus-org.freedesktop.NetworkManager.Settings.Connection.html +++ b/docs/api/html/gdbus-org.freedesktop.NetworkManager.Settings.Connection.html @@ -216,7 +216,8 @@ Update2 (IN a{sa{sv}} settings, "0x4" (in-memory-detached), "0x8" (in-memory-only), "0x10" (volatile), - "0x20" (block-autoconnect). + "0x20" (block-autoconnect), + "0x40" (no-reapply). Unknown flags cause the call to fail. args: optional arguments dictionary, for extensibility. Currently no arguments are accepted. Specifying unknown keys causes the call @@ -229,6 +230,12 @@ Update2 (IN a{sa{sv}} settings, the change is only made in memory (without touching an eventual profile on disk). If neither 0x1 nor 0x2 is set, the change is made in memory only, if the connection is already in memory only. + The flags 0x4 (in-memory-detached) and 0x8 (in-memory-only) are like + "in-memory", but behave slightly different when migrating the profile + from disk to in-memory. + The flag 0x20 (block-autoconnect) blocks auto-connect on the updated + profile, and 0x40 (no-reapply) prevents "connection.zone" and "connection.metered" + properties to take effect on currently active devices. Secrets may be part of the update request, and will be either stored in persistent storage or sent to a Secret Agent for storage, depending on the flags associated with each secret. diff --git a/docs/api/html/index.html b/docs/api/html/index.html index 1511a823..b2d37a05 100644 --- a/docs/api/html/index.html +++ b/docs/api/html/index.html @@ -16,7 +16,7 @@

- for NetworkManager 1.19.90 + for NetworkManager 1.20.0 The latest version of this documentation can be found on-line at https://developer.gnome.org/NetworkManager/stable/. diff --git a/docs/api/html/ix01.html b/docs/api/html/ix01.html index 787793b7..94a7372c 100644 --- a/docs/api/html/ix01.html +++ b/docs/api/html/ix01.html @@ -26,1601 +26,1601 @@

Symbols

-
org.freedesktop.NetworkManager.AccessPoint, org.freedesktop.NetworkManager.AccessPoint +
org.freedesktop.NetworkManager.AccessPoint, org.freedesktop.NetworkManager.AccessPoint
-
org.freedesktop.NetworkManager.AccessPoint::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.AccessPoint::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.AccessPoint:Flags, The "Flags" property +
org.freedesktop.NetworkManager.AccessPoint:Flags, The "Flags" property
-
org.freedesktop.NetworkManager.AccessPoint:Frequency, The "Frequency" property +
org.freedesktop.NetworkManager.AccessPoint:Frequency, The "Frequency" property
-
org.freedesktop.NetworkManager.AccessPoint:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.AccessPoint:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.AccessPoint:LastSeen, The "LastSeen" property +
org.freedesktop.NetworkManager.AccessPoint:LastSeen, The "LastSeen" property
-
org.freedesktop.NetworkManager.AccessPoint:MaxBitrate, The "MaxBitrate" property +
org.freedesktop.NetworkManager.AccessPoint:MaxBitrate, The "MaxBitrate" property
-
org.freedesktop.NetworkManager.AccessPoint:Mode, The "Mode" property +
org.freedesktop.NetworkManager.AccessPoint:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.AccessPoint:RsnFlags, The "RsnFlags" property +
org.freedesktop.NetworkManager.AccessPoint:RsnFlags, The "RsnFlags" property
-
org.freedesktop.NetworkManager.AccessPoint:Ssid, The "Ssid" property +
org.freedesktop.NetworkManager.AccessPoint:Ssid, The "Ssid" property
-
org.freedesktop.NetworkManager.AccessPoint:Strength, The "Strength" property +
org.freedesktop.NetworkManager.AccessPoint:Strength, The "Strength" property
-
org.freedesktop.NetworkManager.AccessPoint:WpaFlags, The "WpaFlags" property +
org.freedesktop.NetworkManager.AccessPoint:WpaFlags, The "WpaFlags" property
-
org.freedesktop.NetworkManager.AgentManager, org.freedesktop.NetworkManager.AgentManager +
org.freedesktop.NetworkManager.AgentManager, org.freedesktop.NetworkManager.AgentManager
-
org.freedesktop.NetworkManager.AgentManager.Register(), The Register() method +
org.freedesktop.NetworkManager.AgentManager.Register(), The Register() method
-
org.freedesktop.NetworkManager.AgentManager.RegisterWithCapabilities(), The RegisterWithCapabilities() method +
org.freedesktop.NetworkManager.AgentManager.RegisterWithCapabilities(), The RegisterWithCapabilities() method
-
org.freedesktop.NetworkManager.AgentManager.Unregister(), The Unregister() method +
org.freedesktop.NetworkManager.AgentManager.Unregister(), The Unregister() method
-
org.freedesktop.NetworkManager.Device, org.freedesktop.NetworkManager.Device +
org.freedesktop.NetworkManager.Device, org.freedesktop.NetworkManager.Device
-
org.freedesktop.NetworkManager.Device.Adsl, org.freedesktop.NetworkManager.Device.Adsl +
org.freedesktop.NetworkManager.Device.Adsl, org.freedesktop.NetworkManager.Device.Adsl
-
org.freedesktop.NetworkManager.Device.Adsl::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Adsl::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Adsl:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Adsl:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Bluetooth, org.freedesktop.NetworkManager.Device.Bluetooth +
org.freedesktop.NetworkManager.Device.Bluetooth, org.freedesktop.NetworkManager.Device.Bluetooth
-
org.freedesktop.NetworkManager.Device.Bluetooth::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Bluetooth::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Bluetooth:BtCapabilities, The "BtCapabilities" property +
org.freedesktop.NetworkManager.Device.Bluetooth:BtCapabilities, The "BtCapabilities" property
-
org.freedesktop.NetworkManager.Device.Bluetooth:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Bluetooth:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Bluetooth:Name, The "Name" property +
org.freedesktop.NetworkManager.Device.Bluetooth:Name, The "Name" property
-
org.freedesktop.NetworkManager.Device.Bond, org.freedesktop.NetworkManager.Device.Bond +
org.freedesktop.NetworkManager.Device.Bond, org.freedesktop.NetworkManager.Device.Bond
-
org.freedesktop.NetworkManager.Device.Bond::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Bond::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Bond:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Bond:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Bond:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Bond:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Bond:Slaves, The "Slaves" property +
org.freedesktop.NetworkManager.Device.Bond:Slaves, The "Slaves" property
-
org.freedesktop.NetworkManager.Device.Bridge, org.freedesktop.NetworkManager.Device.Bridge +
org.freedesktop.NetworkManager.Device.Bridge, org.freedesktop.NetworkManager.Device.Bridge
-
org.freedesktop.NetworkManager.Device.Bridge::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Bridge::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Bridge:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Bridge:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Bridge:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Bridge:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Bridge:Slaves, The "Slaves" property +
org.freedesktop.NetworkManager.Device.Bridge:Slaves, The "Slaves" property
-
org.freedesktop.NetworkManager.Device.Delete(), The Delete() method +
org.freedesktop.NetworkManager.Device.Delete(), The Delete() method
-
org.freedesktop.NetworkManager.Device.Disconnect(), The Disconnect() method +
org.freedesktop.NetworkManager.Device.Disconnect(), The Disconnect() method
-
org.freedesktop.NetworkManager.Device.Dummy, org.freedesktop.NetworkManager.Device.Dummy +
org.freedesktop.NetworkManager.Device.Dummy, org.freedesktop.NetworkManager.Device.Dummy
-
org.freedesktop.NetworkManager.Device.Dummy::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Dummy::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Dummy:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Dummy:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Generic, org.freedesktop.NetworkManager.Device.Generic +
org.freedesktop.NetworkManager.Device.Generic, org.freedesktop.NetworkManager.Device.Generic
-
org.freedesktop.NetworkManager.Device.Generic::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Generic::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Generic:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Generic:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Generic:TypeDescription, The "TypeDescription" property +
org.freedesktop.NetworkManager.Device.Generic:TypeDescription, The "TypeDescription" property
-
org.freedesktop.NetworkManager.Device.GetAppliedConnection(), The GetAppliedConnection() method +
org.freedesktop.NetworkManager.Device.GetAppliedConnection(), The GetAppliedConnection() method
-
org.freedesktop.NetworkManager.Device.Infiniband, org.freedesktop.NetworkManager.Device.Infiniband +
org.freedesktop.NetworkManager.Device.Infiniband, org.freedesktop.NetworkManager.Device.Infiniband
-
org.freedesktop.NetworkManager.Device.Infiniband::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Infiniband::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Infiniband:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Infiniband:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Infiniband:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Infiniband:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.IPTunnel, org.freedesktop.NetworkManager.Device.IPTunnel +
org.freedesktop.NetworkManager.Device.IPTunnel, org.freedesktop.NetworkManager.Device.IPTunnel
-
org.freedesktop.NetworkManager.Device.IPTunnel::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.IPTunnel::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.IPTunnel:EncapsulationLimit, The "EncapsulationLimit" property +
org.freedesktop.NetworkManager.Device.IPTunnel:EncapsulationLimit, The "EncapsulationLimit" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Flags, The "Flags" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Flags, The "Flags" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:FlowLabel, The "FlowLabel" property +
org.freedesktop.NetworkManager.Device.IPTunnel:FlowLabel, The "FlowLabel" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:InputKey, The "InputKey" property +
org.freedesktop.NetworkManager.Device.IPTunnel:InputKey, The "InputKey" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Local, The "Local" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Local, The "Local" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Mode, The "Mode" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:OutputKey, The "OutputKey" property +
org.freedesktop.NetworkManager.Device.IPTunnel:OutputKey, The "OutputKey" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:PathMtuDiscovery, The "PathMtuDiscovery" property +
org.freedesktop.NetworkManager.Device.IPTunnel:PathMtuDiscovery, The "PathMtuDiscovery" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Remote, The "Remote" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Remote, The "Remote" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Tos, The "Tos" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Tos, The "Tos" property
-
org.freedesktop.NetworkManager.Device.IPTunnel:Ttl, The "Ttl" property +
org.freedesktop.NetworkManager.Device.IPTunnel:Ttl, The "Ttl" property
-
org.freedesktop.NetworkManager.Device.Lowpan, org.freedesktop.NetworkManager.Device.Lowpan +
org.freedesktop.NetworkManager.Device.Lowpan, org.freedesktop.NetworkManager.Device.Lowpan
-
org.freedesktop.NetworkManager.Device.Lowpan:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Lowpan:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Lowpan:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.Lowpan:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.Macsec, org.freedesktop.NetworkManager.Device.Macsec +
org.freedesktop.NetworkManager.Device.Macsec, org.freedesktop.NetworkManager.Device.Macsec
-
org.freedesktop.NetworkManager.Device.Macsec::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Macsec::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Macsec:CipherSuite, The "CipherSuite" property +
org.freedesktop.NetworkManager.Device.Macsec:CipherSuite, The "CipherSuite" property
-
org.freedesktop.NetworkManager.Device.Macsec:EncodingSa, The "EncodingSa" property +
org.freedesktop.NetworkManager.Device.Macsec:EncodingSa, The "EncodingSa" property
-
org.freedesktop.NetworkManager.Device.Macsec:Encrypt, The "Encrypt" property +
org.freedesktop.NetworkManager.Device.Macsec:Encrypt, The "Encrypt" property
-
org.freedesktop.NetworkManager.Device.Macsec:Es, The "Es" property +
org.freedesktop.NetworkManager.Device.Macsec:Es, The "Es" property
-
org.freedesktop.NetworkManager.Device.Macsec:IcvLength, The "IcvLength" property +
org.freedesktop.NetworkManager.Device.Macsec:IcvLength, The "IcvLength" property
-
org.freedesktop.NetworkManager.Device.Macsec:IncludeSci, The "IncludeSci" property +
org.freedesktop.NetworkManager.Device.Macsec:IncludeSci, The "IncludeSci" property
-
org.freedesktop.NetworkManager.Device.Macsec:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.Macsec:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.Macsec:Protect, The "Protect" property +
org.freedesktop.NetworkManager.Device.Macsec:Protect, The "Protect" property
-
org.freedesktop.NetworkManager.Device.Macsec:ReplayProtect, The "ReplayProtect" property +
org.freedesktop.NetworkManager.Device.Macsec:ReplayProtect, The "ReplayProtect" property
-
org.freedesktop.NetworkManager.Device.Macsec:Scb, The "Scb" property +
org.freedesktop.NetworkManager.Device.Macsec:Scb, The "Scb" property
-
org.freedesktop.NetworkManager.Device.Macsec:Sci, The "Sci" property +
org.freedesktop.NetworkManager.Device.Macsec:Sci, The "Sci" property
-
org.freedesktop.NetworkManager.Device.Macsec:Validation, The "Validation" property +
org.freedesktop.NetworkManager.Device.Macsec:Validation, The "Validation" property
-
org.freedesktop.NetworkManager.Device.Macsec:Window, The "Window" property +
org.freedesktop.NetworkManager.Device.Macsec:Window, The "Window" property
-
org.freedesktop.NetworkManager.Device.Macvlan, org.freedesktop.NetworkManager.Device.Macvlan +
org.freedesktop.NetworkManager.Device.Macvlan, org.freedesktop.NetworkManager.Device.Macvlan
-
org.freedesktop.NetworkManager.Device.Macvlan::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Macvlan::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Macvlan:Mode, The "Mode" property +
org.freedesktop.NetworkManager.Device.Macvlan:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.Device.Macvlan:NoPromisc, The "NoPromisc" property +
org.freedesktop.NetworkManager.Device.Macvlan:NoPromisc, The "NoPromisc" property
-
org.freedesktop.NetworkManager.Device.Macvlan:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.Macvlan:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.Macvlan:Tap, The "Tap" property +
org.freedesktop.NetworkManager.Device.Macvlan:Tap, The "Tap" property
-
org.freedesktop.NetworkManager.Device.Modem, org.freedesktop.NetworkManager.Device.Modem +
org.freedesktop.NetworkManager.Device.Modem, org.freedesktop.NetworkManager.Device.Modem
-
org.freedesktop.NetworkManager.Device.Modem::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Modem::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Modem:Apn, The "Apn" property +
org.freedesktop.NetworkManager.Device.Modem:Apn, The "Apn" property
-
org.freedesktop.NetworkManager.Device.Modem:CurrentCapabilities, The "CurrentCapabilities" property +
org.freedesktop.NetworkManager.Device.Modem:CurrentCapabilities, The "CurrentCapabilities" property
-
org.freedesktop.NetworkManager.Device.Modem:DeviceId, The "DeviceId" property +
org.freedesktop.NetworkManager.Device.Modem:DeviceId, The "DeviceId" property
-
org.freedesktop.NetworkManager.Device.Modem:ModemCapabilities, The "ModemCapabilities" property +
org.freedesktop.NetworkManager.Device.Modem:ModemCapabilities, The "ModemCapabilities" property
-
org.freedesktop.NetworkManager.Device.Modem:OperatorCode, The "OperatorCode" property +
org.freedesktop.NetworkManager.Device.Modem:OperatorCode, The "OperatorCode" property
-
org.freedesktop.NetworkManager.Device.OlpcMesh, org.freedesktop.NetworkManager.Device.OlpcMesh +
org.freedesktop.NetworkManager.Device.OlpcMesh, org.freedesktop.NetworkManager.Device.OlpcMesh
-
org.freedesktop.NetworkManager.Device.OlpcMesh::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.OlpcMesh::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.OlpcMesh:ActiveChannel, The "ActiveChannel" property +
org.freedesktop.NetworkManager.Device.OlpcMesh:ActiveChannel, The "ActiveChannel" property
-
org.freedesktop.NetworkManager.Device.OlpcMesh:Companion, The "Companion" property +
org.freedesktop.NetworkManager.Device.OlpcMesh:Companion, The "Companion" property
-
org.freedesktop.NetworkManager.Device.OlpcMesh:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.OlpcMesh:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.OvsBridge, org.freedesktop.NetworkManager.Device.OvsBridge +
org.freedesktop.NetworkManager.Device.OvsBridge, org.freedesktop.NetworkManager.Device.OvsBridge
-
org.freedesktop.NetworkManager.Device.OvsBridge::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.OvsBridge::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.OvsBridge:Slaves, The "Slaves" property +
org.freedesktop.NetworkManager.Device.OvsBridge:Slaves, The "Slaves" property
-
org.freedesktop.NetworkManager.Device.OvsInterface, org.freedesktop.NetworkManager.Device.OvsInterface +
org.freedesktop.NetworkManager.Device.OvsInterface, org.freedesktop.NetworkManager.Device.OvsInterface
-
org.freedesktop.NetworkManager.Device.OvsInterface::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.OvsInterface::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.OvsPort, org.freedesktop.NetworkManager.Device.OvsPort +
org.freedesktop.NetworkManager.Device.OvsPort, org.freedesktop.NetworkManager.Device.OvsPort
-
org.freedesktop.NetworkManager.Device.OvsPort::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.OvsPort::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.OvsPort:Slaves, The "Slaves" property +
org.freedesktop.NetworkManager.Device.OvsPort:Slaves, The "Slaves" property
-
org.freedesktop.NetworkManager.Device.Ppp, org.freedesktop.NetworkManager.Device.Ppp +
org.freedesktop.NetworkManager.Device.Ppp, org.freedesktop.NetworkManager.Device.Ppp
-
org.freedesktop.NetworkManager.Device.Ppp::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Ppp::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Reapply(), The Reapply() method +
org.freedesktop.NetworkManager.Device.Reapply(), The Reapply() method
-
org.freedesktop.NetworkManager.Device.Statistics, org.freedesktop.NetworkManager.Device.Statistics +
org.freedesktop.NetworkManager.Device.Statistics, org.freedesktop.NetworkManager.Device.Statistics
-
org.freedesktop.NetworkManager.Device.Statistics::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Statistics::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Statistics:RefreshRateMs, The "RefreshRateMs" property +
org.freedesktop.NetworkManager.Device.Statistics:RefreshRateMs, The "RefreshRateMs" property
-
org.freedesktop.NetworkManager.Device.Statistics:RxBytes, The "RxBytes" property +
org.freedesktop.NetworkManager.Device.Statistics:RxBytes, The "RxBytes" property
-
org.freedesktop.NetworkManager.Device.Statistics:TxBytes, The "TxBytes" property +
org.freedesktop.NetworkManager.Device.Statistics:TxBytes, The "TxBytes" property
-
org.freedesktop.NetworkManager.Device.Team, org.freedesktop.NetworkManager.Device.Team +
org.freedesktop.NetworkManager.Device.Team, org.freedesktop.NetworkManager.Device.Team
-
org.freedesktop.NetworkManager.Device.Team::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Team::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Team:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Team:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Team:Config, The "Config" property +
org.freedesktop.NetworkManager.Device.Team:Config, The "Config" property
-
org.freedesktop.NetworkManager.Device.Team:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Team:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Team:Slaves, The "Slaves" property +
org.freedesktop.NetworkManager.Device.Team:Slaves, The "Slaves" property
-
org.freedesktop.NetworkManager.Device.Tun, org.freedesktop.NetworkManager.Device.Tun +
org.freedesktop.NetworkManager.Device.Tun, org.freedesktop.NetworkManager.Device.Tun
-
org.freedesktop.NetworkManager.Device.Tun::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Tun::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Tun:Group, The "Group" property +
org.freedesktop.NetworkManager.Device.Tun:Group, The "Group" property
-
org.freedesktop.NetworkManager.Device.Tun:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Tun:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Tun:Mode, The "Mode" property +
org.freedesktop.NetworkManager.Device.Tun:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.Device.Tun:MultiQueue, The "MultiQueue" property +
org.freedesktop.NetworkManager.Device.Tun:MultiQueue, The "MultiQueue" property
-
org.freedesktop.NetworkManager.Device.Tun:NoPi, The "NoPi" property +
org.freedesktop.NetworkManager.Device.Tun:NoPi, The "NoPi" property
-
org.freedesktop.NetworkManager.Device.Tun:Owner, The "Owner" property +
org.freedesktop.NetworkManager.Device.Tun:Owner, The "Owner" property
-
org.freedesktop.NetworkManager.Device.Tun:VnetHdr, The "VnetHdr" property +
org.freedesktop.NetworkManager.Device.Tun:VnetHdr, The "VnetHdr" property
-
org.freedesktop.NetworkManager.Device.Veth, org.freedesktop.NetworkManager.Device.Veth +
org.freedesktop.NetworkManager.Device.Veth, org.freedesktop.NetworkManager.Device.Veth
-
org.freedesktop.NetworkManager.Device.Veth::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Veth::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Veth:Peer, The "Peer" property +
org.freedesktop.NetworkManager.Device.Veth:Peer, The "Peer" property
-
org.freedesktop.NetworkManager.Device.Vlan, org.freedesktop.NetworkManager.Device.Vlan +
org.freedesktop.NetworkManager.Device.Vlan, org.freedesktop.NetworkManager.Device.Vlan
-
org.freedesktop.NetworkManager.Device.Vlan::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Vlan::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Vlan:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Vlan:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Vlan:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Vlan:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Vlan:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.Vlan:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.Vlan:VlanId, The "VlanId" property +
org.freedesktop.NetworkManager.Device.Vlan:VlanId, The "VlanId" property
-
org.freedesktop.NetworkManager.Device.Vxlan, org.freedesktop.NetworkManager.Device.Vxlan +
org.freedesktop.NetworkManager.Device.Vxlan, org.freedesktop.NetworkManager.Device.Vxlan
-
org.freedesktop.NetworkManager.Device.Vxlan::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Vxlan::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Vxlan:Ageing, The "Ageing" property +
org.freedesktop.NetworkManager.Device.Vxlan:Ageing, The "Ageing" property
-
org.freedesktop.NetworkManager.Device.Vxlan:DstPort, The "DstPort" property +
org.freedesktop.NetworkManager.Device.Vxlan:DstPort, The "DstPort" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Group, The "Group" property +
org.freedesktop.NetworkManager.Device.Vxlan:Group, The "Group" property
-
org.freedesktop.NetworkManager.Device.Vxlan:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Vxlan:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Id, The "Id" property +
org.freedesktop.NetworkManager.Device.Vxlan:Id, The "Id" property
-
org.freedesktop.NetworkManager.Device.Vxlan:L2miss, The "L2miss" property +
org.freedesktop.NetworkManager.Device.Vxlan:L2miss, The "L2miss" property
-
org.freedesktop.NetworkManager.Device.Vxlan:L3miss, The "L3miss" property +
org.freedesktop.NetworkManager.Device.Vxlan:L3miss, The "L3miss" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Learning, The "Learning" property +
org.freedesktop.NetworkManager.Device.Vxlan:Learning, The "Learning" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Limit, The "Limit" property +
org.freedesktop.NetworkManager.Device.Vxlan:Limit, The "Limit" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Local, The "Local" property +
org.freedesktop.NetworkManager.Device.Vxlan:Local, The "Local" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Parent, The "Parent" property +
org.freedesktop.NetworkManager.Device.Vxlan:Parent, The "Parent" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Proxy, The "Proxy" property +
org.freedesktop.NetworkManager.Device.Vxlan:Proxy, The "Proxy" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Rsc, The "Rsc" property +
org.freedesktop.NetworkManager.Device.Vxlan:Rsc, The "Rsc" property
-
org.freedesktop.NetworkManager.Device.Vxlan:SrcPortMax, The "SrcPortMax" property +
org.freedesktop.NetworkManager.Device.Vxlan:SrcPortMax, The "SrcPortMax" property
-
org.freedesktop.NetworkManager.Device.Vxlan:SrcPortMin, The "SrcPortMin" property +
org.freedesktop.NetworkManager.Device.Vxlan:SrcPortMin, The "SrcPortMin" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Tos, The "Tos" property +
org.freedesktop.NetworkManager.Device.Vxlan:Tos, The "Tos" property
-
org.freedesktop.NetworkManager.Device.Vxlan:Ttl, The "Ttl" property +
org.freedesktop.NetworkManager.Device.Vxlan:Ttl, The "Ttl" property
-
org.freedesktop.NetworkManager.Device.WireGuard, org.freedesktop.NetworkManager.Device.WireGuard +
org.freedesktop.NetworkManager.Device.WireGuard, org.freedesktop.NetworkManager.Device.WireGuard
-
org.freedesktop.NetworkManager.Device.WireGuard:FwMark, The "FwMark" property +
org.freedesktop.NetworkManager.Device.WireGuard:FwMark, The "FwMark" property
-
org.freedesktop.NetworkManager.Device.WireGuard:ListenPort, The "ListenPort" property +
org.freedesktop.NetworkManager.Device.WireGuard:ListenPort, The "ListenPort" property
-
org.freedesktop.NetworkManager.Device.WireGuard:PublicKey, The "PublicKey" property +
org.freedesktop.NetworkManager.Device.WireGuard:PublicKey, The "PublicKey" property
-
org.freedesktop.NetworkManager.Device.Wpan, org.freedesktop.NetworkManager.Device.Wpan +
org.freedesktop.NetworkManager.Device.Wpan, org.freedesktop.NetworkManager.Device.Wpan
-
org.freedesktop.NetworkManager.Device.Wpan:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Wpan:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device::StateChanged, The "StateChanged" signal +
org.freedesktop.NetworkManager.Device::StateChanged, The "StateChanged" signal
-
org.freedesktop.NetworkManager.Device:ActiveConnection, The "ActiveConnection" property +
org.freedesktop.NetworkManager.Device:ActiveConnection, The "ActiveConnection" property
-
org.freedesktop.NetworkManager.Device:Autoconnect, The "Autoconnect" property +
org.freedesktop.NetworkManager.Device:Autoconnect, The "Autoconnect" property
-
org.freedesktop.NetworkManager.Device:AvailableConnections, The "AvailableConnections" property +
org.freedesktop.NetworkManager.Device:AvailableConnections, The "AvailableConnections" property
-
org.freedesktop.NetworkManager.Device:Capabilities, The "Capabilities" property +
org.freedesktop.NetworkManager.Device:Capabilities, The "Capabilities" property
-
org.freedesktop.NetworkManager.Device:DeviceType, The "DeviceType" property +
org.freedesktop.NetworkManager.Device:DeviceType, The "DeviceType" property
-
org.freedesktop.NetworkManager.Device:Dhcp4Config, The "Dhcp4Config" property +
org.freedesktop.NetworkManager.Device:Dhcp4Config, The "Dhcp4Config" property
-
org.freedesktop.NetworkManager.Device:Dhcp6Config, The "Dhcp6Config" property +
org.freedesktop.NetworkManager.Device:Dhcp6Config, The "Dhcp6Config" property
-
org.freedesktop.NetworkManager.Device:Driver, The "Driver" property +
org.freedesktop.NetworkManager.Device:Driver, The "Driver" property
-
org.freedesktop.NetworkManager.Device:DriverVersion, The "DriverVersion" property +
org.freedesktop.NetworkManager.Device:DriverVersion, The "DriverVersion" property
-
org.freedesktop.NetworkManager.Device:FirmwareMissing, The "FirmwareMissing" property +
org.freedesktop.NetworkManager.Device:FirmwareMissing, The "FirmwareMissing" property
-
org.freedesktop.NetworkManager.Device:FirmwareVersion, The "FirmwareVersion" property +
org.freedesktop.NetworkManager.Device:FirmwareVersion, The "FirmwareVersion" property
-
org.freedesktop.NetworkManager.Device:Interface, The "Interface" property +
org.freedesktop.NetworkManager.Device:Interface, The "Interface" property
-
org.freedesktop.NetworkManager.Device:Ip4Address, The "Ip4Address" property +
org.freedesktop.NetworkManager.Device:Ip4Address, The "Ip4Address" property
-
org.freedesktop.NetworkManager.Device:Ip4Config, The "Ip4Config" property +
org.freedesktop.NetworkManager.Device:Ip4Config, The "Ip4Config" property
-
org.freedesktop.NetworkManager.Device:Ip4Connectivity, The "Ip4Connectivity" property +
org.freedesktop.NetworkManager.Device:Ip4Connectivity, The "Ip4Connectivity" property
-
org.freedesktop.NetworkManager.Device:Ip6Config, The "Ip6Config" property +
org.freedesktop.NetworkManager.Device:Ip6Config, The "Ip6Config" property
-
org.freedesktop.NetworkManager.Device:Ip6Connectivity, The "Ip6Connectivity" property +
org.freedesktop.NetworkManager.Device:Ip6Connectivity, The "Ip6Connectivity" property
-
org.freedesktop.NetworkManager.Device:IpInterface, The "IpInterface" property +
org.freedesktop.NetworkManager.Device:IpInterface, The "IpInterface" property
-
org.freedesktop.NetworkManager.Device:LldpNeighbors, The "LldpNeighbors" property +
org.freedesktop.NetworkManager.Device:LldpNeighbors, The "LldpNeighbors" property
-
org.freedesktop.NetworkManager.Device:Managed, The "Managed" property +
org.freedesktop.NetworkManager.Device:Managed, The "Managed" property
-
org.freedesktop.NetworkManager.Device:Metered, The "Metered" property +
org.freedesktop.NetworkManager.Device:Metered, The "Metered" property
-
org.freedesktop.NetworkManager.Device:Mtu, The "Mtu" property +
org.freedesktop.NetworkManager.Device:Mtu, The "Mtu" property
-
org.freedesktop.NetworkManager.Device:NmPluginMissing, The "NmPluginMissing" property +
org.freedesktop.NetworkManager.Device:NmPluginMissing, The "NmPluginMissing" property
-
org.freedesktop.NetworkManager.Device:PhysicalPortId, The "PhysicalPortId" property +
org.freedesktop.NetworkManager.Device:PhysicalPortId, The "PhysicalPortId" property
-
org.freedesktop.NetworkManager.Device:Real, The "Real" property +
org.freedesktop.NetworkManager.Device:Real, The "Real" property
-
org.freedesktop.NetworkManager.Device:State, The "State" property +
org.freedesktop.NetworkManager.Device:State, The "State" property
-
org.freedesktop.NetworkManager.Device:StateReason, The "StateReason" property +
org.freedesktop.NetworkManager.Device:StateReason, The "StateReason" property
-
org.freedesktop.NetworkManager.Device:Udi, The "Udi" property +
org.freedesktop.NetworkManager.Device:Udi, The "Udi" property
-
org.freedesktop.NetworkManager.DnsManager, org.freedesktop.NetworkManager.DnsManager +
org.freedesktop.NetworkManager.DnsManager, org.freedesktop.NetworkManager.DnsManager
-
org.freedesktop.NetworkManager.DnsManager:Configuration, The "Configuration" property +
org.freedesktop.NetworkManager.DnsManager:Configuration, The "Configuration" property
-
org.freedesktop.NetworkManager.DnsManager:Mode, The "Mode" property +
org.freedesktop.NetworkManager.DnsManager:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.DnsManager:RcManager, The "RcManager" property +
org.freedesktop.NetworkManager.DnsManager:RcManager, The "RcManager" property
-
org.freedesktop.NetworkManager.IP4Config, org.freedesktop.NetworkManager.IP4Config +
org.freedesktop.NetworkManager.IP4Config, org.freedesktop.NetworkManager.IP4Config
-
org.freedesktop.NetworkManager.IP4Config::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.IP4Config::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.IP4Config:AddressData, The "AddressData" property +
org.freedesktop.NetworkManager.IP4Config:AddressData, The "AddressData" property
-
org.freedesktop.NetworkManager.IP4Config:Addresses, The "Addresses" property +
org.freedesktop.NetworkManager.IP4Config:Addresses, The "Addresses" property
-
org.freedesktop.NetworkManager.IP4Config:DnsOptions, The "DnsOptions" property +
org.freedesktop.NetworkManager.IP4Config:DnsOptions, The "DnsOptions" property
-
org.freedesktop.NetworkManager.IP4Config:DnsPriority, The "DnsPriority" property +
org.freedesktop.NetworkManager.IP4Config:DnsPriority, The "DnsPriority" property
-
org.freedesktop.NetworkManager.IP4Config:Domains, The "Domains" property +
org.freedesktop.NetworkManager.IP4Config:Domains, The "Domains" property
-
org.freedesktop.NetworkManager.IP4Config:Gateway, The "Gateway" property +
org.freedesktop.NetworkManager.IP4Config:Gateway, The "Gateway" property
-
org.freedesktop.NetworkManager.IP4Config:NameserverData, The "NameserverData" property +
org.freedesktop.NetworkManager.IP4Config:NameserverData, The "NameserverData" property
-
org.freedesktop.NetworkManager.IP4Config:Nameservers, The "Nameservers" property +
org.freedesktop.NetworkManager.IP4Config:Nameservers, The "Nameservers" property
-
org.freedesktop.NetworkManager.IP4Config:RouteData, The "RouteData" property +
org.freedesktop.NetworkManager.IP4Config:RouteData, The "RouteData" property
-
org.freedesktop.NetworkManager.IP4Config:Routes, The "Routes" property +
org.freedesktop.NetworkManager.IP4Config:Routes, The "Routes" property
-
org.freedesktop.NetworkManager.IP4Config:Searches, The "Searches" property +
org.freedesktop.NetworkManager.IP4Config:Searches, The "Searches" property
-
org.freedesktop.NetworkManager.IP4Config:WinsServerData, The "WinsServerData" property +
org.freedesktop.NetworkManager.IP4Config:WinsServerData, The "WinsServerData" property
-
org.freedesktop.NetworkManager.IP4Config:WinsServers, The "WinsServers" property +
org.freedesktop.NetworkManager.IP4Config:WinsServers, The "WinsServers" property
-
org.freedesktop.NetworkManager.IP6Config, org.freedesktop.NetworkManager.IP6Config +
org.freedesktop.NetworkManager.IP6Config, org.freedesktop.NetworkManager.IP6Config
-
org.freedesktop.NetworkManager.IP6Config::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.IP6Config::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.IP6Config:AddressData, The "AddressData" property +
org.freedesktop.NetworkManager.IP6Config:AddressData, The "AddressData" property
-
org.freedesktop.NetworkManager.IP6Config:Addresses, The "Addresses" property +
org.freedesktop.NetworkManager.IP6Config:Addresses, The "Addresses" property
-
org.freedesktop.NetworkManager.IP6Config:DnsOptions, The "DnsOptions" property +
org.freedesktop.NetworkManager.IP6Config:DnsOptions, The "DnsOptions" property
-
org.freedesktop.NetworkManager.IP6Config:DnsPriority, The "DnsPriority" property +
org.freedesktop.NetworkManager.IP6Config:DnsPriority, The "DnsPriority" property
-
org.freedesktop.NetworkManager.IP6Config:Domains, The "Domains" property +
org.freedesktop.NetworkManager.IP6Config:Domains, The "Domains" property
-
org.freedesktop.NetworkManager.IP6Config:Gateway, The "Gateway" property +
org.freedesktop.NetworkManager.IP6Config:Gateway, The "Gateway" property
-
org.freedesktop.NetworkManager.IP6Config:Nameservers, The "Nameservers" property +
org.freedesktop.NetworkManager.IP6Config:Nameservers, The "Nameservers" property
-
org.freedesktop.NetworkManager.IP6Config:RouteData, The "RouteData" property +
org.freedesktop.NetworkManager.IP6Config:RouteData, The "RouteData" property
-
org.freedesktop.NetworkManager.IP6Config:Routes, The "Routes" property +
org.freedesktop.NetworkManager.IP6Config:Routes, The "Routes" property
-
org.freedesktop.NetworkManager.IP6Config:Searches, The "Searches" property +
org.freedesktop.NetworkManager.IP6Config:Searches, The "Searches" property
-
org.freedesktop.NetworkManager.SecretAgent, org.freedesktop.NetworkManager.SecretAgent +
org.freedesktop.NetworkManager.SecretAgent, org.freedesktop.NetworkManager.SecretAgent
-
org.freedesktop.NetworkManager.SecretAgent.CancelGetSecrets(), The CancelGetSecrets() method +
org.freedesktop.NetworkManager.SecretAgent.CancelGetSecrets(), The CancelGetSecrets() method
-
org.freedesktop.NetworkManager.SecretAgent.DeleteSecrets(), The DeleteSecrets() method +
org.freedesktop.NetworkManager.SecretAgent.DeleteSecrets(), The DeleteSecrets() method
-
org.freedesktop.NetworkManager.SecretAgent.GetSecrets(), The GetSecrets() method +
org.freedesktop.NetworkManager.SecretAgent.GetSecrets(), The GetSecrets() method
-
org.freedesktop.NetworkManager.SecretAgent.SaveSecrets(), The SaveSecrets() method +
org.freedesktop.NetworkManager.SecretAgent.SaveSecrets(), The SaveSecrets() method
-
org.freedesktop.NetworkManager.Settings, org.freedesktop.NetworkManager.Settings +
org.freedesktop.NetworkManager.Settings, org.freedesktop.NetworkManager.Settings
-
org.freedesktop.NetworkManager.Settings.AddConnection(), The AddConnection() method +
org.freedesktop.NetworkManager.Settings.AddConnection(), The AddConnection() method
-
org.freedesktop.NetworkManager.Settings.AddConnection2(), The AddConnection2() method +
org.freedesktop.NetworkManager.Settings.AddConnection2(), The AddConnection2() method
-
org.freedesktop.NetworkManager.Settings.AddConnectionUnsaved(), The AddConnectionUnsaved() method +
org.freedesktop.NetworkManager.Settings.AddConnectionUnsaved(), The AddConnectionUnsaved() method
-
org.freedesktop.NetworkManager.Settings.Connection, org.freedesktop.NetworkManager.Settings.Connection +
org.freedesktop.NetworkManager.Settings.Connection, org.freedesktop.NetworkManager.Settings.Connection
-
org.freedesktop.NetworkManager.Settings.Connection.ClearSecrets(), The ClearSecrets() method +
org.freedesktop.NetworkManager.Settings.Connection.ClearSecrets(), The ClearSecrets() method
-
org.freedesktop.NetworkManager.Settings.Connection.Delete(), The Delete() method +
org.freedesktop.NetworkManager.Settings.Connection.Delete(), The Delete() method
-
org.freedesktop.NetworkManager.Settings.Connection.GetSecrets(), The GetSecrets() method +
org.freedesktop.NetworkManager.Settings.Connection.GetSecrets(), The GetSecrets() method
-
org.freedesktop.NetworkManager.Settings.Connection.GetSettings(), The GetSettings() method +
org.freedesktop.NetworkManager.Settings.Connection.GetSettings(), The GetSettings() method
-
org.freedesktop.NetworkManager.Settings.Connection.Save(), The Save() method +
org.freedesktop.NetworkManager.Settings.Connection.Save(), The Save() method
-
org.freedesktop.NetworkManager.Settings.Connection.Update(), The Update() method +
org.freedesktop.NetworkManager.Settings.Connection.Update(), The Update() method
-
org.freedesktop.NetworkManager.Settings.Connection.Update2(), The Update2() method +
org.freedesktop.NetworkManager.Settings.Connection.Update2(), The Update2() method
-
org.freedesktop.NetworkManager.Settings.Connection.UpdateUnsaved(), The UpdateUnsaved() method +
org.freedesktop.NetworkManager.Settings.Connection.UpdateUnsaved(), The UpdateUnsaved() method
-
org.freedesktop.NetworkManager.Settings.Connection::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Settings.Connection::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Settings.Connection::Removed, The "Removed" signal +
org.freedesktop.NetworkManager.Settings.Connection::Removed, The "Removed" signal
-
org.freedesktop.NetworkManager.Settings.Connection::Updated, The "Updated" signal +
org.freedesktop.NetworkManager.Settings.Connection::Updated, The "Updated" signal
-
org.freedesktop.NetworkManager.Settings.Connection:Filename, The "Filename" property +
org.freedesktop.NetworkManager.Settings.Connection:Filename, The "Filename" property
-
org.freedesktop.NetworkManager.Settings.Connection:Flags, The "Flags" property +
org.freedesktop.NetworkManager.Settings.Connection:Flags, The "Flags" property
-
org.freedesktop.NetworkManager.Settings.Connection:Unsaved, The "Unsaved" property +
org.freedesktop.NetworkManager.Settings.Connection:Unsaved, The "Unsaved" property
-
org.freedesktop.NetworkManager.Settings.GetConnectionByUuid(), The GetConnectionByUuid() method +
org.freedesktop.NetworkManager.Settings.GetConnectionByUuid(), The GetConnectionByUuid() method
-
org.freedesktop.NetworkManager.Settings.ListConnections(), The ListConnections() method +
org.freedesktop.NetworkManager.Settings.ListConnections(), The ListConnections() method
-
org.freedesktop.NetworkManager.Settings.LoadConnections(), The LoadConnections() method +
org.freedesktop.NetworkManager.Settings.LoadConnections(), The LoadConnections() method
-
org.freedesktop.NetworkManager.Settings.ReloadConnections(), The ReloadConnections() method +
org.freedesktop.NetworkManager.Settings.ReloadConnections(), The ReloadConnections() method
-
org.freedesktop.NetworkManager.Settings.SaveHostname(), The SaveHostname() method +
org.freedesktop.NetworkManager.Settings.SaveHostname(), The SaveHostname() method
-
org.freedesktop.NetworkManager.Settings::ConnectionRemoved, The "ConnectionRemoved" signal +
org.freedesktop.NetworkManager.Settings::ConnectionRemoved, The "ConnectionRemoved" signal
-
org.freedesktop.NetworkManager.Settings::NewConnection, The "NewConnection" signal +
org.freedesktop.NetworkManager.Settings::NewConnection, The "NewConnection" signal
-
org.freedesktop.NetworkManager.Settings::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Settings::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Settings:CanModify, The "CanModify" property +
org.freedesktop.NetworkManager.Settings:CanModify, The "CanModify" property
-
org.freedesktop.NetworkManager.Settings:Connections, The "Connections" property +
org.freedesktop.NetworkManager.Settings:Connections, The "Connections" property
-
org.freedesktop.NetworkManager.Settings:Hostname, The "Hostname" property +
org.freedesktop.NetworkManager.Settings:Hostname, The "Hostname" property

A

-
org.freedesktop.NetworkManager.Connection.Active, org.freedesktop.NetworkManager.Connection.Active +
org.freedesktop.NetworkManager.Connection.Active, org.freedesktop.NetworkManager.Connection.Active
-
org.freedesktop.NetworkManager.Connection.Active::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Connection.Active::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Connection.Active::StateChanged, The "StateChanged" signal +
org.freedesktop.NetworkManager.Connection.Active::StateChanged, The "StateChanged" signal
-
org.freedesktop.NetworkManager.Connection.Active:Connection, The "Connection" property +
org.freedesktop.NetworkManager.Connection.Active:Connection, The "Connection" property
-
org.freedesktop.NetworkManager.Connection.Active:Default, The "Default" property +
org.freedesktop.NetworkManager.Connection.Active:Default, The "Default" property
-
org.freedesktop.NetworkManager.Connection.Active:Default6, The "Default6" property +
org.freedesktop.NetworkManager.Connection.Active:Default6, The "Default6" property
-
org.freedesktop.NetworkManager.Connection.Active:Devices, The "Devices" property +
org.freedesktop.NetworkManager.Connection.Active:Devices, The "Devices" property
-
org.freedesktop.NetworkManager.Connection.Active:Dhcp4Config, The "Dhcp4Config" property +
org.freedesktop.NetworkManager.Connection.Active:Dhcp4Config, The "Dhcp4Config" property
-
org.freedesktop.NetworkManager.Connection.Active:Dhcp6Config, The "Dhcp6Config" property +
org.freedesktop.NetworkManager.Connection.Active:Dhcp6Config, The "Dhcp6Config" property
-
org.freedesktop.NetworkManager.Connection.Active:Id, The "Id" property +
org.freedesktop.NetworkManager.Connection.Active:Id, The "Id" property
-
org.freedesktop.NetworkManager.Connection.Active:Ip4Config, The "Ip4Config" property +
org.freedesktop.NetworkManager.Connection.Active:Ip4Config, The "Ip4Config" property
-
org.freedesktop.NetworkManager.Connection.Active:Ip6Config, The "Ip6Config" property +
org.freedesktop.NetworkManager.Connection.Active:Ip6Config, The "Ip6Config" property
-
org.freedesktop.NetworkManager.Connection.Active:Master, The "Master" property +
org.freedesktop.NetworkManager.Connection.Active:Master, The "Master" property
-
org.freedesktop.NetworkManager.Connection.Active:SpecificObject, The "SpecificObject" property +
org.freedesktop.NetworkManager.Connection.Active:SpecificObject, The "SpecificObject" property
-
org.freedesktop.NetworkManager.Connection.Active:State, The "State" property +
org.freedesktop.NetworkManager.Connection.Active:State, The "State" property
-
org.freedesktop.NetworkManager.Connection.Active:StateFlags, The "StateFlags" property +
org.freedesktop.NetworkManager.Connection.Active:StateFlags, The "StateFlags" property
-
org.freedesktop.NetworkManager.Connection.Active:Type, The "Type" property +
org.freedesktop.NetworkManager.Connection.Active:Type, The "Type" property
-
org.freedesktop.NetworkManager.Connection.Active:Uuid, The "Uuid" property +
org.freedesktop.NetworkManager.Connection.Active:Uuid, The "Uuid" property
-
org.freedesktop.NetworkManager.Connection.Active:Vpn, The "Vpn" property +
org.freedesktop.NetworkManager.Connection.Active:Vpn, The "Vpn" property
-
addr-gen-mode, ipv6 +
addr-gen-mode, ipv6
-
address-data, ipv4, ipv6 +
address-data, ipv4, ipv6
-
addresses, ipv4, ipv6 +
addresses, ipv4, ipv6
-
ageing, vxlan +
ageing, vxlan
-
ageing-time, bridge +
ageing-time, bridge
-
altsubject-matches, 802-1x +
altsubject-matches, 802-1x
-
anonymous-identity, 802-1x +
anonymous-identity, 802-1x
-
apn, gsm +
apn, gsm
-
app-fcoe-flags, dcb +
app-fcoe-flags, dcb
-
app-fcoe-mode, dcb +
app-fcoe-mode, dcb
-
app-fcoe-priority, dcb +
app-fcoe-priority, dcb
-
app-fip-flags, dcb +
app-fip-flags, dcb
-
app-fip-priority, dcb +
app-fip-priority, dcb
-
app-iscsi-flags, dcb +
app-iscsi-flags, dcb
-
app-iscsi-priority, dcb +
app-iscsi-priority, dcb
-
assigned-mac-address, 802-3-ethernet, 802-11-wireless +
assigned-mac-address, 802-3-ethernet, 802-11-wireless
-
auth-alg, 802-11-wireless-security +
auth-alg, 802-11-wireless-security
-
auth-retries, connection +
auth-retries, connection
-
auth-timeout, 802-1x +
auth-timeout, 802-1x
-
auto-negotiate, 802-3-ethernet +
auto-negotiate, 802-3-ethernet
-
autoconnect, connection +
autoconnect, connection
-
autoconnect-priority, connection +
autoconnect-priority, connection
-
autoconnect-retries, connection +
autoconnect-retries, connection
-
autoconnect-slaves, connection +
autoconnect-slaves, connection
-
autoprobe-drivers, sriov +
autoprobe-drivers, sriov

B

-
band, 802-11-wireless +
band, 802-11-wireless
-
baud, ppp, serial +
baud, ppp, serial
-
bdaddr, bluetooth +
bdaddr, bluetooth
-
bits, serial +
bits, serial
-
bond-downdelay, ovs-port +
bond-downdelay, ovs-port
-
bond-mode, ovs-port +
bond-mode, ovs-port
-
bond-updelay, ovs-port +
bond-updelay, ovs-port
-
browser-only, proxy +
browser-only, proxy
-
bssid, 802-11-wireless +
bssid, 802-11-wireless

C

-
ca-cert, 802-1x +
ca-cert, 802-1x
-
ca-cert-password, 802-1x +
ca-cert-password, 802-1x
-
ca-cert-password-flags, 802-1x +
ca-cert-password-flags, 802-1x
-
ca-path, 802-1x +
ca-path, 802-1x
-
channel, 802-11-olpc-mesh, 802-11-wireless, wpan +
channel, 802-11-olpc-mesh, 802-11-wireless, wpan
-
org.freedesktop.NetworkManager.Checkpoint, org.freedesktop.NetworkManager.Checkpoint +
org.freedesktop.NetworkManager.Checkpoint, org.freedesktop.NetworkManager.Checkpoint
-
org.freedesktop.NetworkManager.Checkpoint::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Checkpoint::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Checkpoint:Created, The "Created" property +
org.freedesktop.NetworkManager.Checkpoint:Created, The "Created" property
-
org.freedesktop.NetworkManager.Checkpoint:Devices, The "Devices" property +
org.freedesktop.NetworkManager.Checkpoint:Devices, The "Devices" property
-
org.freedesktop.NetworkManager.Checkpoint:RollbackTimeout, The "RollbackTimeout" property +
org.freedesktop.NetworkManager.Checkpoint:RollbackTimeout, The "RollbackTimeout" property
-
client-cert, 802-1x +
client-cert, 802-1x
-
client-cert-password, 802-1x +
client-cert-password, 802-1x
-
client-cert-password-flags, 802-1x +
client-cert-password-flags, 802-1x
-
cloned-mac-address, 802-3-ethernet, 802-11-wireless +
cloned-mac-address, 802-3-ethernet, 802-11-wireless
-
config, team, team-port +
config, team, team-port
-
crtscts, ppp +
crtscts, ppp

D

-
dad-timeout, ipv4, ipv6 +
dad-timeout, ipv4, ipv6
-
data, user, vpn +
data, user, vpn
-
datapath-type, ovs-bridge +
datapath-type, ovs-bridge
-
destination-port, vxlan +
destination-port, vxlan
-
devargs, ovs-dpdk +
devargs, ovs-dpdk
-
device-id, gsm +
device-id, gsm
-
org.freedesktop.NetworkManager.Device.Wired, org.freedesktop.NetworkManager.Device.Wired +
org.freedesktop.NetworkManager.Device.Wired, org.freedesktop.NetworkManager.Device.Wired
-
org.freedesktop.NetworkManager.Device.Wired::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Wired::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Wired:Carrier, The "Carrier" property +
org.freedesktop.NetworkManager.Device.Wired:Carrier, The "Carrier" property
-
org.freedesktop.NetworkManager.Device.Wired:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Wired:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Wired:PermHwAddress, The "PermHwAddress" property +
org.freedesktop.NetworkManager.Device.Wired:PermHwAddress, The "PermHwAddress" property
-
org.freedesktop.NetworkManager.Device.Wired:S390Subchannels, The "S390Subchannels" property +
org.freedesktop.NetworkManager.Device.Wired:S390Subchannels, The "S390Subchannels" property
-
org.freedesktop.NetworkManager.Device.Wired:Speed, The "Speed" property +
org.freedesktop.NetworkManager.Device.Wired:Speed, The "Speed" property
-
org.freedesktop.NetworkManager.Device.Wireless, org.freedesktop.NetworkManager.Device.Wireless +
org.freedesktop.NetworkManager.Device.Wireless, org.freedesktop.NetworkManager.Device.Wireless
-
org.freedesktop.NetworkManager.Device.Wireless.GetAccessPoints(), The GetAccessPoints() method +
org.freedesktop.NetworkManager.Device.Wireless.GetAccessPoints(), The GetAccessPoints() method
-
org.freedesktop.NetworkManager.Device.Wireless.GetAllAccessPoints(), The GetAllAccessPoints() method +
org.freedesktop.NetworkManager.Device.Wireless.GetAllAccessPoints(), The GetAllAccessPoints() method
-
org.freedesktop.NetworkManager.Device.Wireless.RequestScan(), The RequestScan() method +
org.freedesktop.NetworkManager.Device.Wireless.RequestScan(), The RequestScan() method
-
org.freedesktop.NetworkManager.Device.Wireless::AccessPointAdded, The "AccessPointAdded" signal +
org.freedesktop.NetworkManager.Device.Wireless::AccessPointAdded, The "AccessPointAdded" signal
-
org.freedesktop.NetworkManager.Device.Wireless::AccessPointRemoved, The "AccessPointRemoved" signal +
org.freedesktop.NetworkManager.Device.Wireless::AccessPointRemoved, The "AccessPointRemoved" signal
-
org.freedesktop.NetworkManager.Device.Wireless::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.Device.Wireless::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.Device.Wireless:AccessPoints, The "AccessPoints" property +
org.freedesktop.NetworkManager.Device.Wireless:AccessPoints, The "AccessPoints" property
-
org.freedesktop.NetworkManager.Device.Wireless:ActiveAccessPoint, The "ActiveAccessPoint" property +
org.freedesktop.NetworkManager.Device.Wireless:ActiveAccessPoint, The "ActiveAccessPoint" property
-
org.freedesktop.NetworkManager.Device.Wireless:Bitrate, The "Bitrate" property +
org.freedesktop.NetworkManager.Device.Wireless:Bitrate, The "Bitrate" property
-
org.freedesktop.NetworkManager.Device.Wireless:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.Wireless:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.Wireless:LastScan, The "LastScan" property +
org.freedesktop.NetworkManager.Device.Wireless:LastScan, The "LastScan" property
-
org.freedesktop.NetworkManager.Device.Wireless:Mode, The "Mode" property +
org.freedesktop.NetworkManager.Device.Wireless:Mode, The "Mode" property
-
org.freedesktop.NetworkManager.Device.Wireless:PermHwAddress, The "PermHwAddress" property +
org.freedesktop.NetworkManager.Device.Wireless:PermHwAddress, The "PermHwAddress" property
-
org.freedesktop.NetworkManager.Device.Wireless:WirelessCapabilities, The "WirelessCapabilities" property +
org.freedesktop.NetworkManager.Device.Wireless:WirelessCapabilities, The "WirelessCapabilities" property
-
org.freedesktop.NetworkManager.Device.WifiP2P, org.freedesktop.NetworkManager.Device.WifiP2P +
org.freedesktop.NetworkManager.Device.WifiP2P, org.freedesktop.NetworkManager.Device.WifiP2P
-
org.freedesktop.NetworkManager.Device.WifiP2P.StartFind(), The StartFind() method +
org.freedesktop.NetworkManager.Device.WifiP2P.StartFind(), The StartFind() method
-
org.freedesktop.NetworkManager.Device.WifiP2P.StopFind(), The StopFind() method +
org.freedesktop.NetworkManager.Device.WifiP2P.StopFind(), The StopFind() method
-
org.freedesktop.NetworkManager.Device.WifiP2P::PeerAdded, The "PeerAdded" signal +
org.freedesktop.NetworkManager.Device.WifiP2P::PeerAdded, The "PeerAdded" signal
-
org.freedesktop.NetworkManager.Device.WifiP2P::PeerRemoved, The "PeerRemoved" signal +
org.freedesktop.NetworkManager.Device.WifiP2P::PeerRemoved, The "PeerRemoved" signal
-
org.freedesktop.NetworkManager.Device.WifiP2P:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.Device.WifiP2P:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.Device.WifiP2P:Peers, The "Peers" property +
org.freedesktop.NetworkManager.Device.WifiP2P:Peers, The "Peers" property
-
dhcp-anycast-address, 802-11-olpc-mesh +
dhcp-anycast-address, 802-11-olpc-mesh
-
dhcp-client-id, ipv4 +
dhcp-client-id, ipv4
-
dhcp-duid, ipv6 +
dhcp-duid, ipv6
-
dhcp-fqdn, ipv4 +
dhcp-fqdn, ipv4
-
dhcp-hostname, ipv4, ipv6 +
dhcp-hostname, ipv4, ipv6
-
dhcp-send-hostname, ipv4, ipv6 +
dhcp-send-hostname, ipv4, ipv6
-
dhcp-timeout, ipv4, ipv6 +
dhcp-timeout, ipv4, ipv6
-
org.freedesktop.NetworkManager.DHCP4Config, org.freedesktop.NetworkManager.DHCP4Config +
org.freedesktop.NetworkManager.DHCP4Config, org.freedesktop.NetworkManager.DHCP4Config
-
org.freedesktop.NetworkManager.DHCP4Config::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.DHCP4Config::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.DHCP4Config:Options, The "Options" property +
org.freedesktop.NetworkManager.DHCP4Config:Options, The "Options" property
-
org.freedesktop.NetworkManager.DHCP6Config, org.freedesktop.NetworkManager.DHCP6Config +
org.freedesktop.NetworkManager.DHCP6Config, org.freedesktop.NetworkManager.DHCP6Config
-
org.freedesktop.NetworkManager.DHCP6Config::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.DHCP6Config::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.DHCP6Config:Options, The "Options" property +
org.freedesktop.NetworkManager.DHCP6Config:Options, The "Options" property
-
dns, ipv4, ipv6 +
dns, ipv4, ipv6
-
dns-options, ipv4, ipv6 +
dns-options, ipv4, ipv6
-
dns-priority, ipv4, ipv6 +
dns-priority, ipv4, ipv6
-
dns-search, ipv4, ipv6 +
dns-search, ipv4, ipv6
-
domain-suffix-match, 802-1x +
domain-suffix-match, 802-1x
-
duplex, 802-3-ethernet +
duplex, 802-3-ethernet

E

-
eap, 802-1x +
eap, 802-1x
-
egress-priority-map, vlan +
egress-priority-map, vlan
-
encapsulation, adsl +
encapsulation, adsl
-
encapsulation-limit, ip-tunnel +
encapsulation-limit, ip-tunnel
-
encrypt, macsec +
encrypt, macsec

F

-
fail-mode, ovs-bridge +
fail-mode, ovs-bridge
-
fils, 802-11-wireless-security +
fils, 802-11-wireless-security
-
flags, ip-tunnel, vlan +
flags, ip-tunnel, vlan
-
flow-label, ip-tunnel +
flow-label, ip-tunnel
-
forward-delay, bridge +
forward-delay, bridge
-
fwmark, wireguard +
fwmark, wireguard

G

-
gateway, ipv4, ipv6 +
gateway, ipv4, ipv6
-
gateway-ping-timeout, connection +
gateway-ping-timeout, connection
-
generate-mac-address-mask, 802-3-ethernet, 802-11-wireless +
generate-mac-address-mask, 802-3-ethernet, 802-11-wireless
-
group, tun, 802-11-wireless-security +
group, tun, 802-11-wireless-security
-
group-forward-mask, bridge +
group-forward-mask, bridge

H

-
hairpin-mode, bridge-port +
hairpin-mode, bridge-port
-
hello-time, bridge +
hello-time, bridge
-
hidden, 802-11-wireless +
hidden, 802-11-wireless
-
home-only, gsm +
home-only, gsm

I

-
id, connection, vlan, vxlan +
id, connection, vlan, vxlan
-
identity, 802-1x +
identity, 802-1x
-
ignore-auto-dns, ipv4, ipv6 +
ignore-auto-dns, ipv4, ipv6
-
ignore-auto-routes, ipv4, ipv6 +
ignore-auto-routes, ipv4, ipv6
-
ingress-priority-map, vlan +
ingress-priority-map, vlan
-
input-key, ip-tunnel +
input-key, ip-tunnel
-
interface-name, connection, bond, bridge, match, team, vlan +
interface-name, connection, bond, bridge, match, team, vlan
-
ip4-auto-default-route, wireguard +
ip4-auto-default-route, wireguard
-
ip6-auto-default-route, wireguard +
ip6-auto-default-route, wireguard
-
ip6-privacy, ipv6 +
ip6-privacy, ipv6

L

-
l2-miss, vxlan +
l2-miss, vxlan
-
l3-miss, vxlan +
l3-miss, vxlan
-
lacp, ovs-port +
lacp, ovs-port
-
lacp-key, team-port +
lacp-key, team-port
-
lacp-prio, team-port +
lacp-prio, team-port
-
lcp-echo-failure, ppp +
lcp-echo-failure, ppp
-
lcp-echo-interval, ppp +
lcp-echo-interval, ppp
-
leap-password, 802-11-wireless-security +
leap-password, 802-11-wireless-security
-
leap-password-flags, 802-11-wireless-security +
leap-password-flags, 802-11-wireless-security
-
leap-username, 802-11-wireless-security +
leap-username, 802-11-wireless-security
-
learning, vxlan +
learning, vxlan
-
limit, vxlan +
limit, vxlan
-
link-watchers, team, team-port +
link-watchers, team, team-port
-
listen-port, wireguard +
listen-port, wireguard
-
lldp, connection +
lldp, connection
-
llmnr, connection +
llmnr, connection
-
local, ip-tunnel, vxlan +
local, ip-tunnel, vxlan

M

-
mac-address, bridge, infiniband, wimax, 802-3-ethernet, 802-11-wireless, wpan +
mac-address, bridge, infiniband, wimax, 802-3-ethernet, 802-11-wireless, wpan
-
mac-address-blacklist, 802-3-ethernet, 802-11-wireless +
mac-address-blacklist, 802-3-ethernet, 802-11-wireless
-
mac-address-randomization, 802-11-wireless +
mac-address-randomization, 802-11-wireless
-
org.freedesktop.NetworkManager, org.freedesktop.NetworkManager +
org.freedesktop.NetworkManager, org.freedesktop.NetworkManager
-
org.freedesktop.NetworkManager.ActivateConnection(), The ActivateConnection() method +
org.freedesktop.NetworkManager.ActivateConnection(), The ActivateConnection() method
-
org.freedesktop.NetworkManager.AddAndActivateConnection(), The AddAndActivateConnection() method +
org.freedesktop.NetworkManager.AddAndActivateConnection(), The AddAndActivateConnection() method
-
org.freedesktop.NetworkManager.AddAndActivateConnection2(), The AddAndActivateConnection2() method +
org.freedesktop.NetworkManager.AddAndActivateConnection2(), The AddAndActivateConnection2() method
-
org.freedesktop.NetworkManager.CheckConnectivity(), The CheckConnectivity() method +
org.freedesktop.NetworkManager.CheckConnectivity(), The CheckConnectivity() method
-
org.freedesktop.NetworkManager.CheckpointAdjustRollbackTimeout(), The CheckpointAdjustRollbackTimeout() method +
org.freedesktop.NetworkManager.CheckpointAdjustRollbackTimeout(), The CheckpointAdjustRollbackTimeout() method
-
org.freedesktop.NetworkManager.CheckpointCreate(), The CheckpointCreate() method +
org.freedesktop.NetworkManager.CheckpointCreate(), The CheckpointCreate() method
-
org.freedesktop.NetworkManager.CheckpointDestroy(), The CheckpointDestroy() method +
org.freedesktop.NetworkManager.CheckpointDestroy(), The CheckpointDestroy() method
-
org.freedesktop.NetworkManager.CheckpointRollback(), The CheckpointRollback() method +
org.freedesktop.NetworkManager.CheckpointRollback(), The CheckpointRollback() method
-
org.freedesktop.NetworkManager.DeactivateConnection(), The DeactivateConnection() method +
org.freedesktop.NetworkManager.DeactivateConnection(), The DeactivateConnection() method
-
org.freedesktop.NetworkManager.Enable(), The Enable() method +
org.freedesktop.NetworkManager.Enable(), The Enable() method
-
org.freedesktop.NetworkManager.GetAllDevices(), The GetAllDevices() method +
org.freedesktop.NetworkManager.GetAllDevices(), The GetAllDevices() method
-
org.freedesktop.NetworkManager.GetDeviceByIpIface(), The GetDeviceByIpIface() method +
org.freedesktop.NetworkManager.GetDeviceByIpIface(), The GetDeviceByIpIface() method
-
org.freedesktop.NetworkManager.GetDevices(), The GetDevices() method +
org.freedesktop.NetworkManager.GetDevices(), The GetDevices() method
-
org.freedesktop.NetworkManager.GetLogging(), The GetLogging() method +
org.freedesktop.NetworkManager.GetLogging(), The GetLogging() method
-
org.freedesktop.NetworkManager.GetPermissions(), The GetPermissions() method +
org.freedesktop.NetworkManager.GetPermissions(), The GetPermissions() method
-
org.freedesktop.NetworkManager.Reload(), The Reload() method +
org.freedesktop.NetworkManager.Reload(), The Reload() method
-
org.freedesktop.NetworkManager.SetLogging(), The SetLogging() method +
org.freedesktop.NetworkManager.SetLogging(), The SetLogging() method
-
org.freedesktop.NetworkManager.Sleep(), The Sleep() method +
org.freedesktop.NetworkManager.Sleep(), The Sleep() method
-
org.freedesktop.NetworkManager.state(), The state() method +
org.freedesktop.NetworkManager.state(), The state() method
-
org.freedesktop.NetworkManager::CheckPermissions, The "CheckPermissions" signal +
org.freedesktop.NetworkManager::CheckPermissions, The "CheckPermissions" signal
-
org.freedesktop.NetworkManager::DeviceAdded, The "DeviceAdded" signal +
org.freedesktop.NetworkManager::DeviceAdded, The "DeviceAdded" signal
-
org.freedesktop.NetworkManager::DeviceRemoved, The "DeviceRemoved" signal +
org.freedesktop.NetworkManager::DeviceRemoved, The "DeviceRemoved" signal
-
org.freedesktop.NetworkManager::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager::StateChanged, The "StateChanged" signal +
org.freedesktop.NetworkManager::StateChanged, The "StateChanged" signal
-
org.freedesktop.NetworkManager:ActivatingConnection, The "ActivatingConnection" property +
org.freedesktop.NetworkManager:ActivatingConnection, The "ActivatingConnection" property
-
org.freedesktop.NetworkManager:ActiveConnections, The "ActiveConnections" property +
org.freedesktop.NetworkManager:ActiveConnections, The "ActiveConnections" property
-
org.freedesktop.NetworkManager:AllDevices, The "AllDevices" property +
org.freedesktop.NetworkManager:AllDevices, The "AllDevices" property
-
org.freedesktop.NetworkManager:Capabilities, The "Capabilities" property +
org.freedesktop.NetworkManager:Capabilities, The "Capabilities" property
-
org.freedesktop.NetworkManager:Checkpoints, The "Checkpoints" property +
org.freedesktop.NetworkManager:Checkpoints, The "Checkpoints" property
-
org.freedesktop.NetworkManager:Connectivity, The "Connectivity" property +
org.freedesktop.NetworkManager:Connectivity, The "Connectivity" property
-
org.freedesktop.NetworkManager:ConnectivityCheckAvailable, The "ConnectivityCheckAvailable" property +
org.freedesktop.NetworkManager:ConnectivityCheckAvailable, The "ConnectivityCheckAvailable" property
-
org.freedesktop.NetworkManager:ConnectivityCheckEnabled, The "ConnectivityCheckEnabled" property +
org.freedesktop.NetworkManager:ConnectivityCheckEnabled, The "ConnectivityCheckEnabled" property
-
org.freedesktop.NetworkManager:ConnectivityCheckUri, The "ConnectivityCheckUri" property +
org.freedesktop.NetworkManager:ConnectivityCheckUri, The "ConnectivityCheckUri" property
-
org.freedesktop.NetworkManager:Devices, The "Devices" property +
org.freedesktop.NetworkManager:Devices, The "Devices" property
-
org.freedesktop.NetworkManager:GlobalDnsConfiguration, The "GlobalDnsConfiguration" property +
org.freedesktop.NetworkManager:GlobalDnsConfiguration, The "GlobalDnsConfiguration" property
-
org.freedesktop.NetworkManager:Metered, The "Metered" property +
org.freedesktop.NetworkManager:Metered, The "Metered" property
-
org.freedesktop.NetworkManager:NetworkingEnabled, The "NetworkingEnabled" property +
org.freedesktop.NetworkManager:NetworkingEnabled, The "NetworkingEnabled" property
-
org.freedesktop.NetworkManager:PrimaryConnection, The "PrimaryConnection" property +
org.freedesktop.NetworkManager:PrimaryConnection, The "PrimaryConnection" property
-
org.freedesktop.NetworkManager:PrimaryConnectionType, The "PrimaryConnectionType" property +
org.freedesktop.NetworkManager:PrimaryConnectionType, The "PrimaryConnectionType" property
-
org.freedesktop.NetworkManager:Startup, The "Startup" property +
org.freedesktop.NetworkManager:Startup, The "Startup" property
-
org.freedesktop.NetworkManager:State, The "State" property +
org.freedesktop.NetworkManager:State, The "State" property
-
org.freedesktop.NetworkManager:Version, The "Version" property +
org.freedesktop.NetworkManager:Version, The "Version" property
-
org.freedesktop.NetworkManager:WimaxEnabled, The "WimaxEnabled" property +
org.freedesktop.NetworkManager:WimaxEnabled, The "WimaxEnabled" property
-
org.freedesktop.NetworkManager:WimaxHardwareEnabled, The "WimaxHardwareEnabled" property +
org.freedesktop.NetworkManager:WimaxHardwareEnabled, The "WimaxHardwareEnabled" property
-
org.freedesktop.NetworkManager:WirelessEnabled, The "WirelessEnabled" property +
org.freedesktop.NetworkManager:WirelessEnabled, The "WirelessEnabled" property
-
org.freedesktop.NetworkManager:WirelessHardwareEnabled, The "WirelessHardwareEnabled" property +
org.freedesktop.NetworkManager:WirelessHardwareEnabled, The "WirelessHardwareEnabled" property
-
org.freedesktop.NetworkManager:WwanEnabled, The "WwanEnabled" property +
org.freedesktop.NetworkManager:WwanEnabled, The "WwanEnabled" property
-
org.freedesktop.NetworkManager:WwanHardwareEnabled, The "WwanHardwareEnabled" property +
org.freedesktop.NetworkManager:WwanHardwareEnabled, The "WwanHardwareEnabled" property
-
master, connection +
master, connection
-
max-age, bridge +
max-age, bridge
-
may-fail, ipv4, ipv6 +
may-fail, ipv4, ipv6
-
mcast-rejoin-count, team +
mcast-rejoin-count, team
-
mcast-rejoin-interval, team +
mcast-rejoin-interval, team
-
mcast-snooping-enable, ovs-bridge +
mcast-snooping-enable, ovs-bridge
-
mdns, connection +
mdns, connection
-
metered, connection +
metered, connection
-
method, ipv4, ipv6, proxy +
method, ipv4, ipv6, proxy
-
mka-cak, macsec +
mka-cak, macsec
-
mka-cak-flags, macsec +
mka-cak-flags, macsec
-
mka-ckn, macsec +
mka-ckn, macsec
-
mode, ip-tunnel, macsec, macvlan, tun, 802-11-wireless +
mode, ip-tunnel, macsec, macvlan, tun, 802-11-wireless
-
mppe-stateful, ppp +
mppe-stateful, ppp
-
mru, ppp +
mru, ppp
-
mtu, cdma, gsm, infiniband, ip-tunnel, ppp, 802-3-ethernet, wireguard, 802-11-wireless +
mtu, cdma, gsm, infiniband, ip-tunnel, ppp, 802-3-ethernet, wireguard, 802-11-wireless
-
multi-connect, connection +
multi-connect, connection
-
multi-queue, tun +
multi-queue, tun
-
multicast-snooping, bridge +
multicast-snooping, bridge

N

-
network-id, gsm +
network-id, gsm
-
network-name, wimax +
network-name, wimax
-
never-default, ipv4, ipv6 +
never-default, ipv4, ipv6
-
NM80211ApFlags, enum NM80211ApFlags +
NM80211ApFlags, enum NM80211ApFlags
-
NM80211ApSecurityFlags, enum NM80211ApSecurityFlags +
NM80211ApSecurityFlags, enum NM80211ApSecurityFlags
-
NM80211Mode, enum NM80211Mode +
NM80211Mode, enum NM80211Mode
-
NMActivationStateFlags, enum NMActivationStateFlags +
NMActivationStateFlags, enum NMActivationStateFlags
-
NMActiveConnectionState, enum NMActiveConnectionState +
NMActiveConnectionState, enum NMActiveConnectionState
-
NMActiveConnectionStateReason, enum NMActiveConnectionStateReason +
NMActiveConnectionStateReason, enum NMActiveConnectionStateReason
-
NMBluetoothCapabilities, enum NMBluetoothCapabilities +
NMBluetoothCapabilities, enum NMBluetoothCapabilities
-
NMCapability, enum NMCapability +
NMCapability, enum NMCapability
-
NMCheckpointCreateFlags, enum NMCheckpointCreateFlags +
NMCheckpointCreateFlags, enum NMCheckpointCreateFlags
-
NMConnectionMultiConnect, enum NMConnectionMultiConnect +
NMConnectionMultiConnect, enum NMConnectionMultiConnect
-
NMConnectivityState, enum NMConnectivityState +
NMConnectivityState, enum NMConnectivityState
-
NMDeviceCapabilities, enum NMDeviceCapabilities +
NMDeviceCapabilities, enum NMDeviceCapabilities
-
NMDeviceModemCapabilities, enum NMDeviceModemCapabilities +
NMDeviceModemCapabilities, enum NMDeviceModemCapabilities
-
NMDeviceState, enum NMDeviceState +
NMDeviceState, enum NMDeviceState
-
NMDeviceStateReason, enum NMDeviceStateReason +
NMDeviceStateReason, enum NMDeviceStateReason
-
NMDeviceType, enum NMDeviceType +
NMDeviceType, enum NMDeviceType
-
NMDeviceWifiCapabilities, enum NMDeviceWifiCapabilities +
NMDeviceWifiCapabilities, enum NMDeviceWifiCapabilities
-
NMIPTunnelMode, enum NMIPTunnelMode +
NMIPTunnelMode, enum NMIPTunnelMode
-
NMMetered, enum NMMetered +
NMMetered, enum NMMetered
-
NMRollbackResult, enum NMRollbackResult +
NMRollbackResult, enum NMRollbackResult
-
NMSecretAgentCapabilities, enum NMSecretAgentCapabilities +
NMSecretAgentCapabilities, enum NMSecretAgentCapabilities
-
NMSecretAgentGetSecretsFlags, enum NMSecretAgentGetSecretsFlags +
NMSecretAgentGetSecretsFlags, enum NMSecretAgentGetSecretsFlags
-
NMSettingsAddConnection2Flags, enum NMSettingsAddConnection2Flags +
NMSettingsAddConnection2Flags, enum NMSettingsAddConnection2Flags
-
NMSettingsConnectionFlags, enum NMSettingsConnectionFlags +
NMSettingsConnectionFlags, enum NMSettingsConnectionFlags
-
NMSettingsUpdate2Flags, enum NMSettingsUpdate2Flags +
NMSettingsUpdate2Flags, enum NMSettingsUpdate2Flags
-
NMState, enum NMState +
NMState, enum NMState
-
NMTernary, enum NMTernary +
NMTernary, enum NMTernary
-
NMVpnConnectionState, enum NMVpnConnectionState +
NMVpnConnectionState, enum NMVpnConnectionState
-
NMVpnConnectionStateReason, enum NMVpnConnectionStateReason +
NMVpnConnectionStateReason, enum NMVpnConnectionStateReason
-
NMVpnPluginFailure, enum NMVpnPluginFailure +
NMVpnPluginFailure, enum NMVpnPluginFailure
-
NMVpnServiceState, enum NMVpnServiceState +
NMVpnServiceState, enum NMVpnServiceState
-
NMWimaxNspNetworkType, enum NMWimaxNspNetworkType +
NMWimaxNspNetworkType, enum NMWimaxNspNetworkType
-
no-vj-comp, ppp +
no-vj-comp, ppp
-
noauth, ppp +
noauth, ppp
-
nobsdcomp, ppp +
nobsdcomp, ppp
-
nodeflate, ppp +
nodeflate, ppp
-
notify-peers-count, team +
notify-peers-count, team
-
notify-peers-interval, team +
notify-peers-interval, team
-
number, cdma, gsm +
number, cdma, gsm

O

-
options, bond +
options, bond
-
output-key, ip-tunnel +
output-key, ip-tunnel
-
owner, tun +
owner, tun

P

-
p-key, infiniband +
p-key, infiniband
-
pac-file, 802-1x +
pac-file, 802-1x
-
pac-script, proxy +
pac-script, proxy
-
pac-url, proxy +
pac-url, proxy
-
page, wpan +
page, wpan
-
pairwise, 802-11-wireless-security +
pairwise, 802-11-wireless-security
-
pan-id, wpan +
pan-id, wpan
-
parent, 6lowpan, infiniband, ip-tunnel, macsec, macvlan, pppoe, vlan, vxlan +
parent, 6lowpan, infiniband, ip-tunnel, macsec, macvlan, pppoe, vlan, vxlan
-
parity, serial +
parity, serial
-
password, 802-1x, adsl, cdma, gsm, pppoe +
password, 802-1x, adsl, cdma, gsm, pppoe
-
password-flags, 802-1x, adsl, cdma, gsm, pppoe +
password-flags, 802-1x, adsl, cdma, gsm, pppoe
-
password-raw, 802-1x +
password-raw, 802-1x
-
password-raw-flags, 802-1x +
password-raw-flags, 802-1x
-
path-cost, bridge-port +
path-cost, bridge-port
-
path-mtu-discovery, ip-tunnel +
path-mtu-discovery, ip-tunnel
-
peer, ovs-patch, wifi-p2p +
peer, ovs-patch, wifi-p2p
-
peer-routes, wireguard +
peer-routes, wireguard
-
peers, wireguard +
peers, wireguard
-
permissions, connection +
permissions, connection
-
persistent, vpn +
persistent, vpn
-
phase1-auth-flags, 802-1x +
phase1-auth-flags, 802-1x
-
phase1-fast-provisioning, 802-1x +
phase1-fast-provisioning, 802-1x
-
phase1-peaplabel, 802-1x +
phase1-peaplabel, 802-1x
-
phase1-peapver, 802-1x +
phase1-peapver, 802-1x
-
phase2-altsubject-matches, 802-1x +
phase2-altsubject-matches, 802-1x
-
phase2-auth, 802-1x +
phase2-auth, 802-1x
-
phase2-autheap, 802-1x +
phase2-autheap, 802-1x
-
phase2-ca-cert, 802-1x +
phase2-ca-cert, 802-1x
-
phase2-ca-cert-password, 802-1x +
phase2-ca-cert-password, 802-1x
-
phase2-ca-cert-password-flags, 802-1x +
phase2-ca-cert-password-flags, 802-1x
-
phase2-ca-path, 802-1x +
phase2-ca-path, 802-1x
-
phase2-client-cert, 802-1x +
phase2-client-cert, 802-1x
-
phase2-client-cert-password, 802-1x +
phase2-client-cert-password, 802-1x
-
phase2-client-cert-password-flags, 802-1x +
phase2-client-cert-password-flags, 802-1x
-
phase2-domain-suffix-match, 802-1x +
phase2-domain-suffix-match, 802-1x
-
phase2-private-key, 802-1x +
phase2-private-key, 802-1x
-
phase2-private-key-password, 802-1x +
phase2-private-key-password, 802-1x
-
phase2-private-key-password-flags, 802-1x +
phase2-private-key-password-flags, 802-1x
-
phase2-subject-match, 802-1x +
phase2-subject-match, 802-1x
-
pi, tun +
pi, tun
-
pin, 802-1x, gsm +
pin, 802-1x, gsm
-
pin-flags, 802-1x, gsm +
pin-flags, 802-1x, gsm
-
pmf, 802-11-wireless-security +
pmf, 802-11-wireless-security
-
port, macsec, 802-3-ethernet +
port, macsec, 802-3-ethernet
-
powersave, 802-11-wireless +
powersave, 802-11-wireless
-
org.freedesktop.NetworkManager.PPP, org.freedesktop.NetworkManager.PPP +
org.freedesktop.NetworkManager.PPP, org.freedesktop.NetworkManager.PPP
-
org.freedesktop.NetworkManager.PPP.NeedSecrets(), The NeedSecrets() method +
org.freedesktop.NetworkManager.PPP.NeedSecrets(), The NeedSecrets() method
-
org.freedesktop.NetworkManager.PPP.SetIfindex(), The SetIfindex() method +
org.freedesktop.NetworkManager.PPP.SetIfindex(), The SetIfindex() method
-
org.freedesktop.NetworkManager.PPP.SetIp4Config(), The SetIp4Config() method +
org.freedesktop.NetworkManager.PPP.SetIp4Config(), The SetIp4Config() method
-
org.freedesktop.NetworkManager.PPP.SetIp6Config(), The SetIp6Config() method +
org.freedesktop.NetworkManager.PPP.SetIp6Config(), The SetIp6Config() method
-
org.freedesktop.NetworkManager.PPP.SetState(), The SetState() method +
org.freedesktop.NetworkManager.PPP.SetState(), The SetState() method
-
prio, team-port +
prio, team-port
-
priority, bridge, bridge-port +
priority, bridge, bridge-port
-
priority-bandwidth, dcb +
priority-bandwidth, dcb
-
priority-flow-control, dcb +
priority-flow-control, dcb
-
priority-flow-control-flags, dcb +
priority-flow-control-flags, dcb
-
priority-group-bandwidth, dcb +
priority-group-bandwidth, dcb
-
priority-group-flags, dcb +
priority-group-flags, dcb
-
priority-group-id, dcb +
priority-group-id, dcb
-
priority-strict-bandwidth, dcb +
priority-strict-bandwidth, dcb
-
priority-traffic-class, dcb +
priority-traffic-class, dcb
-
private-key, 802-1x, wireguard +
private-key, 802-1x, wireguard
-
private-key-flags, wireguard +
private-key-flags, wireguard
-
private-key-password, 802-1x +
private-key-password, 802-1x
-
private-key-password-flags, 802-1x +
private-key-password-flags, 802-1x
-
promiscuous, macvlan +
promiscuous, macvlan
-
proto, 802-11-wireless-security +
proto, 802-11-wireless-security
-
protocol, adsl +
protocol, adsl
-
proxy, vxlan +
proxy, vxlan
-
psk, 802-11-wireless-security +
psk, 802-11-wireless-security
-
psk-flags, 802-11-wireless-security +
psk-flags, 802-11-wireless-security

Q

-
qdiscs, tc +
qdiscs, tc
-
queue-id, team-port +
queue-id, team-port

R

-
rate, 802-11-wireless +
rate, 802-11-wireless
-
read-only, connection +
read-only, connection
-
refuse-chap, ppp +
refuse-chap, ppp
-
refuse-eap, ppp +
refuse-eap, ppp
-
refuse-mschap, ppp +
refuse-mschap, ppp
-
refuse-mschapv2, ppp +
refuse-mschapv2, ppp
-
refuse-pap, ppp +
refuse-pap, ppp
-
remote, ip-tunnel, vxlan +
remote, ip-tunnel, vxlan
-
require-mppe, ppp +
require-mppe, ppp
-
require-mppe-128, ppp +
require-mppe-128, ppp
-
route-data, ipv4, ipv6 +
route-data, ipv4, ipv6
-
route-metric, ipv4, ipv6 +
route-metric, ipv4, ipv6
-
route-table, ipv4, ipv6 +
route-table, ipv4, ipv6
-
routes, ipv4, ipv6 +
routes, ipv4, ipv6
-
rsc, vxlan +
rsc, vxlan
-
rstp-enable, ovs-bridge +
rstp-enable, ovs-bridge
-
runner, team +
runner, team
-
runner-active, team +
runner-active, team
-
runner-agg-select-policy, team +
runner-agg-select-policy, team
-
runner-fast-rate, team +
runner-fast-rate, team
-
runner-hwaddr-policy, team +
runner-hwaddr-policy, team
-
runner-min-ports, team +
runner-min-ports, team
-
runner-sys-prio, team +
runner-sys-prio, team
-
runner-tx-balancer, team +
runner-tx-balancer, team
-
runner-tx-balancer-interval, team +
runner-tx-balancer-interval, team
-
runner-tx-hash, team +
runner-tx-hash, team

S

-
s390-nettype, 802-3-ethernet +
s390-nettype, 802-3-ethernet
-
s390-options, 802-3-ethernet +
s390-options, 802-3-ethernet
-
s390-subchannels, 802-3-ethernet +
s390-subchannels, 802-3-ethernet
-
secondaries, connection +
secondaries, connection
-
secrets, vpn +
secrets, vpn
-
security, 802-11-wireless +
security, 802-11-wireless
-
seen-bssids, 802-11-wireless +
seen-bssids, 802-11-wireless
-
send-delay, serial +
send-delay, serial
-
send-sci, macsec +
send-sci, macsec
-
service, pppoe +
service, pppoe
-
service-type, vpn +
service-type, vpn
-
short-address, wpan +
short-address, wpan
-
sim-id, gsm +
sim-id, gsm
-
sim-operator-id, gsm +
sim-operator-id, gsm
-
slave-type, connection +
slave-type, connection
-
source-port-max, vxlan +
source-port-max, vxlan
-
source-port-min, vxlan +
source-port-min, vxlan
-
speed, 802-3-ethernet +
speed, 802-3-ethernet
-
ssid, 802-11-olpc-mesh, 802-11-wireless +
ssid, 802-11-olpc-mesh, 802-11-wireless
-
stable-id, connection +
stable-id, connection
-
sticky, team-port +
sticky, team-port
-
stopbits, serial +
stopbits, serial
-
stp, bridge +
stp, bridge
-
stp-enable, ovs-bridge +
stp-enable, ovs-bridge
-
subject-match, 802-1x +
subject-match, 802-1x
-
system-ca-certs, 802-1x +
system-ca-certs, 802-1x

T

-
tag, ovs-port +
tag, ovs-port
-
tap, macvlan +
tap, macvlan
-
tfilters, tc +
tfilters, tc
-
timeout, vpn +
timeout, vpn
-
timestamp, connection +
timestamp, connection
-
token, ipv6 +
token, ipv6
-
tos, ip-tunnel, vxlan +
tos, ip-tunnel, vxlan
-
total-vfs, sriov +
total-vfs, sriov
-
transport-mode, infiniband +
transport-mode, infiniband
-
ttl, ip-tunnel, vxlan +
ttl, ip-tunnel, vxlan
-
tx-power, 802-11-wireless +
tx-power, 802-11-wireless
-
type, connection, bluetooth, ovs-interface +
type, connection, bluetooth, ovs-interface

U

-
user-name, vpn +
user-name, vpn
-
username, adsl, cdma, gsm, pppoe +
username, adsl, cdma, gsm, pppoe
-
uuid, connection +
uuid, connection

V

-
validation, macsec +
validation, macsec
-
vci, adsl +
vci, adsl
-
vfs, sriov +
vfs, sriov
-
vlan-default-pvid, bridge +
vlan-default-pvid, bridge
-
vlan-filtering, bridge +
vlan-filtering, bridge
-
vlan-mode, ovs-port +
vlan-mode, ovs-port
-
vlans, bridge, bridge-port +
vlans, bridge, bridge-port
-
vnet-hdr, tun +
vnet-hdr, tun
-
vpi, adsl +
vpi, adsl
-
org.freedesktop.NetworkManager.VPN.Connection, org.freedesktop.NetworkManager.VPN.Connection +
org.freedesktop.NetworkManager.VPN.Connection, org.freedesktop.NetworkManager.VPN.Connection
-
org.freedesktop.NetworkManager.VPN.Connection::PropertiesChanged, The "PropertiesChanged" signal +
org.freedesktop.NetworkManager.VPN.Connection::PropertiesChanged, The "PropertiesChanged" signal
-
org.freedesktop.NetworkManager.VPN.Connection::VpnStateChanged, The "VpnStateChanged" signal +
org.freedesktop.NetworkManager.VPN.Connection::VpnStateChanged, The "VpnStateChanged" signal
-
org.freedesktop.NetworkManager.VPN.Connection:Banner, The "Banner" property +
org.freedesktop.NetworkManager.VPN.Connection:Banner, The "Banner" property
-
org.freedesktop.NetworkManager.VPN.Connection:VpnState, The "VpnState" property +
org.freedesktop.NetworkManager.VPN.Connection:VpnState, The "VpnState" property
-
org.freedesktop.NetworkManager.VPN.Plugin, org.freedesktop.NetworkManager.VPN.Plugin +
org.freedesktop.NetworkManager.VPN.Plugin, org.freedesktop.NetworkManager.VPN.Plugin
-
org.freedesktop.NetworkManager.VPN.Plugin.Connect(), The Connect() method +
org.freedesktop.NetworkManager.VPN.Plugin.Connect(), The Connect() method
-
org.freedesktop.NetworkManager.VPN.Plugin.ConnectInteractive(), The ConnectInteractive() method +
org.freedesktop.NetworkManager.VPN.Plugin.ConnectInteractive(), The ConnectInteractive() method
-
org.freedesktop.NetworkManager.VPN.Plugin.Disconnect(), The Disconnect() method +
org.freedesktop.NetworkManager.VPN.Plugin.Disconnect(), The Disconnect() method
-
org.freedesktop.NetworkManager.VPN.Plugin.NeedSecrets(), The NeedSecrets() method +
org.freedesktop.NetworkManager.VPN.Plugin.NeedSecrets(), The NeedSecrets() method
-
org.freedesktop.NetworkManager.VPN.Plugin.NewSecrets(), The NewSecrets() method +
org.freedesktop.NetworkManager.VPN.Plugin.NewSecrets(), The NewSecrets() method
-
org.freedesktop.NetworkManager.VPN.Plugin.SetConfig(), The SetConfig() method +
org.freedesktop.NetworkManager.VPN.Plugin.SetConfig(), The SetConfig() method
-
org.freedesktop.NetworkManager.VPN.Plugin.SetFailure(), The SetFailure() method +
org.freedesktop.NetworkManager.VPN.Plugin.SetFailure(), The SetFailure() method
-
org.freedesktop.NetworkManager.VPN.Plugin.SetIp4Config(), The SetIp4Config() method +
org.freedesktop.NetworkManager.VPN.Plugin.SetIp4Config(), The SetIp4Config() method
-
org.freedesktop.NetworkManager.VPN.Plugin.SetIp6Config(), The SetIp6Config() method +
org.freedesktop.NetworkManager.VPN.Plugin.SetIp6Config(), The SetIp6Config() method
-
org.freedesktop.NetworkManager.VPN.Plugin::Config, The "Config" signal +
org.freedesktop.NetworkManager.VPN.Plugin::Config, The "Config" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::Failure, The "Failure" signal +
org.freedesktop.NetworkManager.VPN.Plugin::Failure, The "Failure" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::Ip4Config, The "Ip4Config" signal +
org.freedesktop.NetworkManager.VPN.Plugin::Ip4Config, The "Ip4Config" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::Ip6Config, The "Ip6Config" signal +
org.freedesktop.NetworkManager.VPN.Plugin::Ip6Config, The "Ip6Config" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::LoginBanner, The "LoginBanner" signal +
org.freedesktop.NetworkManager.VPN.Plugin::LoginBanner, The "LoginBanner" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::SecretsRequired, The "SecretsRequired" signal +
org.freedesktop.NetworkManager.VPN.Plugin::SecretsRequired, The "SecretsRequired" signal
-
org.freedesktop.NetworkManager.VPN.Plugin::StateChanged, The "StateChanged" signal +
org.freedesktop.NetworkManager.VPN.Plugin::StateChanged, The "StateChanged" signal
-
org.freedesktop.NetworkManager.VPN.Plugin:State, The "State" property +
org.freedesktop.NetworkManager.VPN.Plugin:State, The "State" property

W

-
wait-device-timeout, connection +
wait-device-timeout, connection
-
wake-on-lan, 802-3-ethernet +
wake-on-lan, 802-3-ethernet
-
wake-on-lan-password, 802-3-ethernet +
wake-on-lan-password, 802-3-ethernet
-
wake-on-wlan, 802-11-wireless +
wake-on-wlan, 802-11-wireless
-
wep-key-flags, 802-11-wireless-security +
wep-key-flags, 802-11-wireless-security
-
wep-key-type, 802-11-wireless-security +
wep-key-type, 802-11-wireless-security
-
wep-key0, 802-11-wireless-security +
wep-key0, 802-11-wireless-security
-
wep-key1, 802-11-wireless-security +
wep-key1, 802-11-wireless-security
-
wep-key2, 802-11-wireless-security +
wep-key2, 802-11-wireless-security
-
wep-key3, 802-11-wireless-security +
wep-key3, 802-11-wireless-security
-
wep-tx-keyidx, 802-11-wireless-security +
wep-tx-keyidx, 802-11-wireless-security
-
wfd-ies, wifi-p2p +
wfd-ies, wifi-p2p
-
org.freedesktop.NetworkManager.WifiP2PPeer, org.freedesktop.NetworkManager.WifiP2PPeer +
org.freedesktop.NetworkManager.WifiP2PPeer, org.freedesktop.NetworkManager.WifiP2PPeer
-
org.freedesktop.NetworkManager.WifiP2PPeer:Flags, The "Flags" property +
org.freedesktop.NetworkManager.WifiP2PPeer:Flags, The "Flags" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:HwAddress, The "HwAddress" property +
org.freedesktop.NetworkManager.WifiP2PPeer:HwAddress, The "HwAddress" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:LastSeen, The "LastSeen" property +
org.freedesktop.NetworkManager.WifiP2PPeer:LastSeen, The "LastSeen" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:Manufacturer, The "Manufacturer" property +
org.freedesktop.NetworkManager.WifiP2PPeer:Manufacturer, The "Manufacturer" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:Model, The "Model" property +
org.freedesktop.NetworkManager.WifiP2PPeer:Model, The "Model" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:ModelNumber, The "ModelNumber" property +
org.freedesktop.NetworkManager.WifiP2PPeer:ModelNumber, The "ModelNumber" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:Serial, The "Serial" property +
org.freedesktop.NetworkManager.WifiP2PPeer:Serial, The "Serial" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:Strength, The "Strength" property +
org.freedesktop.NetworkManager.WifiP2PPeer:Strength, The "Strength" property
-
org.freedesktop.NetworkManager.WifiP2PPeer:WfdIEs, The "WfdIEs" property +
org.freedesktop.NetworkManager.WifiP2PPeer:WfdIEs, The "WfdIEs" property
-
wps-method, wifi-p2p, 802-11-wireless-security +
wps-method, wifi-p2p, 802-11-wireless-security

Z

-
zone, connection +
zone, connection
diff --git a/docs/api/html/nm-dbus-types.html b/docs/api/html/nm-dbus-types.html index 5c054bfb..f2914fd1 100644 --- a/docs/api/html/nm-dbus-types.html +++ b/docs/api/html/nm-dbus-types.html @@ -1075,7 +1075,7 @@

-

device supports acting as a mesh point

+

device supports acting as a mesh point. Since: 1.20.

  @@ -1462,7 +1462,7 @@

-

the device is a 802.11s mesh point.

+

the device is a 802.11s mesh point. Since: 1.20.

  @@ -3079,7 +3079,7 @@

-

indicates that the per-connection setting is unspecified. In this case, it will fallback to the default value, which is @NM_CONNECTION_MULTI_CONNECT_SINGLE.

+

indicates that the per-connection setting is unspecified. In this case, it will fallback to the default value, which is %NM_CONNECTION_MULTI_CONNECT_SINGLE.

  @@ -4390,7 +4390,7 @@

-

this is almost the same as @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting the profile, the original profile will not be deleted. Instead a nmmeta file is written to /run to indicate that the profile is gone. Note that if such a nmmeta tombstone file exists and hides a file in persistant storage, then when re-adding the profile with the same UUID, then the original storage is taken over again.

+

this is almost the same as %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting the profile, the original profile will not be deleted. Instead a nmmeta file is written to /run to indicate that the profile is gone. Note that if such a nmmeta tombstone file exists and hides a file in persistant storage, then when re-adding the profile with the same UUID, then the original storage is taken over again.

  @@ -4405,7 +4405,7 @@

-

this is like @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, but if the connection has a corresponding file on persistent storage, the file will be deleted right away. If the profile is later again persisted to disk, a new, unused filename will be chosen.

+

this is like %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, but if the connection has a corresponding file on persistent storage, the file will be deleted right away. If the profile is later again persisted to disk, a new, unused filename will be chosen.

  diff --git a/docs/api/html/nm-settings-ifcfg-rh.html b/docs/api/html/nm-settings-ifcfg-rh.html index 8646aa22..e05ad396 100644 --- a/docs/api/html/nm-settings-ifcfg-rh.html +++ b/docs/api/html/nm-settings-ifcfg-rh.html @@ -1400,7 +1400,7 @@ Example: IPV6_DEFAULTGW=abbe::1 dhcp-hostname -DHCP_HOSTNAME +DHCPV6_HOSTNAME   Hostname to send the DHCP server. diff --git a/docs/api/version.xml b/docs/api/version.xml index ff2b1bb4..39893559 100644 --- a/docs/api/version.xml +++ b/docs/api/version.xml @@ -1 +1 @@ -1.19.90 +1.20.0 diff --git a/docs/libnm/html/NMConnection.html b/docs/libnm/html/NMConnection.html index 1606deec..5c566d5b 100644 --- a/docs/libnm/html/NMConnection.html +++ b/docs/libnm/html/NMConnection.html @@ -2851,7 +2851,7 @@ calling

NM_CONNECTION_SERIALIZE_WITH_SECRETS_AGENT_OWNED

if set, only secrets that - are agent owned will be serialized.

+ are agent owned will be serialized. Since: 1.20

  diff --git a/docs/libnm/html/NMSettingIP6Config.html b/docs/libnm/html/NMSettingIP6Config.html index 30ee1129..2cdd15c6 100644 --- a/docs/libnm/html/NMSettingIP6Config.html +++ b/docs/libnm/html/NMSettingIP6Config.html @@ -434,6 +434,7 @@ supported for IPv6)

#define NM_SETTING_IP6_CONFIG_METHOD_DISABLED   "disabled"
 

IPv6 is disabled for the connection.

+

Since: 1.20


diff --git a/docs/libnm/html/NMSettingVlan.html b/docs/libnm/html/NMSettingVlan.html index 7ec017c7..eb1675ce 100644 --- a/docs/libnm/html/NMSettingVlan.html +++ b/docs/libnm/html/NMSettingVlan.html @@ -365,7 +365,7 @@ properties of this setting.

Returns

-

return the number of ingress/egress priority entries, -1 if error

+

return the number of ingress/egress priority entries.


@@ -406,19 +406,20 @@ or

out_from

on return the value of the priority map's 'from' item.

-[out] +[out][allow-none]

out_to

on return the value of priority map's 'to' item.

-[out] +[out][allow-none]

Returns

-

TRUE if a priority map was returned, FALSE if error

+

returns TRUE if idx +is in range. Otherwise FALSE.


@@ -481,8 +482,7 @@ to

Returns

-

TRUE if the new priority mapping was successfully added to the -list, FALSE if error

+

TRUE.


@@ -694,7 +694,8 @@ the Linux SKB priorities to 802.1p priorities.

Returns

TRUE if the entry was successfully added to the list, or it -overwrote the old value, FALSE if error

+overwrote the old value, FALSE if str +is not a valid mapping.

diff --git a/docs/libnm/html/NMSettingWireless.html b/docs/libnm/html/NMSettingWireless.html index a792daa0..425fc25a 100644 --- a/docs/libnm/html/NMSettingWireless.html +++ b/docs/libnm/html/NMSettingWireless.html @@ -1513,6 +1513,7 @@ for this connection.

#define NM_SETTING_WIRELESS_MODE_MESH   "mesh"
 

Indicates that the connection should create a mesh point.

+

Since: 1.20


diff --git a/docs/libnm/html/index.html b/docs/libnm/html/index.html index 7465863d..517e5e60 100644 --- a/docs/libnm/html/index.html +++ b/docs/libnm/html/index.html @@ -15,7 +15,7 @@

- for libnm 1.19.90 + for libnm 1.20.0 The latest version of this documentation can be found on-line at https://developer.gnome.org/libnm/stable/. diff --git a/docs/libnm/html/libnm-nm-dbus-interface.html b/docs/libnm/html/libnm-nm-dbus-interface.html index 541a5a56..2e649502 100644 --- a/docs/libnm/html/libnm-nm-dbus-interface.html +++ b/docs/libnm/html/libnm-nm-dbus-interface.html @@ -1447,7 +1447,7 @@ GSM/UMTS, or LTE network access protocols

NM_WIFI_DEVICE_CAP_MESH

-

device supports acting as a mesh point

+

device supports acting as a mesh point. Since: 1.20.

  @@ -1669,7 +1669,7 @@ supported

NM_802_11_MODE_MESH

-

the device is a 802.11s mesh point.

+

the device is a 802.11s mesh point. Since: 1.20.

  @@ -2510,8 +2510,7 @@ GPRS, EDGE, UMTS, HSDPA, HSUPA, or HSPA+ packet switched data capability

indicates that the per-connection setting is unspecified. In this case, it will fallback to the default - value, which is NM_CONNECTION_MULTI_CONNECT_SINGLE -.

+ value, which is NM_CONNECTION_MULTI_CONNECT_SINGLE.

  @@ -3442,15 +3441,20 @@ VPN plugin authentication dialogs.

NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_DETACHED

-

this is almost the same as

+

this is almost the same + as NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting + the profile, the original profile will not be deleted. Instead a nmmeta + file is written to /run to indicate that the profile is gone. + Note that if such a nmmeta tombstone file exists and hides a file in persistant + storage, then when re-adding the profile with the same UUID, then the original + storage is taken over again.

 

NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_ONLY

-

this is like NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY -, +

this is like NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, but if the connection has a corresponding file on persistent storage, the file will be deleted right away. If the profile is later again persisted to disk, a new, unused filename will be chosen.

diff --git a/docs/libnm/html/libnm.devhelp2 b/docs/libnm/html/libnm.devhelp2 index 5450b0ba..986abe77 100644 --- a/docs/libnm/html/libnm.devhelp2 +++ b/docs/libnm/html/libnm.devhelp2 @@ -1244,7 +1244,7 @@ - + @@ -2339,7 +2339,7 @@ - + diff --git a/docs/libnm/html/usage.html b/docs/libnm/html/usage.html index 42148311..70cb895a 100644 --- a/docs/libnm/html/usage.html +++ b/docs/libnm/html/usage.html @@ -96,7 +96,7 @@

$ cc $(pkg-config --libs --cflags libnm) -o hello-nm hello-nm.c
   $ ./hello-nm
-  NetworkManager version: 1.19.90
+  NetworkManager version: 1.20.0
 
   $ 

diff --git a/docs/libnm/version.xml b/docs/libnm/version.xml index ff2b1bb4..39893559 100644 --- a/docs/libnm/version.xml +++ b/docs/libnm/version.xml @@ -1 +1 @@ -1.19.90 +1.20.0 diff --git a/examples/python/gi/nm-wg-set b/examples/python/gi/nm-wg-set index 81ee5667..5f284c2c 100755 --- a/examples/python/gi/nm-wg-set +++ b/examples/python/gi/nm-wg-set @@ -234,6 +234,15 @@ def secret_to_string(secret): return '' return secret +def val_to_str(val): + if val == NM.Ternary.DEFAULT: + return 'default' + if val == NM.Ternary.TRUE: + return 'true' + if val == NM.Ternary.FALSE: + return 'false' + return repr(val) + ############################################################################### def wg_read_private_key(privkey_file): @@ -273,6 +282,9 @@ def do_get(nm_client, connection): print('private-key-flags: %s' % (secret_flags_to_string(s_wg.get_private_key_flags()))) print('listen-port: %s' % (s_wg.get_listen_port())) print('fwmark: 0x%x' % (s_wg.get_fwmark())) + print('peer-routes: %s' % (val_to_str(s_wg.get_peer_routes()))) + print('ip4-auto-default-route: %s' % (val_to_str(s_wg.get_ip4_auto_default_route()))) + print('ip6-auto-default-route: %s' % (val_to_str(s_wg.get_ip6_auto_default_route()))) for i in range(s_wg.get_peers_len()): peer = s_wg.get_peer(i) print('peer[%d].public-key: %s' % (i, peer.get_public_key())) diff --git a/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml b/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml index 2cbb6c2e..6211274f 100644 --- a/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml +++ b/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml @@ -111,7 +111,8 @@ "0x4" (in-memory-detached), "0x8" (in-memory-only), "0x10" (volatile), - "0x20" (block-autoconnect). + "0x20" (block-autoconnect), + "0x40" (no-reapply). Unknown flags cause the call to fail. @args: optional arguments dictionary, for extensibility. Currently no arguments are accepted. Specifying unknown keys causes the call @@ -124,6 +125,12 @@ the change is only made in memory (without touching an eventual profile on disk). If neither 0x1 nor 0x2 is set, the change is made in memory only, if the connection is already in memory only. + The flags 0x4 (in-memory-detached) and 0x8 (in-memory-only) are like + "in-memory", but behave slightly different when migrating the profile + from disk to in-memory. + The flag 0x20 (block-autoconnect) blocks auto-connect on the updated + profile, and 0x40 (no-reapply) prevents "connection.zone" and "connection.metered" + properties to take effect on currently active devices. Secrets may be part of the update request, and will be either stored in persistent storage or sent to a Secret Agent for storage, depending on the flags associated with each secret. diff --git a/libnm-core/nm-connection.h b/libnm-core/nm-connection.h index 4399ad67..2c553e0e 100644 --- a/libnm-core/nm-connection.h +++ b/libnm-core/nm-connection.h @@ -112,7 +112,7 @@ NMSetting *nm_connection_get_setting_by_name (NMConnection *connection, * @NM_CONNECTION_SERIALIZE_NO_SECRETS: do not include secrets * @NM_CONNECTION_SERIALIZE_ONLY_SECRETS: only serialize secrets * @NM_CONNECTION_SERIALIZE_WITH_SECRETS_AGENT_OWNED: if set, only secrets that - * are agent owned will be serialized. + * are agent owned will be serialized. Since: 1.20 * * These flags determine which properties are serialized when calling when * calling nm_connection_to_dbus(). diff --git a/libnm-core/nm-dbus-interface.h b/libnm-core/nm-dbus-interface.h index 7949fa2d..d74ea2ba 100644 --- a/libnm-core/nm-dbus-interface.h +++ b/libnm-core/nm-dbus-interface.h @@ -292,7 +292,7 @@ typedef enum { /*< flags >*/ * @NM_WIFI_DEVICE_CAP_FREQ_VALID: device reports frequency capabilities * @NM_WIFI_DEVICE_CAP_FREQ_2GHZ: device supports 2.4GHz frequencies * @NM_WIFI_DEVICE_CAP_FREQ_5GHZ: device supports 5GHz frequencies - * @NM_WIFI_DEVICE_CAP_MESH: device supports acting as a mesh point + * @NM_WIFI_DEVICE_CAP_MESH: device supports acting as a mesh point. Since: 1.20. * * 802.11 specific device encryption and authentication capabilities. **/ @@ -385,7 +385,7 @@ typedef enum { /*< underscore_name=nm_802_11_ap_security_flags, flags >*/ * provides connectivity to clients. * @NM_802_11_MODE_AP: the device is an access point/hotspot. Not valid for * access point objects; used only for hotspot mode on the local machine. - * @NM_802_11_MODE_MESH: the device is a 802.11s mesh point. + * @NM_802_11_MODE_MESH: the device is a 802.11s mesh point. Since: 1.20. * * Indicates the 802.11 mode an access point or device is currently in. **/ @@ -673,7 +673,7 @@ typedef enum { * NMConnectionMultiConnect: * @NM_CONNECTION_MULTI_CONNECT_DEFAULT: indicates that the per-connection * setting is unspecified. In this case, it will fallback to the default - * value, which is @NM_CONNECTION_MULTI_CONNECT_SINGLE. + * value, which is %NM_CONNECTION_MULTI_CONNECT_SINGLE. * @NM_CONNECTION_MULTI_CONNECT_SINGLE: the connection profile can only * be active once at each moment. Activating a profile that is already active, * will first deactivate it. @@ -1045,14 +1045,14 @@ typedef enum { /*< flags >*/ * Likewise, when finally deleting the profile, both the storage from /run * and persistent storage are deleted (or if the persistent storage does not * allow deletion, and nmmeta file is written to mark the UUID as deleted). - * @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_DETACHED: this is almost the same as - * @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting + * @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_DETACHED: this is almost the same + * as %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting * the profile, the original profile will not be deleted. Instead a nmmeta * file is written to /run to indicate that the profile is gone. * Note that if such a nmmeta tombstone file exists and hides a file in persistant * storage, then when re-adding the profile with the same UUID, then the original * storage is taken over again. - * @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_ONLY: this is like @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, + * @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_ONLY: this is like %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, * but if the connection has a corresponding file on persistent storage, the file * will be deleted right away. If the profile is later again persisted to disk, * a new, unused filename will be chosen. diff --git a/libnm-core/nm-dbus-types.xml b/libnm-core/nm-dbus-types.xml index ad199238..309a88b7 100644 --- a/libnm-core/nm-dbus-types.xml +++ b/libnm-core/nm-dbus-types.xml @@ -440,7 +440,7 @@ NM_WIFI_DEVICE_CAP_MESH = 0x00001000 - device supports acting as a mesh point + device supports acting as a mesh point. Since: 1.20. @@ -610,7 +610,7 @@ NM_802_11_MODE_MESH = 4 - the device is a 802.11s mesh point. + the device is a 802.11s mesh point. Since: 1.20. @@ -1245,7 +1245,7 @@ NM_CONNECTION_MULTI_CONNECT_DEFAULT = 0 - indicates that the per-connection setting is unspecified. In this case, it will fallback to the default value, which is @NM_CONNECTION_MULTI_CONNECT_SINGLE. + indicates that the per-connection setting is unspecified. In this case, it will fallback to the default value, which is %NM_CONNECTION_MULTI_CONNECT_SINGLE. NM_CONNECTION_MULTI_CONNECT_SINGLE @@ -1830,12 +1830,12 @@ NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_DETACHED = 0x4 - this is almost the same as @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting the profile, the original profile will not be deleted. Instead a nmmeta file is written to /run to indicate that the profile is gone. Note that if such a nmmeta tombstone file exists and hides a file in persistant storage, then when re-adding the profile with the same UUID, then the original storage is taken over again. + this is almost the same as %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, with one difference: when later deleting the profile, the original profile will not be deleted. Instead a nmmeta file is written to /run to indicate that the profile is gone. Note that if such a nmmeta tombstone file exists and hides a file in persistant storage, then when re-adding the profile with the same UUID, then the original storage is taken over again. NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY_ONLY = 0x8 - this is like @NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, but if the connection has a corresponding file on persistent storage, the file will be deleted right away. If the profile is later again persisted to disk, a new, unused filename will be chosen. + this is like %NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY, but if the connection has a corresponding file on persistent storage, the file will be deleted right away. If the profile is later again persisted to disk, a new, unused filename will be chosen. NM_SETTINGS_UPDATE2_FLAG_VOLATILE diff --git a/libnm-core/nm-keyfile.c b/libnm-core/nm-keyfile.c index 85a9ea11..b0c7a134 100644 --- a/libnm-core/nm-keyfile.c +++ b/libnm-core/nm-keyfile.c @@ -3394,10 +3394,9 @@ _read_setting_wireguard_peer (KeyfileReaderInfo *info) return; if (!nm_wireguard_peer_is_valid (peer, TRUE, TRUE, &error)) { - if (!handle_warn (info, key, NM_KEYFILE_WARN_SEVERITY_WARN, - _("peer '%s' is invalid: %s"), - info->group, error->message)) - return; + handle_warn (info, key, NM_KEYFILE_WARN_SEVERITY_WARN, + _("peer '%s' is invalid: %s"), + info->group, error->message); return; } diff --git a/libnm-core/nm-setting-ip6-config.c b/libnm-core/nm-setting-ip6-config.c index bafdb373..44379ef7 100644 --- a/libnm-core/nm-setting-ip6-config.c +++ b/libnm-core/nm-setting-ip6-config.c @@ -666,7 +666,7 @@ nm_setting_ip6_config_class_init (NMSettingIP6ConfigClass *klass) /* ---ifcfg-rh--- * property: dhcp-hostname - * variable: DHCP_HOSTNAME + * variable: DHCPV6_HOSTNAME * description: Hostname to send the DHCP server. * ---end--- */ diff --git a/libnm-core/nm-setting-ip6-config.h b/libnm-core/nm-setting-ip6-config.h index bb590ae4..80449e0c 100644 --- a/libnm-core/nm-setting-ip6-config.h +++ b/libnm-core/nm-setting-ip6-config.h @@ -103,6 +103,8 @@ G_BEGIN_DECLS * NM_SETTING_IP6_CONFIG_METHOD_DISABLED: * * IPv6 is disabled for the connection. + * + * Since: 1.20 */ #define NM_SETTING_IP6_CONFIG_METHOD_DISABLED "disabled" diff --git a/libnm-core/nm-setting-vlan.c b/libnm-core/nm-setting-vlan.c index a7debbf1..d69a8946 100644 --- a/libnm-core/nm-setting-vlan.c +++ b/libnm-core/nm-setting-vlan.c @@ -221,7 +221,7 @@ check_replace_duplicate_priority (GSList *list, guint32 from, guint32 to) * the Linux SKB priorities to 802.1p priorities. * * Returns: %TRUE if the entry was successfully added to the list, or it - * overwrote the old value, %FALSE if error + * overwrote the old value, %FALSE if @str is not a valid mapping. */ gboolean nm_setting_vlan_add_priority_str (NMSettingVlan *setting, @@ -235,11 +235,11 @@ nm_setting_vlan_add_priority_str (NMSettingVlan *setting, g_return_val_if_fail (map == NM_VLAN_INGRESS_MAP || map == NM_VLAN_EGRESS_MAP, FALSE); g_return_val_if_fail (str && str[0], FALSE); - list = get_map (setting, map); - item = priority_map_new_from_str (map, str); if (!item) - g_return_val_if_reached (FALSE); + return FALSE; + + list = get_map (setting, map); /* Duplicates get replaced */ if (check_replace_duplicate_priority (list, item->from, item->to)) { @@ -264,7 +264,7 @@ nm_setting_vlan_add_priority_str (NMSettingVlan *setting, * #NMSettingVlan:ingress_priority_map or #NMSettingVlan:egress_priority_map * properties of this setting. * - * Returns: return the number of ingress/egress priority entries, -1 if error + * Returns: return the number of ingress/egress priority entries. **/ gint32 nm_setting_vlan_get_num_priorities (NMSettingVlan *setting, NMVlanPriorityMap map) @@ -280,13 +280,13 @@ nm_setting_vlan_get_num_priorities (NMSettingVlan *setting, NMVlanPriorityMap ma * @setting: the #NMSettingVlan * @map: the type of priority map * @idx: the zero-based index of the ingress/egress priority map entry - * @out_from: (out): on return the value of the priority map's 'from' item - * @out_to: (out): on return the value of priority map's 'to' item + * @out_from: (out) (allow-none): on return the value of the priority map's 'from' item + * @out_to: (out) (allow-none): on return the value of priority map's 'to' item * * Retrieve one of the entries of the #NMSettingVlan:ingress_priority_map * or #NMSettingVlan:egress_priority_map properties of this setting. * - * Returns: %TRUE if a priority map was returned, %FALSE if error + * Returns: returns %TRUE if @idx is in range. Otherwise %FALSE. **/ gboolean nm_setting_vlan_get_priority (NMSettingVlan *setting, @@ -295,21 +295,23 @@ nm_setting_vlan_get_priority (NMSettingVlan *setting, guint32 *out_from, guint32 *out_to) { - GSList *list = NULL; - NMVlanQosMapping *item = NULL; + NMVlanQosMapping *item; + GSList *list; g_return_val_if_fail (NM_IS_SETTING_VLAN (setting), FALSE); - g_return_val_if_fail (map == NM_VLAN_INGRESS_MAP || map == NM_VLAN_EGRESS_MAP, FALSE); - g_return_val_if_fail (out_from != NULL, FALSE); - g_return_val_if_fail (out_to != NULL, FALSE); + g_return_val_if_fail (NM_IN_SET (map, NM_VLAN_INGRESS_MAP, NM_VLAN_EGRESS_MAP), FALSE); list = get_map (setting, map); - g_return_val_if_fail (idx < g_slist_length (list), FALSE); - item = g_slist_nth_data (list, idx); - g_assert (item); - *out_from = item->from; - *out_to = item->to; + + if (!item) { + NM_SET_OUT (out_from, 0); + NM_SET_OUT (out_to, 0); + return FALSE; + } + + NM_SET_OUT (out_from, item->from); + NM_SET_OUT (out_to, item->to); return TRUE; } @@ -331,8 +333,7 @@ nm_setting_vlan_get_priority (NMSettingVlan *setting, * If @map is #NM_VLAN_EGRESS_MAP then @from is the Linux SKB priority value and * @to is the outgoing 802.1q VLAN Priority Code Point (PCP) value. * - * Returns: %TRUE if the new priority mapping was successfully added to the - * list, %FALSE if error + * Returns: %TRUE. */ gboolean nm_setting_vlan_add_priority (NMSettingVlan *setting, diff --git a/libnm-core/nm-setting-vpn.c b/libnm-core/nm-setting-vpn.c index 56098392..fc9c5184 100644 --- a/libnm-core/nm-setting-vpn.c +++ b/libnm-core/nm-setting-vpn.c @@ -277,7 +277,7 @@ foreach_item_helper (NMSettingVpn *self, } for (i = 0; i < len; i++) { - nm_assert (keys[i]); + nm_assert (keys && keys[i]); keys[i] = g_strdup (keys[i]); } nm_assert (!keys[i]); diff --git a/libnm-core/nm-setting-wireguard.c b/libnm-core/nm-setting-wireguard.c index 07a841f4..17c35efc 100644 --- a/libnm-core/nm-setting-wireguard.c +++ b/libnm-core/nm-setting-wireguard.c @@ -1922,8 +1922,8 @@ update_one_secret (NMSetting *setting, i_peer = 0; while (g_variant_iter_next (&iter_peers, "@a{sv}", &peer_var)) { _nm_unused gs_unref_variant GVariant *peer_var_unref = peer_var; + nm_auto_unref_wgpeer NMWireGuardPeer *peer = NULL; PeerData *pd; - NMWireGuardPeer *peer; const char *cstr; i_peer++; diff --git a/libnm-core/nm-setting-wireless.h b/libnm-core/nm-setting-wireless.h index dcb11e11..d04bad3a 100644 --- a/libnm-core/nm-setting-wireless.h +++ b/libnm-core/nm-setting-wireless.h @@ -126,6 +126,8 @@ typedef enum { /*< flags >*/ * NM_SETTING_WIRELESS_MODE_MESH: * * Indicates that the connection should create a mesh point. + * + * Since: 1.20 */ #define NM_SETTING_WIRELESS_MODE_MESH "mesh" diff --git a/libnm-core/nm-team-utils.c b/libnm-core/nm-team-utils.c index ac834d74..63018b09 100644 --- a/libnm-core/nm-team-utils.c +++ b/libnm-core/nm-team-utils.c @@ -1587,8 +1587,8 @@ nm_team_setting_config_get (const NMTeamSetting *self) || _team_setting_has_fields_any_v (self, attr_lst_runner_pt3, G_N_ELEMENTS (attr_lst_runner_pt3))) { gboolean list_is_empty2 = TRUE; - if (!list_is_empty) - nm_json_aux_gstr_append_delimiter (gstr); + nm_assert (list_is_empty); + nm_json_aux_gstr_append_obj_name (gstr, "runner", '{'); if (_team_setting_fields_to_json_maybe (self, gstr, !list_is_empty2, attr_lst_runner_pt1, G_N_ELEMENTS (attr_lst_runner_pt1))) diff --git a/libnm-core/nm-team-utils.h b/libnm-core/nm-team-utils.h index 7da42a3f..c4631bec 100644 --- a/libnm-core/nm-team-utils.h +++ b/libnm-core/nm-team-utils.h @@ -61,7 +61,7 @@ typedef enum { NM_TEAM_ATTRIBUTE_PORT_LACP_KEY, _NM_TEAM_ATTRIBUTE_PORT_NUM, - _NM_TEAM_ATTRIBUTE_NUM = NM_CONST_MAX (_NM_TEAM_ATTRIBUTE_MASTER_NUM, _NM_TEAM_ATTRIBUTE_PORT_NUM), + _NM_TEAM_ATTRIBUTE_NUM = MAX (_NM_TEAM_ATTRIBUTE_MASTER_NUM, _NM_TEAM_ATTRIBUTE_PORT_NUM), } NMTeamAttribute; diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c index 55b004c8..c16c9004 100644 --- a/libnm-core/nm-utils.c +++ b/libnm-core/nm-utils.c @@ -5989,10 +5989,12 @@ _nm_utils_bridge_vlans_from_dbus (NMSetting *setting, if (vid_start > vid_end) continue; - g_variant_lookup (vlan_var, "pvid", "b", &pvid); + if (!g_variant_lookup (vlan_var, "pvid", "b", &pvid)) + pvid = FALSE; if (pvid && vid_start != vid_end) continue; - g_variant_lookup (vlan_var, "untagged", "b", &untagged); + if (!g_variant_lookup (vlan_var, "untagged", "b", &untagged)) + untagged = FALSE; vlan = nm_bridge_vlan_new (vid_start, vid_end); nm_bridge_vlan_set_untagged (vlan, untagged); diff --git a/libnm/nm-settings-ifcfg-rh-docs.xml b/libnm/nm-settings-ifcfg-rh-docs.xml index 9ffb42a2..8bf11594 100644 --- a/libnm/nm-settings-ifcfg-rh-docs.xml +++ b/libnm/nm-settings-ifcfg-rh-docs.xml @@ -216,7 +216,7 @@ IPV6ADDR_SECONDARIES="ab12:9876::2 ab12:9876::3"" description="List of but in route6-* file instead in the form of command line for 'ip route add'."/> - + diff --git a/man/NetworkManager.8 b/man/NetworkManager.8 index ef1b87c2..c15ee974 100644 --- a/man/NetworkManager.8 +++ b/man/NetworkManager.8 @@ -2,12 +2,12 @@ .\" Title: NetworkManager .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Network management daemons -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NETWORKMANAGER" "8" "" "NetworkManager 1\&.19\&.90" "Network management daemons" +.TH "NETWORKMANAGER" "8" "" "NetworkManager 1\&.20\&.0" "Network management daemons" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/NetworkManager.conf.5 b/man/NetworkManager.conf.5 index b49fc963..63ea0274 100644 --- a/man/NetworkManager.conf.5 +++ b/man/NetworkManager.conf.5 @@ -2,12 +2,12 @@ .\" Title: NetworkManager.conf .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Configuration -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NETWORKMANAGER\&.CONF" "5" "" "NetworkManager 1\&.19\&.90" "Configuration" +.TH "NETWORKMANAGER\&.CONF" "5" "" "NetworkManager 1\&.20\&.0" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-initrd-generator.8 b/man/nm-initrd-generator.8 index fde40b96..35858d63 100644 --- a/man/nm-initrd-generator.8 +++ b/man/nm-initrd-generator.8 @@ -2,12 +2,12 @@ .\" Title: nm-initrd-generator .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: System Administration -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-INITRD\-GENERATOR" "8" "" "NetworkManager 1\&.19\&.90" "System Administration" +.TH "NM\-INITRD\-GENERATOR" "8" "" "NetworkManager 1\&.20\&.0" "System Administration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-online.1 b/man/nm-online.1 index e91861f8..840c4871 100644 --- a/man/nm-online.1 +++ b/man/nm-online.1 @@ -2,12 +2,12 @@ .\" Title: nm-online .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: General Commands Manual -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-ONLINE" "1" "" "NetworkManager 1\&.19\&.90" "General Commands Manual" +.TH "NM\-ONLINE" "1" "" "NetworkManager 1\&.20\&.0" "General Commands Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-openvswitch.7 b/man/nm-openvswitch.7 index 52480183..f76256e5 100644 --- a/man/nm-openvswitch.7 +++ b/man/nm-openvswitch.7 @@ -2,12 +2,12 @@ .\" Title: nm-openvswitch .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Open vSwitch support overview -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-OPENVSWITCH" "7" "" "NetworkManager 1\&.19\&.90" "Open vSwitch support overview" +.TH "NM\-OPENVSWITCH" "7" "" "NetworkManager 1\&.20\&.0" "Open vSwitch support overview" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-settings-ifcfg-rh.5 b/man/nm-settings-ifcfg-rh.5 index 9eacd443..3d6d19ef 100644 --- a/man/nm-settings-ifcfg-rh.5 +++ b/man/nm-settings-ifcfg-rh.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings-ifcfg-rh .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Configuration -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-SETTINGS\-IFCFG\-RH" "5" "" "NetworkManager 1\&.19\&.90" "Configuration" +.TH "NM\-SETTINGS\-IFCFG\-RH" "5" "" "NetworkManager 1\&.20\&.0" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -1940,7 +1940,7 @@ T} T{ dhcp\-hostname T}:T{ -DHCP_HOSTNAME +DHCPV6_HOSTNAME T}:T{ \ \& T}:T{ diff --git a/man/nm-settings-ifcfg-rh.xml b/man/nm-settings-ifcfg-rh.xml index 16f0db0f..eaa6257c 100644 --- a/man/nm-settings-ifcfg-rh.xml +++ b/man/nm-settings-ifcfg-rh.xml @@ -1,6 +1,6 @@ -nm-settings-ifcfg-rhNetworkManager developersnm-settings-ifcfg-rh5NetworkManagerConfiguration1.19.90nm-settings-ifcfg-rhDescription of ifcfg-rh settings pluginDescription +nm-settings-ifcfg-rhNetworkManager developersnm-settings-ifcfg-rh5NetworkManagerConfiguration1.20.0nm-settings-ifcfg-rhDescription of ifcfg-rh settings pluginDescription NetworkManager is based on the concept of connection profiles that contain network configuration (see nm-settings5 for details). The profiles can be stored in various formats. NetworkManager uses plugins for reading and writing @@ -334,7 +334,7 @@ Example: DHCP_FQDN=foo.bar.com Example: IPV6ADDR=ab12:9876::1 IPV6ADDR_SECONDARIES="ab12:9876::2 ab12:9876::3"gatewayIPV6_DEFAULTGWGateway IP address. -Example: IPV6_DEFAULTGW=abbe::1routes(none)List of static routes. They are not stored in ifcfg-* file, but in route6-* file instead in the form of command line for 'ip route add'.ignore-auto-routesIPV6_PEERROUTES(+)yesIPV6_PEERROUTES has the opposite meaning as 'ignore-auto-routes' property.ignore-auto-dnsIPV6_PEERDNS(+)yesIPV6_PEERDNS has the opposite meaning as 'ignore-auto-dns' property.dhcp-hostnameDHCP_HOSTNAMEHostname to send the DHCP server.never-defaultIPV6_DEFROUTE(+), (and IPV6_DEFAULTGW, IPV6_DEFAULTDEV in /etc/sysconfig/network)IPV6_DEFROUTE=yes (when no variable specified)IPV6_DEFROUTE=no tells NetworkManager that this connection should not be assigned the default IPv6 route. IPV6_DEFROUTE has the opposite meaning as 'never-default' property.may-failIPV6_FAILURE_FATAL(+)noIPV6_FAILURE_FATAL has the opposite meaning as 'may-fail' property.route-metricIPV6_ROUTE_METRIC(+)-1IPV6_ROUTE_METRIC is the default IPv6 metric for routes on this connection. If set to -1, a default metric based on the device type is used.route-tableIPV6_ROUTE_TABLE(+)0IPV6_ROUTE_TABLE enables policy-routing and sets the default routing table.dns-priorityIPV6_DNS_PRIORITY(+)0The priority for DNS servers of this connection. Lower values have higher priority. If zero, the default value will be used (50 for VPNs, 100 for other connections). A negative value prevents DNS from other connections with greater values to be used. +Example: IPV6_DEFAULTGW=abbe::1routes(none)List of static routes. They are not stored in ifcfg-* file, but in route6-* file instead in the form of command line for 'ip route add'.ignore-auto-routesIPV6_PEERROUTES(+)yesIPV6_PEERROUTES has the opposite meaning as 'ignore-auto-routes' property.ignore-auto-dnsIPV6_PEERDNS(+)yesIPV6_PEERDNS has the opposite meaning as 'ignore-auto-dns' property.dhcp-hostnameDHCPV6_HOSTNAMEHostname to send the DHCP server.never-defaultIPV6_DEFROUTE(+), (and IPV6_DEFAULTGW, IPV6_DEFAULTDEV in /etc/sysconfig/network)IPV6_DEFROUTE=yes (when no variable specified)IPV6_DEFROUTE=no tells NetworkManager that this connection should not be assigned the default IPv6 route. IPV6_DEFROUTE has the opposite meaning as 'never-default' property.may-failIPV6_FAILURE_FATAL(+)noIPV6_FAILURE_FATAL has the opposite meaning as 'may-fail' property.route-metricIPV6_ROUTE_METRIC(+)-1IPV6_ROUTE_METRIC is the default IPv6 metric for routes on this connection. If set to -1, a default metric based on the device type is used.route-tableIPV6_ROUTE_TABLE(+)0IPV6_ROUTE_TABLE enables policy-routing and sets the default routing table.dns-priorityIPV6_DNS_PRIORITY(+)0The priority for DNS servers of this connection. Lower values have higher priority. If zero, the default value will be used (50 for VPNs, 100 for other connections). A negative value prevents DNS from other connections with greater values to be used. Example: IPV6_DNS_PRIORITY=20dns-optionsIPV6_RES_OPTIONS(+)List of DNS options to be added to /etc/resolv.conf diff --git a/man/nm-settings-keyfile.5 b/man/nm-settings-keyfile.5 index f5be333a..8cdfe0ca 100644 --- a/man/nm-settings-keyfile.5 +++ b/man/nm-settings-keyfile.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings-keyfile .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Configuration -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-SETTINGS\-KEYFILE" "5" "" "NetworkManager 1\&.19\&.90" "Configuration" +.TH "NM\-SETTINGS\-KEYFILE" "5" "" "NetworkManager 1\&.20\&.0" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-settings-keyfile.xml b/man/nm-settings-keyfile.xml index 1b52d46a..d0ddbda6 100644 --- a/man/nm-settings-keyfile.xml +++ b/man/nm-settings-keyfile.xml @@ -1,6 +1,6 @@ -nm-settings-keyfileNetworkManager developersnm-settings-keyfile5NetworkManagerConfiguration1.19.90nm-settings-keyfileDescription of keyfile settings pluginDescription +nm-settings-keyfileNetworkManager developersnm-settings-keyfile5NetworkManagerConfiguration1.20.0nm-settings-keyfileDescription of keyfile settings pluginDescription NetworkManager is based on the concept of connection profiles that contain network configuration (see nm-settings5 for details). The profiles can be stored in various formats. NetworkManager uses plugins for reading and writing diff --git a/man/nm-settings.5 b/man/nm-settings.5 index d3f90ade..172fbe0a 100644 --- a/man/nm-settings.5 +++ b/man/nm-settings.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Configuration -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NM\-SETTINGS" "5" "" "NetworkManager 1\&.19\&.90" "Configuration" +.TH "NM\-SETTINGS" "5" "" "NetworkManager 1\&.20\&.0" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-settings.xml b/man/nm-settings.xml index fea43b6c..9d7eb3d8 100644 --- a/man/nm-settings.xml +++ b/man/nm-settings.xml @@ -1,6 +1,6 @@ -nm-settingsNetworkManager developersnm-settings5NetworkManagerConfiguration1.19.90nm-settingsDescription of settings and properties of NetworkManager connection profilesDescription +nm-settingsNetworkManager developersnm-settings5NetworkManagerConfiguration1.20.0nm-settingsDescription of settings and properties of NetworkManager connection profilesDescription NetworkManager is based on a concept of connection profiles, sometimes referred to as connections only. These connection profiles contain a network configuration. When NetworkManager activates a connection profile on a network device the configuration will diff --git a/man/nmcli-examples.7 b/man/nmcli-examples.7 index f2d439cd..18b46b73 100644 --- a/man/nmcli-examples.7 +++ b/man/nmcli-examples.7 @@ -2,12 +2,12 @@ .\" Title: nmcli-examples .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: Examples -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NMCLI\-EXAMPLES" "7" "" "NetworkManager 1\&.19\&.90" "Examples" +.TH "NMCLI\-EXAMPLES" "7" "" "NetworkManager 1\&.20\&.0" "Examples" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nmcli.1 b/man/nmcli.1 index 6a0475d5..eca9b06c 100644 --- a/man/nmcli.1 +++ b/man/nmcli.1 @@ -2,12 +2,12 @@ .\" Title: nmcli .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: General Commands Manual -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NMCLI" "1" "" "NetworkManager 1\&.19\&.90" "General Commands Manual" +.TH "NMCLI" "1" "" "NetworkManager 1\&.20\&.0" "General Commands Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nmtui.1 b/man/nmtui.1 index c976ced4..d94c4f71 100644 --- a/man/nmtui.1 +++ b/man/nmtui.1 @@ -2,12 +2,12 @@ .\" Title: nmtui .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 07/29/2019 +.\" Date: 08/06/2019 .\" Manual: General Commands Manual -.\" Source: NetworkManager 1.19.90 +.\" Source: NetworkManager 1.20.0 .\" Language: English .\" -.TH "NMTUI" "1" "" "NetworkManager 1\&.19\&.90" "General Commands Manual" +.TH "NMTUI" "1" "" "NetworkManager 1\&.20\&.0" "General Commands Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/meson.build b/meson.build index e0e560c6..efad8426 100644 --- a/meson.build +++ b/meson.build @@ -4,7 +4,7 @@ project( # - add corresponding NM_VERSION_x_y_z macros in # "shared/nm-version-macros.h.in" # - update number in configure.ac - version: '1.19.90', + version: '1.20.0', license: 'GPL2+', default_options: [ 'buildtype=debugoptimized', diff --git a/shared/n-acd/src/n-acd.c b/shared/n-acd/src/n-acd.c index a0a48c58..d434d1d1 100644 --- a/shared/n-acd/src/n-acd.c +++ b/shared/n-acd/src/n-acd.c @@ -127,8 +127,10 @@ static int n_acd_socket_new(int *fdp, int fd_bpf_prog, NAcdConfig *config) { if (fd_bpf_prog >= 0) { r = setsockopt(s, SOL_SOCKET, SO_ATTACH_BPF, &fd_bpf_prog, sizeof(fd_bpf_prog)); - if (r < 0) - return -c_errno(); + if (r < 0) { + r = -c_errno(); + goto error; + } } r = bind(s, (struct sockaddr *)&address, sizeof(address)); diff --git a/shared/n-dhcp4/src/n-dhcp4-c-lease.c b/shared/n-dhcp4/src/n-dhcp4-c-lease.c index db1ffbae..208ad92a 100644 --- a/shared/n-dhcp4/src/n-dhcp4-c-lease.c +++ b/shared/n-dhcp4/src/n-dhcp4-c-lease.c @@ -44,10 +44,7 @@ static int n_dhcp4_incoming_get_timeouts(NDhcp4Incoming *message, uint64_t *t1p, } else if (u32 == UINT32_MAX) { lifetime = UINT64_MAX; } else { - if (u32 == UINT32_MAX) - lifetime = UINT64_MAX; - else - lifetime = u32 * (1000000000ULL); + lifetime = u32 * (1000000000ULL); } r = n_dhcp4_incoming_query_t2(message, &u32); diff --git a/shared/n-dhcp4/src/n-dhcp4-outgoing.c b/shared/n-dhcp4/src/n-dhcp4-outgoing.c index c44b5880..99123308 100644 --- a/shared/n-dhcp4/src/n-dhcp4-outgoing.c +++ b/shared/n-dhcp4/src/n-dhcp4-outgoing.c @@ -54,8 +54,6 @@ int n_dhcp4_outgoing_new(NDhcp4Outgoing **outgoingp, size_t max_size, uint8_t overload) { _c_cleanup_(n_dhcp4_outgoing_freep) NDhcp4Outgoing *outgoing = NULL; - c_assert(!(overload & ~(N_DHCP4_OVERLOAD_FILE | N_DHCP4_OVERLOAD_SNAME))); - /* * Make sure the minimum limit is bigger than the maximum protocol * header plus the DHCP-message-header plus a single OPTION_END byte. @@ -64,6 +62,8 @@ int n_dhcp4_outgoing_new(NDhcp4Outgoing **outgoingp, size_t max_size, uint8_t ov sizeof(NDhcp4Message) + 1, "Invalid minimum IP packet limit"); + c_assert(!(overload & ~(N_DHCP4_OVERLOAD_FILE | N_DHCP4_OVERLOAD_SNAME))); + outgoing = calloc(1, sizeof(*outgoing)); if (!outgoing) return -ENOMEM; diff --git a/shared/nm-glib-aux/nm-hash-utils.h b/shared/nm-glib-aux/nm-hash-utils.h index f13e0b6d..aa0a3d7c 100644 --- a/shared/nm-glib-aux/nm-hash-utils.h +++ b/shared/nm-glib-aux/nm-hash-utils.h @@ -26,6 +26,9 @@ /*****************************************************************************/ +#define NM_HASH_SEED_16(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af) \ + ((const guint8[16]) { a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af }) + void nm_hash_siphash42_init (CSipHash *h, guint static_seed); /* Siphash24 of binary buffer @arr and @len, using the randomized seed from diff --git a/shared/nm-glib-aux/nm-keyfile-aux.c b/shared/nm-glib-aux/nm-keyfile-aux.c index 0257bcca..989c773f 100644 --- a/shared/nm-glib-aux/nm-keyfile-aux.c +++ b/shared/nm-glib-aux/nm-keyfile-aux.c @@ -125,7 +125,7 @@ nm_key_file_db_ref (NMKeyFileDB *self) g_return_val_if_fail (_IS_KEY_FILE_DB (self, FALSE, TRUE), NULL); - nm_assert (self->ref_count <= G_MAXUINT); + nm_assert (self->ref_count < G_MAXUINT); self->ref_count++; return self; } diff --git a/shared/nm-glib-aux/nm-shared-utils.c b/shared/nm-glib-aux/nm-shared-utils.c index c8a253a6..9bfd5ae2 100644 --- a/shared/nm-glib-aux/nm-shared-utils.c +++ b/shared/nm-glib-aux/nm-shared-utils.c @@ -1939,7 +1939,7 @@ nm_utils_buf_utf8safe_escape (gconstpointer buf, gssize buflen, NMUtilsStrUtf8Sa break; s = &p[1]; - g_utf8_validate (s, buflen, &p); + (void) g_utf8_validate (s, buflen, &p); } while (TRUE); *to_free = g_string_free (gstr, FALSE); @@ -2834,10 +2834,15 @@ nm_utils_g_slist_find_str (const GSList *list, int nm_utils_g_slist_strlist_cmp (const GSList *a, const GSList *b) { - for (; a && b; a = a->next, b = b->next) + while (TRUE) { + if (!a) + return !b ? 0 : -1; + if (!b) + return 1; NM_CMP_DIRECT_STRCMP0 (a->data, b->data); - NM_CMP_SELF (a, b); - return 0; + a = a->next; + b = b->next; + } } /*****************************************************************************/ @@ -2878,7 +2883,7 @@ _nm_utils_user_data_unpack (gpointer user_data, int nargs, ...) } va_end (ap); - g_slice_free1 (((gsize) nargs) * sizeof (gconstpointer), user_data); + g_slice_free1 (((gsize) nargs) * sizeof (gconstpointer), data); } /*****************************************************************************/ diff --git a/shared/nm-version-macros.h b/shared/nm-version-macros.h index c8cc7de1..a6779655 100644 --- a/shared/nm-version-macros.h +++ b/shared/nm-version-macros.h @@ -36,7 +36,7 @@ * Evaluates to the minor version number of NetworkManager which this source * is compiled against. */ -#define NM_MINOR_VERSION (19) +#define NM_MINOR_VERSION (20) /** * NM_MICRO_VERSION: @@ -44,7 +44,7 @@ * Evaluates to the micro version number of NetworkManager which this source * compiled against. */ -#define NM_MICRO_VERSION (90) +#define NM_MICRO_VERSION (0) /** * NM_CHECK_VERSION: diff --git a/src/devices/adsl/nm-device-adsl.c b/src/devices/adsl/nm-device-adsl.c index 59c87851..34efdb01 100644 --- a/src/devices/adsl/nm-device-adsl.c +++ b/src/devices/adsl/nm-device-adsl.c @@ -155,6 +155,7 @@ br2684_assign_vcc (NMDeviceAdsl *self, NMSettingAdsl *s_adsl) if (priv->brfd < 0) { errsv = errno; _LOGE (LOGD_ADSL, "failed to open ATM control socket (%d)", errsv); + priv->brfd = -1; return FALSE; } @@ -206,7 +207,7 @@ br2684_assign_vcc (NMDeviceAdsl *self, NMSettingAdsl *s_adsl) memset (&be, 0, sizeof (be)); be.backend_num = ATM_BACKEND_BR2684; be.ifspec.method = BR2684_FIND_BYIFNAME; - strcpy (be.ifspec.spec.ifname, priv->nas_ifname); + nm_utils_ifname_cpy (be.ifspec.spec.ifname, priv->nas_ifname); be.fcs_in = BR2684_FCSIN_NO; be.fcs_out = BR2684_FCSOUT_NO; be.encaps = is_llc ? BR2684_ENCAPS_LLC : BR2684_ENCAPS_VC; diff --git a/src/devices/bluetooth/nm-bluez5-dun.c b/src/devices/bluetooth/nm-bluez5-dun.c index 04859f9a..b9a1fa0a 100644 --- a/src/devices/bluetooth/nm-bluez5-dun.c +++ b/src/devices/bluetooth/nm-bluez5-dun.c @@ -386,7 +386,7 @@ nm_bluez5_dun_cleanup (NMBluez5DunContext *context) struct rfcomm_dev_req req = { 0 }; req.dev_id = context->rfcomm_id; - ioctl (context->rfcomm_fd, RFCOMMRELEASEDEV, &req); + (void) ioctl (context->rfcomm_fd, RFCOMMRELEASEDEV, &req); context->rfcomm_id = -1; } nm_close (context->rfcomm_fd); diff --git a/src/devices/nm-device-bond.c b/src/devices/nm-device-bond.c index fd79348d..50494526 100644 --- a/src/devices/nm-device-bond.c +++ b/src/devices/nm-device-bond.c @@ -414,6 +414,12 @@ release_slave (NMDevice *device, gboolean success; gs_free char *address = NULL; int ifindex_slave; + int ifindex; + + ifindex = nm_device_get_ifindex (device); + if ( ifindex <= 0 + || !nm_platform_link_get (nm_device_get_platform (device), ifindex)) + configure = FALSE; ifindex_slave = nm_device_get_ip_ifindex (slave); diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c index ade9eb0d..91d824b3 100644 --- a/src/devices/nm-device-bridge.c +++ b/src/devices/nm-device-bridge.c @@ -626,6 +626,12 @@ release_slave (NMDevice *device, NMDeviceBridge *self = NM_DEVICE_BRIDGE (device); gboolean success; int ifindex_slave; + int ifindex; + + ifindex = nm_device_get_ifindex (device); + if ( ifindex <= 0 + || !nm_platform_link_get (nm_device_get_platform (device), ifindex)) + configure = FALSE; ifindex_slave = nm_device_get_ip_ifindex (slave); diff --git a/src/devices/nm-device-wireguard.c b/src/devices/nm-device-wireguard.c index d36573cf..e3b8e8b4 100644 --- a/src/devices/nm-device-wireguard.c +++ b/src/devices/nm-device-wireguard.c @@ -265,157 +265,51 @@ done: *out_enabled_v6 = (enabled_v6 == TRUE); } +#define AUTO_RANDOM_RANGE 500u + static guint32 -_auto_default_route_find_unused_table (NMPlatform *platform) +_auto_default_route_get_auto_fwmark (const char *uuid) { - guint32 table; - int is_ipv4; - - for (table = 51820; TRUE; table++) { - const NMDedupMultiHeadEntry *head_entry; - const guint32 table_coerced = nm_platform_route_table_coerce (table); - NMDedupMultiIter iter; - const NMPObject *plobj; - - /* find a table/fwmark that is not yet in use. */ - - for (is_ipv4 = 0; is_ipv4 < 2; is_ipv4++) { - head_entry = nm_platform_lookup_object (platform, - is_ipv4 - ? NMP_OBJECT_TYPE_IP4_ROUTE - : NMP_OBJECT_TYPE_IP6_ROUTE, - -1); - nmp_cache_iter_for_each (&iter, head_entry, &plobj) { - if (NMP_OBJECT_CAST_IP_ROUTE (plobj)->table_coerced == table_coerced) - goto try_next_table; - } - } - - head_entry = nm_platform_lookup_object_by_addr_family (platform, - NMP_OBJECT_TYPE_ROUTING_RULE, - AF_UNSPEC); - nmp_cache_iter_for_each (&iter, head_entry, &plobj) { - const NMPlatformRoutingRule *rr = NMP_OBJECT_CAST_ROUTING_RULE (plobj); - - if (rr->fwmark == table) - goto try_next_table; - } - - head_entry = nm_platform_lookup_obj_type (platform, NMP_OBJECT_TYPE_LINK); - nmp_cache_iter_for_each (&iter, head_entry, &plobj) { - const NMPObject *lnk_wg; - - if (plobj->link.type != NM_LINK_TYPE_WIREGUARD) - continue; - - lnk_wg = plobj->_link.netlink.lnk; - - if (!lnk_wg) - continue; + guint64 rnd_seed; - if (NMP_OBJECT_GET_TYPE (lnk_wg) != NMP_OBJECT_TYPE_LNK_WIREGUARD) - continue; + /* we use the generated number as fwmark but also as routing table for + * the default-route. + * + * We pick a number + * + * - based on the connection's UUID (as stable seed). + * - larger than 51820u (arbitrarily) + * - one out of AUTO_RANDOM_RANGE + */ - if (NMP_OBJECT_CAST_LNK_WIREGUARD (lnk_wg)->fwmark == table) - goto try_next_table; - } + rnd_seed = c_siphash_hash (NM_HASH_SEED_16 (0xb9, 0x39, 0x8e, 0xed, 0x15, 0xb3, 0xd1, 0xc4, 0x5f, 0x45, 0x00, 0x4f, 0xec, 0xc2, 0x2b, 0x7e), + (const guint8 *) uuid, + uuid ? strlen (uuid) + 1u : 0u); - return table; -try_next_table: - ; - } + return 51820u + (rnd_seed % AUTO_RANDOM_RANGE); } -#define PRIO_WIDTH ((guint32) 2) - -static gboolean -_auto_default_route_find_priority_exists (const NMDedupMultiHeadEntry *head_entry, - guint32 priority) -{ - NMDedupMultiIter iter; - const NMPObject *plobj; - - nmp_cache_iter_for_each (&iter, head_entry, &plobj) { - const NMPlatformRoutingRule *rr = NMP_OBJECT_CAST_ROUTING_RULE (plobj); - - /* we don't differenciate between IPv4 vs. IPv6. There should be no - * conflicting rules with the same priority. */ - if ( rr->priority >= priority - && rr->priority < priority + PRIO_WIDTH) - return TRUE; - } - - return FALSE; -} +#define PRIO_WIDTH 2u static guint32 -_auto_default_route_find_priority (NMPlatform *platform, - const char *uuid) +_auto_default_route_get_auto_priority (const char *uuid) { - const NMDedupMultiHeadEntry *head_entry; + const guint32 RANGE_TOP = 32766u - 1000u; guint64 rnd_seed; - const guint32 PRIME_NUMBER = 1111567573u; - const guint32 RANGE_TOP = ((32766u - 2u * PRIO_WIDTH) / PRIO_WIDTH); - const guint32 RANGE_LEN1 = 200u; - const guint32 RANGE_LEN2 = (RANGE_TOP - 100u) - RANGE_LEN1; - guint32 range_len; - guint32 range_top; - guint32 prio_candidate = 0; - guint32 i_step; - guint32 i; - - /* For the auto-default-route policy routing rule we add 4 rules (2 Ipv4 and 2 IPv6). - * Hence, we choose a priority for the first (of the two rules) and the second - * rule gets priority + 1. - * We want a priority that is - * - unused so far. - * - smaller than 32766u (which is the priority of the default rules for IPv4 and IPv6) - * - stable for each connection but different between connections (we hash the UUID - * as a "random" seed) - * - if possible, close to 32766u (RANGE_LEN1). Only otherwise fallback to the entire - * range (RANGE_LEN2). - */ - rnd_seed = c_siphash_hash ((const guint8 [16]) { 0xb9, 0x39, 0x8e, 0xed, 0x15, 0xb3, 0xd1, 0xc4, 0x5f, 0x45, 0x00, 0x4f, 0xec, 0xc2, 0x2b, 0x7e }, + /* we pick a priority for the routing rules as follows: + * + * - use the connection's UUID as stable seed for the "random" number. + * - have it smaller than RANGE_TOP (32766u - 1000u), where 32766u is the priority of the default + * rules + * - we add 2 rules (PRIO_WIDTH). Hence only pick even priorites. + * - pick one out of AUTO_RANDOM_RANGE. */ + + rnd_seed = c_siphash_hash (NM_HASH_SEED_16 (0x99, 0x22, 0x4d, 0x7c, 0x37, 0xda, 0x8e, 0x7b, 0x2f, 0x55, 0x16, 0x7b, 0x75, 0xda, 0x42, 0xdc), (const guint8 *) uuid, uuid ? strlen (uuid) + 1u : 0u); - head_entry = nm_platform_lookup_object_by_addr_family (platform, - NMP_OBJECT_TYPE_ROUTING_RULE, - AF_UNSPEC); - - range_len = RANGE_LEN1; - range_top = RANGE_TOP; - -again: - i_step = ((guint32) rnd_seed) % range_len; - for (i = 0; i < range_len; i++) { - - /* we sample the range in a stable, but somewhat arbitrary order to - * find an unused priority. */ - i_step = (i_step + PRIME_NUMBER) % range_len; - - nm_assert (i_step < range_top); - - prio_candidate = (range_top - i_step) * PRIO_WIDTH; - - nm_assert (prio_candidate < 32766u); - - if (!_auto_default_route_find_priority_exists (head_entry, prio_candidate)) - return prio_candidate; - } - - if (range_len == RANGE_LEN1) { - /* within the narrow range close to RANGE_TOP we couldn't find any unused - * priority. Retry with the entire range... */ - range_len = RANGE_LEN2; - range_top -= RANGE_LEN1; - goto again; - } - - /* Couldn't find an unused one? Very odd, this really should not happen unless there - * are thousands of rules already. Just pick the last one we sampled. */ - return prio_candidate; + return RANGE_TOP - (((rnd_seed % (PRIO_WIDTH * AUTO_RANDOM_RANGE)) / PRIO_WIDTH) * PRIO_WIDTH); } static void @@ -423,10 +317,10 @@ _auto_default_route_init (NMDeviceWireGuard *self) { NMDeviceWireGuardPrivate *priv = NM_DEVICE_WIREGUARD_GET_PRIVATE (self); NMConnection *connection; - NMSettingWireGuard *s_wg; - gboolean enabled_v4; - gboolean enabled_v6; + gboolean enabled_v4 = FALSE; + gboolean enabled_v6 = FALSE; gboolean refreshing_only; + guint32 new_fwmark = 0; guint32 old_fwmark; char sbuf1[100]; @@ -436,40 +330,47 @@ _auto_default_route_init (NMDeviceWireGuard *self) refreshing_only = priv->auto_default_route_initialized && priv->auto_default_route_refresh; - priv->auto_default_route_refresh = FALSE; + + old_fwmark = priv->auto_default_route_fwmark; connection = nm_device_get_applied_connection (NM_DEVICE (self)); + if (connection) { + NMSettingWireGuard *s_wg; - s_wg = _nm_connection_get_setting (connection, NM_TYPE_SETTING_WIREGUARD); + s_wg = _nm_connection_get_setting (connection, NM_TYPE_SETTING_WIREGUARD); - old_fwmark = priv->auto_default_route_fwmark; + new_fwmark = nm_setting_wireguard_get_fwmark (s_wg); + + _auto_default_route_get_enabled (s_wg, + connection, + &enabled_v4, + &enabled_v6); + } - priv->auto_default_route_fwmark = nm_setting_wireguard_get_fwmark (s_wg); + if ( ( enabled_v4 + || enabled_v6) + && new_fwmark == 0u) { + if (refreshing_only) + new_fwmark = old_fwmark; + else + new_fwmark = _auto_default_route_get_auto_fwmark (nm_connection_get_uuid (connection)); + } - _auto_default_route_get_enabled (s_wg, - connection, - &enabled_v4, - &enabled_v6); + priv->auto_default_route_refresh = FALSE; + priv->auto_default_route_fwmark = new_fwmark; priv->auto_default_route_enabled_4 = enabled_v4; priv->auto_default_route_enabled_6 = enabled_v6; priv->auto_default_route_initialized = TRUE; - if ( ( priv->auto_default_route_enabled_4 - || priv->auto_default_route_enabled_6) - && priv->auto_default_route_fwmark == 0u) { - if (refreshing_only) - priv->auto_default_route_fwmark = old_fwmark; - else - priv->auto_default_route_fwmark = _auto_default_route_find_unused_table (nm_device_get_platform (NM_DEVICE (self))); + if (connection) { + _LOGT (LOGD_DEVICE, + "auto-default-route is %s for IPv4 and %s for IPv6%s", + priv->auto_default_route_enabled_4 ? "enabled" : "disabled", + priv->auto_default_route_enabled_6 ? "enabled" : "disabled", + priv->auto_default_route_enabled_4 || priv->auto_default_route_enabled_6 + ? nm_sprintf_buf (sbuf1, " (fwmark 0x%x)", priv->auto_default_route_fwmark) + : ""); } - - _LOGT (LOGD_DEVICE, - "auto-default-route is %s for IPv4 and %s for IPv6%s", - priv->auto_default_route_enabled_4 ? "enabled" : "disabled", - priv->auto_default_route_enabled_6 ? "enabled" : "disabled", - priv->auto_default_route_enabled_4 || priv->auto_default_route_enabled_6 - ? nm_sprintf_buf (sbuf1, " (fwmark 0x%x)", priv->auto_default_route_fwmark) - : ""); } static GPtrArray * @@ -506,8 +407,7 @@ get_extra_rules (NMDevice *device) if (priv->auto_default_route_priority_initialized) priority = priv->auto_default_route_priority; else { - priority = _auto_default_route_find_priority (nm_device_get_platform (device), - nm_connection_get_uuid (connection)); + priority = _auto_default_route_get_auto_priority (nm_connection_get_uuid (connection)); priv->auto_default_route_priority = priority; priv->auto_default_route_priority_initialized = TRUE; } @@ -624,7 +524,7 @@ _peers_remove (NMDeviceWireGuardPrivate *priv, nm_clear_g_cancellable (&peer_data->ep_resolv.cancellable); g_slice_free (PeerData, peer_data); - if (c_list_is_empty (&peer_data->lst_peers)) { + if (c_list_is_empty (&priv->lst_peers_head)) { nm_clear_g_source (&priv->resolve_next_try_id); nm_clear_g_source (&priv->link_config_delayed_id); } @@ -1567,7 +1467,7 @@ link_config (NMDeviceWireGuard *self, plpeers_len, wg_change_flags); - nm_explicit_bzero (plpeers, sizeof (plpeers) * plpeers_len); + nm_explicit_bzero (plpeers, sizeof (plpeers[0]) * plpeers_len); if (r < 0) { NM_SET_OUT (out_failure_reason, NM_DEVICE_STATE_REASON_CONFIG_FAILED); @@ -1617,6 +1517,17 @@ link_config_delayed_resolver_cb (gpointer user_data) return G_SOURCE_REMOVE; } +static NMActStageReturn +act_stage1_prepare (NMDevice *device, NMDeviceStateReason *out_failure_reason) +{ + NMDeviceWireGuardPrivate *priv = NM_DEVICE_WIREGUARD_GET_PRIVATE (device); + + priv->auto_default_route_initialized = FALSE; + priv->auto_default_route_priority_initialized = FALSE; + + return NM_DEVICE_CLASS (nm_device_wireguard_parent_class)->act_stage1_prepare (device, out_failure_reason); +} + static NMActStageReturn act_stage2_config (NMDevice *device, NMDeviceStateReason *out_failure_reason) @@ -2057,6 +1968,7 @@ nm_device_wireguard_class_init (NMDeviceWireGuardClass *klass) device_class->connection_type_check_compatible = NM_SETTING_WIREGUARD_SETTING_NAME; device_class->link_types = NM_DEVICE_DEFINE_LINK_TYPES (NM_LINK_TYPE_WIREGUARD); + device_class->act_stage1_prepare = act_stage1_prepare; device_class->state_changed = device_state_changed; device_class->create_and_realize = create_and_realize; device_class->act_stage2_config = act_stage2_config; diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index feb5110d..f07c4f09 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -3186,14 +3186,11 @@ nm_device_check_connectivity (NMDevice *self, NMDeviceConnectivityCallback callback, gpointer user_data) { - NMDeviceConnectivityHandle *handle; - if (!concheck_is_possible (self)) return NULL; concheck_periodic_schedule_set (self, addr_family, CONCHECK_SCHEDULE_CHECK_EXTERNAL); - handle = concheck_start (self, addr_family, callback, user_data, FALSE); - return handle; + return concheck_start (self, addr_family, callback, user_data, FALSE); } void @@ -4153,13 +4150,14 @@ nm_device_create_and_realize (NMDevice *self, { nm_auto_nmpobj const NMPObject *plink_keep_alive = NULL; NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (self); - const NMPlatformLink *plink = NULL; + const NMPlatformLink *plink; /* Must be set before device is realized */ - priv->nm_owned = !nm_platform_link_get_by_ifname (nm_device_get_platform (self), priv->iface); - + plink = nm_platform_link_get_by_ifname (nm_device_get_platform (self), priv->iface); + priv->nm_owned = !plink || !link_type_compatible (self, plink->type, NULL, NULL); _LOGD (LOGD_DEVICE, "create (is %snm-owned)", priv->nm_owned ? "" : "not "); + plink = NULL; /* Create any resources the device needs */ if (NM_DEVICE_GET_CLASS (self)->create_and_realize) { if (!NM_DEVICE_GET_CLASS (self)->create_and_realize (self, connection, parent, &plink, error)) @@ -4986,7 +4984,6 @@ nm_device_master_release_slaves (NMDevice *self) { NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (self); NMDeviceStateReason reason; - gboolean configure = TRUE; CList *iter, *safe; /* Don't release the slaves if this connection doesn't belong to NM. */ @@ -4997,14 +4994,10 @@ nm_device_master_release_slaves (NMDevice *self) if (priv->state == NM_DEVICE_STATE_FAILED) reason = NM_DEVICE_STATE_REASON_DEPENDENCY_FAILED; - if ( priv->ifindex <= 0 - || !nm_platform_link_get (nm_device_get_platform (self), priv->ifindex)) - configure = FALSE; - c_list_for_each_safe (iter, safe, &priv->slaves) { SlaveInfo *info = c_list_entry (iter, SlaveInfo, lst_slave); - nm_device_master_release_one_slave (self, info->slave, configure, reason); + nm_device_master_release_one_slave (self, info->slave, TRUE, reason); } } @@ -15121,6 +15114,7 @@ _set_state_full (NMDevice *self, gboolean no_firmware = FALSE; NMSettingsConnection *sett_conn; NMSettingSriov *s_sriov; + gboolean concheck_now; g_return_if_fail (NM_IS_DEVICE (self)); @@ -15456,8 +15450,11 @@ _set_state_full (NMDevice *self, if (ip_config_valid (old_state) && !ip_config_valid (state)) notify_ip_properties (self); - concheck_update_interval (self, AF_INET, state == NM_DEVICE_STATE_ACTIVATED); - concheck_update_interval (self, AF_INET6, state == NM_DEVICE_STATE_ACTIVATED); + concheck_now = NM_IN_SET (state, NM_DEVICE_STATE_ACTIVATED, + NM_DEVICE_STATE_DISCONNECTED) + || old_state >= NM_DEVICE_STATE_ACTIVATED; + concheck_update_interval (self, AF_INET, concheck_now); + concheck_update_interval (self, AF_INET6, concheck_now); /* Dispose of the cached activation request */ if (req) diff --git a/src/devices/nm-lldp-listener.c b/src/devices/nm-lldp-listener.c index c0d78315..469ccce1 100644 --- a/src/devices/nm-lldp-listener.c +++ b/src/devices/nm-lldp-listener.c @@ -224,7 +224,7 @@ _lldp_attr_set_str (LldpAttrData *pdata, LldpAttrId attr_id, const char *v_strin } static void -_lldp_attr_take_str_ptr (LldpAttrData *pdata, LldpAttrId attr_id, char *str) +_lldp_attr_set_str_take (LldpAttrData *pdata, LldpAttrId attr_id, char *str) { nm_assert (pdata); nm_assert (_lldp_attr_id_to_type (attr_id) == LLDP_ATTR_TYPE_STRING); @@ -232,8 +232,10 @@ _lldp_attr_take_str_ptr (LldpAttrData *pdata, LldpAttrId attr_id, char *str) pdata = &pdata[attr_id]; /* we ignore duplicate fields silently. */ - if (pdata->attr_type != LLDP_ATTR_TYPE_NONE) + if (pdata->attr_type != LLDP_ATTR_TYPE_NONE) { + g_free (str); return; + } pdata->attr_type = LLDP_ATTR_TYPE_STRING; pdata->v_string = str; @@ -265,8 +267,7 @@ _lldp_attr_set_vardict (LldpAttrData *pdata, LldpAttrId attr_id, GVariant *varia /* we ignore duplicate fields silently */ if (pdata->attr_type != LLDP_ATTR_TYPE_NONE) { - if (g_variant_is_floating (variant)) - g_variant_unref (variant); + nm_g_variant_unref_floating (variant); return; } @@ -685,9 +686,10 @@ lldp_neighbor_new (sd_lldp_neighbor *neighbor_sd, GError **error) g_variant_dict_end (&dict)); _lldp_attr_set_uint32 (neigh->attrs, LLDP_ATTR_ID_IEEE_802_1_VID, vid); - _lldp_attr_take_str_ptr (neigh->attrs, - LLDP_ATTR_ID_IEEE_802_1_VLAN_NAME, - name_to_free ?: g_strdup (name)); + if (name_to_free) + _lldp_attr_set_str_take (neigh->attrs, LLDP_ATTR_ID_IEEE_802_1_VLAN_NAME, name_to_free); + else + _lldp_attr_set_str (neigh->attrs, LLDP_ATTR_ID_IEEE_802_1_VLAN_NAME, name); break; } default: diff --git a/src/devices/team/nm-device-team.c b/src/devices/team/nm-device-team.c index a60a9fda..4661a840 100644 --- a/src/devices/team/nm-device-team.c +++ b/src/devices/team/nm-device-team.c @@ -775,6 +775,12 @@ release_slave (NMDevice *device, NMDeviceTeamPrivate *priv = NM_DEVICE_TEAM_GET_PRIVATE (self); gboolean success; int ifindex_slave; + int ifindex; + + ifindex = nm_device_get_ifindex (device); + if ( ifindex <= 0 + || !nm_platform_link_get (nm_device_get_platform (device), ifindex)) + configure = FALSE; ifindex_slave = nm_device_get_ip_ifindex (slave); diff --git a/src/devices/wwan/nm-modem-broadband.c b/src/devices/wwan/nm-modem-broadband.c index 5716500a..216fedfe 100644 --- a/src/devices/wwan/nm-modem-broadband.c +++ b/src/devices/wwan/nm-modem-broadband.c @@ -1134,7 +1134,7 @@ simple_disconnect_ready (GObject *source_object, { MMModemSimple *modem_iface = MM_MODEM_SIMPLE (source_object); DisconnectContext *ctx = user_data; - GError *error = NULL; + gs_free_error GError *error = NULL; if (!mm_modem_simple_disconnect_finish (modem_iface, res, &error)) { if ( ctx->warn diff --git a/src/initrd/nmi-cmdline-reader.c b/src/initrd/nmi-cmdline-reader.c index ccdd1f29..7a3af8d6 100644 --- a/src/initrd/nmi-cmdline-reader.c +++ b/src/initrd/nmi-cmdline-reader.c @@ -244,7 +244,7 @@ parse_ip (GHashTable *connections, const char *sysfs_dir, char *argument) dns[0] = tmp; dns[1] = get_word (&argument, ':'); dns_addr_family[1] = guess_ip_address_family (dns[1]); - if (argument && *argument) + if (*argument) _LOGW (LOGD_CORE, "Ignoring extra: '%s'.", argument); } else { mtu = tmp; diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c index 86c82925..36e75bb2 100644 --- a/src/nm-ip4-config.c +++ b/src/nm-ip4-config.c @@ -544,6 +544,9 @@ _addresses_sort_cmp (gconstpointer a, gconstpointer b, gpointer user_data) const NMPlatformIP4Address *a2 = NMP_OBJECT_CAST_IP4_ADDRESS (*((const NMPObject **) b)); guint32 n1, n2; + nm_assert (a1); + nm_assert (a2); + /* Sort by address type. For example link local will * be sorted *after* a global address. */ p1 = _addresses_sort_cmp_get_prio (a1->address); @@ -577,6 +580,9 @@ sort_captured_addresses (const CList *lst_a, const CList *lst_b, gconstpointer u const NMPlatformIP4Address *addr_a = NMP_OBJECT_CAST_IP4_ADDRESS (c_list_entry (lst_a, NMDedupMultiEntry, lst_entries)->obj); const NMPlatformIP4Address *addr_b = NMP_OBJECT_CAST_IP4_ADDRESS (c_list_entry (lst_b, NMDedupMultiEntry, lst_entries)->obj); + nm_assert (addr_a); + nm_assert (addr_b); + /* Primary addresses first */ return NM_FLAGS_HAS (addr_a->n_ifa_flags, IFA_F_SECONDARY) - NM_FLAGS_HAS (addr_b->n_ifa_flags, IFA_F_SECONDARY); diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c index 1096fb42..1810d511 100644 --- a/src/nm-ip6-config.c +++ b/src/nm-ip6-config.c @@ -318,6 +318,9 @@ sort_captured_addresses (const CList *lst_a, const CList *lst_b, gconstpointer u const NMPlatformIP6Address *addr_a = NMP_OBJECT_CAST_IP6_ADDRESS (c_list_entry (lst_a, NMDedupMultiEntry, lst_entries)->obj); const NMPlatformIP6Address *addr_b = NMP_OBJECT_CAST_IP6_ADDRESS (c_list_entry (lst_b, NMDedupMultiEntry, lst_entries)->obj); + nm_assert (addr_a); + nm_assert (addr_b); + return _addresses_sort_cmp (addr_a, addr_b, ((NMSettingIP6ConfigPrivacy) GPOINTER_TO_INT (user_data)) == NM_SETTING_IP6_CONFIG_PRIVACY_PREFER_TEMP_ADDR); } diff --git a/src/nm-manager.c b/src/nm-manager.c index 6ea53502..64cdb9ae 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -2698,6 +2698,7 @@ recheck_assume_connection (NMManager *self, gboolean was_unmanaged = FALSE; gboolean generated = FALSE; NMDeviceState state; + gboolean activation_type_assume; g_return_val_if_fail (NM_IS_MANAGER (self), FALSE); g_return_val_if_fail (NM_IS_DEVICE (device), FALSE); @@ -2721,10 +2722,42 @@ recheck_assume_connection (NMManager *self, if (!sett_conn) return FALSE; + activation_type_assume = !generated; + + if (state == NM_DEVICE_STATE_UNMANAGED) { + gs_free char *initramfs_lease = g_strdup_printf (RUNSTATEDIR "/initramfs/net.%s.lease", + nm_device_get_iface (device)); + gs_free char *connection_lease = g_strdup_printf (NMRUNDIR "/dhclient-%s-%s.lease", + nm_settings_connection_get_uuid (sett_conn), + nm_device_get_iface (device)); + + if (rename (initramfs_lease, connection_lease) == 0) { + /* + * We've managed to steal the lease used by initramfs before it + * killed off the dhclient. We need to take ownership of the configured + * connection and act like the device was configured by us. + * Otherwise the address would just expire. + */ + _LOG2I (LOGD_DEVICE, device, "assume: taking over an initramfs-configured connection"); + activation_type_assume = TRUE; + + if (generated) { + nm_settings_connection_update (sett_conn, + NULL, + NM_SETTINGS_CONNECTION_PERSIST_MODE_KEEP, + 0, + NM_SETTINGS_CONNECTION_INT_FLAGS_VOLATILE, + NM_SETTINGS_CONNECTION_UPDATE_REASON_NONE, + "assume-initrd", + NULL); + } + } + } + nm_device_sys_iface_state_set (device, - generated - ? NM_DEVICE_SYS_IFACE_STATE_EXTERNAL - : NM_DEVICE_SYS_IFACE_STATE_ASSUME); + activation_type_assume + ? NM_DEVICE_SYS_IFACE_STATE_ASSUME + : NM_DEVICE_SYS_IFACE_STATE_EXTERNAL); /* Move device to DISCONNECTED to activate the connection */ if (state == NM_DEVICE_STATE_UNMANAGED) { @@ -2768,8 +2801,8 @@ recheck_assume_connection (NMManager *self, NULL, device, subject, - generated ? NM_ACTIVATION_TYPE_EXTERNAL : NM_ACTIVATION_TYPE_ASSUME, - generated ? NM_ACTIVATION_REASON_EXTERNAL : NM_ACTIVATION_REASON_ASSUME, + activation_type_assume ? NM_ACTIVATION_TYPE_ASSUME : NM_ACTIVATION_TYPE_EXTERNAL, + activation_type_assume ? NM_ACTIVATION_REASON_ASSUME : NM_ACTIVATION_REASON_EXTERNAL, NM_ACTIVATION_STATE_FLAG_LIFETIME_BOUND_TO_PROFILE_VISIBILITY, &error); @@ -2785,7 +2818,8 @@ recheck_assume_connection (NMManager *self, NM_DEVICE_STATE_REASON_CONFIG_FAILED); } - if (generated) { + if ( generated + && !activation_type_assume) { _LOG2D (LOGD_DEVICE, device, "assume: deleting generated connection after assuming failed"); nm_settings_connection_delete (sett_conn, FALSE); } else { diff --git a/src/platform/tests/test-link.c b/src/platform/tests/test-link.c index 5926dac1..27ec3f07 100644 --- a/src/platform/tests/test-link.c +++ b/src/platform/tests/test-link.c @@ -257,7 +257,7 @@ test_slave (int master, int type, SignalData *master_changed) case NM_LINK_TYPE_TEAM: g_assert (nm_platform_link_set_down (NM_PLATFORM_GET, ifindex)); accept_signal (link_changed); - accept_signals (master_changed, 0, 2); + accept_signals (master_changed, 0, 3); break; default: break; diff --git a/src/platform/wifi/nm-wifi-utils-nl80211.c b/src/platform/wifi/nm-wifi-utils-nl80211.c index 164dada4..84a93f4f 100644 --- a/src/platform/wifi/nm-wifi-utils-nl80211.c +++ b/src/platform/wifi/nm-wifi-utils-nl80211.c @@ -284,8 +284,8 @@ nl80211_get_wake_on_wlan_handler (struct nl_msg *msg, void *arg) struct genlmsghdr *gnlh = nlmsg_data (nlmsg_hdr (msg)); nla_parse_arr (attrs, - genlmsg_attrdata(gnlh, 0), - genlmsg_attrlen(gnlh, 0), + genlmsg_attrdata (gnlh, 0), + genlmsg_attrlen (gnlh, 0), NULL); if (!attrs[NL80211_ATTR_WOWLAN_TRIGGERS]) @@ -343,10 +343,10 @@ wifi_nl80211_set_wake_on_wlan (NMWifiUtils *data, NMSettingWirelessWakeOnWLan wo return TRUE; msg = nl80211_alloc_msg (self, NL80211_CMD_SET_WOWLAN, 0); - if (!msg) - return FALSE; triggers = nla_nest_start (msg, NL80211_ATTR_WOWLAN_TRIGGERS); + if (!triggers) + goto nla_put_failure; if (NM_FLAGS_HAS (wowl, NM_SETTING_WIRELESS_WAKE_ON_WLAN_ANY)) NLA_PUT_FLAG (msg, NL80211_WOWLAN_TRIG_ANY); @@ -363,7 +363,7 @@ wifi_nl80211_set_wake_on_wlan (NMWifiUtils *data, NMSettingWirelessWakeOnWLan wo if (NM_FLAGS_HAS (wowl, NM_SETTING_WIRELESS_WAKE_ON_WLAN_RFKILL_RELEASE)) NLA_PUT_FLAG (msg, NL80211_WOWLAN_TRIG_RFKILL_RELEASE); - nla_nest_end(msg, triggers); + nla_nest_end (msg, triggers); err = nl80211_send_and_recv (self, msg, NULL, NULL); @@ -634,14 +634,12 @@ nl80211_get_ap_info (NMWifiUtilsNl80211 *self, return; msg = nl80211_alloc_msg (self, NL80211_CMD_GET_STATION, 0); - if (msg) { - NLA_PUT (msg, NL80211_ATTR_MAC, ETH_ALEN, bss_info.bssid); + NLA_PUT (msg, NL80211_ATTR_MAC, ETH_ALEN, bss_info.bssid); - nl80211_send_and_recv (self, msg, nl80211_station_handler, sta_info); - if (!sta_info->signal_valid) { - /* Fall back to bss_info signal quality (both are in percent) */ - sta_info->signal = bss_info.beacon_signal; - } + nl80211_send_and_recv (self, msg, nl80211_station_handler, sta_info); + if (!sta_info->signal_valid) { + /* Fall back to bss_info signal quality (both are in percent) */ + sta_info->signal = bss_info.beacon_signal; } return; diff --git a/src/settings/nm-agent-manager.c b/src/settings/nm-agent-manager.c index d361c06a..2f9827d5 100644 --- a/src/settings/nm-agent-manager.c +++ b/src/settings/nm-agent-manager.c @@ -1591,16 +1591,6 @@ static const NMDBusInterfaceInfoExtended interface_info_agent_manager = { ), .handle = impl_agent_manager_register_with_capabilities, ), - NM_DEFINE_DBUS_METHOD_INFO_EXTENDED ( - NM_DEFINE_GDBUS_METHOD_INFO_INIT ( - "RegisterWithCapabilities", - .in_args = NM_DEFINE_GDBUS_ARG_INFOS ( - NM_DEFINE_GDBUS_ARG_INFO ("identifier", "s"), - NM_DEFINE_GDBUS_ARG_INFO ("capabilities", "u"), - ), - ), - .handle = impl_agent_manager_register_with_capabilities, - ), NM_DEFINE_DBUS_METHOD_INFO_EXTENDED ( NM_DEFINE_GDBUS_METHOD_INFO_INIT ( "Unregister", diff --git a/src/settings/nm-settings.c b/src/settings/nm-settings.c index 430d2776..42a7bca0 100644 --- a/src/settings/nm-settings.c +++ b/src/settings/nm-settings.c @@ -1455,7 +1455,7 @@ _add_connection_to_first_plugin (NMSettings *self, GError **error) { NMSettingsPrivate *priv = NM_SETTINGS_GET_PRIVATE (self); - GError *first_error = NULL; + gs_free_error GError *first_error = NULL; GSList *iter; const char *uuid; @@ -1561,7 +1561,7 @@ _add_connection_to_first_plugin (NMSettings *self, } nm_assert (first_error); - g_propagate_error (error, first_error); + g_propagate_error (error, g_steal_pointer (&first_error)); return FALSE; } @@ -2866,7 +2866,7 @@ _clear_connections_cached_list (NMSettingsPrivate *priv) * it. That is a bug, this code just tries to make it blow up * more eagerly. */ memset (priv->connections_cached_list, - 0xdeaddead, + 0x43, sizeof (NMSettingsConnection *) * (priv->connections_len + 1)); #endif diff --git a/src/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c b/src/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c index 900a3fc1..9c3ae10a 100644 --- a/src/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c +++ b/src/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c @@ -3629,7 +3629,10 @@ make_wpa_setting (shvarFile *ifcfg, wpa_sae = nm_streq0 (v, "SAE"); wpa_eap = nm_streq0 (v, "WPA-EAP"); ieee8021x = nm_streq0 (v, "IEEE8021X"); - if (!wpa_psk && !wpa_sae && !wpa_eap && !ieee8021x) + if ( !wpa_psk + && !wpa_sae + && !wpa_eap + && !ieee8021x) return NULL; /* Not WPA or Dynamic WEP */ /* WPS */ @@ -3689,11 +3692,13 @@ make_wpa_setting (shvarFile *ifcfg, g_object_set (wsec, NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, "wpa-none", NULL); else if (wpa_psk) g_object_set (wsec, NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, "wpa-psk", NULL); - else if (wpa_sae) + else { + nm_assert (wpa_sae); g_object_set (wsec, NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, "sae", NULL); - else - g_assert_not_reached (); - } else if (wpa_eap || ieee8021x) { + } + } else { + nm_assert (wpa_eap || ieee8021x); + /* Adhoc mode is mutually exclusive with any 802.1x-based authentication */ if (adhoc) { g_set_error (error, NM_SETTINGS_ERROR, NM_SETTINGS_ERROR_INVALID_CONNECTION, @@ -3710,10 +3715,6 @@ make_wpa_setting (shvarFile *ifcfg, g_object_set (wsec, NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, lower, NULL); } - } else { - g_set_error (error, NM_SETTINGS_ERROR, NM_SETTINGS_ERROR_INVALID_CONNECTION, - "Unknown wireless KEY_MGMT type '%s'", v); - return NULL; } i_val = NM_SETTING_WIRELESS_SECURITY_PMF_DEFAULT; diff --git a/src/settings/plugins/ifupdown/nms-ifupdown-plugin.c b/src/settings/plugins/ifupdown/nms-ifupdown-plugin.c index 93f1813c..475ecbb6 100644 --- a/src/settings/plugins/ifupdown/nms-ifupdown-plugin.c +++ b/src/settings/plugins/ifupdown/nms-ifupdown-plugin.c @@ -321,10 +321,10 @@ load_eni_ifaces (NMSIfupdownPlugin *self) sd_repl = g_hash_table_lookup (eni_ifaces, block->name); if (sd_repl) { - storage = g_steal_pointer (&sd_repl->storage); _LOGD ("parse: replace connection \"%s\" (%s)", block->name, nm_settings_storage_get_uuid (sd_repl->storage)); + storage = g_steal_pointer (&sd_repl->storage); g_hash_table_remove (eni_ifaces, block->name); } diff --git a/src/supplicant/nm-supplicant-config.c b/src/supplicant/nm-supplicant-config.c index 806c087c..f6e3c7da 100644 --- a/src/supplicant/nm-supplicant-config.c +++ b/src/supplicant/nm-supplicant-config.c @@ -139,11 +139,17 @@ nm_supplicant_config_add_option_with_type (NMSupplicantConfig *self, else { type = nm_supplicant_settings_verify_setting (key, value, len); if (type == TYPE_INVALID) { - char buf[255]; - memset (&buf[0], 0, sizeof (buf)); - memcpy (&buf[0], value, len > 254 ? 254 : len); + gs_free char *str_free = NULL; + const char *str; + + str = nm_utils_buf_utf8safe_escape (value, len, NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL, &str_free); + + str = nm_strquote_a (255, str); + g_set_error (error, NM_SUPPLICANT_ERROR, NM_SUPPLICANT_ERROR_CONFIG, - "key '%s' and/or value '%s' invalid", key, hidden ?: buf); + "key '%s' and/or value %s invalid", + key, + hidden ?: str); return FALSE; } } diff --git a/src/supplicant/nm-supplicant-settings-verify.c b/src/supplicant/nm-supplicant-settings-verify.c index 1bd71320..b37fae9e 100644 --- a/src/supplicant/nm-supplicant-settings-verify.c +++ b/src/supplicant/nm-supplicant-settings-verify.c @@ -30,7 +30,7 @@ struct Opt { const gint32 int_low; /* Inclusive */ const gint32 int_high; /* Inclusive; max length for strings */ const gboolean str_allowed_multiple; - const char ** str_allowed; + const char *const*str_allowed; }; static gboolean validate_type_int (const struct Opt * opt, @@ -63,31 +63,31 @@ static const struct validate_entry validate_table[] = { { TYPE_KEYWORD, validate_type_keyword }, }; -const char * pairwise_allowed[] = { "CCMP", "TKIP", "NONE", NULL }; -const char * group_allowed[] = { "CCMP", "TKIP", "WEP104", "WEP40", NULL }; -const char * proto_allowed[] = { "WPA", "RSN", NULL }; -const char * key_mgmt_allowed[] = { "WPA-PSK", "WPA-PSK-SHA256", "FT-PSK", - "WPA-EAP", "WPA-EAP-SHA256", "FT-EAP", "FT-EAP-SHA384", - "FILS-SHA256", "FILS-SHA384", - "IEEE8021X", "WPA-NONE", "SAE", - "NONE", NULL }; -const char * auth_alg_allowed[] = { "OPEN", "SHARED", "LEAP", NULL }; -const char * eap_allowed[] = { "LEAP", "MD5", "TLS", "PEAP", "TTLS", "SIM", - "PSK", "FAST", "PWD", NULL }; - -const char * phase1_allowed[] = {"peapver=0", "peapver=1", "peaplabel=1", - "peap_outer_success=0", "include_tls_length=1", - "sim_min_num_chal=3", "fast_provisioning=0", - "fast_provisioning=1", "fast_provisioning=2", - "fast_provisioning=3", "tls_disable_tlsv1_0=0", - "tls_disable_tlsv1_0=1", "tls_disable_tlsv1_1=0", - "tls_disable_tlsv1_1=1", "tls_disable_tlsv1_2=0", - "tls_disable_tlsv1_2=1", NULL }; -const char * phase2_allowed[] = {"auth=PAP", "auth=CHAP", "auth=MSCHAP", - "auth=MSCHAPV2", "auth=GTC", "auth=OTP", - "auth=MD5", "auth=TLS", "autheap=MD5", - "autheap=MSCHAPV2", "autheap=OTP", - "autheap=GTC", "autheap=TLS", NULL }; +static const char *const pairwise_allowed[] = { "CCMP", "TKIP", "NONE", NULL }; +static const char *const group_allowed[] = { "CCMP", "TKIP", "WEP104", "WEP40", NULL }; +static const char *const proto_allowed[] = { "WPA", "RSN", NULL }; +static const char *const key_mgmt_allowed[] = { "WPA-PSK", "WPA-PSK-SHA256", "FT-PSK", + "WPA-EAP", "WPA-EAP-SHA256", "FT-EAP", "FT-EAP-SHA384", + "FILS-SHA256", "FILS-SHA384", + "IEEE8021X", "WPA-NONE", "SAE", + "NONE", NULL }; +static const char *const auth_alg_allowed[] = { "OPEN", "SHARED", "LEAP", NULL }; +static const char *const eap_allowed[] = { "LEAP", "MD5", "TLS", "PEAP", "TTLS", "SIM", + "PSK", "FAST", "PWD", NULL }; + +static const char *const phase1_allowed[] = { "peapver=0", "peapver=1", "peaplabel=1", + "peap_outer_success=0", "include_tls_length=1", + "sim_min_num_chal=3", "fast_provisioning=0", + "fast_provisioning=1", "fast_provisioning=2", + "fast_provisioning=3", "tls_disable_tlsv1_0=0", + "tls_disable_tlsv1_0=1", "tls_disable_tlsv1_1=0", + "tls_disable_tlsv1_1=1", "tls_disable_tlsv1_2=0", + "tls_disable_tlsv1_2=1", NULL }; +static const char *const phase2_allowed[] = { "auth=PAP", "auth=CHAP", "auth=MSCHAP", + "auth=MSCHAPV2", "auth=GTC", "auth=OTP", + "auth=MD5", "auth=TLS", "autheap=MD5", + "autheap=MSCHAPV2", "autheap=OTP", + "autheap=GTC", "autheap=TLS", NULL }; static const struct Opt opt_table[] = { { "ssid", TYPE_BYTES, 0, 32,FALSE, NULL }, @@ -206,10 +206,7 @@ validate_type_keyword (const struct Opt * opt, const char * value, const guint32 len) { - char **allowed; - char **candidates = NULL; - char **candidate; - gboolean found = FALSE; + gs_free char *value_free = NULL; g_return_val_if_fail (opt != NULL, FALSE); g_return_val_if_fail (value != NULL, FALSE); @@ -218,26 +215,33 @@ validate_type_keyword (const struct Opt * opt, if (!opt->str_allowed) return TRUE; - candidates = g_strsplit (value, " ", 0); - if (!candidates) - goto out; + value = nm_strndup_a (300, value, len, &value_free); /* validate each space-separated word in 'value' */ - for (candidate = candidates; *candidate; candidate++) { - found = FALSE; - for (allowed = (char **) opt->str_allowed; *allowed; allowed++) { - if (strcmp (*candidate, *allowed) == 0) { - found = TRUE; - break; - } + + while (TRUE) { + char *s; + + while (value[0] == ' ') + value++; + + if (value[0] == '\0') + return TRUE; + + s = strchr (value, ' '); + if (s) { + s[0] = '\0'; + s++; } - if (!found) - break; - } -out: - g_strfreev (candidates); - return found; + if (nm_utils_strv_find_first ((char **) opt->str_allowed, -1, value) < 0) + return FALSE; + + if (!s) + return TRUE; + + value = s; + } } OptType @@ -254,7 +258,9 @@ nm_supplicant_settings_verify_setting (const char * key, g_return_val_if_fail (value != NULL, FALSE); if (strcmp (key, "mode") == 0) { - if (strcmp (value, "1") && strcmp (value, "2") && strcmp (value, "5")) + if (len != 1) + return TYPE_INVALID; + if (!NM_IN_SET (value[0], '1', '2', '5')) return TYPE_INVALID; return TYPE_INT; } -- cgit 1.3.0-6-gf8a5