| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- "gsystem-local-alloc.h" and <gio/gio.h> are already included via
"nm-default.h". No need to include them separately.
- include "nm-macros-internal.h" via "nm-default.h" and drop all
explict includes.
- in the modified files, ensure that we always include "config.h"
and "nm-default.h" first. As second, include the header file
for the current source file (if applicable). Then follow external
includes and finally internal nm includes.
- include nm headers inside source code files with quotes
- internal header files don't need to include default headers.
They can savely assume that "nm-default.h" is already included
and with it glib, nm-glib.h, nm-macros-internal.h, etc.
|
|
|
|
| |
Perfectly fine for ethernet-bridged networks (openvpn with tap devices).
|
|
|
|
|
|
|
|
|
|
| |
"nm-vpn-service-plugin.h" includes "nm-connection.h", so there is already no
way to use "nm-vpn-service-plugin.h" without also pulling in all "NetworkManager.h".
On the other hand, we might not include "nm-vpn-service-plugin.h" in
"NetworkManager.h" to keep the overall headers small (by default).
But let's just include it too. We already opted for convenience
over small-include by having one top-level header file.
|
| |
|
|
|
|
|
|
|
|
|
| |
The dbus-run-session utility was designed to run a process within a
D-Bus session, specifically for running regressions tests and is much
better suited then dbus-launch. As an additional benefit, this avoids
any X dependencies.
https://mail.gnome.org/archives/networkmanager-list/2016-January/msg00023.html
|
| |
|
|
|
|
|
|
|
| |
None of the libnm NMManager functions are exported, as they are only
used internally.
Fixes: 4db851f852b73a85b9b4a5d617e66461836be210
|
| |
|
|
|
|
|
|
| |
Deprecated of course, but shouldn't have been removed from the ABI.
Fixes: 867227dd4aac8371b3cacc366b32a3fa96eba42a
|
|
|
|
|
|
|
|
|
| |
The property is used to control duplicate address detection:
* -1 means default value
* 0 means no DAD is performed
* > 0 means timeout (in milliseconds) for arping responses
[bgalvani: moved setting from NMSettingIP4Config]
|
|
|
|
| |
Fixes: 278fd4fb0fde3f290e366dab91fb6a49f9ff186c
|
| |
|
|
|
|
| |
Client support for O.FD.NM.Device.Reapply().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replacement was done with commands:
spatch --sp-file nm_clear_g_source.cocci --in-place --smpl-spacing --dir src
spatch --sp-file nm_clear_g_source.cocci --in-place --smpl-spacing --dir libnm
where nm_clear_g_source.cocci contains:
@@
expression e;
@@
- if (e) {
- g_source_remove (e);
- e = 0;
- }
+ nm_clear_g_source (&e);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add test showing how libnm/libnm-glib handles invalid connections,
i.e. connections that fail nm_connection_verify(). libnm implements
settings a static types (via different NMSetting types). This makes
it unavoidable that eventually a newer server version will
expose connections that fail verification in the client.
For example, master added a new base type NMSettingTun. This setting type
was not backported to legacy libnm-glib, thus such connection will not verify.
Also, we want that newer server versions are backward compatible with older
library versions. Thus also a pre-NMSettingTun libnm version has the same
problem.
The test shows that libnm is agnostic to whether the connection verifies.
That is consistent behavior, but possibly problematic because most
accessors to connections assert against a valid connection. Thus using
the common nm_connection*() functions on an invalid connection can lead
to problems.
Also, due to the static nature of our NMSetting types, some properties
can be silently dropped and thus mangling the connection without the
library user noticing.
libnm-glib prints a g_warning() whenever parsing an invalid connection.
When an invalid connection is added initially, it is exposed to the library
user. When a connection gets later invalidated due to an update, the
connection disappears and it stays missing even if a subsequent update
makes the connection valid again.
libnm-glib's behavior indicates that we might wanted to hide invalid
connections from the user. But it's very broken there.
|
|
|
|
|
|
|
|
|
|
| |
Up to now, the "include" directory contained (only) header files that were
used project-wide by libs, core, clients, et al.
Since the directory now also contains a non-header file, the "include"
name is misleading. Instead of adding yet another directory that is
project-wide, with non-header-only content, rename the "include"
directory to "shared".
|
|
|
|
|
|
| |
Like the test utility functions in nm-test-utils.h and
platform's common.h, rename the helper functions to have
a nmtst(c) prefix.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The unit tests for libnm and libnm-glib use a NetworkManager stub
service written in Python (test-networkmanager-service.py). As they
share the same server, it makes sense to also share the same utility
code to drive the stub.
Move the common code to include/.
Note that contrary to "nm-test-utils.h", "nm-test-libnm-utils.h" is not
a header-only file. Instead its implementation is in "nm-test-utils-impl.c".
The reason for that this split is, if we later have yet another non-header-only
test-utility, then all the implementations are in "nm-test-utils-impl.c", requiring
the tests to link only one object file.
|
|
|
|
|
|
| |
Unify the common test code to drive the D-Bus stub service
test-networkmanager-service.py. They will be merged in the next
commit.
|
|
|
|
|
| |
Add a new ip-tunnel.mtu property which can be used to change the MTU
of the tunnel interface.
|
| |
|
|
|
|
|
| |
Add a new NMSettingVxlan which describes properties of VXLAN
connections.
|
| |
|
|
|
|
|
| |
The setting contains properties that are specific to macvlans and
macvtaps.
|
|
|
|
| |
Fixes: e2da055f900e147a871fac37f2b755ab83d0265e
|
|
|
|
| |
Fixes: e2da055f900e147a871fac37f2b755ab83d0265e
|
|
|
|
|
|
|
| |
from udev
I have no idea what was the purpose, however this causes an infinite loop if
udev has not product & vendor and the notify handler gets the property.
|
|
|
|
| |
changed
|
|
|
|
|
| |
Mirror new NetworkManager API to return both real devices and
device placeholders.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Add a generic NMSettingTunnel which describes properties of tunnels
over IPv4 and IPv6 (GRE, SIT, IPIP, IPIP6, IP6GRE, etc.). Since those
tunnel types all have similar properties it makes sense to have a
single setting type for them.
|
|
|
|
|
|
| |
Add function nm_utils_enum_get_values() which returns a string array
containing the enum values. It can be used, for example, to build a
list of allowed values for user.
|
|
|
|
|
|
|
|
|
|
|
| |
D-Bus has an upper limit on number of Match rules and it's rather easy
to hit as the proxy likes to add one for each object. Let's remove the Match
rule the proxy added and ensure a less granular rule is present instead.
Ideally, we should be able to tell glib not to hook its rules.
Related: https://bugzilla.gnome.org/show_bug.cgi?id=758749
https://bugzilla.gnome.org/show_bug.cgi?id=758751
|
| |
|
|
|
|
|
| |
Add a new NMSettingTun which contains configuration properties for TUN/TAP
interfaces.
|
|
|
|
|
|
| |
The property contains the fully qualified domain name to be sent to
DHCP server using the FQDN option. The property is mutually exclusive
with 'dhcp-hostname'.
|
|
|
|
|
|
|
| |
for verifying the secrets, because it is not done in plain nm_setting_verify().
For simple verification of free-form string secrets,
_nm_setting_verify_secret_string() helper is used.
|
|
|
|
|
|
| |
These properties limit whether the connection applies to a certain WWAN modem
based on the modem's device ID or SIM ID (as reported by the WWAN management
service), or through the MCC/MNC ID of the operator that issued the SIM card.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gi now emits a warning when not loading a specific library
version [1]:
./generate-setting-docs.py:21: PyGIWarning: NM was imported without specifying a version first. Use gi.require_version(NM, 1.0) before import to ensure that the right version gets loaded.
from gi.repository import NM, GObject
Seems require_version() is reasonably old to just always use it without
breaking on older versions [2].
[1] Related: https://bugzilla.gnome.org/show_bug.cgi?id=727379
[2] https://git.gnome.org/browse/pygobject/commit/?id=76758efb6579752237a0dc4d56cf9518de6c6e55
|
| |
|
|
|
|
|
|
| |
It is not used externally and its use might be confusing and undesired when we
add plugin aliases. The external users should only use the name when idenfiying
the plugin and nm_vpn_plugin_info_list_find_by_service() when matchin the plugin.
|
| |
|
|
|
|
|
|
|
| |
If the plugin didn't succeed connecting once, don't let the old timer fire
during a subsequent connection.
https://bugzilla.redhat.com/show_bug.cgi?id=1271973
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLib introspection requires all types returned by public functions to
be GObjects, basic types or boxed types in order to correctly manage
resources. NMLldpNeighbor was a plain struct and GI complained with:
Warning: NM: nm_lldp_neighbor_new: return value: Invalid non-constant return of bare structure or union; register as boxed type or (skip)
To fix this define NMLldpNeighbor as a boxed type.
Fixes: d3d2b494008322a4f1452cf873393ca85166022b
|
| |
|
|
|
|
|
|
| |
It's part of the DBus API; the skeleton has it and we can't remove it.
This partially reverts commit fd61b217064c1b62b505d6a71211bf4340e4b3ac.
|