summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* nmcli: fix 'nmcli con export' parameters checkfg/nmcli_optionsFrancesco Giudici2017-04-051-5/+1
| | | | | | | | | | get_connection() will already move forward arguments (argc/argv): remove extra argv++/argc-- Example: "nmcli con export <vpn_con> <output_file> <extra_arg>" now, extra_arg is detected, printing error: "Error: unknown extra argument: 'extra_arg'."
* nmcli: allow cmd specific option parsing in next_arg() funcFrancesco Giudici2017-04-058-79/+189
| | | | | | | | | | | | | | | | | | | | | Options dependant on specific commands (e.g., nmcli connection show --active) are now allowed to be processed by the next_arg() function. This would allow autocompletion to expand options belonging to specific command first, and then global ones. Note that global options ("--ask" and "--show-secrets") will be auto-completed everywhere but only if at least a '-' is passed. Command specific ones (--temporary, --active, --order) will be auto-completed only after the command they belongs to but without requiring the user to pass a heading '-'. Example: 'nmcli connection show -a' will expand '-a' into '--active', but 'nmcli connection add -a` will expand '-a' into '--ask' (as it is a global option) This commit fixes also autocompletion for: nmcli connection modify --temporary
* cli: make static arrays in nm_vpn_get_secret_names() constThomas Haller2017-04-051-15/+26
|
* cli: fix leak in add_vpn_secrets()Thomas Haller2017-04-051-7/+7
| | | | No need to copy @tmp variable, it was leaked.
* nmcli: avoid calling twice "check_activated()" on "nmcli connection up"Francesco Giudici2017-04-051-10/+9
| | | | | | | | | | | | | | This happens when the connection is in "activating" state and the connection is a master one waiting for slaves: "check_activated()" is called by the active_connection_state_cb() and device_state_cb() callbacks. If the device has already moved to a state >= NM_DEVICE_STATE_IP_CONFIG, the call to active_connection_state_cb() will end calling activate_connection_info_finish(), freeing the "info" object. The subsequent call to device_state_cb() will result in accessing the freed "info". Just call check_activated() once after registering the active_connection_state() and device_state_cb() callbacks.
* systemd: merge branch systemd into masterThomas Haller2017-04-046-4/+11
|\
| * systemd: update code from upstream (2017-04-04)Thomas Haller2017-04-046-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a direct dump from systemd git on 2017-04-04, git commit 91dacd4451309e1f4b06fb2628447ddc8425d972. ====== SYSTEMD_DIR=../systemd COMMIT=91dacd4451309e1f4b06fb2628447ddc8425d972 ( cd "$SYSTEMD_DIR" git checkout "$COMMIT" git reset --hard git clean -fdx ) git ls-files :/src/systemd/src/ | xargs -d '\n' rm -f nm_copy_sd() { mkdir -p "./src/systemd/$(dirname "$1")" cp "$SYSTEMD_DIR/$1" "./src/systemd/$1" } nm_copy_sd "src/basic/alloc-util.c" nm_copy_sd "src/basic/alloc-util.h" nm_copy_sd "src/basic/async.h" nm_copy_sd "src/basic/escape.c" nm_copy_sd "src/basic/escape.h" nm_copy_sd "src/basic/ether-addr-util.c" nm_copy_sd "src/basic/ether-addr-util.h" nm_copy_sd "src/basic/extract-word.c" nm_copy_sd "src/basic/extract-word.h" nm_copy_sd "src/basic/fileio.c" nm_copy_sd "src/basic/fileio.h" nm_copy_sd "src/basic/fd-util.c" nm_copy_sd "src/basic/fd-util.h" nm_copy_sd "src/basic/fs-util.c" nm_copy_sd "src/basic/fs-util.h" nm_copy_sd "src/basic/hash-funcs.c" nm_copy_sd "src/basic/hash-funcs.h" nm_copy_sd "src/basic/hashmap.c" nm_copy_sd "src/basic/hashmap.h" nm_copy_sd "src/basic/hexdecoct.c" nm_copy_sd "src/basic/hexdecoct.h" nm_copy_sd "src/basic/hostname-util.c" nm_copy_sd "src/basic/hostname-util.h" nm_copy_sd "src/basic/in-addr-util.c" nm_copy_sd "src/basic/in-addr-util.h" nm_copy_sd "src/basic/io-util.c" nm_copy_sd "src/basic/io-util.h" nm_copy_sd "src/basic/list.h" nm_copy_sd "src/basic/log.h" nm_copy_sd "src/basic/macro.h" nm_copy_sd "src/basic/mempool.h" nm_copy_sd "src/basic/mempool.c" nm_copy_sd "src/basic/parse-util.c" nm_copy_sd "src/basic/parse-util.h" nm_copy_sd "src/basic/path-util.c" nm_copy_sd "src/basic/path-util.h" nm_copy_sd "src/basic/prioq.h" nm_copy_sd "src/basic/prioq.c" nm_copy_sd "src/basic/random-util.c" nm_copy_sd "src/basic/random-util.h" nm_copy_sd "src/basic/refcnt.h" nm_copy_sd "src/basic/set.h" nm_copy_sd "src/basic/signal-util.h" nm_copy_sd "src/basic/siphash24.c" nm_copy_sd "src/basic/siphash24.h" nm_copy_sd "src/basic/socket-util.c" nm_copy_sd "src/basic/socket-util.h" nm_copy_sd "src/basic/sparse-endian.h" nm_copy_sd "src/basic/stdio-util.h" nm_copy_sd "src/basic/string-table.c" nm_copy_sd "src/basic/string-table.h" nm_copy_sd "src/basic/string-util.c" nm_copy_sd "src/basic/string-util.h" nm_copy_sd "src/basic/strv.c" nm_copy_sd "src/basic/strv.h" nm_copy_sd "src/basic/time-util.c" nm_copy_sd "src/basic/time-util.h" nm_copy_sd "src/basic/umask-util.h" nm_copy_sd "src/basic/unaligned.h" nm_copy_sd "src/basic/utf8.c" nm_copy_sd "src/basic/utf8.h" nm_copy_sd "src/basic/util.c" nm_copy_sd "src/basic/util.h" nm_copy_sd "src/libsystemd-network/arp-util.c" nm_copy_sd "src/libsystemd-network/arp-util.h" nm_copy_sd "src/libsystemd-network/dhcp6-internal.h" nm_copy_sd "src/libsystemd-network/dhcp6-lease-internal.h" nm_copy_sd "src/libsystemd-network/dhcp6-network.c" nm_copy_sd "src/libsystemd-network/dhcp6-option.c" nm_copy_sd "src/libsystemd-network/dhcp6-protocol.h" nm_copy_sd "src/libsystemd-network/dhcp-identifier.c" nm_copy_sd "src/libsystemd-network/dhcp-identifier.h" nm_copy_sd "src/libsystemd-network/dhcp-internal.h" nm_copy_sd "src/libsystemd-network/dhcp-lease-internal.h" nm_copy_sd "src/libsystemd-network/dhcp-network.c" nm_copy_sd "src/libsystemd-network/dhcp-option.c" nm_copy_sd "src/libsystemd-network/dhcp-packet.c" nm_copy_sd "src/libsystemd-network/dhcp-protocol.h" nm_copy_sd "src/libsystemd-network/lldp-internal.h" nm_copy_sd "src/libsystemd-network/lldp-neighbor.c" nm_copy_sd "src/libsystemd-network/lldp-neighbor.h" nm_copy_sd "src/libsystemd-network/lldp-network.c" nm_copy_sd "src/libsystemd-network/lldp-network.h" nm_copy_sd "src/libsystemd-network/network-internal.c" nm_copy_sd "src/libsystemd-network/network-internal.h" nm_copy_sd "src/libsystemd-network/sd-dhcp6-client.c" nm_copy_sd "src/libsystemd-network/sd-dhcp6-lease.c" nm_copy_sd "src/libsystemd-network/sd-dhcp-client.c" nm_copy_sd "src/libsystemd-network/sd-dhcp-lease.c" nm_copy_sd "src/libsystemd-network/sd-ipv4ll.c" nm_copy_sd "src/libsystemd-network/sd-ipv4acd.c" nm_copy_sd "src/libsystemd-network/sd-lldp.c" nm_copy_sd "src/libsystemd/sd-event/sd-event.c" nm_copy_sd "src/libsystemd/sd-id128/id128-util.c" nm_copy_sd "src/libsystemd/sd-id128/id128-util.h" nm_copy_sd "src/libsystemd/sd-id128/sd-id128.c" nm_copy_sd "src/shared/dns-domain.c" nm_copy_sd "src/shared/dns-domain.h" nm_copy_sd "src/systemd/_sd-common.h" nm_copy_sd "src/systemd/sd-dhcp6-client.h" nm_copy_sd "src/systemd/sd-dhcp6-lease.h" nm_copy_sd "src/systemd/sd-dhcp-client.h" nm_copy_sd "src/systemd/sd-dhcp-lease.h" nm_copy_sd "src/systemd/sd-event.h" nm_copy_sd "src/systemd/sd-ndisc.h" nm_copy_sd "src/systemd/sd-id128.h" nm_copy_sd "src/systemd/sd-ipv4acd.h" nm_copy_sd "src/systemd/sd-ipv4ll.h" nm_copy_sd "src/systemd/sd-lldp.h"
* | settings/secret-agent: add initializersLubomir Rintel2017-04-031-1/+1
| | | | | | | | To make coverity a bit happier.
* | cli: restore previous name of IN-USE AP propertyBeniamino Galvani2017-04-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before commit a63c4d082474 ("cli: use designated initializers for setting NmcOutputField fields") each field had a @name and a @name_l10n , which were equal for all properties except for wifi IN-USE: {"IN-USE", N_("*")}, /* 15 */ The commit removed @name_l10n so now the displayed name is equal to the field name. But now: $ nmcli device wifi list Error: 'device wifi': invalid field 'IN-USE'; allowed fields: NAME,SSID,SSID-HEX,BSSID,MODE,CHAN,FREQ,RATE,SIGNAL,BARS,SECURITY, WPA-FLAGS,RSN-FLAGS,DEVICE,ACTIVE,*,DBUS-PATH The new field name should be 'IN-USE' and not '*', otherwise scripts doing "-f IN-USE" will break. As a side effect we now show 'IN-USE' instead of '*' in the column header, which seems easier to understand: IN-USE SSID MODE CHAN RATE SIGNAL BARS SECURITY * default Infra 5 54 Mbit/s 71 ▂▄▆_ WPA2 guest Infra 1 54 Mbit/s 62 ▂▄▆_ WPA2 Fixes: a63c4d08247486148e3e3bd86608a7d0a664f6f1
* | device: emit IP_CONFIG_CHANGED signal when default route changesBeniamino Galvani2017-04-011-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | We now update the default route metric based on the result of the connectivity check. When we update the metric and there is no other changes to the IP configuration, NMPolicy is not notified about it and can't update the best device until an actual change in IP config happens. This results in a wrong best device set in NMPolicy. NMDevice has NM_DEVICE_IP[4,6]_CONFIG_CHANGED signals that are used exclusively by NMPolicy to detect when there is a change in configuration that requires an update of global DNS and routing information. Emit those signals also when the default route changes.
* | default-route-manager: return whether the default route changedBeniamino Galvani2017-04-012-26/+29
| |
* | cli: fix setting of 802-1x.eap propertyBeniamino Galvani2017-03-301-2/+16
| | | | | | | | Fixes: 6bf1d6fc163de9f69338af99641bd49f246f32b7
* | gitignore: fix ignoring "clients/common/settings-docs.c" (2)Thomas Haller2017-03-301-0/+1
| | | | | | | | Fixes: d720f0955ffda93e0fc1f7b69eb6a01395246229
* | build: fix out-of-tree build after moving generated settings-docs.cThomas Haller2017-03-301-1/+1
| | | | | | | | Fixes: d720f0955ffda93e0fc1f7b69eb6a01395246229
* | gitignore: fix ignoring "clients/common/settings-docs.c"Thomas Haller2017-03-301-1/+1
| | | | | | | | Fixes: d720f0955ffda93e0fc1f7b69eb6a01395246229
* | cli: embed gtk-doc directly in property-info structureThomas Haller2017-03-307-408/+391
| | | | | | | | Also mark them for translation.
* | cli: merge branch 'th/cli-setting-metadata-bgo732292'Thomas Haller2017-03-3033-11071/+9057
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | A larger refactoring of nmcli. Splits out (a bit) the tracking of settings meta data. As such, it goes towards what is proposed by bgo#732292. Then, get rid (a bit) of the global data that is passed around.
| * | cli: don't track output data in global NmCli structureThomas Haller2017-03-308-254/+283
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should not violate the global data to track the output data while it is constructed and printed. Most of the time, we actually clear the output data anyway -- either before constructing it, or after printing it. In some cases we didn't, but I think that is a bug. It's really hard to keep track of this. The output data should belong to a certain scope and get destroyed afterwards. Passing it around is very confusing. Don't do that.
| * | cli: split print_data() in a part with and without side-effectsThomas Haller2017-03-307-41/+64
| | | | | | | | | | | | | | | | | | To better understand which part of the code have side effects, split print_data() in a part that mutilates the input array and a part that only prints.
| * | cli: split output data from NmCli to a separate fieldThomas Haller2017-03-309-174/+168
| | |
| * | cli: cleanup get_value_to_print() utilThomas Haller2017-03-301-15/+17
| | | | | | | | | | | | | | | | | | | | | Don't cast const strings to non-const. And don't track whether to free a variable in a boolean. Instead, assign ownership to variables that get destroyed when the function returns.
| * | cli: separate input and in-out arguments in print_data()Thomas Haller2017-03-307-51/+51
| | | | | | | | | | | | | | | Don't pass down the entire NmCli instance. The output_data array is modified by print_data(), the rest is read-only input.
| * | cli: pass configuration options separately from NmCli structureThomas Haller2017-03-309-63/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NmCli structure is passed around everywhere and contains all the state of the program. It is very hard to follow which parts are used where. Split out more configuration options to a NmcConfig field. This field is mostly immutable, and modified at particular places that now can be easily found.
| * | cli: pass use_colors as separate option instead of global nmcThomas Haller2017-03-307-48/+54
| | | | | | | | | | | | | | | | | | nmc contains all options and collects output data. It is very hard to understand what it does. Start splitting it up, and pass arguments along -- as needed.
| * | cli: use designated initializers for setting NmcOutputField fieldsThomas Haller2017-03-307-264/+271
| | | | | | | | | | | | | | | | | | | | | Otherwise, changing the structure is difficult because it all depends on the order (and you don't immdiately see which field is used where). Also, drop the name_l10n field.
| * | cli: use enum property type for connection.lldpThomas Haller2017-03-303-54/+30
| | | | | | | | | | | | | | | | | | | | | Change in behavior: - the setter would previoulsy allow "enable" case-insensitive. Now, it's case sensitive.
| * | utils: add _nm_utils_enum_from_str_full() to support aliasesThomas Haller2017-03-302-4/+52
| | |
| * | libnm: move enum utils to new shared file shared/nm-utils/nm-enum-utils.hThomas Haller2017-03-306-287/+349
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libnm contains the public function nm_utils_enum_from_str() et al. The function is not flexible enough for nmcli's usecase. So, I would need another public function like nm_utils_enum_from_str_full() that has an extended API. That was already required previously for ifcfg-rh writer, but in that case I could just add it as internal API as libnm-core is linked statically with NetworkManager. I don't want to commit to a public API for an utility function. So move the code instead to the shared directory, so that nmcli may link statically against it and use the internal API.
| * | cli: use enum property type for 802-1x.phase1-auth-flagsThomas Haller2017-03-301-54/+6
| | |
| * | cli: use enum property type for wifi.power-saveThomas Haller2017-03-301-55/+6
| | | | | | | | | | | | | | | This changes behavior for the pretty-output. Now, we output "%d (%s)" instead of "%s (%d)".
| * | cli: add property type for enum and showcase for ipv6.addr-gen-modeThomas Haller2017-03-303-44/+306
| | |
| * | cli: belatedly add for connection user dataThomas Haller2017-03-301-24/+33
| | | | | | | | | | | | | | | User data will be printed in a new multiline mode. Need more work first.
| * | cli: don't hard-code list of settings for completionThomas Haller2017-03-302-43/+13
| | |
| * | cli: move utils function from common.h to nm-meta-setting-desc.cThomas Haller2017-03-3017-687/+779
| | | | | | | | | | | | | | | | | | These functions are only used by nm-meta-setting-desc.c. Make them internal. Unfortunately, they are part of "common.h" which cannot be used without the rest of nmcli. Still todo.
| * | cli: split nm-meta-setting-desc out of settingsThomas Haller2017-03-3011-6184/+6244
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This part contains static functions and variables to describe settings. It is distinct from the mechanism to use them, or access them. Split it out. It still uses clients/cli/common.h and clients/cli/utils.h which shall be fixed next.
| * | cli/trivial: rename metadata related namesThomas Haller2017-03-306-224/+224
| | | | | | | | | | | | | | | | | | They will be moved out of nmcli as they are generally useful. Even if they happen to be used only inside nmcli, there should be a better separation between logic (nmcli) and setting decriptions.
| * | nmcli: output property values in "parsable" mode when the "--terse" option ↵Thomas Haller2017-03-301-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | is specified (again) Commit 623d888801f611be4e4d14570d6c2f84dcd92937 was reverted during refactoring nmcli to simplify merge conflicts. Restore the behavior of the patch.
| * | cli: allow dynamic results from values_fcn() and describe_fcn() property ↵Thomas Haller2017-03-303-88/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | functions Mostly these strings are static. In same cases they are generated however. Instead of caching them in a static variable, return them to the caller. And belatedly fix invoking describe_fcn().
| * | cli: refactor indirection to legacy signatures (2)Thomas Haller2017-03-302-888/+520
| | |
| * | cli: fix intermediate regression of hiding blobs dataThomas Haller2017-03-302-59/+40
| | | | | | | | | | | | | | | Restore previous behavior of hiding blobs for certain certificate properties.
| * | cli: use define for argument lists in settings.cThomas Haller2017-03-301-219/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | settings.c basically consists of property-type structures and *a lot* of accessors. All these accessors share the same argument list. It is very repetitive to specify it over and over again. Also, there are so many arguments that one is compelled to wrap the lines. All in all it results in a lot of noise that takes the eye from the important code. Also, the argument list is expected to change, so we possibly only have to change one place.
| * | cli: refactor indirection to legacy signaturesThomas Haller2017-03-301-35/+29
| | |
| * | cli: add property-info for the restThomas Haller2017-03-306-2334/+830
| | |
| * | cli: add property-info for NMSettingWirelessThomas Haller2017-03-304-264/+112
| | |
| * | cli: add property-info for NMSettingWiredThomas Haller2017-03-304-291/+187
| | |
| * | cli: add property-info for NMSettingWimaxThomas Haller2017-03-304-64/+42
| | |
| * | cli: let string property-type handle checking valuesThomas Haller2017-03-301-185/+47
| | |
| * | cli: add property-info for NMSettingAdslThomas Haller2017-03-304-124/+51
| | |
| * | cli: add property-info for NMSettingPppThomas Haller2017-03-304-240/+97
| | |
| * | cli: add property-info for NMSetting8021xThomas Haller2017-03-304-598/+325
| | |