Commit graph

331 commits

Author SHA1 Message Date
Dan Williams
e68e27aa75 libnm-util: add 'flags' argument to nm_connection_to_hash() and nm_setting_to_hash()
Simplifies code internally, and makes it easier for clients as well in
some cases where they want to control what ends up in the resulting
hash and what does not.
2011-01-26 14:14:37 -06:00
Dan Williams
b3959aefa3 core: rename NMSysconfigConnection -> NMSettingsConnection 2011-01-26 11:38:12 -06:00
Dan Williams
b92e3cca6e build: fix distcheck with gobject introspection enabled 2011-01-26 11:26:08 -06:00
Dan Williams
d1979ba63e secrets: simplify GetSecrets call flow
The Settings.Connection interface is now only provided by NetworkManager
itself since there is only one settings service.  NM can validate
requests for secrets internally and thus there's no need to lock down
GetSecrets using a separate D-Bus interface, since PolicyKit provides
that functionality on systems where this is desirable (ie multi-user).
Single-user systems that do not have PolicyKit will inherently trust
the user already, or if not D-Bus auth is flexible enough to lock
down the GetSecrets method individually even if it's not on a separate
D-Bus interface.

Second, since only clients like connection editors or applets will be
calling the GetSecrets method, there's no need for 'hints' or
'request_new' arguments here since this  method should never trigger
an interactive secrets request.  Only NM should send those requests
when it knows it needs to ask the user, either during connection or
after validating the incoming GetSecrets request.  A connection editor
type application should never be able to trigger the normal
"What's your passphrase" dialog thats provided by the secret agent
for that user's session.
2011-01-26 10:17:07 -06:00
Giovanni Campagna
3ebecd2a29 introspection: add GObject introspection support (bgo #637032)
Add the necessary annotations (the mininum required, that is those
on return values. NULL parameters or container types may require
more), and the Autotools stuff to get a NetworkManager GIR for
libnm-util and a NMClient for libnm-glib.
2011-01-21 14:46:09 -06:00
Giovanni Campagna
c6bfe8edb6 libnm-glib: update symbol visibility list 2011-01-21 14:15:38 -06:00
Dan Williams
7ddf9c5e72 libnm-glib: implement NMSecretAgent autoregistration
Handles registering with NM and re-registering if NM restarts.
2011-01-19 16:59:01 -06:00
Dan Williams
9cf13cc3e1 agent: request_new -> flags
Use some flags to modify GetSecrets behavior instead of just the
request_new boolean.
2011-01-18 14:17:18 -06:00
Dan Williams
cc88e4e51c trivial: fix a few small issues in the NMSecretAgent class 2011-01-18 13:21:02 -06:00
Dan Williams
30c7308e9d libnm-glib: implement agent secrets request cancelation 2011-01-18 13:20:34 -06:00
Dan Williams
7fa1a62cd3 libnm-glib: don't crash when adding new connections that aren't waited upon
If we're not waiting for this connection to show up after an
AddConnection operation, we don't need to touch anything
addinfo-related.
2011-01-17 23:19:25 -06:00
Dan Williams
bb35e0a9e2 libnm-glib: make a few forgotten functions visible
Oops.
2011-01-13 17:29:54 -06:00
Dan Williams
61cc2494ad libnm-glib: add helper functions and callbacks to Secret Agent API
First, remove anything dbus-glib related from the public API and use
callbacks to handle returning secrets requested by D-Bus.  Second,
add helper functions so local code can use the same API to request
secrets.
2011-01-13 14:18:29 -06:00
Dan Williams
24915553fd libnm-glib: keep symbol visibility list alphabetized 2011-01-13 14:18:03 -06:00
Dan Williams
7779a3f151 libnm-glib: add NM_SECRET_AGENT_ERROR_NO_SECRETS 2011-01-13 13:43:26 -06:00
Dan Williams
a3d4688431 libnm-glib: add NM_SECRET_AGENT_ERROR_INTERNAL_ERROR 2011-01-13 13:42:01 -06:00
Dan Williams
b5f3aa7120 libnm-glib: pass NMClient as first callback argument to activation callbacks
Better matches glib style.
2011-01-13 13:03:02 -06:00
Dan Williams
f9ceafd4a1 Merge remote branch 'origin/master' into rm-userset 2011-01-12 15:46:37 -06:00
Dan Williams
7de13fa58d libnm-glib: fix library builds
Duh, don't specify noinst_LTLIBRARIES twice...
2011-01-12 13:24:22 -06:00
Dan Williams
063859ba66 libnm-glib: add nm_client_add_and_activate_connection() 2011-01-12 00:39:34 -06:00
Dan Williams
9d24269e30 wimax: add Center Frequency, RSSI, CINR, TX Power, and BSID properties
Useful diagnostic/support info when device is connected.
2011-01-06 15:18:19 -06:00
Dan Williams
8c2932fc2b wimax: fix NSP property type confusion
Just make them all uints.
2011-01-04 16:45:00 -06:00
Dan Williams
a361ccd31d libnm-glib: add hissing hw-address property for WiMAX devices 2011-01-04 16:37:33 -06:00
Dan Williams
9e80c1e85d wimax: make WiMAX mostly work
Heavily modify Inaky's Intel WiMAX SDK glue (originally from connman)
to be more generic and more thread-safe, and suitable for use with
NetworkManager instead of rolling our own client code.  Rewrite the
NMDeviceWimax code to mostly work.

Still to be done: actual connection logic, DHCP handling, spawning
wimaxd if it's not started yet
2011-01-03 23:55:38 -06:00
Dan Williams
7ce5053a9e libnm-glib: fix WiMAX NSP property retrieval 2011-01-03 23:45:41 -06:00
Dan Williams
c28850ed52 wimax: fix up WiMAX radio enable/disable and add polkit permission 2011-01-02 17:34:23 -06:00
Dan Williams
0587ef1179 Merge remote branch 'origin/master' into wimax 2011-01-02 17:24:23 -06:00
Dan Williams
ad80a58c15 libnm-glib: add testcases and testing infrastructure
Tests for addition and removal of connections.
2010-12-28 17:11:27 -06:00
Dan Williams
dd6d72d6a1 libnm-glib: handle errors on AddConnection reply 2010-12-28 16:40:07 -06:00
Dan Williams
ad9270da79 libnm-glib: ensure connection is initialized before AddConnection callback 2010-12-27 15:03:44 -06:00
Dan Williams
8bb9394e92 trivial: whitespace fixes 2010-12-24 07:02:35 -06:00
Dan Williams
eb27406fdc libnm-glib: handle visibility changes for updated connections 2010-12-23 09:59:57 -06:00
Dan Williams
77f3d6c81c libnm-glib: add signal prototype to class definition 2010-12-23 09:09:13 -06:00
Dan Williams
7e5ab41d13 build: remove random leftover bits of GConf stuff 2010-12-15 18:03:49 -06:00
Dan Williams
9c7afa193c libnm-glib: fix export of NMDHCP6Config symbols
Found by Giovanni Campagna <gcampagna@src.gnome.org>
2010-12-15 17:53:13 -06:00
Dan Williams
81bc9c8572 libnm-glib: allow the '.' character in agent identifiers 2010-12-14 11:19:19 -06:00
Dan Williams
84abb13554 libnm-glib: fix infinite loop checking agent identifier 2010-12-14 11:12:24 -06:00
Dan Williams
1496f8056f libnm-glib: add secret agent base class 2010-12-14 00:03:22 -06:00
Dan Williams
af406bdc96 libnm-glib: actually define the "ip-interface" property
Looks like it got left out of 6ab5a9597a
2010-12-07 14:12:55 -06:00
Dan Williams
37845af954 settings: return new connection object path from AddConnection
Finally.
2010-10-29 14:34:33 -05:00
Dan Williams
8f7aedc7e0 Merge remote branch 'origin/master' into rm-userset 2010-10-18 19:02:27 -05:00
Jiří Klimeš
9f2b48ef08 libnm-glib: call D-Bus with a timeout when Set()ting properties
The caller needs to be authenticated, so wait a bit to be sure
it didn't quit too quickly.
2010-10-15 09:41:34 +02:00
Dan Williams
8b41f70dd5 Merge remote branch 'origin/master' into rm-userset 2010-09-27 10:30:46 -05:00
Dan Williams
b80f31e191 trivial: typo fixes
Sent by a Debian user to Michael Biebl.  No other attribution
information available.  Thanks Debian user!
2010-09-25 00:34:10 -05:00
Dan Williams
3945f75bda core: consolidate all permissions checking into main D-Bus interface
Moves the system settings permissions checking into the core service's
permissions checking, which at the same time enables 3-way permission
reporting (yes, no, auth) instead of the old yes/no that we had for
system settings permissions before.  This allows UI to show a lock
icon or such when the user could authenticate to gain the permission.

It also moves the wifi-create permissions' namespace to the main
namespace (not .settings) since they really should be checked before
starting a shared wifi connection, rather than having anything to do
with the settings service.
2010-08-26 14:26:12 -05:00
Dan Williams
022d8e665c Merge remote branch 'origin/master' into gsoc 2010-08-26 09:18:37 -05:00
Dan Williams
98bd78c93b libnm-glib: better handling of missing user settings service
If it's not running or we can't spawn it (it's not supposed to be
autospawned anyway) we should just ignore the error and poke clients
that we've tried and failed to get user settings instead of warning
with an annoying message.
2010-08-10 15:47:55 -05:00
Dan Williams
d3b26a9c57 libnm-glib: get permissions synchronously at startup
Many clients using libnm-glib (often command-line ones like nm-tool
or nmcli) aren't long-lived enough for NM to get their UID from
the bus daemon and validate their permissions via PolicyKit.  So
when the NMClient object is created, get the permissions synchronously
(with a very low timeout to prevent unecessary blocking) to ensure
that the client is still on the bus when NM asks for it's credentials.

Avoids a ton of messages like:

NetworkManager[10274]: <warn> error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (6) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.NameHasNoOwner: Remote Exception invoking org.freedesktop.DBus.GetConnectionUnixUser() on / at name org.freedesktop.DBus: org.freedesktop.DBus.Error.NameHasNoOwner: Could not get UID of name ':1.95': no such name
2010-08-10 00:47:26 -05:00
Daniel Gnoutcheff
f98e2528a6 NetworkMangerSettings -> NetworkManager.Settings
Just for consistency, make settings related stuff live under the
org.freedesktop.NetworkManager namespace, rather than its own
org.freedesktop.NetworkManagerSettings namespace. Renames are done for
DBus interface names, DBus object paths, and polkit actions.
2010-08-07 01:19:46 -04:00
Daniel Gnoutcheff
fb96309899 DBus: merge NetworkManger{,SystemSettings}
Remove the org.freedesktop.NetworkManagerSystemSettings bus name and
have everybody talk to org.freedesktop.NetworkManager. Now that we have
a single settings service that's embedded in the main daemon, we don't
need separate names anymore.
2010-08-07 01:19:46 -04:00