Re: problems with updating ipv4 settings over dbus



On Tue, 2016-12-20 at 08:29 +0200, matti kaasinen wrote:

2016-12-19 22:40 GMT+02:00 Thomas Haller <thaller redhat com>:
"address-data" was introduced by
https://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?
id=d16905df633ceea08c93b6e982f660627d06ff34
and is in 1.0.0 release (or newer).

I certainly would expect that what you did works. I don't know why
it
wouldn't.



So, what does this 
"DBusException:
org.freedesktop.NetworkManager.Settings.Connection.MissingProperty:
ipv4.addresses: this property cannot be empty for 'method=manual'"
 mean? 

It means with method=manual, you need at least one address.
On D-Bus, an address can be either specified via "addresses" or
"address-data" property.
If both fields are present, then server-side will prefer "addresses"
and ignores "address-data".


Does it mean that "you must have it always" or does it mean that "you
don't need it, but it can't be empty if you have it". Because, now I
am not now quite sure did I deleted it from settings.

It's not about which fields are present in the D-Bus.
It's about how many addresses end up to be configured.


One of the problem might come from the fact that my original code
used python-networkmanager methods for getting properties. Python-NM
does not support "address-data". Those lines that I executed manually
accessed dbus directly and that gave that error message printed
above.
Code that used python-NM for getting properties gave strange
signature error that was impossible to say where it come from, but
when I deleted "address-data" property it vanished.

I didn't realize this before, but as said, including both "addresses"
and "address-data" is probably wrong, because server will ignore the
new field (to preserve backward compatibility). If you target the new
API, set only "address-data".


Thomas

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]