| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
The PPP device only handles automatic configuration, everything else
should be handled by NMDevice.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The pppd plugin first sends a phase change signal to RUNNING and then
sends IPv4 and IPv6 configurations. NM knows the actual interface name
(and thus populates the ifindex) only after an IP configuration is
received from the plugin.
If we start configuring IPv4 and IPv6 as soon as the PPP status is
RUNNING, it is possible to hit an assertion because
activate_stage3_ip_config_start() tries to capture the current IPv6
configuration when the device ifindex is not known yet.
Instead, let's start configuring IP only after the ifindex is known.
https://bugzilla.redhat.com/show_bug.cgi?id=1515829
|
|
|
|
| |
Remove the 'pending' prefix.
|
|
|
|
|
|
|
| |
All the calls to impl_ppp_manager_set_ipX_config() refer to the same
interface and so we can cache the ifindex, as we already do for the
interface name. This also allows us to rename the interface in a
signal handler without side effects on the next calls.
|
|
|
|
|
|
|
|
| |
If the file was read-only, we already closed it.
This fixes the following valgrind warnings:
Warning: invalid file descriptor -1 in syscall close()
|
|
|
|
|
|
|
|
| |
If the tracked device is a control device only (has no network interface)
like in the case of a cdc-wdm device, get the mtu from the ip interface
(the exposed wwan network interface in this case).
https://bugzilla.redhat.com/show_bug.cgi?id=1460217
|
|\
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=790726
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
/proc/sys might be read-only but we want to set it for
enabling shared mode.
Check first if the sysctl already has the expected value,
and if so, do nothing.
https://bugzilla.gnome.org/show_bug.cgi?id=790726
|
| |
| |
| |
| |
| |
| |
| | |
Also downgrade a few intermediate error logging messages
for failures that happen while start_sharing(). A debug
message is enough in this case, because we propagate now
the error to the caller, which logs a warning anyway.
|
|/
|
|
|
|
| |
It's not clear whether free() changes errno. Be sure about it.
https://bugzilla.gnome.org/show_bug.cgi?id=790726
|
|\ |
|
| |
| |
| |
| |
| | |
Gives O(1) insert and remove. Also saves the overhead of the GSlice
allocation for the GSList node.
|
| | |
|
| |
| |
| |
| | |
Using an internal alias for the type is just confusing. Drop it.
|
| |
| |
| |
| | |
Using an internal alias for the type is just confusing. Drop it.
|
| |
| |
| |
| |
| |
| |
| | |
struct
Typedefs to structs are fine, but a typedef for a pointer seems confusing to
me. Let's avoid it.
|
|/
|
|
|
| |
Typedefs to structs are fine, but a typedef for a pointer seems confusing to
me. Let's avoid it.
|
|
|
|
|
|
|
|
|
|
|
| |
nm_utils_parse_variant_attributes()
We should use the same str2bool parser everywhere: _nm_utils_ascii_str_to_bool().
Incidentally, this function allows more forms of expressing a boolean
value.
$ nmcli connection modify "$CON" ipv4.routes '1.2.3.4/32 1.2.3.1 onlink=1'
Error: failed to modify ipv4.routes: invalid option 'onlink=1': invalid boolean value '1' for attribute 'onlink'.
|
|\
| |
| |
| | |
https://bugzilla.redhat.com/show_bug.cgi?id=1516659
|
| | |
|
| |
| |
| |
| |
| |
| | |
We cannot just call g_object_set() with an integer that is out of bound.
Otherwise, glib will warn. We can use nm_g_object_set_property*() to return
an error without asserting.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Also, don't g_strstrip(value) for BRIDGE_MACADDR.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently both bridge.mac-address and ethernet.cloned-mac-address get
written to the same MACADDR ifcfg-rh variable; the ethernet property
wins if both are present.
When one property is set and the connection is saved (and thus reread)
both properties are populated with the same value. This is wrong
because, even if the properties have the same meaning, the setting
plugin should not read something different from what was written. Also
consider that after the following steps:
$ nmcli con mod c ethernet.cloned-mac-address 00:11:22:33:44:55
$ nmcli con mod c ethernet.cloned-mac-address ""
the connection will still have the new mac address set in the
bridge.mac-address property, which is certainly unexpected.
In general, mapping multiple properties to the same variable is
harmful and must be avoided. Therefore, let's use a different variable
for bridge.mac-address. This changes behavior, but not so much:
- connections that have MACADDR set will behave as before; the only
difference will be that the MAC will be present in the wired
setting instead of the bridge one;
- initscripts compatibility is not relevant because MACADDR for
bridges was a NM extension;
- if someone creates a new connection and sets bridge.mac-address NM
will set the BRIDGE_MACADDR property instead of MACADDR. But this
shouldn't be a big concern as bridge.mac-address is documented as
deprecated and should not be used for new connections.
https://bugzilla.redhat.com/show_bug.cgi?id=1516659
|
| |
| |
| |
| |
| | |
A bridge connection can have ethernet settings, read them from the
ifcfg file.
|
|/
|
|
| |
The description already says that. Also add the deprecation tag.
|
|\
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=790655
|
| |
| |
| |
| | |
nm_setting_vpn_get_secret_keys()
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, g_hash_table_get_keys() would already allocate a
GList list, which then gets copied to another GSList.
Don't do that. Just allocate one array to keep all the
elements.
Also, as we now use nm_setting_vpn_get_secret_keys() and
nm_setting_vpn_get_data_keys(), note that the keys are sorted
and hence the order is stable.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
nm_setting_vpn_get_secret_keys() API
It's rather limiting that the only API to access *all* keys
is nm_setting_vpn_foreach_data_item() and nm_setting_vpn_foreach_secret().
API like nm_setting_vpn_get_num_secrets() is not useful, at least as
long as you cannot access the item by index.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
There is no principle problem with returning zero has hash
value. But just don't do it. Our hash functions should not
return zero. Instead, return nm_hash_static(). This is why
the function exists.
|
| | |
|
| | |
|
|/
|
|
| |
They are identical, and both public API. Merge.
|
|
|
|
|
|
|
| |
GNU less supports filters. That makes it nice to use instead of cat.
Also, less is well suited for output to a pipe.
With this, `NM-log nm-log.txt.gz` works as you would expect
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Now that nm_setting_bond_get_option() has a stable order
(alphabetically), we no longer need to sort it.
|
| |
| |
| |
| |
| |
| | |
Since the order was arbitrary before, we can also sort it.
Also rework it, to avoid the creating a temporary GList of keys.
|
| | |
|