diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2008-06-08 16:52:11 +0000 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2008-06-08 16:52:11 +0000 |
commit | 94c199911b1dc1395a8025647f0686f58e6bf4f6 (patch) | |
tree | 2fe0b076fa370f2d174854da0d2d657751264b18 | |
parent | 24d6b3d375b51044e0185c52a1ea172774a0ec47 (diff) |
Add the missing device API calls
-rw-r--r-- | hcid/device.c | 47 |
1 files changed, 37 insertions, 10 deletions
diff --git a/hcid/device.c b/hcid/device.c index 8cd0c131..65ed8ab4 100644 --- a/hcid/device.c +++ b/hcid/device.c @@ -766,12 +766,6 @@ static void device_free(gpointer user_data) g_free(device); } -static DBusMessage *disconnect(DBusConnection *conn, - DBusMessage *msg, void *user_data) -{ - return dbus_message_new_method_return(msg); -} - static gboolean device_is_paired(struct device *device) { struct adapter *adapter = device->adapter; @@ -1014,17 +1008,50 @@ static DBusMessage *set_property(DBusConnection *conn, return invalid_args(msg); } +static DBusMessage *discover_services(DBusConnection *conn, + DBusMessage *msg, void *user_data) +{ + const char *pattern; + + if (dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &pattern, + DBUS_TYPE_INVALID) == FALSE) + return NULL; + + /* FIXME start service discovery */ + + return NULL; +} + +static DBusMessage *cancel_discover(DBusConnection *conn, + DBusMessage *msg, void *user_data) +{ + /* FIXME cancel discovery */ + + return dbus_message_new_method_return(msg); +} + +static DBusMessage *disconnect(DBusConnection *conn, + DBusMessage *msg, void *user_data) +{ + /* FIXME disconnect device */ + + return dbus_message_new_method_return(msg); +} + static GDBusMethodTable device_methods[] = { { "GetProperties", "", "a{sv}", get_properties }, { "SetProperty", "sv", "", set_property }, + { "DiscoverServices", "s", "a{sv}", discover_services, + G_DBUS_METHOD_FLAG_ASYNC}, + { "CancelDiscovery", "", "", cancel_discover }, { "Disconnect", "", "", disconnect }, - { NULL, NULL, NULL, NULL } + { } }; static GDBusSignalTable device_signals[] = { - { "PropertyChanged", "sv" }, - { "DisconnectRequested", "" }, - { NULL, NULL } + { "PropertyChanged", "sv" }, + { "DisconnectRequested", "" }, + { } }; struct device *device_create(DBusConnection *conn, struct adapter *adapter, |