Aquiring a service

Havoc Pennington hp@redhat.com
Wed, 28 May 2003 00:03:51 -0400


On Sun, May 25, 2003 at 03:21:25PM +0200, Magnus Sjöstrand wrote:
> 
> I'm trying to aquire a service called manix.windowmanager, but I get the 
> error:
> 
> Connection ":1-2" is not allowed to own the service "" due to security 
> policies in the configuration file

^A there looks like it might be junk memory; are you using latest CVS?
Or latest release? We should be sure this is fixed.

> I've checked the string that I pass to dbus_bus_acquire_service and it 
> is indeed manix.windowmanager. I also tried to put a manixwm.service 
> file in the /etc/dbus-1/system.d folder, with the following lines
> 
> [D-BUS Service]
> Name=manix.windowmanager
> 
> But I get the same error. I've read the DBus specification more than 
> once, but I can't find how it's supposed to work. If anyone can shed 
> some light on this I'd appreciate it.
> 

The spec covers (most of) the protocol, but the configuration file is
an implementation-specific thing, not designed to be part of the spec.

The man page for dbus-daemon-1 about the config file would probably be
helpful. Also, see the cups package in Red Hat rawhide.
Essentially you want to drop a .conf file in the system.d that does 
an <allow> for your service. This requires a fix in CVS only, not in
the latest release.

However, note that you only need this security policy tweaking for the
systemwide message bus; for a window manager, it certainly seems
likely that you really want the per-user-session bus.

Havoc