diff --git a/profiles/audio/avctp.c b/profiles/audio/avctp.c
index 382e77d..a9ac9fe 100644
--- a/profiles/audio/avctp.c
+++ b/profiles/audio/avctp.c
return FALSE;
}
-struct avctp *avctp_connect(const bdaddr_t *src, const bdaddr_t *dst)
+struct avctp *avctp_connect(struct audio_device *device)
{
struct avctp *session;
GError *err = NULL;
GIOChannel *io;
+ const bdaddr_t *src;
+ const bdaddr_t *dst;
+
+ src = adapter_get_address(device_get_adapter(device->btd_dev));
+ dst = device_get_address(device->btd_dev);
session = avctp_get_internal(src, dst);
if (!session)
diff --git a/profiles/audio/avctp.h b/profiles/audio/avctp.h
index c00a3fc..7314a04 100644
--- a/profiles/audio/avctp.h
+++ b/profiles/audio/avctp.h
int avctp_register(const bdaddr_t *src, gboolean master);
void avctp_unregister(const bdaddr_t *src);
-struct avctp *avctp_connect(const bdaddr_t *src, const bdaddr_t *dst);
+struct avctp *avctp_connect(struct audio_device *device);
struct avctp *avctp_get(const bdaddr_t *src, const bdaddr_t *dst);
int avctp_connect_browsing(struct avctp *session);
void avctp_disconnect(struct avctp *session);
diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index 8af681b..ffa3519 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
session = g_new0(struct avrcp, 1);
session->server = server;
- session->conn = avctp_connect(&dev->src, &dev->dst);
+ session->conn = avctp_connect(dev);
session->dev = dev;
server->sessions = g_slist_append(server->sessions, session);
{
struct avctp *session;
- session = avctp_connect(&dev->src, &dev->dst);
+ session = avctp_connect(dev);
if (session)
return FALSE;
diff --git a/profiles/audio/control.c b/profiles/audio/control.c
index ef6df72..31bbcf9 100644
--- a/profiles/audio/control.c
+++ b/profiles/audio/control.c
if (control->connect)
return -EINPROGRESS;
- control->session = avctp_connect(&dev->src, &dev->dst);
+ control->session = avctp_connect(dev);
if (!control->session)
return -EIO;