Commit Graph

7740 Commits

Author SHA1 Message Date
Dan Winship
5afcee4693 libnm-glib: simplify property getter methods
Rather than having every property getter method have code to fetch
that specific property's value, just call the new
_nm_object_ensure_inited() (which makes sure that we've read all the
property values on the object at least once), and then return the
cached value. (After we've read the initial property values, the
PropertiesChanged signal handler will ensure that the values are kept
up to date, so we can always just return cached property values after
that point.)

This then lets us get rid of _nm_object_get_property() and its
wrappers.
2012-02-03 10:33:43 -06:00
Dan Winship
2e48cc092c libnm-glib: simplify and genericize property declaration
Rename _nm_object_handle_properties_changed(), etc, to be about
properties in general, rather than just property changes.

Interpret func==NULL in NMPropertiesInfo as meaning "use
_nm_object_demarshal_generic", and then reorder the fields so that you
can just leave that field out in the declarations when it's NULL.

Add a way to register properties that exist in D-Bus but aren't
tracked by the NMObjects, and use that for NMDevice's D-Bus Ip4Address
property, replacing the existing hack.

Also add a few other missing properties noticed along the way.
2012-02-03 10:33:43 -06:00
Jiří Klimeš
38382770aa examples: add C examples for monitoring whether NM runs
- the first uses dbus-glib and D-Bus "NameOwnerChanged" signal directly
- the second uses GIO's g_bus_watch_name()
- the third uses Qt and QDBusServiceWatcher class
2012-02-03 11:55:46 +01:00
Dan Winship
8ad3ff24ad libnm-glib: don't use client-side generated dbus-glib bindings
Most of the code was using dbus_g_proxy_call() directly, but there
were some leftover uses of the generated bindings. Make things more
consistent by using dbus_g_proxy_call() everywhere, and stop building
the -bindings.h files.
2012-02-02 12:30:44 -06:00
Dan Winship
ba4731dafd libnm-glib: remove nm-dbus-utils.[ch]
The code hasn't been used in a very long time.
2012-02-02 12:30:38 -06:00
Dan Winship
efadfd8b17 libnm-glib: pre-emptively avoid some -Wshadow errors
including <gio/gio.h> will drag in some additional system headers that
result in new -Wshadow warnings. Fix those.
2012-02-02 12:30:35 -06:00
Dan Winship
f32032694f libnm-glib: implement NMActiveConnection uuid property
This property existed as a #define and a get method, but the actual
GObject property itself was accidentally never implemented.
2012-02-02 12:30:32 -06:00
Dan Winship
e74d729f17 libnm-glib: fix _nm_string_array_demarshal
dbus-glib returns 'as' results as G_TYPE_STRV (NULL-terminated
char**), not DBUS_TYPE_G_ARRAY_OF_STRING (GPtrArray of char*).
2012-02-02 12:28:56 -06:00
Dan Winship
c79b8085ee ifcfg-rh: belatedly add writer support for infiniband (and tests) 2012-02-02 12:24:03 -06:00
Dan Winship
ec35d47253 introspection: add missing error description for INFINIBAND_MODE 2012-02-02 12:02:11 -06:00
Evan Broder
8b107e9ee8 dns: make caching DNS server config files readable by everyone
All of the information in the configuration files for local caching
dnsmasq or BIND servers are accessible already over the D-Bus
interface, so there's no sensitive information here.
2012-02-02 12:02:11 -06:00
Thomas Bechtold
775ec828b9 core: add device property "StateReason"
Allows clients to retrieve the reason a device changed to
the given state along with the state itself, preventing
race conditions if the state were retrieved separately
from the reason.  Reason codes were not previously
accessible without listening to the StateChanged signal.
2012-02-02 12:02:11 -06:00
Thomas Bechtold
3dc965a2cb libnm-util: allow empty number for gsm settings
The documentation said they were allowed, and that's clearly the
correct behavior.
2012-02-02 12:02:10 -06:00
Dan Williams
f900522308 build: easier selection of session tracking
Using --with-session-tracking=xxx you can select the backend
you want from among CK, systemd, or none.
2012-02-01 16:50:44 -06:00
Dan Williams
20035ad443 core: add NULL session monitor
Allows all access; used when neither ConsoleKit or systemd are
selected.
2012-02-01 16:50:44 -06:00
Dan Williams
e133405a29 core: combine common session management utility code
And reformat the systemd session manager for NM code style.
2012-02-01 16:50:44 -06:00
Matthias Clasen
3b75a97ab0 core: optionally use systemd for session tracking instead of ConsoleKit
When configured with --enable-systemd, this patch makes
NetworkManager use systemd for session tracking instead
of ConsoleKit.
2012-02-01 15:09:46 -06:00
Dan Williams
c09a59da4b docs: update some VPN docs in libnm-util 2012-02-01 15:09:10 -06:00
Jiří Klimeš
8e22a535cc cli: add 'transport-mode' property of infiniband setting 2012-02-01 11:47:19 +01:00
Jiří Klimeš
3a6c69d576 cli: add 'pac-file' property of 802-1x setting 2012-02-01 10:50:56 +01:00
Jiří Klimeš
b127fda19f supplicant: fix crash when connecting without both 'password' and 'password-raw'
It is the case e.g. for EAP-TLS. This regression was caused by commit
b08e2b8932.
2012-01-30 18:29:13 +01:00
Jiří Klimeš
2c52303f59 supplicant: fix checking config for EAP-FAST authentication
We do not want to break other methods, when EAP-FAST specific error condition
is detected: no PAC file provided and automatic PAC provisioning is disabled.
2012-01-30 18:07:35 +01:00
Jiří Klimeš
ba977b6a91 supplicant: use connection UUID instead of D-Bus path for config purposes 2012-01-27 13:04:10 +01:00
Jiří Klimeš
847edde23a ifcfg-rh: add read/write support for EAP-FAST 2012-01-27 12:54:20 +01:00
Jiří Klimeš
5cb75feee0 supplicant: handle parameters for EAP-FAST authentication 2012-01-27 12:54:12 +01:00
Jiří Klimeš
0ba66f8272 libnm-util: add 'pac-file' property for 8021x setting (used in EAP-FAST) 2012-01-27 11:46:36 +01:00
Dan Williams
e281d09805 docs: update NMSecretAgent example code 2012-01-26 12:23:05 -06:00
Dan Williams
724df841a2 docs: update docs for NMSecretAgent callbacks 2012-01-26 12:21:27 -06:00
Jiří Klimeš
0558159c6b docs: fix 'connection' parameter name for nm_access_point_connection_valid() 2012-01-26 18:16:14 +01:00
Dan Winship
b860c7be4a infiniband: add transport-mode property
Add transport-mode property to NMSettingInfiniband (and parse it
correctly in ifcfg-rh), and set it up properly on the device in
NMDeviceInfiniband.
2012-01-26 09:58:48 -06:00
Thomas Bechtold
fe5392ccd9 core: add missing device state reasons
Some NMDeviceStateReason 's are not available in
introspection/nm-device.xml

