Red Hat Bugzilla – Bug 437254
yum-refresh-updatesd fails after dbus upgrade
Last modified: 2008-09-10 03:05:01 EDT
Description of problem:
yum-refresh-updatesd is broken with dbus 1.1.2-9.fc8 - the message fails to be
sent due to a permissions error
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Have yum-refresh-updatesd package installed and enabled
2. Make sure dbus 1.1.2-9.fc8 is installed (if not, make sure to restart the
messagebus service and then restart yum-updatesd)
3. yum update <any package> or remove, or anything that causes a transaction to run
(with -d 7):
Running "posttrans" handler for "refresh-updatesd" plugin
Unable to look at what's on dbus
org.freedesktop.DBus.Error.AccessDenied: A security policy in place prevents
this sender from sending this message to this recipient, see message bus
configuration file (rejected message had interface "(unset)" member
"NameHasOwner" error name "(unset)" destination "org.freedesktop.DBus")
dbus message is called, applet refreshes
Downgrading to dbus 1.1.2-7 (and then restarting messagebus + yum-updatesd)
fixes this. I'm assigning this to yum-updatesd because the change mentions CVE
2008-0595, which fixes a permissions issue. I don't know enough about dbus to
tell if its a dbus bug or if it happened to work before due to the security
issue and the yum-updatesd policy/code is broken
It also fails if I run the code manually from the python shell, so its not a yum
environment issue, ie:
Python 2.5.1 (r251:54863, Oct 30 2007, 13:45:26)
[GCC 4.1.2 20070925 (Red Hat 4.1.2-33)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import dbus
>>> bus = dbus.SystemBus()
>>> o = bus.get_object('org.freedesktop.DBus', '/')
>>> print o.NameHasOwner("edu.duke.linux.yum")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.5/site-packages/dbus/proxies.py", line 63, in __call__
return self._proxy_method(*args, **keywords)
File "/usr/lib/python2.5/site-packages/dbus/proxies.py", line 135, in __call__
File "/usr/lib/python2.5/site-packages/dbus/connection.py", line 603, in
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: A
security policy in place prevents this sender from sending this message to this
recipient, see message bus configuration file (rejected message had interface
"(unset)" member "NameHasOwner" error name "(unset)" destination
It works if I add
o = dbus.Interface(o, "org.freedesktop.DBus")
before the call to o.NameHasOwner
the patch in bug 432419 changed the logic for when the message has no interface
- is this a dbus bug with that patch & the default permissions?
Adding DavidZ to see if this is a change in dbus or something that's been wrong
in yum-updatesd for a while.
ping? I looked at the similar-in-goals yum-packagekit source from rawhide and
that does get the interface separately.
Although does/should packagekit/yum-packagekit obsolete
yum-updatesd/yum-refresh-updatesd in f9 anyway?
Make i work the same way as yum-packagekit.
Please check this one
This this one instead.
Yep, that works, thanks (on F9)
yum-utils-1.1.15-1.fc9 has been submitted as an update for Fedora 9
yum-utils-1.1.15-1.fc8 has been submitted as an update for Fedora 8
yum-utils-1.1.15-1.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.
yum-utils-1.1.15-1.fc9 has been pushed to the Fedora 9 stable repository. If problems still persist, please make note of it in this bug report.