Bug 517257

Summary: Wrong object name for AuthenticationAgent
Product: [Fedora] Fedora Reporter: Tim Waugh <twaugh>
Component: PolicyKit-gnomeAssignee: David Zeuthen <davidz>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: davidz, dcbw, mclasen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-08-15 08:41:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 515906, 517112, 518427    
Attachments:
Description Flags
PolicyKit-gnome-reregister.patch none

Description Tim Waugh 2009-08-13 09:33:55 UTC
Description of problem:
See bug #515906 and bug #517112.

Comment 1 Tim Waugh 2009-08-13 11:28:43 UTC
Actually I think this is the problem:

$ /usr/libexec/polkit-gnome-manager 
(polkit-gnome-manager:16242): PolicyKitGnome-DEBUG: Starting PolicyKit GNOME session daemon version 0.9.2

** (polkit-gnome-manager:16242): WARNING **: Object already registered at /org/gnome/PolicyKit/Manager, can't re-register at /
(polkit-gnome-manager:16242): PolicyKitGnome-DEBUG: Setting kill timer to 30 seconds.

Our AuthenticationAgent object is only registered at /org/gnome/PolicyKit/Manager, and isn't allowed to also register at /.  Is this new D-Bus behaviour?

Attaching a patch which fixes it for me by dropping the older D-Bus path name altogether.

Comment 2 Tim Waugh 2009-08-13 11:29:31 UTC
Created attachment 357302 [details]
PolicyKit-gnome-reregister.patch

This patch fixes it for me.

Comment 3 Tim Waugh 2009-08-14 15:09:47 UTC
Fixing component.

I think that 0.9.2-5 attempted to fix this but I'm not sure it does.  Doesn't it drop the "/" object name altogether, instead of dropping the "/org/gnome/PolicyKit/Manager" name?

I think it needs to register the "/" name.

Comment 4 Tim Waugh 2009-08-15 08:41:44 UTC
OK, confirmed fixed after all in PolicyKit-gnome-0.9.2-5.fc12.

Comment 5 Dan Williams 2009-08-19 16:10:09 UTC
Actual issue is a dbus-glib regression that causes the additional object path registrations to fail.  See the fdo bug referenced in the PolicyKit-gnome changelog.

I assume the longer object registration was added because davidz wanted to deprecate the "/" object path for some reason.  Thus I assumed (and davidz said the patch to PolicyKit-gnome was acceptable) that the preferred object path should be "/org/gnome/PolicyKit/Manager" and used that.

Obvious fix is to fix the regression in dbus-glib of course, letting polkit-gnome-manager register both object paths.

Comment 6 Tim Waugh 2009-08-20 12:06:08 UTC
I'll have to apply this patch to system-config-printer then:

 PK_AUTH_NAME  = 'org.freedesktop.PolicyKit.AuthenticationAgent'
-PK_AUTH_PATH  = '/'
+PK_AUTH_PATH  = '/org/gnome/PolicyKit/Manager'
 PK_AUTH_IFACE = 'org.freedesktop.PolicyKit.AuthenticationAgent'

(see bug #518427).