diff --git a/obexd/src/phonebook.c b/obexd/src/phonebook.c
index 70bcc68..e4203bc 100644
--- a/obexd/src/phonebook.c
+++ b/obexd/src/phonebook.c
void phonebook_return(struct phonebook_context *context,
unsigned char *buf, int size)
{
+ DBG("context %p", context);
+}
+
+struct phonebook_driver *phonebook_get_driver(const char *name)
+{
+ DBG("name %s", name);
+
+ return g_slist_nth_data(driver_list, 0);
}
diff --git a/obexd/src/phonebook.h b/obexd/src/phonebook.h
index e154edf..57e79b7 100644
--- a/obexd/src/phonebook.h
+++ b/obexd/src/phonebook.h
*/
struct phonebook_context {
+ void *driver_data;
};
struct phonebook_driver {
int (*pullvcardentry) (struct phonebook_context *context, ...);
};
+static inline void *phonebook_get_data(struct phonebook_context *context)
+{
+ return context->driver_data;
+}
+
+static inline void phonebook_set_data(struct phonebook_context *context,
+ void *data)
+{
+ context->driver_data = data;
+}
+
extern int phonebook_driver_register(struct phonebook_driver *driver);
extern void phonebook_driver_unregister(struct phonebook_driver *driver);
extern void phonebook_return(struct phonebook_context *context,
unsigned char *buf, int size);
+
+struct phonebook_driver *phonebook_get_driver(const char *name);