0.9.8 secret agent crash from IRC



Jirka,

This part of the logs shows the problem:

NetworkManager[13479]: <info> Activation (wlan0/wireless): access point 'Red Hat' has security, but secrets 
are required.
NetworkManager[13479]: <info> (wlan0): device state change: config -> need-auth (reason 'none') [50 60 0]
NetworkManager[13479]: <debug> [1378226566.232795] [nm-agent-manager.c:1058] nm_agent_manager_get_secrets(): 
Secrets requested for connection /org/freedesktop/NetworkManager/Settings/3 (802-1x)
NetworkManager[13479]: <debug> [1378226566.233064] [nm-agent-manager.c:577] request_add_agent(): 
(:1.575/org.freedesktop.nm-applet/1000) agent allowed for secrets request 0x7fa1d4b5d880/802-1x
NetworkManager[13479]: <debug> [1378226566.233096] [nm-settings-connection.c:864] 
nm_settings_connection_get_secrets(): (0da73f54-0e27-41d8-94c1-4ace39e142a4/802-1x:2) secrets requested flags 
0x1 hint '(null)'
NetworkManager[13479]: <info> Activation (wlan0) Stage 2 of 5 (Device Configure) complete.
NetworkManager[13479]: <debug> [1378226566.254171] [nm-agent-manager.c:652] next_generic(): 
(:1.575/org.freedesktop.nm-applet/1000) agent getting secrets for request 0x7fa1d4b5d880/802-1x
NetworkManager[13479]: <debug> [1378226566.254795] [nm-agent-manager.c:912] get_next_cb(): 
(0x7fa1d4b5d880/802-1x) request has system secrets; checking agent :1.575 for MODIFY
NetworkManager[13479]: <debug> [1378226566.261832] [nm-agent-manager.c:843] get_agent_modify_auth_cb(): 
(0x7fa1d4b5d880/802-1x) agent MODIFY check result 1

*** here, get_agent_request_secrets() shuold have called
nm_secret_agent_get_secrets(), which should have asked nm-applet for
secrets.  This does mean the NMSecretAgent now has two in-progress
secrets requests, one for 802.1x on em1, and another for WiFi/802.1x on
wlan0.

NetworkManager[13479]: <debug> [1378226579.475356] [nm-agent-manager.c:120] remove_agent(): 
(:1.575/org.freedesktop.nm-applet/1000) agent unregistered

*** applet quit, so NM should remove the applet as the current agent
from both in-progress secrets requests.  This triggers remove_agent()
which should remove the agent from both in-progress secrets requests.

NetworkManager[13479]: dbus_g_proxy_cancel_call: assertion `!DBUS_G_PROXY_DESTROYED (proxy)' failed
NetworkManager[13479]: dbus_g_proxy_begin_call: assertion `!DBUS_G_PROXY_DESTROYED (proxy)' failed

*** this is likely because the applet's D-Bus connection was closed, and
the dbus-glib DBusGProxy object got a "destroyed" signal from D-Bus, and
NM 0.9.8 doesn't have the fixes to avoid this error message.  These two
messages should be coming from nm_secret_agent_cancel_secrets().  The
fix for this would be to attach to the "destroyed" signal of the agent's
DBusGProxy and then maybe set a priv->destroyed variable in
NMSecretAgent, and then not call these two functions in
nm_secret_agent_cancel_secrets() if priv->destroyed == TRUE.

NetworkManager[13479]: <debug> [1378226579.475425] [nm-agent-manager.c:619] request_remove_agent(): 
(:1.575/org.freedesktop.nm-applet/1000) current agent removed from secrets request 0x7fa1d4b3f4c0/802-1x

*** Notice how we only get *one* removal print here, when there should
be two of them; one for em1's connection and one for wlan0's.  Maybe
instrument remove_agent() with some additional debugging and see how
many secrets requests it actually does remove the agent from?

NetworkManager[13479]: <debug> [1378226579.475443] [nm-settings-connection.c:663] agent_secrets_done_cb(): 
(3249f91c-b0e5-4061-9c52-fc357903226a/802-1x:1) secrets request error: (6) No agents were available for this 
request.
NetworkManager[13479]: <warn> No agents were available for this request.
NetworkManager[13479]: <info> (em1): device state change: need-auth -> failed (reason 'no-secrets') [60 120 7]

NetworkManager[13479]: <debug> [1378226580.443893] [nm-agent-manager.c:297] impl_agent_manager_register(): 
(:1.581/org.freedesktop.nm-applet/1000) requesting permissions
NetworkManager[13479]: <debug> [1378226580.457077] [nm-agent-manager.c:227] 
agent_register_permissions_done(): (:1.581/org.freedesktop.nm-applet/1000) agent registered
NetworkManager[13479]: <debug> [1378226580.457381] [nm-agent-manager.c:577] request_add_agent(): 
(:1.581/org.freedesktop.nm-applet/1000) agent allowed for secrets request 0x7fa1d4b5d880/802-1x

*** Here when nm-applet registers again it gets re-added to wlan0's
secrets request, but it's actually already there, so the previous
request hasn't been cleaned up at all.

Dan



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