summaryrefslogtreecommitdiff
path: root/src/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'systemd' into bg/systemd-updateBeniamino Galvani2015-11-231-0/+19
|\
* | lldp: add test caseBeniamino Galvani2015-11-101-0/+1
| | | | | | | | | | | | | | Add a test for the LLDP listener to ensure that things don't accidentally break when we import new code from systemd upstream. https://bugzilla.gnome.org/show_bug.cgi?id=757005
* | keyfile: remove "common.h" headerThomas Haller2015-10-141-1/+0
| | | | | | | | It only contained a few defines. Move them over to "utils.h".
* | vpn-manager: support multiple VPN connections of the same typelr/multiple-vpnLubomir Rintel2015-10-131-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A separate instance of the support plugin is spawned for each connection with a different bus name. The bus name is passed via --bus-name <name> argument. Plugins that support the feature indicate it with support-multiple-connections=true key in the [VPN Connection] section. The bus name is currently generated by adding a .<connection.uuid> to the VPN service name. It's guarranteed unique, but if it proves to be too long or ugly it can easily be replaced with something more meaningful (such as the same number as is used for connection's DBus name). NMVpnService has been removed and folded into NMVpnConnection. A NMVpnConnection will spawn a service plugin instance whenever it is activated and notices the bus name it needs is not provided. The NMVpnManager no longer needs to keep track of the connections in use apart for compatibility purposes with plugins that don't support the feature.
* | device: export list of LLDP neighbors through D-BusBeniamino Galvani2015-10-121-0/+2
| | | | | | | | | | | | | | This adds a LldpNeighbors property to the Device D-Bus interface carrying information about devices discovered through LLDP. The property is an array of hashes and each hash describes the values of LLDP TLVs for a specific neighbor.
* | merge: merge branch 'systemd' into masterBeniamino Galvani2015-10-081-3/+25
|\ \ | |/
* | build: extract version macros from "nm-version.h" to new header file ↵Thomas Haller2015-09-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "nm-version-macros.h" For libnm library, "nm-dbus-interface.h" contains defines like the D-Bus paths of NetworkManager. It is desirable to have this header usable without having a dependency on "glib.h", for example for a QT application. For that, commit c0852964a890cf43cc2dcaeff41ac6edc5028f24 removed that dependancy. For libnm-glib library, the analog to "nm-dbus-interface.h" is "NetworkManager.h", and the same applies there. Commit 159e827a72f420048e12d318f8ba1edd3f641fc8 removed that include. However, that broke build on PackageKit [1] which expected to get the version macros by including "NetworkManager.h". So at least for libnm-glib, we need to preserve old behavior so that a user including "NetworkManager.h" gets the version macros, but not "glib.h". Extract the version macros to a new header file "nm-version-macros.h". This header doesn't include "glib.h" and can be included from "NetworkManager.h". This gives as previous behavior and a glib-free include. For libnm we still don't include "nm-version-macros.h" to "nm-dbus-interface.h". Very few users will actually need the version macros, but not using libnm. Users that use libnm, should just include (libnm's) "NetworkManager.h" to get all headers. As a special case, a user who doesn't want to use glib/libnm, but still needs both "nm-dbus-interface.h" and "nm-version-macros.h", can include them both separately. [1] https://github.com/hughsie/PackageKit/issues/85 Fixes: 4545a7fe9670ce4d7c259c11c2cc853bfae6729b
* | systemd/build: split CPPFLAGS to only include needed pathsThomas Haller2015-09-161-7/+7
| | | | | | | | | | | | | | | | Optimally, we only make use of systemd API that is intended to be public and that will be later part of the system-library. That is currently not yet possible and we need "-Isrc/systemd/src/basic" to build "nm-dhcp-systemd.h". Still, split the include paths to build systemd code itself, contrary to the user of the API.
* | systemd/build: use separate NETWORKMANAGER_COMPILATION define for systemd buildThomas Haller2015-09-161-2/+2
| |
* | systemd: merge branch 'systemd-integration' into masterThomas Haller2015-09-161-49/+50
|\ \ | |/
* | settings: trivial: rename NMSystemConfigInterface to NMSettingsPluginDan Winship2015-09-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since there have not been separate system and user settings services since 0.8, the "system" in NMSystemConfigInterface is kind of meaningless. Rename it to NMSettingsPlugin, which describes what it does better. This is just: git mv src/settings/nm-system-config-interface.h src/settings/nm-settings-plugin.h git mv src/settings/nm-system-config-interface.c src/settings/nm-settings-plugin.c perl -pi -e 's/SystemConfigInterface/SettingsPlugin/g;' \ -e 's/system_config_interface/settings_plugin/g;' \ -e 's/system-config-interface/settings-plugin/g;' \ -e 's/SYSTEM_CONFIG_INTERFACE/SETTINGS_PLUGIN/g;' \ -e 's/sc_plugin/settings_plugin/g;' \ -e 's/SC_PLUGIN/SETTINGS_PLUGIN/g;' \ -e 's/SC_IS_PLUGIN/SETTINGS_IS_PLUGIN/g;' \ -e 's/SC_TYPE_PLUGIN/SETTINGS_TYPE_PLUGIN/g;' \ -e 's/SCPlugin/SettingsPlugin/g;' \ -e 's/nm_system_config_factory/nm_settings_plugin_factory/g;' \ $(find src/settings -type f) (followed by some whitespace fixups in nm-settings-plugin.c, and a Makefile.am fix for the rename)
* | build: exclude private headers for mkenums and nm-enum-types.cThomas Haller2015-09-041-1/+5
| |
* | core: final gdbus portingDan Winship2015-08-101-51/+9
| | | | | | | | | | | | | | | | | | | | Port remaining bits to gdbus and remove stray dbus-glib references Drop the dbus-glib version check from configure, since nothing depends on new dbus-glib any more. Move nm-dbus-glib-types.h and nm-gvaluearray-compat.h from include/ to libnm-util/ since they are now only used by libnm-util and libnm-glib.
* | sleep-monitor: add support for ConsoleKit2 inhibitEric Koegel2015-08-071-4/+4
| | | | | | | | | | | | | | | | | | | | ConsoleKit2 has added the same suspend/resume DBUS API that Systemd uses. This patch adds the code to use ConsoleKit2's inhibit API. http://consolekit2.github.io/ConsoleKit2/#Manager.Inhibit [thaller@redhat.com: modified original patch] https://bugzilla.gnome.org/show_bug.cgi?id=752836
* | build: fix out-of-tree build for missing "nm-version.h"Thomas Haller2015-08-051-0/+1
| | | | | | | | Fixes: 19c3ea948a7c74774621baf62d68cb4826e1b97c
* | all: make use of new header file "nm-default.h"Thomas Haller2015-08-051-1/+3
| |
* | include: add convenience header "nm-default.h"Thomas Haller2015-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | 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.
* | core: add audit supportBeniamino Galvani2015-08-041-1/+5
| | | | | | | | | | | | 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.
* | build: remove SELinux AM_CONDITIONAL from configure.acBeniamino Galvani2015-08-041-5/+2
| |
* | core: rename NMDBusManager to NMBusManagerDan Winship2015-07-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Our gdbus generated types use the same names as their corresponding "real" types, but with "NM" changed to "NMDBus". Unfortunately, that means that introspection/nmdbus-manager.c (the generated type for src/nm-manager.c) uses the same type name as the entirely unrelated src/nm-dbus-manager.c. Fix this by removing the "d" from src/nm-dbus-manager.c. (We could rename the generated type instead, but then it becomes inconsistent with all the other generated types, and we're already using it as "NMDBusManager" in libnm/nm-manager.c.)
* | core: add an NMExportedObject base classDan Winship2015-07-241-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add NMExportedObject, make it the base class of all D-Bus-exported types, and move the nm-properties-changed-signal logic into it. (Also, make NMSettings use the same properties-changed code as everything else, which it was not previously doing, presumably for historical reasons). (This is mostly just shuffling code around at this point, but NMExportedObject will be more important in the gdbus port, since gdbus-codegen doesn't do a very good job of supporting objects that export multiple interfaces [as each NMDevice subclass does, for example], so we will need more glue/helper code in NMExportedObject then.)
* | logging: add native systemd-journald support to nm-loggingThomas Haller2015-07-141-0/+3
| |
* | systemd: merge branch 'systemd'Beniamino Galvani2015-07-081-24/+31
|\ \ | |/
* | config: read configuration directory "/usr/lib/NetworkManager/conf.d"Thomas Haller2015-07-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows packages to install their configuration snippets to "/usr/", which is a better place for system-provided configuration files then "/etc". "/usr/lib/NetworkManager/conf.d/" is read first, so that the values in /etc have higher priority. In general, we want to move system-provided configuration away from /etc, so that a user can do a "factory-reset" by purging /etc. https://bugzilla.gnome.org/show_bug.cgi?id=738853
* | platform: add nmp-object.h fileThomas Haller2015-06-171-0/+4
| |
* | core: add NMMultiIndex classThomas Haller2015-06-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A class to do efficient lookup for multiple values based on a key. The values are opaque pointers (void*). These values can be associated with keys. The keys are an opaque type NMMultiIndexId with arbitrary hash/equal functions. Think of the keys being a set of buckets. A value can be associated with multiple keys, just like with a regular GHashTable (i.e. it can be in multiple buckets). But one key can also be associated with multiple values (i.e. one bucket can contain multiple values). Hence the name "multi". One bucket can only either contain a value or not. It cannot contain the same value multiple times. This is implemented as a hash of hashes with the outer keys being NMMultiIndexId. The inner hashes are the "buckets". This class will be used as an efficient lookup index to find all values that belong to a certain key (bucket). Later we will ask for example "Which IP4-Addresses are associated with a certain ifindex" and efficiently retrieve the cached result list.
* | build: link core against SELinuxBeniamino Galvani2015-06-121-0/+5
| | | | | | | | | | Some functions that rely on SELinux support are going to be moved from plugins to core. Enable linking against the library.
* | platform: add nm-platform-utils.[ch] filesThomas Haller2015-06-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | build: support runstatedir configure optionPavel Šimerda2015-05-281-1/+2
| | | | | | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=737139 [thaller@redhat.com: modified original patch]
* | build: re-add a line accidentally removed by the last mergeLubomir Rintel2015-05-111-0/+1
| |
* | ipv4ll: use internal implementationBeniamino Galvani2015-05-111-0/+5
| |
* | systemd: merge branch 'systemd'Beniamino Galvani2015-05-111-71/+70
|\ \ | |/ | | | | | | | | | | | | In addition, update src/Makefile.am with new paths and move src/{dhcp-manager/systemd-dhcp => systemd}/nm-sd-adapt.[ch] as well.
* | rdisc: move most RA processing logic into base classDan Williams2015-05-011-0/+1
| | | | | | | | | | | | | | | | Instead of having it all in the Linux implementation, move all the timeout logic and most of the processing logic into the NMRDisc base class so that it can be used by NMFakeRDisc as well. This will help increase testability since now we can test the timeout and expiry logic from the fake plugin too.
* | wimax: drop WiMAX support (bgo #747846)Dan Winship2015-04-171-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even Fedora is no longer shipping the WiMAX SDK, so it's likely we'll eventually accidentally break some of the code in src/devices/wimax/ (if we haven't already). Discussion on the list showed a consensus for dropping support for WiMAX. So, remove the SDK checks from configure.ac, remove the WiMAX device plugin and associated manager support, and deprecate all the APIs. For compatibility reasons, it is still possible to create and save WiMAX connections, to toggle the software WiMAX rfkill state, and to change the "WIMAX" log level, although none of these have any effect, since no NMDeviceWimax will ever be created. nmcli was only compiling in support for most WiMAX operations when NM as a whole was built with WiMAX support, so that code has been removed now as well. (It is still possible to use nmcli to create and edit WiMAX connections, but those connections will never be activatable.)
* | supplicant: remove unused nm-call-store.c/.hdcbw/wifi-gdbusDan Williams2015-03-031-2/+0
| |
* | dhcp: add systemd's dhcp-identifier.c for dhcp_identifier_set_duid_en()Thomas Haller2015-03-031-0/+2
| | | | | | | | | | | | | | | | Also patch dhcp_identifier_set_iaid() to get the ifname via if_indextoname(), instead of udev. This also makes our local modification sd_dhcp6_client_set_ifname() obsolete, which will be removed next.
* | dhcp: add systemd's sd-id128.c for sd_id128_get_machine()Thomas Haller2015-03-031-0/+1
| |
* | dhcp: add systemd's path-util.c for path_kill_slashes()Thomas Haller2015-03-031-0/+2
| | | | | | | | | | tempfn_xxxxxx() now uses path_kill_slashes(). Add path-util.c from systemd source to provide it.
* | dhcp: add systemd's 'log.h' to provide logging macrosThomas Haller2015-03-031-0/+1
| | | | | | | | | | | | The 'log.h' header from systemd implements most logging commands based on a few fundamental logging commands. Reuse 'log.h' for most parts and let the adapter only redefine the necessary commands.
* | build: order ADSL plugin build after core filesDan Williams2015-02-271-9/+7
| | | | | | | | Build it right before the other plugins.
* | core: split route management code out from platformLubomir Rintel2015-02-271-0/+5
| | | | | | | | | | | | | | | | | | | | Create a NMRouteManager singleton. Refactor, no functional changes apart from change of log domain from LOGD_PLATFORM to LOGD_CORE. Subsequent commit will keep track of the conflicting routes, avoid overwriting older ones with newer ones and apply the new ones when the old ones go away.
* | config: add new NMConfigData classThomas Haller2015-02-031-0/+2
| | | | | | | | | | | | | | | | | | | | The NMConfig class should be immutable and its properties should not change, with one exception: the NMConfigData property. Later, when changing/reloading a configuration, NMConfig will only swap the NMConfigData instance. The NMConfigData instance itself is also immutable.
* | build: add compile option to disable building of Wi-Fi pluginThomas Haller2015-01-301-1/+4
| | | | | | | | | | | | | | | | | | Before, the Wi-Fi plugin was always build. Users who didn't want to use it would simply drop "libnm-device-plugin-wifi.so". Add a compile time option to disable needlessly building the plugin. https://bugzilla.gnome.org/show_bug.cgi?id=743388
* | core: use GUnixSignalWatchSource to simplify signal handlingDan Winship2015-01-191-4/+0
| | | | | | | | | | | | | | | | | | Replace the pthread_sigwait()-based signal handling with g_unix_signal_add()-based handling, and get rid of all the now-unnecessary calls to nm_unblock_posix_signals() when spawning subprocesses. As a bonus, this also fixes the "^C in gdb kills NM too" bug.
* | session: merge nm-session-monitor-* modulesPavel Šimerda2015-01-051-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Merged all session tracking modules into one source file and simplified it substantially. Now systemd-logind and ConsoleKit support can be built in at the same time and both are detected at runtime. This is useful on source based as well as binary distributions. Original patch written by Fabio Erculiani <lxnay@sabayon.org>, modified by Pavel Šimerda <psimerda@redhat.com> and Thomas Haller <thaller@redhat.com>. https://bugzilla.gnome.org/show_bug.cgi?id=686997 Acked-By: Thomas Haller <thaller@redhat.com>
* | session: merge nm-session-utils into nm-session-managerPavel Šimerda2015-01-051-2/+1
| | | | | | | | Acked-By: Thomas Haller <thaller@redhat.com>
* | dhcp: re-fix system-dhcp code after re-importDan Winship2014-11-191-0/+1
| |
* | core: move content of src/firewall-manager directory to src/Thomas Haller2014-11-191-3/+2
| | | | | | | | | | | | | | The directory firewall-manager/ only contained one source and one header file. Move them to the parent src/ directory. Signed-off-by: Thomas Haller <thaller@redhat.com>
* | iface-helper: add nm-iface-helper for dynamic configure-then-quit supportDan Williams2014-11-071-1/+84
| | | | | | | | | | | | | | | | | | | | | | | | When quitting, the Manager asks each device to spawn the interface helper, which persists and manages dynamic address on the interface after NetworkManager is gone. If the dynamic address cannot be maintaned, the helper quits and the interface's address may be removed when their lifetime runs out. To keep the helper as simple as possible, NetworkManager passes most of the configuration on the command-line, including some properties of the device's current state, which are necessary for the helper to maintain DHCP leases or IPv6 SLAAC addresses.
* | dhcp: move client-specific knowledge out of the managerDan Williams2014-11-071-8/+14
| |