summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* device: only 'ignore-auto-routes' and 'ignore-auto-dns' for certain settingsth/device-ignore-auto-bgo752546Thomas Haller2015-08-051-38/+41
| | | | | | | | | | | | | | | | | | | | | During merge_and_apply(), we merge several NMIPxConfig into a new @composite. For 'ignore-auto-routes' and 'ignore-auto-dns', we want to prevent certain routes/dns-settings to be merged. But it is wrong to reject settings from all partial configs. For example, especially ext_ipx_config and vpn_ipx_config contain routes that we still must merge and preserve. This was recently changed by 79630c11e502c3b0b958abc0b1b5d777a3db2a98 and previously by ab6548c62134518ba2871306397e7fb9c84260ca. But it was wrong for a long time already. Also note, that nm_ip4_config_merge() now also ignores NIS, WINS, and dns-options. https://bugzilla.gnome.org/show_bug.cgi?id=752546 Fixes: 79630c11e502c3b0b958abc0b1b5d777a3db2a98
* core: add @merge_flags argument to nm_ip4_config_merge() and ↵Thomas Haller2015-08-059-45/+75
| | | | | | | | | | | | | nm_ip6_config_merge() The new flags are not yet used, so there is no change in functionality. The flags NM_IP_CONFIG_MERGE_NO_ROUTES and NM_IP_CONFIG_MERGE_NO_DNS go together with the 'ignore-auto-routes' and 'ignore-auto-dns' setting. Note that for IPv4, NM_IP_CONFIG_MERGE_NO_DNS also ignores NIS, WINS, and dns-options. This is different from current other places that handle 'ignore-auto-dns' and only care about nameservers, domains, and searches.
* contrib/rpm: compile audit support but disable by defaultThomas Haller2015-08-051-1/+1
| | | | | | | | | The default SELinux policy on current RHEL and Fedora distributions does not allow for NetworkManager to use audit. Hence, unless the user changes the SELinux policy it will not work. Disable auditing by default, but have it compiled so that the user can enable it via "NetworkManager.conf".
* libnm: fix gtkdoc for nm_utils_enum_to_str() and nm_utils_enum_from_str()Thomas Haller2015-08-051-2/+2
| | | | Fixes: 8be981479366f8caeb494471742e5c801a52cfa2
* libnm: fix gtkdoc for _nm_utils_dns_option_*()Thomas Haller2015-08-051-2/+2
| | | | Fixes: 019943bb5d9efea52392610b207dececafa6fdb3
* libnm: fix gtkdoc for nm_setting_ip_config_next_valid_dns_option()Thomas Haller2015-08-051-1/+1
| | | | Fixes: 019943bb5d9efea52392610b207dececafa6fdb3
* libnm/test: use (void) for empty parentheses in function prototypeThomas Haller2015-08-051-1/+1
| | | | Fixes: ec92ecedae28c9b7e78c2de5bc378fc7afc9eaf0
* build: fix out-of-tree build for missing "nm-version.h"Thomas Haller2015-08-053-0/+3
| | | | Fixes: 19c3ea948a7c74774621baf62d68cb4826e1b97c
* utils: use (void) for empty argumentsColin Walters2015-08-051-1/+1
| | | | | | In C, `()` doesn't do what you want by default. Fixes: 2cf274c03eb93877f835113d8429b938495b9091
* all: merge branch 'th/nm-default-bgo752857'Thomas Haller2015-08-05499-855/+595
|\ | | | | | | | | | | | | | | | | - order destruction of singletons - add new header "nm-default.h" to always include a set of standard headers. https://bugzilla.gnome.org/show_bug.cgi?id=752857
| * all: drop includes to <glib/gi18n.h> for "nm-default.h"Dan Winship2015-08-05177-232/+0
| | | | | | | | | | | | | | The localization headers are now included via "nm-default.h". Also fixes several places, where we wrongly included <glib/gi18n-lib.h> instead of <glib/gi18n.h>. For example under "clients/" directory.
| * nm-default: include i18n headers via "nm-default.h"Thomas Haller2015-08-055-2/+17
| |
| * all: make use of new header file "nm-default.h"Thomas Haller2015-08-05395-551/+400
| |
| * include: add convenience header "nm-default.h"Thomas Haller2015-08-0527-25/+85
| | | | | | | | | | | | | | | | | | | | This internal header file should be included by our internal source code files and header files. It includes in one place other headers that constitute to a minimal set of required headers. Most notably this is <glib.h> and our "nm-glib.h" header. Note that public header files and example source code cannot include this file as "nm-default.h" is internal only.
| * libnm: include header in public header file with angle bracketsThomas Haller2015-08-052-2/+2
| |
| * all: include internal headers with quotesThomas Haller2015-08-0515-19/+19
| |
| * supplicant/test: fix wrong usage of nmtst_init() inside core testsThomas Haller2015-08-051-1/+2
| |
| * core: log setup of singleton instancesThomas Haller2015-08-054-3/+10
| |
| * core: order destruction of singleton instancesThomas Haller2015-08-057-28/+68
|/ | | | | | | | | | | | | | | | | | Previously, the order of destructing singleton instances was undefined. Now, have singleton instances register their destruction via nm_singleton_instance_register(). Objects that are registered later, will be destructed earlier. IOW, they will be destroyed in reverse order of construction. This is only a crude method to get the lifetime of singleton instances right by default. Having singletons ref other singletons to keep them alive gives more control over the lifetimes of singletons. This change of having a defined order of destruction does not conflict with taking references to singletons (and thus extending their lifetime). Note that previously, NMPlatform was not registered for destruction. We don't change that yet and intenionally leak a reference.
* libnm: avoid deprecated warning for NMVpnPluginInfoThomas Haller2015-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When merely including "nm-vpn-plugin-info.h" (or "NetworkManager.h") gcc raises warnings like: "Not available before 1.2 [-Werror=deprecated-declarations]" The problem is that the NMVpnPluginInfo typedef itself is marked as deprecated but also used by other functions like nm_vpn_plugin_info_get_name(). typedef struct { int field; } Foo G_UNAVAILABLE(1,2); G_UNAVAILABLE(1,2) void deprecated_function (Foo *foo); warning: ‘Foo’ is deprecated: Not available before 1.2 [-Wdeprecated-declarations] I think that when a function is itself deprecated, gcc should not warn about the use of a deprecated typedef. Gcc's documentation states: "Note that the warnings only occur for uses and then only if the type is being applied to an identifier that itself is not being declared as deprecated.". Apparently, this only works for structs, but not for typedef of structs. Anyway. Remove the deprecation from NMVpnPluginInfo to avoid the compiler warning. https://bugzilla.gnome.org/show_bug.cgi?id=753098 Fixes: d6226bd987136e35d11f75948f6615c82fea71e0
* libnm-core: trivial: fix glib-mkenums parse warningBeniamino Galvani2015-08-041-2/+1
| | | | | | | | | | Avoid a new line in the definition of enum value to fix the following glib-mkenums warning: glib-mkenums: nm-setting-wired.h:71: Failed to parse ` - 1 - NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) ' Fixes: 5622461c04d16ef80187ffdcf8b902ce95549273
* merge: fix MTU handlingLubomir Rintel2015-08-041-6/+6
|\ | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=752508
| * device: lower serverity of MTU adjustment loggingLubomir Rintel2015-08-041-3/+3
| | | | | | | | Warn is probably too harsh, but we still need to log the reason for the change.
| * device: don't modify the device MTU if it's unsetLubomir Rintel2015-08-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | The MTU of 0 means default, not zero-length packets: <warn> (wlp3s0): Lowering IPv6 MTU (1472) to match device MTU (0) <warn> (wlp3s0): IPv6 MTU (0) smaller than 1280, adjusting <warn> (wlp3s0): Raising device MTU (0) to match IPv6 MTU (1280) <error> [1437068831.306733] [platform/nm-linux-platform.c:2440] sysctl_set(): platform-linux: sysctl: failed to set '/proc/sys/net/ipv6/conf/wlp3s0/mtu' to '1472': (22) Invalid argument Reported-by: Jan Alexander Steffens <jan.steffens@gmail.com> https://bugzilla.gnome.org/show_bug.cgi?id=752508
* | build: print configure result for default configuration values in a common ↵Thomas Haller2015-08-041-3/+3
| | | | | | | | format
* | build: fix configure bug for detecting libaudit supportThomas Haller2015-08-041-2/+2
| | | | | | | | Fixes: c4c0bbb28c9c75d14e2a03d713723afb8d395ccb
* | audit-manager: enable logging.audit by default when libaudit support is ↵Thomas Haller2015-08-043-7/+18
|/ | | | | | | | | | | | | | | | | available Previously, when compiling NetworkManager with libaudit support, it was disabled by default and only used after setting logging.audit=true. Turn that around. If we compile NetworkManager with audit support, we also enable it by default. The user can then explicitly disable it by configuring logging.audit in NetworkManager.conf. But also, add a configure option 'yes-disabled-by-default' to compile with audit support, but have it disabled by default. This would be the previous behavior, but it must be enabled explicitly. Fixes: be49a59fb649d7383b456403deb323a2eb9dab4b
* po: updated Ukranian translation (bgo #752817)Yuri Chornoivan2015-08-041-1228/+1210
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=752817
* logging: merge branch 'th/logging-off-bgo753128'Thomas Haller2015-08-044-31/+38
|\ | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=753128
| * logging: remove dummy logging domain "NONE"Thomas Haller2015-08-041-1/+0
| | | | | | | | | | | | "NONE" was wrongly part of @domain_descs and thus advertised via `NetworkManager --help`. But since its @num was set to LOGD_NONE (zero), it was already rejected by nm_logging_setup().
| * logging: minor refactoring in nm_logging_setup()Thomas Haller2015-08-041-13/+13
| |
| * logging: support an "OFF" logging levelThomas Haller2015-08-044-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only way to disable logging for a domain entirely is to omit the domain from the "domains" list. For example: "level=INFO, domains=PLATFORM,..." Now add an explicit level "OFF" to facilitate configuration like: "level=INFO, domains=ALL,WIFI_SCAN:OFF" It also supports "level=OFF, domains=PLATFORM:INFO" but this is for the most part equivalent to "level=INFO, domains=PLATFORM"
| * logging: replace using _LOGL_N by G_N_ELEMENTS()Thomas Haller2015-08-041-8/+9
| | | | | | | | | | | | At various places we used _LOGL_N to check the index before accessing one of our static arrays. Instead use G_N_ELEMENTS().
| * logging/trivial: rename LOGL_MAX to _LOGL_NThomas Haller2015-08-042-12/+12
|/ | | | | | The name LOGL_MAX was misleading, because it is not the "maximum" logging level, but the number of different levels. Rename it.
* core: merge branch bg/audit-bgo749364Beniamino Galvani2015-08-0423-68/+725
|\ | | | | | | | | | | | | | | Log all the relevant changes to system configuration and state to the Linux audit subsystem through libaudit (if enabled at build time) and to the logging system. https://bugzilla.gnome.org/show_bug.cgi?id=749364
| * systemd: require CAP_AUDIT_WRITE for NetworkManager serviceBeniamino Galvani2015-08-041-1/+1
| | | | | | | | We need it to write messages to kernel auditing log.
| * settings: add audit supportBeniamino Galvani2015-08-043-4/+12
| |
| * manager: add audit supportBeniamino Galvani2015-08-041-6/+79
| |
| * settings-connection: add audit supportBeniamino Galvani2015-08-041-20/+58
| |
| * device: add audit supportBeniamino Galvani2015-08-044-2/+16
| |
| * auth-utils: add nm_auth_chain_get_subject()Beniamino Galvani2015-08-042-0/+10
| |
| * core: add audit supportBeniamino Galvani2015-08-049-1/+519
| | | | | | | | | | | | Introduce some primitives to deliver messages about relevant configuration changes to the Linux audit subsystem through libaudit (if enabled at build time) and to the logging system.
| * logging: add AUDIT domainBeniamino Galvani2015-08-043-1/+4
| |
| * libnm-core: add _nm_utils_strv_equal()Beniamino Galvani2015-08-042-0/+25
| |
| * build: remove SELinux AM_CONDITIONAL from configure.acBeniamino Galvani2015-08-042-6/+2
| |
| * build: remove unneeded AC_SUBST macros after PKG_CHECK_MODULESBeniamino Galvani2015-08-041-28/+0
|/ | | | | | | | | | The PKG_CHECK_MODULES macro shipped with modern versions (at least 0.24) of pkg-config already calls AC_SUBST to generate ${PKG}_CFLAGS and ${PKG}_LIBS variables in Makefiles. Remove the unneeded occurrences of AC_SUBST after PKG_CHECK_MODULES in configure.ac; this should be safe because we are already assuming that pkg-config version is recent enough in some other places.
* platform/tests: fix assertion for test-link for team deviceThomas Haller2015-08-011-4/+1
| | | | | Seems that team changed to now also raise two change signals. Relax the assertion that broke tests on Fedora 22.
* introspection: fix some annotationsDan Williams2015-07-314-22/+22
| | | | | | | Fixes: eafa6c3584421d14e09a18f76bad7b1b5ebc2288 Fixes: eed0d0c58f7f13638eb587e240737048d729cb68 Fixes: b5cc017ba473de011881e40b26b3ee3433f1567c Fixes: bce040daa2399688b437ac5609339f3d3e1b17b8
* core: split device creation and device setup (bgo #737458)Dan Williams2015-07-3129-745/+825
| | | | | | | | | | | | | | | | | | | | | Future patches will create devices long before they are backed by kernel resources, so we need to split NMDevice object creation from actual setup based on the backing resources. This patch combines the NMDeviceFactory's new_link() and create_virtual_device_for_connection() class methods into a single create_device() method that simply creates an unrealized NMDevice object; this method is not expected to fail unless the device is supposed to be ignored. This also means that the NMDevice 'platform-device' property is removed, because a platform link object may not be available at NMDevice object creation time. After the device is created, it is then "realized" at some later time from a platform link (for existing/hardware devices via the realize() method) or from an NMConnection (for newly created software devices via the create_and_realize() NMDeviceClass methods). https://bugzilla.gnome.org/show_bug.cgi?id=737458
* ifcfg-rh: properly write the wake-on-lan propertyBeniamino Galvani2015-07-301-2/+6
| | | | | | | ETHTOOL_OPTS must be cleared when the wake-on-lan value is 'default' and a "wol d" string must be appended when the value is 'none'. Fixes: 2e0d0bc050b44afaeb017cc30ac409c743b9b171