On Sat, Sep 06, 2008 at 07:50:56PM +0200, Joachim Breitner wrote:
> Hi,
> 
> using the experimental bluez-utils package on my Deban FreeRunner, I try
> to control the input_service by running, as root:
> 
> $ dbus-send --system --print-reply --dest=org.bluez /org/bluez/service_input 
> org.bluez.Service.Stop 
> Error org.bluez.Error.Failed: Operation not permitted
> 
> D-Bus communication works in general:
> $ dbus-send --system --print-reply --dest=org.bluez /org/bluez/service_input 
> org.bluez.Service.IsRunning
> method return sender=:1.17 -> dest=:1.19 reply_serial=2
>    boolean true

Start/Stop (and IsRunning FWIW) don't seem to be implemented, see
hcid/dbus-service.c:

static DBusMessage *start(DBusConnection *conn,
                        DBusMessage *msg, void *data)
{
        return g_dbus_create_error(msg,
                        ERROR_INTERFACE ".Failed",
                        strerror(EALREADY));
}

static DBusMessage *stop(DBusConnection *conn,
                        DBusMessage *msg, void *data)
{
        return g_dbus_create_error(msg,
                        ERROR_INTERFACE ".Failed",
                        strerror(EPERM));
}

static DBusMessage *is_running(DBusConnection *conn,
                                DBusMessage *msg, void *data)
{
        DBusMessage *reply;
        dbus_bool_t running = TRUE;

        reply = dbus_message_new_method_return(msg);
        if (!reply)
                return NULL;

        dbus_message_append_args(reply,
                        DBUS_TYPE_BOOLEAN, &running,
                        DBUS_TYPE_INVALID);

        return reply;
}

that explains the bug, unless I'm missing something of course :)

filippo
--
Filippo Giunchedi - http://esaurito.net
PGP key: 0x6B79D401
random quote follows:

Beauty isn't worth thinking about; what's important is your mind.
You don't want a fifty-dollar haircut on a fifty-cent head.
-- Garrison Keillor

Attachment: signature.asc
Description: Digital signature

Reply via email to