summaryrefslogtreecommitdiffstats
path: root/hcid/dbus.h
diff options
context:
space:
mode:
authorClaudio Takahasi <claudio.takahasi@openbossa.org>2006-04-20 17:18:19 +0000
committerClaudio Takahasi <claudio.takahasi@openbossa.org>2006-04-20 17:18:19 +0000
commit8bfc6e7cd8210dd2bf6acc9e84b33c299e8f5c6a (patch)
treecd29d558bea4858dd0803c7ae111dc8f80fcf002 /hcid/dbus.h
parentd7d52c07bd5c6ef4d1f411dc2ef57502ed028125 (diff)
Added D-Bus SDP methods skeleton
Diffstat (limited to 'hcid/dbus.h')
-rw-r--r--hcid/dbus.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/hcid/dbus.h b/hcid/dbus.h
index da6eeba7..aab6f354 100644
--- a/hcid/dbus.h
+++ b/hcid/dbus.h
@@ -27,7 +27,9 @@
#include <stdint.h>
#include <dbus/dbus.h>
#include <bluetooth/bluetooth.h>
+#include <bluetooth/sdp.h>
#include "list.h"
+#include "glib-ectomy.h"
#define BASE_PATH "/org/bluez"
#define BASE_INTERFACE "org.bluez"
@@ -44,6 +46,8 @@
#define RFCOMM_INTERFACE BASE_INTERFACE ".RFCOMM"
+#define SDP_INTERFACE BASE_INTERFACE ".SDP"
+
#define MANAGER_PATH_MASK (1 << 15)
#define ADAPTER_PATH_MASK (1 << 14)
@@ -97,6 +101,13 @@ struct bonding_request_info {
int disconnect; /* disconnect after finish */
};
+struct search_request_info {
+ bdaddr_t bdaddr;
+ DBusMessage *rq;
+ GIOChannel *io;
+ sdp_session_t *session;
+};
+
struct active_conn_info {
bdaddr_t bdaddr;
uint16_t handle;
@@ -115,6 +126,7 @@ struct hci_dbus_data {
char *requestor_name; /* requestor unique name */
struct slist *passkey_agents;
struct bonding_request_info *bonding;
+ struct search_request_info *search;
struct slist *active_conn;
int pairing_active;
};
@@ -166,6 +178,9 @@ DBusHandlerResult error_record_does_not_exist(DBusConnection *conn, DBusMessage
DBusHandlerResult error_passkey_agent_already_exists(DBusConnection *conn, DBusMessage *msg);
DBusHandlerResult error_passkey_agent_does_not_exist(DBusConnection *conn, DBusMessage *msg);
DBusHandlerResult error_binding_does_not_exist(DBusConnection *conn, DBusMessage *msg);
+DBusHandlerResult error_service_already_exists(DBusConnection *conn, DBusMessage *msg);
+DBusHandlerResult error_service_does_not_exist(DBusConnection *conn, DBusMessage *msg);
+DBusHandlerResult error_service_search_in_progress(DBusConnection *conn, DBusMessage *msg);
DBusHandlerResult error_connect_canceled(DBusConnection *conn, DBusMessage *msg);
typedef void (*name_cb_t)(const char *name, void *user_data);
@@ -179,6 +194,8 @@ DBusHandlerResult handle_security_method(DBusConnection *conn, DBusMessage *msg,
DBusHandlerResult handle_rfcomm_method(DBusConnection *conn, DBusMessage *msg, void *data);
+DBusHandlerResult handle_sdp_method(DBusConnection *conn, DBusMessage *msg, void *data);
+
service_handler_func_t find_service_handler(struct service_data *services, DBusMessage *msg);
int handle_passkey_request(int dev, const char *path, bdaddr_t *sba, bdaddr_t *dba);