Tom
2012-01-25 11:26:57 -06:00
Thomas Graf
471fef2ad5 cli: print NMActiveConnection master property as MASTER-PATH
This is a proposal to include the NMActiveConnection master property in
nmcli con status.

Feel free to suggest a more user friendly method of printing this
information.

Signed-off-by: Thomas Graf <tgraf@redhat.com>
2012-01-25 11:24:50 -06:00
Thomas Graf
1ba50e2f1b bonding: export path of master device property over DBUS
Adds a new "master" property to NMActiveConnection containing the path
of the master NMDevice if the connection has a master.

Signed-off-by: Thomas Graf <tgraf@redhat.com>
2012-01-25 11:12:43 -06:00
Dan Williams
93f289bc13 ifcfg-rh: use correct location of wireless.h
We used to require wireless-tools.  We no longer do, so use the
kernel includes header here that we checked for at configure time.
2012-01-23 12:08:32 -06:00
Jiří Klimeš
f4da4f5523 trivial: fix spelling 2012-01-17 16:26:30 +01:00
Jiří Klimeš
87a2030a43 core: fix translations - use NULL instead of "" (else odd translation appears) 2012-01-17 16:18:43 +01:00
Gabor Kelemen
3b00919b7a core: mark strings for translation (bgo #666652) 2012-01-17 15:53:16 +01:00
Gabor Kelemen
d3c1383b4e core: fix domain for g_option_context_set_translation_domain() (bgo #666652) 2012-01-17 15:51:28 +01:00
Gabor Kelemen
48852e112e core: setlocale(), so that locale's env variables are honored (bgo #666516) 2012-01-17 15:17:06 +01:00
Jiří Klimeš
617af3b49d trivial: use proper return type in g_return_val_if_fail() 2012-01-17 14:45:27 +01:00
Jiří Klimeš
9b84ef9acd core: add nm-logging.h when compiling with DEBUG 2012-01-17 14:43:03 +01:00
Jiří Klimeš
9f75f91f3a wired: emit Speed value in PropertiesChanged signal, when changed (bgo #667091)
Speed is gotten via ethtool on 'carrier on' event. If there is a more suitable
netlink event we should use it instead. Nonetheless, it appears to be working
fine with carrier change, because interface speed change does emit carrier offi
and on events.
2012-01-17 14:30:45 +01:00
Muhammet Kara
f12c326ff2 po: add Turkish translation (bgo #667213) 2012-01-17 11:00:30 +01:00
Dan Williams
a24b9b5299 core: ignore errors when replacing a default route that already exists
If  the route already exists and the kernel tells us that, we
don't need to do anything.  We certainly don't need to warn
about it in the logs.

There was a typo in the IPv6 default route replace function that
ignored a returned error, and thus we didn't suppress the NLE_EXIST
error like we wanted to.  Do the same for the IPv4 default route
while we're at it.
2012-01-16 10:27:21 -06:00
Dan Williams
c4758ef30e core: let callers do error logging for nm_netlink_route_add()
Callers of this function have a better idea of they want to
log errors or not.  Let them handle it, since they already
do, and having a warning here was causing duplicate log
messages.
2012-01-16 10:26:01 -06:00
Jiří Klimeš
aed37465be ppp: change handling of lcp-echo-failure and lcp-echo-interval (bgo #663970)
Don't set default values for the properties, which didn't allow users to
switch off sending echo-request packets. Rather set defaults in editor
or while completing connection for modems.
2012-01-16 09:52:48 +01:00
Dan Williams
1713d3791b core: use default config file path if none was found or given on the command-line 2012-01-13 16:51:04 -06:00
Dan Williams
644e245c0b keyfile: crash less if conf_file is NULL
If for some reason we have no config file, don't segfault.
2012-01-13 16:42:58 -06:00
Alberto Ruiz
511bc09663 docs: added notes to the nm_device_filter_connections docs
Added some notes about how to get the connection list
2012-01-13 09:40:53 -06:00
Alberto Ruiz
4f72ed2296 docs: fix section header name for nm_access_point_connection_valid()
nm_access_point_connection_valid documentation had nm_access_point_filter_connection
as the section string, probably a typo after copy pasting
2012-01-13 09:40:26 -06:00