From d1116a27c20a6a77a8895a8a11861972c40aa16c Mon Sep 17 00:00:00 2001 From: Luiz Augusto von Dentz Date: Sun, 27 Nov 2011 23:12:09 +0200 Subject: [PATCH] obexd: Remove obex_get_id Plugins that need the peer address/name should use obex_getpeername which uses the transport driver to resolve it. --- obexd/plugins/syncevolution.c | 8 +++++++- obexd/src/obex.c | 17 ----------------- obexd/src/obex.h | 1 - 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/obexd/plugins/syncevolution.c b/obexd/plugins/syncevolution.c index e3b06f421..b0cd626da 100644 --- a/obexd/plugins/syncevolution.c +++ b/obexd/plugins/syncevolution.c @@ -218,6 +218,7 @@ static void *synce_connect(struct obex_session *os, int *err) { DBusConnection *conn; struct synce_context *context; + char *address; manager_register_session(os); @@ -228,9 +229,14 @@ static void *synce_connect(struct obex_session *os, int *err) context = g_new0(struct synce_context, 1); context->dbus_conn = conn; context->lasterr = -EAGAIN; - context->id = obex_get_id(os); context->os = os; + if (obex_getpeername(os, &address) == 0) { + context->id = g_strdup_printf("%s+%d", address, + SYNCEVOLUTION_CHANNEL); + g_free(address); + } + if (err) *err = 0; diff --git a/obexd/src/obex.c b/obexd/src/obex.c index 7f31c5da5..a88306dfa 100644 --- a/obexd/src/obex.c +++ b/obexd/src/obex.c @@ -1524,23 +1524,6 @@ uint8_t obex_get_action_id(struct obex_session *os) return os->action_id; } -/* TODO: find a way to do this for tty or fix syncevolution */ -char *obex_get_id(struct obex_session *os) -{ - GError *gerr = NULL; - char address[18]; - uint8_t channel; - - bt_io_get(os->io, BT_IO_RFCOMM, &gerr, - BT_IO_OPT_DEST, address, - BT_IO_OPT_CHANNEL, &channel, - BT_IO_OPT_INVALID); - if (gerr) - return NULL; - - return g_strdup_printf("%s+%d", address, channel); -} - ssize_t obex_get_apparam(struct obex_session *os, const uint8_t **buffer) { *buffer = os->apparam; diff --git a/obexd/src/obex.h b/obexd/src/obex.h index 3ec49a96a..7f07fd233 100644 --- a/obexd/src/obex.h +++ b/obexd/src/obex.h @@ -46,7 +46,6 @@ int obex_copy(struct obex_session *os, const char *source, int obex_move(struct obex_session *os, const char *source, const char *destination); uint8_t obex_get_action_id(struct obex_session *os); -char *obex_get_id(struct obex_session *os); ssize_t obex_get_apparam(struct obex_session *os, const uint8_t **buffer); ssize_t obex_get_non_header_data(struct obex_session *os, const uint8_t **data); -- 2.47.3