summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* man: mention that connection.autoconnect-slaves property supports default valuejk/master-bringup-slaves-unsquashedJiří Klimeš2015-06-091-0/+4
|
* fixup! cli: add support for connection.autoconnect-slaves propertyJiří Klimeš2015-06-091-2/+43
|
* fixup! fixup! ifcfg-rh: read/write autoconnect-slaves property as ↵Jiří Klimeš2015-06-091-2/+5
| | | | AUTOCONNECT_SLAVES
* fixup! core: activate slaves when master is activated (bgo #735052) (rh ↵Jiří Klimeš2015-06-091-5/+30
| | | | | | #1158529) - use config default values for autoconnect-slaves
* Revert "config/core: introduce master-autoconnects-slaves configuration option"Jiří Klimeš2015-06-097-106/+9
| | | | This reverts commit 268acabb2dec90c84341076b187acc8ba18a7520.
* fixup! libnm: add autoconnect-slaves property to NMSettingConnectionJiří Klimeš2015-06-094-14/+39
| | | | - use tri-state value to allow defaults (read from config file)
* fixup! ifcfg-rh: read/write autoconnect-slaves property as AUTOCONNECT_SLAVESJiří Klimeš2015-06-091-4/+10
| | | | Only save AUTOCONNECT_SLAVES for master connections.
* fixup! ifcfg-rh: default to AUTOCONNECT_SLAVES=TRUE for bondsJiří Klimeš2015-06-092-3/+4
|
* ifcfg-rh: default to AUTOCONNECT_SLAVES=TRUE for bondsJiří Klimeš2015-06-092-2/+7
| | | | This is to be compatible with initscripts behaviour.
* config/core: introduce master-autoconnects-slaves configuration optionJiří Klimeš2015-06-097-9/+106
| | | | | | | | | | | The option can be used to control NetworkManager behaviour on activating slaves when master is activated. master-autoconnects-slaves= always - always bring up slaves when master is activated never - do not bring up slaves when master is activated per-master - the behaviour is controlled per master connection by autoconnect-slaves property
* core: activate slaves when master is activated (bgo #735052) (rh #1158529)Jiří Klimeš2015-06-091-0/+99
| | | | | | | | When a master connection is activated, check all its slaves and activate them as well (if autoconnect-slaves property is set). https://bugzilla.gnome.org/show_bug.cgi?id=735052 https://bugzilla.redhat.com/show_bug.cgi?id=1158529
* cli: add support for connection.autoconnect-slaves propertyJiří Klimeš2015-06-091-4/+15
|
* ifcfg-rh: read/write autoconnect-slaves property as AUTOCONNECT_SLAVESJiří Klimeš2015-06-092-0/+6
| | | | | | | AUTOCONNECT_SLAVES is an NetworkManager extension. initscripts always activate slaves with the master connection. NetworkManager behaviour is controlled by this variable. The default value (if missing) is "no", which is the opposite behaviour than initscripts.
* libnm: add autoconnect-slaves property to NMSettingConnectionJiří Klimeš2015-06-093-0/+59
| | | | | | The property is used for controlling whether slaves should be brought up with a master connection. If %FALSE, activating the master will not activate slaves. But if set to %TRUE, activating the master will bring up slaves as well.
* contrib/rpm: let NetworkManager package own '/etc/NetworkManager/' directoryThomas Haller2015-06-081-0/+2
|
* platform: merge branch 'th/platform_refact_caching-bgo747981' (early part)Thomas Haller2015-06-0519-444/+690
|\ | | | | | | | | | | | | | | | | | | | | - add new file 'nm-platform-utils.c' and moves some independent utility functions there (ethtool, udev). - some refactoring of platform code, including initialization of NMPlatform instance. - run platform tests in a separate user namespace, which allow us to run root-tests as non-root. https://bugzilla.gnome.org/show_bug.cgi?id=747981
| * platform: expose nm_platform_signal_change_type_to_string()Thomas Haller2015-06-053-24/+11
| |
| * platform: refactor support_kernel_extended_ifa_flags to static variableThomas Haller2015-06-051-40/+45
| | | | | | | | | | Whether we have support depends on the kernel, and is not per NMLinuxPlatform instance.
| * platform: move ethtool_get_link_speed() to nm-platform-utilsThomas Haller2015-06-053-32/+28
| |
| * platform: move supports_mii_carrier_detect() to ↵Thomas Haller2015-06-053-44/+54
| | | | | | | | nmp_utils_mii_supports_carrier_detect()
| * platform: move ethtool_*() to nmp_utils_ethtool_*()Thomas Haller2015-06-053-210/+238
| |
| * platform: factor out ethtool_get_wake_on_lan() functionThomas Haller2015-06-051-10/+19
| |
| * platform: factor out ethtool_get_peer_ifindex() functionThomas Haller2015-06-051-13/+28
| |
| * platform: factor out ethtool_supports_vlans() functionThomas Haller2015-06-051-24/+30
| |
| * platform/trivial: move ethtool_supports_carrier_detect() codeThomas Haller2015-06-051-13/+13
| |
| * platform: move code udev_get_driver() to nmp_utils_udev_get_driver()Thomas Haller2015-06-053-42/+48
| |
| * platform: add nm-platform-utils.[ch] filesThomas Haller2015-06-056-4/+107
| | | | | | | | | | | | | | | | | | | | | | | | There is no general purpose file for platform utilities. We only have nm-platform.h, which contains (mostly) functions that operate on a NMPlatform instance (and that can be mocked using NMFakePlatform). Add a new file for independent utility functions. nm-platform-utils.c should not call into functions having a NMPlatform instance, to have them independent from platform caching and the platform singleton.
| * platform: move nm_platform_query_devices() to nm-managerThomas Haller2015-06-053-29/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | nm_platform_query_devices() would raise an 'added' signal for all its links. That is bad style because it could confuse other listeners for platform signals which don't expect such artificial change signals. The public API of NMPlatform already gives NMManager the ability to 'pull' all the links and iterate them itself. Before, nm_platform_query_devices() would also initialize udev devices, so there was a more compelling reason for this function.
| * platform: merge setup_devices() function into constructed()Thomas Haller2015-06-054-19/+12
| | | | | | | | | | | | | | | | | | | | We already populate the netlink cache in constructed(). No need to wait with udev devices until nm_platform_query_devices(). Just do it right away. Add a hack to keep 'lo' default-unmanaged. Now that we load udev devices earlier, we end up clearing the default-unmanged flag on 'lo', which has bad consequences.
| * tests: use a user ns to fake rootLubomir Rintel2015-06-051-7/+51
| |
| * tests: allow running the link test without a writeable sysfsLubomir Rintel2015-06-053-25/+44
| | | | | | | | This fixes the test run in a container/our NETNS/NEWUSER test jail.
| * core: add option to suppress error logging if nm_utils_modprobe() failsThomas Haller2015-06-055-8/+23
| | | | | | | | | | | | We don't want error logging for nm_platform_link_add() which tries to load the bonding module. Later we will run tests as non-root, where modprobe will fail. Logging an error would break the tests.
| * utils: add NM_FLAGS_SET(), NM_FLAGS_UNSET() and NM_FLAGS_ASSIGN() macrosThomas Haller2015-06-051-0/+23
| |
| * core: make nm_assert() always compile conditionThomas Haller2015-06-051-1/+1
|/ | | | | | Even if asserts are not enabled, still let the compiler see what we would assert. Otherwise, we get warnings about unused variables or we migth miss compile errors inside nm_assert().
* Revert "core: avoid loading GIO modules"Lubomir Rintel2015-06-052-8/+0
| | | | | | This reverts commit 6a841c0cd1532f6e2e04c2fbb674ee3f69c714b7. We do actually need the modules for connectivity checking.
* merge branch 'th/connection-defaults-bgo695383'Thomas Haller2015-06-0515-86/+492
|\ | | | | | | | | | | | | | | | | | | | | - support new [connection] section in NetworkManager.conf - allow configuring a default value for ipvx.route-metric - allow configuring a default value for ipv6.ip6-privacy and read the fallback configuration from sysctl. https://bugzilla.gnome.org/show_bug.cgi?id=695383 https://bugzilla.gnome.org/show_bug.cgi?id=721200 https://bugzilla.redhat.com/show_bug.cgi?id=1187525
| * device: remove reading ipv6 privacy setting from sysctlThomas Haller2015-06-053-83/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since introduction for support of ip6-privacy (use_tempaddr, RFC4941) with commit d376270bfe673c041e610a981bd6c77c7cb37ba1, the sysctl value from /etc was always read first. This is problematic, because an explicit setting in the connection should not be ignored over a global configuration. Drop that old behavior. It was also problematic, because we did not read any files under /etc/sysctl.d (except for sysctl.conf). Also, we did not honor per-interface configurations. Now we also use as last fallback the value from /proc/sys/net/ipv6/conf/default/use_tempaddr That has the advantage of falling back to the system default value so that NM doesn't need to have it's own default policy (Related: https://bugzilla.redhat.com/show_bug.cgi?id=1187525). This is a change in behavior.
| * device: add global configuration default for ip6-privacy (use_tempaddr, RFC4941)Thomas Haller2015-06-053-19/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support default value for setting 'ipv6.ip6-privacy' in NetworkManager.conf. If the global value is unset, preserve old behavior of looking into /etc/sycctl.conf first. That behavior was introduced with commit d376270bfe673c041e610a981bd6c77c7cb37ba1, since we support ip6-privacy setting. If the global value is set to "unknown", add a new fallback that instead reads the runtime value from "/proc/sys/net/ipv6/conf/default/use_tempaddr" This seems more sensible behavior because we fallback to sysctl, but instead of looking at static files in /etc, read /proc. But to preserve the old behavior, we only do that when a global value is configured at all. https://bugzilla.gnome.org/show_bug.cgi?id=721200
| * libnm/doc: document behavior of setting ip6-privacy in /etc/sysctl.confThomas Haller2015-06-051-2/+6
| | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=721200
| * device: make route-metric configurable per-deviceThomas Haller2015-06-052-32/+51
| | | | | | | | | | | | | | | | | | | | The route-metric can be configured per connection via the ipv4.route-metric and ipv6.route-metric fields. When the value is left at -1 (the default), we would determine the route-metric based on the device type (nm_device_get_priority()). Extend that scheme by making the default value overwritable in NetworkManager.conf.
| * config: support a [connection] section to NetworkManager.conf to specify ↵Thomas Haller2015-06-055-0/+272
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | connection defaults Add support for a new section [connection] in NetworkManager.conf. If the connection leaves an option at "unknown"/"default", we can support overwriting the value from global configuration. We also support other sections that are named with "connection" as a prefix, such as [connection2], [connection-wifi]. This is to support multiple default values that can be applied depending on the used device. I think this has great potential. Only downside is that when the user looks at a connection value, it will see that it is unspecified. But the actually used value depends on the device type and might not be obvious. https://bugzilla.gnome.org/show_bug.cgi?id=695383 https://bugzilla.redhat.com/show_bug.cgi?id=1164677
| * config: publish nm_config_keyfile_get_boolean() utility functionThomas Haller2015-06-052-8/+12
| |
| * device: add device-spec "type:"Thomas Haller2015-06-054-2/+46
| | | | | | | | | | | | | | Support a device-spec to match by device-type. This matches on the value as shown by nmcli -f GENERAL.TYPE device show
| * device: add nm_device_get_type_description() functionThomas Haller2015-06-055-1/+60
|/ | | | | | | | | | | | | Add a function to get a concise representation of the device type. libnm already has nm_device_get_type_description() for that and it is shown by nmcli -f GENERAL.TYPE device show Reimplement that function for nm-core. Just take care that the two implementations don't diverge.
* merge branch 'th/default-dns-options-bgo749648'Thomas Haller2015-06-0515-462/+606
|\ | | | | | | | | | | | | | | - some enhancements and bugfixes to ifcfg-rh utils - fix and refactoring nmcli value-to-string conversion - add new default value for dns-options https://bugzilla.gnome.org/show_bug.cgi?id=749648
| * cli: show dns-options default valueThomas Haller2015-06-051-2/+4
| | | | | | | | | | | | | | | | | | | | You can reset the default value via $ nmcli connection modify id CON ipv4.dns-options "" and set an empty value with $ nmcli connection modify id CON ipv4.dns-options " "
| * cli: add DEFINE_GETTER_WITH_DEFAULT() macroThomas Haller2015-06-051-0/+25
| |
| * cli: stack allocate search string in nmc_properties_find()Thomas Haller2015-06-051-7/+7
| |
| * cli: refactor nmc_add_prop_funcs() to use variadic macroThomas Haller2015-06-051-20/+31
| | | | | | | | | | | | | | | | | | The advantage of this is that if we later add another function pointer we don't have to touch any existing calls which would only pass NULL to that argument. Using a variadic argument and partial initialization of an auto variable gives us that flexibility.
| * cli: do not create a copy of static strings for nmc_properties hashThomas Haller2015-06-051-11/+13
| | | | | | | | | | The keys of the hash are static strings. No need to make a copy of it. If we ever need dynamics properties, we should intern those strings.