Commit graph

17138 commits

Author SHA1 Message Date
Pierre Ossman
8229107589 ip6: rdnss structure needs to be packed (bgo #637075)
The code assumes this structure is packed, so let's make sure it actually is.
2010-12-15 17:30:35 -06:00
Dan Williams
4f058e2dc4 agent: ask secret agents for secrets when connection doesn't have any
Filter registered agents for each secrets request to ensure that the
connection for which secrets are requested is visible to that agent,
and add that agent to the queue.  Ask each agent in the queue until
one returns usable secrets.  Ensure that if new agents register
or existing agents quit during the secrets request, that the queue
is updated accordingly, and ensure that an agent that's already
been asked for secrets, unregisters, and re-registers before the
secrets request is comple, isn't asked for secrets twice.
2010-12-14 15:34:34 -06:00
Dan Williams
5e19b02f0b dbus: allow NetworkManager to talk to secret agents 2010-12-14 15:32:12 -06:00
Dan Williams
9df9abb06f tests: make agent tester stick around until Ctl+C 2010-12-14 15:31:53 -06:00
Dan Williams
ca1338007c tests: add secret agent API test tool 2010-12-14 15:04:14 -06:00
Dan Williams
fc82bbc412 agent: allow the '.' character in agent identifiers 2010-12-14 11:19:39 -06:00
Dan Williams
ffac6b33c6 agent: fix infinite loop checking agent identifier 2010-12-14 11:14:24 -06:00
Dan Williams
585a4a1351 agent: actually register D-Bus introspection
So that the agent manager can get exported on the bus.
2010-12-14 11:12:56 -06:00
Dan Williams
85fa487a48 tests: fix missing Makefile dep 2010-12-14 10:51:00 -06:00
Dan Williams
62a2c34e27 core: simplify secrets handling during activation
Instead of a bizare mechanism of signals back to the manager
object that used to be required because of the user/system settings
split, let each place that needs secrets request those secrets
itself.  This flattens the secrets request process a ton and
the code flow significantly.

Previously the get secrets flow was something like this:

nm_act_request_get_secrets ()
    nm_secrets_provider_interface_get_secrets ()
        emits manager-get-secrets signal
            provider_get_secerts ()
                system_get_secrets ()
                    system_get_secrets_idle_cb ()
                        nm_sysconfig_connection_get_secrets ()
                            system_get_secrets_reply_cb ()
                                nm_secrets_provider_interface_get_secrets_result ()
                                    signal failure or success

now instead we do something like this:

nm_agent_manager_get_secrets ()
    nm_agent_manager_get_secrets ()
        request_start_secrets ()
            nm_sysconfig_connection_get_secrets ()
                return failure or success to callback
2010-12-13 21:14:23 -06:00
Dan Williams
58088129f7 settings: only use one hint nm_sysconfig_connection_get_secrets()
Never used more than one anyway.
2010-12-12 21:29:13 -06:00
Dan Williams
ff101f4946 settings: remove callback from nm_sysconfig_connection_get_secrets()
No reason it needs to use the callback pattern anymore.
2010-12-12 21:17:34 -06:00
Dan Williams
e3ba9162c2 supplicant: fix state handling after READY has been reached
We only want to prevent regression to > READY after READY has
been reached, since the interface state will track the supplicant
connection state which legitimately jumps around.
2010-12-11 12:33:15 -06:00
Dan Williams
ea16af7c18 supplicant: fix up return arguments for Disconnect and RemoveNetwork 2010-12-11 12:31:10 -06:00
Dan Williams
1cd17ac896 supplicant: fix leak updating BSS properties 2010-12-11 11:59:40 -06:00
Dan Williams
fd5e8c2f05 core: fix leak parsing config file 2010-12-10 18:50:49 -06:00
Dan Williams
e716e7507b agent: log agent registration 2010-12-10 13:32:45 -06:00
Dan Williams
a30cf19858 agent: add agent manager and minimal agent class 2010-12-10 12:38:19 -06:00
Dan Williams
66291ec204 logging: LOGD_USER_SET -> LOGD_AGENTS 2010-12-10 12:36:02 -06:00
Dan Williams
cf7cc2492d logging: LOGD_SYS_SET -> LOGD_SETTINGS 2010-12-10 12:32:22 -06:00
Dan Williams
0a8f7aeb56 core: use #defines for NMDBusManager signal names
Helps catch typos at compile time instead of runtime.
2010-12-10 11:36:55 -06:00
Dan Williams
ffb808f4c4 core: fix possible leak in error path 2010-12-10 10:46:09 -06:00
Dan Williams
a752140c8f Merge remote branch 'origin/new-supplicant'
This branch now requires wpa_supplicant 0.7 or later with the new
D-Bus interface enabled.  It also prefers the "nl80211" supplicant
driver over the WEXT one, but will ask the supplicant to fall back
to the WEXT driver if the device in question does not support the
kernel's nl80211/cfg80211 stack.
2010-12-07 14:23:39 -06:00
Dan Williams
12345affa5 wifi: move wireless_qual_to_percent() to get rid of prototype
Now that it's only used in one place we can get rid of the prototype.
2010-12-07 14:18:44 -06:00
Dan Williams
a08dd2c39d supplicant: fix handling when supplicant cannot be service activated
If the supplicant cannot be service activated, wait until it shows up
on the bus instead of sitting around doing nothing.  This fixes a small
regression introduced when the _READY state was added to the supplicant
interface object.
2010-12-07 13:58:49 -06:00
Dan Williams
9e9a46b405 wifi: remove useless warning 2010-12-06 15:55:30 -06:00
Canek Peláez Valdés
740dc88cb3 gentoo: handle both systemd and OpenRC loopback init at runtime
See Gentoo #318365
2010-12-06 09:36:28 -06:00
Dan Williams
9d077444a9 settings: remove settings dict from connection 'updated' signal
New connections should not be pushed out in the Updated signal
because signals cannot be restricted to particular clients, and
some clients may not have permission to view the connection.

Upon receiving the Updated signal, clients should re-read the
connection using GetSettings to ensure that the client still
has permissions to view the connection, and to get the updated
settings.
2010-12-02 14:34:38 -06:00
Jiří Klimeš
f6f8ef2f8a dns: fix a crash due to uninitialized nis_domain (novell #655685)
Reported and tested by Raymond Wooninck. Thanks!
2010-11-24 12:51:08 +01:00
Dan Williams
4b37101ef4 core: suppress error message when user settings service is not active
Don't bother trying to initialize the user settings proxy when it
isn't even active.  Would trigger a warning to syslog if PolicyKit
permissions changed via changes to /usr/share/polkit-1/actions/.
2010-11-23 22:17:21 -06:00
Dan Williams
608783c5b7 core: handle device removal when properties are unreadable
By the time we get the udev device removal notification we may not
be able to read properties, since the device has already been
removed from sysfs.  That means we can't get the ifindex, so we need
to fall back to the interface name.  But we always want to prefer
the ifindex since that will never change as long as the device is
connected, unlike the interface name.
2010-11-23 13:11:44 -06:00
Jiří Klimeš
4b022ed32b core: correct TIMESTAMP type; fixes potential crash when time() is 32bit
The Crash appeared on some platforms in glib while processing variable
arguments.
2010-11-23 19:06:58 +01:00
Dan Williams
bfbb71b763 wifi: update signal quality calculation for new supplicant interface 2010-11-23 00:02:46 -06:00
Dan Williams
fb6cde508c supplicant: convert blob handling to new supplicant interface 2010-11-22 22:34:04 -06:00
Dan Williams
f5e084c668 supplicant: convert association paths to new supplicant interface 2010-11-22 09:05:09 -06:00
Dan Williams
6ecb45ddf0 wifi: convert scanning to new supplicant interface 2010-11-22 08:40:21 -06:00
Dan Williams
848f9f4261 wifi: convert parts of association path to new supplicant interface 2010-11-22 08:30:13 -06:00
Dan Williams
8bbbd3edc3 wifi: convert AP handling to new supplicant interface 2010-11-22 08:25:09 -06:00
Dan Williams
528e087608 wifi: handle new supplicant AP property formats 2010-11-22 08:22:50 -06:00
Mikhail Efremov
92b58e56f5 dhcp: ensure that dhcp client is exited
On restart ensure that the client we're trying to kill has
actually exited even if it's not our child.
2010-11-19 16:52:55 -06:00
Mathieu Trudel-Lapierre
3951942fa1 wired: fix uninitialized variable 2010-11-19 16:17:40 -06:00
Dan Williams
02a1da41c6 supplicant: convert add/remove to new supplicant dbus interface 2010-11-18 17:02:04 -06:00
Dan Williams
3992c7db50 dhcpcd: prevent dhcpcd from messing with routing (bgo #634983)
Since NM is already handling that.
2010-11-18 16:30:00 -06:00
Dan Williams
042468a86e settings: convert more hand-rolled polkit to NMAuthChain 2010-11-18 14:24:58 -06:00
Dan Williams
858fc2c4b8 trivial: remove incorrect comment 2010-11-18 14:21:21 -06:00
Dan Williams
c11ba3ea10 settings: GHashTable isn't a GObject subclass 2010-11-18 14:05:57 -06:00
Dan Williams
a53c31427d settings: make use of nm_auth_uid_in_acl() 2010-11-18 14:05:33 -06:00
Dan Williams
47eaf97d67 core: add nm_auth_uid_in_acl()
For checking whether a specific user ID is:
  1) in a known session
  2) allowed by the connection's permissions ACL
2010-11-18 13:49:47 -06:00
Dan Williams
eccca738aa core: make nm_auth_get_caller_uid() error description non-const
For consistency with the next commit, so we don't need to remember
when to free the description or not.
2010-11-18 13:47:04 -06:00
Dan Williams
c3c9d93b1d settings: fix session checking for connection operations 2010-11-18 13:04:15 -06:00