All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/7] adapter: Convert adapter_get_address into simple getter
@ 2012-10-05  8:16 Szymon Janc
  2012-10-05  8:16 ` [PATCH 2/7] storage: Constify bdaddr_t pointers parameters Szymon Janc
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

Most uses of adapter_get_address were in form of:

bdaddr_t addr;
adapter_get_address(adapter, &addr);
foo(&addr);

Changing it to getter makes code simpler and avoid number of not
needed memcpy.

---
 attrib/client.c              |    2 +-
 audio/manager.c              |   48 +++++---------
 plugins/adaptername.c        |    4 +-
 plugins/dbusoob.c            |    8 +--
 plugins/neard.c              |   16 ++---
 plugins/service.c            |   57 ++++++-----------
 plugins/wiimote.c            |    5 +-
 profiles/alert/server.c      |    4 +-
 profiles/gatt/gas.c          |   16 ++---
 profiles/health/hdp.c        |   14 ++---
 profiles/health/hdp_util.c   |   24 ++++---
 profiles/input/device.c      |    2 +-
 profiles/input/manager.c     |   11 +---
 profiles/network/manager.c   |   10 +--
 profiles/network/server.c    |    8 +--
 profiles/proximity/monitor.c |   13 ++--
 profiles/sap/manager.c       |    5 +-
 src/adapter.c                |   13 ++--
 src/adapter.h                |    2 +-
 src/attrib-server.c          |   18 +++---
 src/device.c                 |  143 +++++++++++++++++-------------------------
 src/manager.c                |    5 +-
 src/profile.c                |   28 ++++-----
 23 files changed, 179 insertions(+), 277 deletions(-)

diff --git a/attrib/client.c b/attrib/client.c
index d49804c..eea06ae 100644
--- a/attrib/client.c
+++ b/attrib/client.c
@@ -229,7 +229,7 @@ static void gatt_get_address(struct gatt_service *gatt, bdaddr_t *sba,
 	struct btd_adapter *adapter;
 
 	adapter = device_get_adapter(device);
-	adapter_get_address(adapter, sba);
+	bacpy(sba, adapter_get_address(adapter));
 	device_get_address(device, dba, bdaddr_type);
 }
 
diff --git a/audio/manager.c b/audio/manager.c
index dbc98d5..6ddea5a 100644
--- a/audio/manager.c
+++ b/audio/manager.c
@@ -507,7 +507,7 @@ static int headset_server_init(struct audio_adapter *adapter)
 	GError *err = NULL;
 	uint32_t features;
 	GIOChannel *io;
-	bdaddr_t src;
+	bdaddr_t *src;
 
 	if (config) {
 		gboolean tmp;
@@ -521,10 +521,10 @@ static int headset_server_init(struct audio_adapter *adapter)
 			master = tmp;
 	}
 
-	adapter_get_address(adapter->btd_adapter, &src);
+	src = adapter_get_address(adapter->btd_adapter);
 
 	io =  bt_io_listen(NULL, ag_confirm, adapter, NULL, &err,
-				BT_IO_OPT_SOURCE_BDADDR, &src,
+				BT_IO_OPT_SOURCE_BDADDR, src,
 				BT_IO_OPT_CHANNEL, chan,
 				BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_MEDIUM,
 				BT_IO_OPT_MASTER, master,
@@ -540,7 +540,7 @@ static int headset_server_init(struct audio_adapter *adapter)
 		goto failed;
 	}
 
-	if (add_record_to_server(&src, record) < 0) {
+	if (add_record_to_server(src, record) < 0) {
 		error("Unable to register HS AG service record");
 		sdp_record_free(record);
 		goto failed;
@@ -555,7 +555,7 @@ static int headset_server_init(struct audio_adapter *adapter)
 	chan = DEFAULT_HF_AG_CHANNEL;
 
 	io = bt_io_listen(NULL, ag_confirm, adapter, NULL, &err,
-				BT_IO_OPT_SOURCE_BDADDR, &src,
+				BT_IO_OPT_SOURCE_BDADDR, src,
 				BT_IO_OPT_CHANNEL, chan,
 				BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_MEDIUM,
 				BT_IO_OPT_MASTER, master,
@@ -571,7 +571,7 @@ static int headset_server_init(struct audio_adapter *adapter)
 		goto failed;
 	}
 
-	if (add_record_to_server(&src, record) < 0) {
+	if (add_record_to_server(src, record) < 0) {
 		error("Unable to register HF AG service record");
 		sdp_record_free(record);
 		goto failed;
@@ -608,7 +608,7 @@ static int gateway_server_init(struct audio_adapter *adapter)
 	gboolean master = TRUE;
 	GError *err = NULL;
 	GIOChannel *io;
-	bdaddr_t src;
+	bdaddr_t *src;
 
 	if (config) {
 		gboolean tmp;
@@ -622,10 +622,10 @@ static int gateway_server_init(struct audio_adapter *adapter)
 			master = tmp;
 	}
 
-	adapter_get_address(adapter->btd_adapter, &src);
+	src = adapter_get_address(adapter->btd_adapter);
 
 	io = bt_io_listen(NULL, hf_io_cb, adapter, NULL, &err,
-				BT_IO_OPT_SOURCE_BDADDR, &src,
+				BT_IO_OPT_SOURCE_BDADDR, src,
 				BT_IO_OPT_CHANNEL, chan,
 				BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_MEDIUM,
 				BT_IO_OPT_MASTER, master,
@@ -643,7 +643,7 @@ static int gateway_server_init(struct audio_adapter *adapter)
 		goto failed;
 	}
 
-	if (add_record_to_server(&src, record) < 0) {
+	if (add_record_to_server(src, record) < 0) {
 		error("Unable to register HFP HS service record");
 		sdp_record_free(record);
 		goto failed;
@@ -663,12 +663,11 @@ failed:
 static struct audio_device *get_audio_dev(struct btd_device *device)
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
-	bdaddr_t src, dst;
+	bdaddr_t dst;
 
-	adapter_get_address(adapter, &src);
 	device_get_address(device, &dst, NULL);
 
-	return manager_get_device(&src, &dst, TRUE);
+	return manager_get_device(adapter_get_address(adapter), &dst, TRUE);
 }
 
 static void audio_remove(struct btd_profile *p, struct btd_device *device)
@@ -970,7 +969,6 @@ static int a2dp_server_probe(struct btd_profile *p,
 {
 	struct audio_adapter *adp;
 	const gchar *path = adapter_get_path(adapter);
-	bdaddr_t src;
 	int err;
 
 	DBG("path %s", path);
@@ -979,9 +977,7 @@ static int a2dp_server_probe(struct btd_profile *p,
 	if (!adp)
 		return -EINVAL;
 
-	adapter_get_address(adapter, &src);
-
-	err = a2dp_register(&src, config);
+	err = a2dp_register(adapter_get_address(adapter), config);
 	if (err < 0)
 		audio_adapter_unref(adp);
 
@@ -993,7 +989,6 @@ static void a2dp_server_remove(struct btd_profile *p,
 {
 	struct audio_adapter *adp;
 	const gchar *path = adapter_get_path(adapter);
-	bdaddr_t src;
 
 	DBG("path %s", path);
 
@@ -1001,8 +996,7 @@ static void a2dp_server_remove(struct btd_profile *p,
 	if (!adp)
 		return;
 
-	adapter_get_address(adapter, &src);
-	a2dp_unregister(&src);
+	a2dp_unregister(adapter_get_address(adapter));
 	audio_adapter_unref(adp);
 }
 
@@ -1011,7 +1005,6 @@ static int avrcp_server_probe(struct btd_profile *p,
 {
 	struct audio_adapter *adp;
 	const gchar *path = adapter_get_path(adapter);
-	bdaddr_t src;
 	int err;
 
 	DBG("path %s", path);
@@ -1020,9 +1013,7 @@ static int avrcp_server_probe(struct btd_profile *p,
 	if (!adp)
 		return -EINVAL;
 
-	adapter_get_address(adapter, &src);
-
-	err = avrcp_register(&src, config);
+	err = avrcp_register(adapter_get_address(adapter), config);
 	if (err < 0)
 		audio_adapter_unref(adp);
 
@@ -1034,7 +1025,6 @@ static void avrcp_server_remove(struct btd_profile *p,
 {
 	struct audio_adapter *adp;
 	const gchar *path = adapter_get_path(adapter);
-	bdaddr_t src;
 
 	DBG("path %s", path);
 
@@ -1042,8 +1032,7 @@ static void avrcp_server_remove(struct btd_profile *p,
 	if (!adp)
 		return;
 
-	adapter_get_address(adapter, &src);
-	avrcp_unregister(&src);
+	avrcp_unregister(adapter_get_address(adapter));
 	audio_adapter_unref(adp);
 }
 
@@ -1051,7 +1040,6 @@ static int media_server_probe(struct btd_adapter *adapter)
 {
 	struct audio_adapter *adp;
 	const gchar *path = adapter_get_path(adapter);
-	bdaddr_t src;
 	int err;
 
 	DBG("path %s", path);
@@ -1060,9 +1048,7 @@ static int media_server_probe(struct btd_adapter *adapter)
 	if (!adp)
 		return -EINVAL;
 
-	adapter_get_address(adapter, &src);
-
-	err = media_register(path, &src);
+	err = media_register(path, adapter_get_address(adapter));
 	if (err < 0)
 		audio_adapter_unref(adp);
 
diff --git a/plugins/adaptername.c b/plugins/adaptername.c
index cd0ffb2..f58fb0f 100644
--- a/plugins/adaptername.c
+++ b/plugins/adaptername.c
@@ -200,7 +200,6 @@ static int adaptername_probe(struct btd_adapter *adapter)
 	int current_id;
 	char name[MAX_NAME_LENGTH + 1];
 	char *pretty_hostname;
-	bdaddr_t bdaddr;
 
 	pretty_hostname = read_pretty_host_name();
 	if (pretty_hostname != NULL) {
@@ -210,10 +209,9 @@ static int adaptername_probe(struct btd_adapter *adapter)
 	}
 
 	adapter_set_allow_name_changes(adapter, TRUE);
-	adapter_get_address(adapter, &bdaddr);
 	current_id = adapter_get_dev_id(adapter);
 
-	if (read_local_name(&bdaddr, name) < 0)
+	if (read_local_name(adapter_get_address(adapter), name) < 0)
 		expand_name(name, MAX_NAME_LENGTH, main_opts.name, current_id);
 
 	DBG("Setting name '%s' for device 'hci%d'", name, current_id);
diff --git a/plugins/dbusoob.c b/plugins/dbusoob.c
index ea40355..5c5b6ef 100644
--- a/plugins/dbusoob.c
+++ b/plugins/dbusoob.c
@@ -194,10 +194,8 @@ static gboolean parse_data(DBusMessageIter *data, struct oob_data *remote_data)
 static gboolean store_data(struct btd_adapter *adapter, struct oob_data *data)
 {
 	bdaddr_t bdaddr;
-	bdaddr_t local;
 
 	str2ba(data->addr, &bdaddr);
-	adapter_get_address(adapter, &local);
 
 	if (data->hash) {
 		if (btd_adapter_add_remote_oob_data(adapter, &bdaddr,
@@ -206,10 +204,12 @@ static gboolean store_data(struct btd_adapter *adapter, struct oob_data *data)
 	}
 
 	if (data->class)
-		write_remote_class(&local, &bdaddr, data->class);
+		write_remote_class(adapter_get_address(adapter), &bdaddr,
+								data->class);
 
 	if (data->name)
-		write_device_name(&local, &bdaddr, 0, data->name);
+		write_device_name(adapter_get_address(adapter), &bdaddr, 0,
+								data->name);
 
 	return TRUE;
 }
diff --git a/plugins/neard.c b/plugins/neard.c
index 632d454..2fe1785 100644
--- a/plugins/neard.c
+++ b/plugins/neard.c
@@ -180,13 +180,11 @@ static void read_local_complete(struct btd_adapter *adapter, uint8_t *hash,
 		int len;
 		uint8_t eir[NFC_OOB_EIR_MAX];
 		uint8_t *peir = eir;
-		bdaddr_t addr;
 		DBusMessageIter iter;
 		DBusMessageIter dict;
 
-		adapter_get_address(adapter, &addr);
-
-		len = eir_create_oob(&addr, btd_adapter_get_name(adapter),
+		len = eir_create_oob(adapter_get_address(adapter),
+				btd_adapter_get_name(adapter),
 				btd_adapter_get_class(adapter), hash,
 				randomizer, main_opts.did_vendor,
 				main_opts.did_product, main_opts.did_version,
@@ -254,7 +252,6 @@ static int process_eir(struct btd_adapter *adapter, uint8_t *eir, size_t size,
 {
 	struct btd_device *device;
 	struct eir_data eir_data;
-	bdaddr_t local;
 	char remote_address[18];
 
 	DBG("size %zu", size);
@@ -288,16 +285,15 @@ static int process_eir(struct btd_adapter *adapter, uint8_t *eir, size_t size,
 	if (device)
 		adapter_remove_device(adapter, device, TRUE);
 
-	adapter_get_address(adapter, &local);
-
 	/* store OOB data */
 	if (eir_data.class != 0)
-		write_remote_class(&local, &eir_data.addr, eir_data.class);
+		write_remote_class(adapter_get_address(adapter),
+					&eir_data.addr, eir_data.class);
 
 	/* TODO handle incomplete name? */
 	if (eir_data.name)
-		write_device_name(&local, &eir_data.addr, BDADDR_BREDR,
-								eir_data.name);
+		write_device_name(adapter_get_address(adapter), &eir_data.addr,
+						BDADDR_BREDR, eir_data.name);
 
 	if (eir_data.hash)
 		btd_adapter_add_remote_oob_data(adapter, &eir_data.addr,
diff --git a/plugins/service.c b/plugins/service.c
index 4a38270..e81452c 100644
--- a/plugins/service.c
+++ b/plugins/service.c
@@ -134,13 +134,20 @@ static void exit_callback(DBusConnection *conn, void *user_data)
 	g_free(user_record);
 }
 
+static const bdaddr_t *get_address(struct service_adapter *serv_adapter)
+{
+	if (serv_adapter->adapter)
+		return adapter_get_address(serv_adapter->adapter);
+
+	return BDADDR_ANY;
+}
+
 static int add_xml_record(const char *sender,
 			struct service_adapter *serv_adapter,
 			const char *record, dbus_uint32_t *handle)
 {
 	struct record_data *user_record;
 	sdp_record_t *sdp_record;
-	bdaddr_t src;
 
 	sdp_record = sdp_xml_parse_record(record, strlen(record));
 	if (!sdp_record) {
@@ -148,12 +155,7 @@ static int add_xml_record(const char *sender,
 		return -EIO;
 	}
 
-	if (serv_adapter->adapter)
-		adapter_get_address(serv_adapter->adapter, &src);
-	else
-		bacpy(&src, BDADDR_ANY);
-
-	if (add_record_to_server(&src, sdp_record) < 0) {
+	if (add_record_to_server(get_address(serv_adapter), sdp_record) < 0) {
 		error("Failed to register service record");
 		sdp_record_free(sdp_record);
 		return -EIO;
@@ -181,7 +183,6 @@ static DBusMessage *update_record(DBusMessage *msg,
 				struct service_adapter *serv_adapter,
 				dbus_uint32_t handle, sdp_record_t *sdp_record)
 {
-	bdaddr_t src;
 	int err;
 
 	if (remove_record_from_server(handle) < 0) {
@@ -189,13 +190,8 @@ static DBusMessage *update_record(DBusMessage *msg,
 		return btd_error_not_available(msg);
 	}
 
-	if (serv_adapter->adapter)
-		adapter_get_address(serv_adapter->adapter, &src);
-	else
-		bacpy(&src, BDADDR_ANY);
-
 	sdp_record->handle = handle;
-	err = add_record_to_server(&src, sdp_record);
+	err = add_record_to_server(get_address(serv_adapter), sdp_record);
 	if (err < 0) {
 		sdp_record_free(sdp_record);
 		error("Failed to update the service record");
@@ -322,7 +318,6 @@ static void auth_cb(DBusError *derr, void *user_data)
 	struct service_adapter *serv_adapter = user_data;
 	DBusMessage *reply;
 	struct pending_auth *auth;
-	bdaddr_t src;
 
 	auth = next_pending(serv_adapter);
 	if (auth == NULL) {
@@ -350,14 +345,9 @@ done:
 	if (auth == NULL)
 		return;
 
-	if (serv_adapter->adapter)
-		adapter_get_address(serv_adapter->adapter, &src);
-	else
-		bacpy(&src, BDADDR_ANY);
-
-	auth->id = btd_request_authorization(&src, &auth->dst,
-							auth->uuid, auth_cb,
-							serv_adapter);
+	auth->id = btd_request_authorization(get_address(serv_adapter),
+							&auth->dst, auth->uuid,
+							auth_cb, serv_adapter);
 }
 
 static DBusMessage *request_authorization(DBusConnection *conn,
@@ -373,7 +363,6 @@ static DBusMessage *request_authorization(DBusConnection *conn,
 	struct pending_auth *auth;
 	char uuid_str[MAX_LEN_UUID_STR];
 	uuid_t *uuid, *uuid128;
-	bdaddr_t src;
 
 	if (dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &address,
 					DBUS_TYPE_UINT32, &handle,
@@ -427,12 +416,8 @@ static DBusMessage *request_authorization(DBusConnection *conn,
 	if (auth == NULL)
 		return btd_error_does_not_exist(msg);
 
-	if (serv_adapter->adapter)
-		adapter_get_address(serv_adapter->adapter, &src);
-	else
-		bacpy(&src, BDADDR_ANY);
-
-	auth->id = btd_request_authorization(&src, &auth->dst, auth->uuid,
+	auth->id = btd_request_authorization(get_address(serv_adapter),
+							&auth->dst, auth->uuid,
 							auth_cb, serv_adapter);
 	if (auth->id == 0) {
 		serv_adapter->pending_list = g_slist_remove(serv_adapter->pending_list,
@@ -451,7 +436,6 @@ static DBusMessage *cancel_authorization(DBusConnection *conn,
 	struct service_adapter *serv_adapter = data;
 	struct pending_auth *auth;
 	const gchar *sender;
-	bdaddr_t src;
 
 	sender = dbus_message_get_sender(msg);
 
@@ -473,14 +457,9 @@ static DBusMessage *cancel_authorization(DBusConnection *conn,
 	if (auth == NULL)
 		goto done;
 
-	if (serv_adapter->adapter)
-		adapter_get_address(serv_adapter->adapter, &src);
-	else
-		bacpy(&src, BDADDR_ANY);
-
-	auth->id = btd_request_authorization(&src, &auth->dst,
-							auth->uuid, auth_cb,
-							serv_adapter);
+	auth->id = btd_request_authorization(get_address(serv_adapter),
+							&auth->dst, auth->uuid,
+							auth_cb, serv_adapter);
 
 done:
 	return dbus_message_new_method_return(msg);
diff --git a/plugins/wiimote.c b/plugins/wiimote.c
index f7fad60..93d1e2d 100644
--- a/plugins/wiimote.c
+++ b/plugins/wiimote.c
@@ -62,10 +62,9 @@ static ssize_t wii_pincb(struct btd_adapter *adapter, struct btd_device *device,
 						char *pinbuf, gboolean *display)
 {
 	uint16_t vendor, product;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 	char addr[18], name[25];
 
-	adapter_get_address(adapter, &sba);
 	device_get_address(device, &dba, NULL);
 	ba2str(&dba, addr);
 
@@ -79,7 +78,7 @@ static ssize_t wii_pincb(struct btd_adapter *adapter, struct btd_device *device,
 				g_str_equal(name, "Nintendo RVL-WBC-01") ||
 				(vendor == 0x057e && product == 0x0306)) {
 		DBG("Forcing fixed pin on detected wiimote %s", addr);
-		memcpy(pinbuf, &sba, 6);
+		memcpy(pinbuf, adapter_get_address(adapter), 6);
 		return 6;
 	}
 
diff --git a/profiles/alert/server.c b/profiles/alert/server.c
index 0c17176..b8ea141 100644
--- a/profiles/alert/server.c
+++ b/profiles/alert/server.c
@@ -415,10 +415,8 @@ static void filter_devices_notify(char *key, char *value, void *user_data)
 static void create_filename(char *filename, struct btd_adapter *adapter)
 {
 	char srcaddr[18];
-	bdaddr_t src;
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 
 	create_name(filename, PATH_MAX, STORAGEDIR, srcaddr, "ccc");
 }
diff --git a/profiles/gatt/gas.c b/profiles/gatt/gas.c
index da6d555..f0fcbe7 100644
--- a/profiles/gatt/gas.c
+++ b/profiles/gatt/gas.c
@@ -168,7 +168,7 @@ static void ccc_written_cb(guint8 status, const guint8 *pdu, guint16 plen,
 							gpointer user_data)
 {
 	struct gas *gas = user_data;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 	uint8_t bdaddr_type;
 
 	if (status) {
@@ -179,11 +179,11 @@ static void ccc_written_cb(guint8 status, const guint8 *pdu, guint16 plen,
 
 	DBG("Service Changed indications enabled");
 
-	adapter_get_address(device_get_adapter(gas->device), &sba);
 	device_get_address(gas->device, &dba, &bdaddr_type);
 
-	write_ctp_handle(&sba, &dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
-							gas->changed_handle);
+	write_ctp_handle(adapter_get_address(device_get_adapter(gas->device)),
+				&dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
+				gas->changed_handle);
 }
 
 static void write_ccc(GAttrib *attrib, uint16_t handle, gpointer user_data)
@@ -377,7 +377,7 @@ int gas_register(struct btd_device *device, struct att_range *gap,
 						struct att_range *gatt)
 {
 	struct gas *gas;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 	uint8_t bdaddr_type;
 
 	gas = g_new0(struct gas, 1);
@@ -394,11 +394,11 @@ int gas_register(struct btd_device *device, struct att_range *gap,
 						attio_connected_cb,
 						attio_disconnected_cb, gas);
 
-	adapter_get_address(device_get_adapter(gas->device), &sba);
 	device_get_address(gas->device, &dba, &bdaddr_type);
 
-	read_ctp_handle(&sba, &dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
-							&gas->changed_handle);
+	read_ctp_handle(adapter_get_address(device_get_adapter(gas->device)),
+				&dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
+				&gas->changed_handle);
 
 	return 0;
 }
diff --git a/profiles/health/hdp.c b/profiles/health/hdp.c
index d262a2a..d07462a 100644
--- a/profiles/health/hdp.c
+++ b/profiles/health/hdp.c
@@ -1317,7 +1317,6 @@ static void release_adapter_instance(struct hdp_adapter *hdp_adapter)
 static gboolean update_adapter(struct hdp_adapter *hdp_adapter)
 {
 	GError *err = NULL;
-	bdaddr_t addr;
 
 	if (applications == NULL) {
 		release_adapter_instance(hdp_adapter);
@@ -1327,12 +1326,13 @@ static gboolean update_adapter(struct hdp_adapter *hdp_adapter)
 	if (hdp_adapter->mi != NULL)
 		goto update;
 
-	adapter_get_address(hdp_adapter->btd_adapter, &addr);
-	hdp_adapter->mi = mcap_create_instance(&addr, BT_IO_SEC_MEDIUM, 0, 0,
-					mcl_connected, mcl_reconnected,
-					mcl_disconnected, mcl_uncached,
-					NULL, /* CSP is not used by now */
-					hdp_adapter, &err);
+	hdp_adapter->mi = mcap_create_instance(
+				adapter_get_address(hdp_adapter->btd_adapter),
+				BT_IO_SEC_MEDIUM, 0, 0,
+				mcl_connected, mcl_reconnected,
+				mcl_disconnected, mcl_uncached,
+				NULL, /* CSP is not used by now */
+				hdp_adapter, &err);
 
 	if (hdp_adapter->mi == NULL) {
 		error("Error creating the MCAP instance: %s", err->message);
diff --git a/profiles/health/hdp_util.c b/profiles/health/hdp_util.c
index 3afd715..931c1dd 100644
--- a/profiles/health/hdp_util.c
+++ b/profiles/health/hdp_util.c
@@ -695,7 +695,6 @@ static gboolean register_mcap_features(sdp_record_t *sdp_record)
 gboolean hdp_update_sdp_record(struct hdp_adapter *adapter, GSList *app_list)
 {
 	sdp_record_t *sdp_record;
-	bdaddr_t addr;
 
 	if (adapter->sdp_handler > 0)
 		remove_record_from_server(adapter->sdp_handler);
@@ -738,9 +737,8 @@ gboolean hdp_update_sdp_record(struct hdp_adapter *adapter, GSList *app_list)
 	if (sdp_set_record_state(sdp_record, adapter->record_state++) < 0)
 		goto fail;
 
-	adapter_get_address(adapter->btd_adapter, &addr);
-
-	if (add_record_to_server(&addr, sdp_record) < 0)
+	if (add_record_to_server(adapter_get_address(adapter->btd_adapter),
+					sdp_record) < 0)
 		goto fail;
 	adapter->sdp_handler = sdp_record->handle;
 	return TRUE;
@@ -859,11 +857,11 @@ gboolean hdp_get_mdep(struct hdp_device *device, struct hdp_application *app,
 				GDestroyNotify destroy, GError **err)
 {
 	struct get_mdep_data *mdep_data;
-	bdaddr_t dst, src;
+	bdaddr_t dst, *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
-	adapter_get_address(device_get_adapter(device->dev), &src);
+	src = adapter_get_address(device_get_adapter(device->dev));
 
 	mdep_data = g_new0(struct get_mdep_data, 1);
 	mdep_data->app = hdp_application_ref(app);
@@ -872,7 +870,7 @@ gboolean hdp_get_mdep(struct hdp_device *device, struct hdp_application *app,
 	mdep_data->destroy = destroy;
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(&src, &dst, &uuid, get_mdep_cb, mdep_data,
+	if (bt_search_service(src, &dst, &uuid, get_mdep_cb, mdep_data,
 							free_mdep_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
@@ -1088,11 +1086,11 @@ gboolean hdp_establish_mcl(struct hdp_device *device,
 						GError **err)
 {
 	struct conn_mcl_data *conn_data;
-	bdaddr_t dst, src;
+	bdaddr_t dst, *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
-	adapter_get_address(device_get_adapter(device->dev), &src);
+	src = adapter_get_address(device_get_adapter(device->dev));
 
 	conn_data = g_new0(struct conn_mcl_data, 1);
 	conn_data->refs = 1;
@@ -1102,7 +1100,7 @@ gboolean hdp_establish_mcl(struct hdp_device *device,
 	conn_data->dev = health_device_ref(device);
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(&src, &dst, &uuid, search_cb, conn_data,
+	if (bt_search_service(src, &dst, &uuid, search_cb, conn_data,
 						destroy_con_mcl_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
@@ -1158,11 +1156,11 @@ gboolean hdp_get_dcpsm(struct hdp_device *device, hdp_continue_dcpsm_f func,
 							GError **err)
 {
 	struct get_dcpsm_data *dcpsm_data;
-	bdaddr_t dst, src;
+	bdaddr_t dst, *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
-	adapter_get_address(device_get_adapter(device->dev), &src);
+	src = adapter_get_address(device_get_adapter(device->dev));
 
 	dcpsm_data = g_new0(struct get_dcpsm_data, 1);
 	dcpsm_data->func = func;
@@ -1170,7 +1168,7 @@ gboolean hdp_get_dcpsm(struct hdp_device *device, hdp_continue_dcpsm_f func,
 	dcpsm_data->destroy = destroy;
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(&src, &dst, &uuid, get_dcpsm_cb, dcpsm_data,
+	if (bt_search_service(src, &dst, &uuid, get_dcpsm_cb, dcpsm_data,
 							free_dcpsm_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
diff --git a/profiles/input/device.c b/profiles/input/device.c
index 07c72c0..ed50e3b 100644
--- a/profiles/input/device.c
+++ b/profiles/input/device.c
@@ -785,7 +785,7 @@ static struct input_device *input_device_new(struct btd_device *device,
 	uint8_t dst_type;
 
 	idev = g_new0(struct input_device, 1);
-	adapter_get_address(adapter, &idev->src);
+	bacpy(&idev->src, adapter_get_address(adapter));
 	device_get_address(device, &idev->dst, &dst_type);
 	idev->device = btd_device_ref(device);
 	idev->path = g_strdup(path);
diff --git a/profiles/input/manager.c b/profiles/input/manager.c
index 32698aa..3f68620 100644
--- a/profiles/input/manager.c
+++ b/profiles/input/manager.c
@@ -77,12 +77,9 @@ static void hid_device_remove(struct btd_profile *p, struct btd_device *device)
 
 static int hid_server_probe(struct btd_profile *p, struct btd_adapter *adapter)
 {
-	bdaddr_t src;
 	int ret;
 
-	adapter_get_address(adapter, &src);
-
-	ret = server_start(&src);
+	ret = server_start(adapter_get_address(adapter));
 	if (ret < 0)
 		return ret;
 
@@ -94,11 +91,7 @@ static int hid_server_probe(struct btd_profile *p, struct btd_adapter *adapter)
 static void hid_server_remove(struct btd_profile *p,
 						struct btd_adapter *adapter)
 {
-	bdaddr_t src;
-
-	adapter_get_address(adapter, &src);
-
-	server_stop(&src);
+	server_stop(adapter_get_address(adapter));
 
 	adapters = g_slist_remove(adapters, adapter);
 	btd_adapter_unref(adapter);
diff --git a/profiles/network/manager.c b/profiles/network/manager.c
index e1f4164..661181d 100644
--- a/profiles/network/manager.c
+++ b/profiles/network/manager.c
@@ -78,19 +78,19 @@ static int network_probe(struct btd_profile *p, struct btd_device *device,
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
 	const gchar *path = device_get_path(device);
-	bdaddr_t src, dst;
+	bdaddr_t *src, dst;
 
 	DBG("path %s", path);
 
-	adapter_get_address(adapter, &src);
+	src = adapter_get_address(adapter);
 	device_get_address(device, &dst, NULL);
 
 	if (g_slist_find_custom(uuids, PANU_UUID, bt_uuid_strcmp))
-		connection_register(device, path, &src, &dst, BNEP_SVC_PANU);
+		connection_register(device, path, src, &dst, BNEP_SVC_PANU);
 	if (g_slist_find_custom(uuids, GN_UUID, bt_uuid_strcmp))
-		connection_register(device, path, &src, &dst, BNEP_SVC_GN);
+		connection_register(device, path, src, &dst, BNEP_SVC_GN);
 	if (g_slist_find_custom(uuids, NAP_UUID, bt_uuid_strcmp))
-		connection_register(device, path, &src, &dst, BNEP_SVC_NAP);
+		connection_register(device, path, src, &dst, BNEP_SVC_NAP);
 
 	return 0;
 }
diff --git a/profiles/network/server.c b/profiles/network/server.c
index 6ee4770..ccf6e69 100644
--- a/profiles/network/server.c
+++ b/profiles/network/server.c
@@ -742,16 +742,14 @@ static struct network_adapter *create_adapter(struct btd_adapter *adapter)
 {
 	struct network_adapter *na;
 	GError *err = NULL;
-	bdaddr_t src;
 
 	na = g_new0(struct network_adapter, 1);
 	na->adapter = btd_adapter_ref(adapter);
 
-	adapter_get_address(adapter, &src);
-
 	na->io = bt_io_listen(NULL, confirm_event, na,
 				NULL, &err,
-				BT_IO_OPT_SOURCE_BDADDR, &src,
+				BT_IO_OPT_SOURCE_BDADDR,
+				adapter_get_address(adapter),
 				BT_IO_OPT_PSM, BNEP_PSM,
 				BT_IO_OPT_OMTU, BNEP_MTU,
 				BT_IO_OPT_IMTU, BNEP_MTU,
@@ -803,7 +801,7 @@ int server_register(struct btd_adapter *adapter)
 		return -1;
 	}
 
-	adapter_get_address(adapter, &ns->src);
+	bacpy(&ns->src, adapter_get_address(adapter));
 	ns->id = BNEP_SVC_NAP;
 	ns->na = na;
 	ns->record_id = 0;
diff --git a/profiles/proximity/monitor.c b/profiles/proximity/monitor.c
index 6444a75..477eeea 100644
--- a/profiles/proximity/monitor.c
+++ b/profiles/proximity/monitor.c
@@ -407,7 +407,7 @@ static DBusMessage *set_link_loss_alert(DBusConnection *conn, DBusMessage *msg,
 {
 	struct monitor *monitor = data;
 	struct btd_device *device = monitor->device;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 
 	if (!level_is_valid(level))
 		return btd_error_invalid_args(msg);
@@ -418,10 +418,10 @@ static DBusMessage *set_link_loss_alert(DBusConnection *conn, DBusMessage *msg,
 	g_free(monitor->linklosslevel);
 	monitor->linklosslevel = g_strdup(level);
 
-	adapter_get_address(device_get_adapter(device), &sba);
 	device_get_address(device, &dba, NULL);
 
-	write_proximity_config(&sba, &dba, "LinkLossAlertLevel", level);
+	write_proximity_config(adapter_get_address(device_get_adapter(device)),
+					&dba, "LinkLossAlertLevel", level);
 
 	if (monitor->attrib)
 		write_alert_level(monitor);
@@ -593,13 +593,14 @@ int monitor_register(struct btd_device *device,
 {
 	const char *path = device_get_path(device);
 	struct monitor *monitor;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 	char *level;
 
-	adapter_get_address(device_get_adapter(device), &sba);
 	device_get_address(device, &dba, NULL);
 
-	level = read_proximity_config(&sba, &dba, "LinkLossAlertLevel");
+	level = read_proximity_config(
+			adapter_get_address(device_get_adapter(device)),
+			&dba, "LinkLossAlertLevel");
 
 	monitor = g_new0(struct monitor, 1);
 	monitor->device = btd_device_ref(device);
diff --git a/profiles/sap/manager.c b/profiles/sap/manager.c
index cb47b93..fddd7aa 100644
--- a/profiles/sap/manager.c
+++ b/profiles/sap/manager.c
@@ -35,13 +35,10 @@
 static int sap_server_probe(struct btd_profile *p, struct btd_adapter *adapter)
 {
 	const char *path = adapter_get_path(adapter);
-	bdaddr_t src;
 
 	DBG("path %s", path);
 
-	adapter_get_address(adapter, &src);
-
-	return sap_server_register(path, &src);
+	return sap_server_register(path, adapter_get_address(adapter));
 }
 
 static void sap_server_remove(struct btd_profile *p,
diff --git a/src/adapter.c b/src/adapter.c
index 056f2a2..6cb6f7c 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -1870,7 +1870,6 @@ static void create_stored_device_from_ltks(char *key, char *value,
 	struct smp_ltk_info *info;
 	char address[18], srcaddr[18];
 	uint8_t bdaddr_type;
-	bdaddr_t src;
 
 	if (sscanf(key, "%17s#%hhu", address, &bdaddr_type) < 2)
 		return;
@@ -1885,8 +1884,7 @@ static void create_stored_device_from_ltks(char *key, char *value,
 					(GCompareFunc) device_address_cmp))
 		return;
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 
 	if (g_strcmp0(srcaddr, address) == 0)
 		return;
@@ -2670,9 +2668,9 @@ const gchar *adapter_get_path(struct btd_adapter *adapter)
 	return adapter->path;
 }
 
-void adapter_get_address(struct btd_adapter *adapter, bdaddr_t *bdaddr)
+bdaddr_t *adapter_get_address(struct btd_adapter *adapter)
 {
-	bacpy(bdaddr, &adapter->bdaddr);
+	return &adapter->bdaddr;
 }
 
 void adapter_set_allow_name_changes(struct btd_adapter *adapter,
@@ -3618,7 +3616,7 @@ ssize_t btd_adapter_get_pin(struct btd_adapter *adapter, struct btd_device *dev,
 {
 	GSList *l;
 	btd_adapter_pin_cb_t cb;
-	bdaddr_t sba, dba;
+	bdaddr_t dba;
 	ssize_t ret;
 
 	for (l = adapter->pin_callbacks; l != NULL; l = g_slist_next(l)) {
@@ -3628,10 +3626,9 @@ ssize_t btd_adapter_get_pin(struct btd_adapter *adapter, struct btd_device *dev,
 			return ret;
 	}
 
-	adapter_get_address(adapter, &sba);
 	device_get_address(dev, &dba, NULL);
 
-	return read_pin_code(&sba, &dba, pin_buf);
+	return read_pin_code(adapter_get_address(adapter), &dba, pin_buf);
 }
 
 void btd_adapter_register_powered_callback(struct btd_adapter *adapter,
diff --git a/src/adapter.h b/src/adapter.h
index 7ca8d95..f3599b5 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -122,7 +122,7 @@ void adapter_set_discovering(struct btd_adapter *adapter,
 						gboolean discovering);
 uint16_t adapter_get_dev_id(struct btd_adapter *adapter);
 const gchar *adapter_get_path(struct btd_adapter *adapter);
-void adapter_get_address(struct btd_adapter *adapter, bdaddr_t *bdaddr);
+bdaddr_t *adapter_get_address(struct btd_adapter *adapter);
 struct remote_dev_info *adapter_search_found_devices(struct btd_adapter *adapter,
 							bdaddr_t *bdaddr);
 void adapter_update_found_devices(struct btd_adapter *adapter,
diff --git a/src/attrib-server.c b/src/attrib-server.c
index 9b03e54..e7e2531 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -154,11 +154,8 @@ static gint adapter_cmp_addr(gconstpointer a, gconstpointer b)
 {
 	const struct gatt_server *server = a;
 	const bdaddr_t *bdaddr = b;
-	bdaddr_t src;
-
-	adapter_get_address(server->adapter, &src);
 
-	return bacmp(&src, bdaddr);
+	return bacmp(adapter_get_address(server->adapter), bdaddr);
 }
 
 static gint adapter_cmp(gconstpointer a, gconstpointer b)
@@ -302,7 +299,6 @@ static uint32_t attrib_create_sdp_new(struct gatt_server *server,
 	struct attribute *a;
 	uint16_t end = 0;
 	uuid_t svc, gap_uuid;
-	bdaddr_t addr;
 
 	a = find_svc_range(server, handle, &end);
 
@@ -330,8 +326,8 @@ static uint32_t attrib_create_sdp_new(struct gatt_server *server,
 				"http://www.bluez.org/");
 	}
 
-	adapter_get_address(server->adapter, &addr);
-	if (add_record_to_server(&addr, record) == 0)
+	if (add_record_to_server(adapter_get_address(server->adapter), record)
+			== 0)
 		return record->handle;
 
 	sdp_record_free(record);
@@ -1241,19 +1237,19 @@ int btd_adapter_gatt_server_start(struct btd_adapter *adapter)
 {
 	struct gatt_server *server;
 	GError *gerr = NULL;
-	bdaddr_t addr;
+	bdaddr_t *addr;
 
 	DBG("Start GATT server in hci%d", adapter_get_dev_id(adapter));
 
 	server = g_new0(struct gatt_server, 1);
 	server->adapter = btd_adapter_ref(adapter);
 
-	adapter_get_address(server->adapter, &addr);
+	addr = adapter_get_address(server->adapter);
 
 	/* BR/EDR socket */
 	server->l2cap_io = bt_io_listen(NULL, confirm_event,
 					NULL, NULL, &gerr,
-					BT_IO_OPT_SOURCE_BDADDR, &addr,
+					BT_IO_OPT_SOURCE_BDADDR, addr,
 					BT_IO_OPT_PSM, ATT_PSM,
 					BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_LOW,
 					BT_IO_OPT_INVALID);
@@ -1273,7 +1269,7 @@ int btd_adapter_gatt_server_start(struct btd_adapter *adapter)
 	/* LE socket */
 	server->le_io = bt_io_listen(NULL, confirm_event,
 					&server->le_io, NULL, &gerr,
-					BT_IO_OPT_SOURCE_BDADDR, &addr,
+					BT_IO_OPT_SOURCE_BDADDR, addr,
 					BT_IO_OPT_CID, ATT_CID,
 					BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_LOW,
 					BT_IO_OPT_INVALID);
diff --git a/src/device.c b/src/device.c
index 0339bcf..d5aa8e1 100644
--- a/src/device.c
+++ b/src/device.c
@@ -221,14 +221,11 @@ static void browse_request_cancel(struct browse_req *req)
 {
 	struct btd_device *device = req->device;
 	struct btd_adapter *adapter = device->adapter;
-	bdaddr_t src;
 
 	if (device_is_creating(device, NULL))
 		device_set_temporary(device, TRUE);
 
-	adapter_get_address(adapter, &src);
-
-	bt_cancel_discovery(&src, &device->bdaddr);
+	bt_cancel_discovery(adapter_get_address(adapter), &device->bdaddr);
 
 	attio_cleanup(device);
 
@@ -313,7 +310,6 @@ static DBusMessage *get_properties(DBusConnection *conn,
 	DBusMessage *reply;
 	DBusMessageIter iter;
 	DBusMessageIter dict;
-	bdaddr_t src;
 	char name[MAX_NAME_LENGTH + 1], dstaddr[18];
 	char **str;
 	const char *ptr, *icon = NULL;
@@ -343,7 +339,6 @@ static DBusMessage *get_properties(DBusConnection *conn,
 	/* Name */
 	ptr = NULL;
 	memset(name, 0, sizeof(name));
-	adapter_get_address(adapter, &src);
 
 	ptr = device->name;
 	dict_append_entry(&dict, "Name", DBUS_TYPE_STRING, &ptr);
@@ -359,12 +354,13 @@ static DBusMessage *get_properties(DBusConnection *conn,
 	dict_append_entry(&dict, "Alias", DBUS_TYPE_STRING, &ptr);
 
 	/* Class */
-	if (read_remote_class(&src, &device->bdaddr, &class) == 0) {
+	if (read_remote_class(adapter_get_address(adapter),
+				&device->bdaddr, &class) == 0) {
 		icon = class_to_icon(class);
 
 		dict_append_entry(&dict, "Class", DBUS_TYPE_UINT32, &class);
-	} else if (read_remote_appearance(&src, &device->bdaddr,
-					device->bdaddr_type, &app) == 0) {
+	} else if (read_remote_appearance(adapter_get_address(adapter),
+			&device->bdaddr, device->bdaddr_type, &app) == 0) {
 		/* Appearance */
 		icon = gap_appearance_to_icon(app);
 
@@ -437,7 +433,6 @@ static DBusMessage *set_alias(DBusMessage *msg, const char *alias, void *data)
 	struct btd_device *device = data;
 	struct btd_adapter *adapter = device->adapter;
 	char srcaddr[18], dstaddr[18];
-	bdaddr_t src;
 	int err;
 
 	/* No change */
@@ -445,8 +440,7 @@ static DBusMessage *set_alias(DBusMessage *msg, const char *alias, void *data)
 			g_strcmp0(device->alias, alias) == 0)
 		return dbus_message_new_method_return(msg);
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 	ba2str(&device->bdaddr, dstaddr);
 
 	/* Remove alias if empty string */
@@ -470,14 +464,12 @@ static DBusMessage *set_trust(DBusMessage *msg, gboolean value, void *data)
 	struct btd_device *device = data;
 	struct btd_adapter *adapter = device->adapter;
 	char srcaddr[18], dstaddr[18];
-	bdaddr_t src;
 	int err;
 
 	if (device->trusted == value)
 		return dbus_message_new_method_return(msg);
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 	ba2str(&device->bdaddr, dstaddr);
 
 	err = write_trust(srcaddr, dstaddr, device->bdaddr_type, value);
@@ -516,7 +508,6 @@ static gboolean do_disconnect(gpointer user_data)
 int device_block(struct btd_device *device, gboolean update_only)
 {
 	int err = 0;
-	bdaddr_t src;
 
 	if (device->blocked)
 		return 0;
@@ -535,9 +526,8 @@ int device_block(struct btd_device *device, gboolean update_only)
 
 	device->blocked = TRUE;
 
-	adapter_get_address(device->adapter, &src);
-
-	err = write_blocked(&src, &device->bdaddr, device->bdaddr_type, TRUE);
+	err = write_blocked(adapter_get_address(device->adapter),
+				&device->bdaddr, device->bdaddr_type, TRUE);
 	if (err < 0)
 		error("write_blocked(): %s (%d)", strerror(-err), -err);
 
@@ -554,7 +544,6 @@ int device_unblock(struct btd_device *device, gboolean silent,
 							gboolean update_only)
 {
 	int err = 0;
-	bdaddr_t src;
 
 	if (!device->blocked)
 		return 0;
@@ -568,9 +557,8 @@ int device_unblock(struct btd_device *device, gboolean silent,
 
 	device->blocked = FALSE;
 
-	adapter_get_address(device->adapter, &src);
-
-	err = write_blocked(&src, &device->bdaddr, device->bdaddr_type, FALSE);
+	err = write_blocked(adapter_get_address(device->adapter),
+				&device->bdaddr, device->bdaddr_type, FALSE);
 	if (err < 0)
 		error("write_blocked(): %s (%d)", strerror(-err), -err);
 
@@ -1128,7 +1116,7 @@ struct btd_device *device_create(struct btd_adapter *adapter,
 	gchar *address_up;
 	struct btd_device *device;
 	const gchar *adapter_path = adapter_get_path(adapter);
-	bdaddr_t src;
+	bdaddr_t *src;
 	char srcaddr[18], alias[MAX_NAME_LENGTH + 1];
 	uint16_t vendor, product, version;
 
@@ -1154,25 +1142,25 @@ struct btd_device *device_create(struct btd_adapter *adapter,
 	str2ba(address, &device->bdaddr);
 	device->adapter = adapter;
 	device->bdaddr_type = bdaddr_type;
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	src = adapter_get_address(adapter);
+	ba2str(src, srcaddr);
 
 	read_device_name(srcaddr, address, bdaddr_type, device->name);
 	if (read_device_alias(srcaddr, address, bdaddr_type, alias,
 							sizeof(alias)) == 0)
 		device->alias = g_strdup(alias);
-	device->trusted = read_trust(&src, address, device->bdaddr_type);
+	device->trusted = read_trust(src, address, device->bdaddr_type);
 
-	if (read_blocked(&src, &device->bdaddr, device->bdaddr_type))
+	if (read_blocked(src, &device->bdaddr, device->bdaddr_type))
 		device_block(device, FALSE);
 
-	if (read_link_key(&src, &device->bdaddr, device->bdaddr_type, NULL,
+	if (read_link_key(src, &device->bdaddr, device->bdaddr_type, NULL,
 								NULL) == 0) {
 		device_set_paired(device, TRUE);
 		device_set_bonded(device, TRUE);
 	}
 
-	if (device_is_le(device) && has_longtermkeys(&src, &device->bdaddr,
+	if (device_is_le(device) && has_longtermkeys(src, &device->bdaddr,
 							device->bdaddr_type)) {
 		device_set_paired(device, TRUE);
 		device_set_bonded(device, TRUE);
@@ -1234,27 +1222,27 @@ uint16_t btd_device_get_version(struct btd_device *device)
 
 static void device_remove_stored(struct btd_device *device)
 {
-	bdaddr_t src, dst;
+	bdaddr_t *src, dst;
 	uint8_t dst_type;
 
-	adapter_get_address(device->adapter, &src);
+	src = adapter_get_address(device->adapter);
 	device_get_address(device, &dst, &dst_type);
 
-	delete_entry(&src, "profiles", &dst, dst_type);
-	delete_entry(&src, "trusts", &dst, dst_type);
+	delete_entry(src, "profiles", &dst, dst_type);
+	delete_entry(src, "trusts", &dst, dst_type);
 
 	if (device_is_bonded(device)) {
-		delete_entry(&src, "linkkeys", &dst, dst_type);
-		delete_entry(&src, "aliases", &dst, dst_type);
-		delete_entry(&src, "longtermkeys", &dst, dst_type);
+		delete_entry(src, "linkkeys", &dst, dst_type);
+		delete_entry(src, "aliases", &dst, dst_type);
+		delete_entry(src, "longtermkeys", &dst, dst_type);
 
 		device_set_bonded(device, FALSE);
 		device->paired = FALSE;
 		btd_adapter_remove_bonding(device->adapter, &dst, dst_type);
 	}
 
-	delete_all_records(&src, &dst, dst_type);
-	delete_device_service(&src, &dst, dst_type);
+	delete_all_records(src, &dst, dst_type);
+	delete_device_service(src, &dst, dst_type);
 
 	if (device->blocked)
 		device_unblock(device, TRUE, FALSE);
@@ -1467,15 +1455,13 @@ static void device_remove_profiles(struct btd_device *device, GSList *uuids)
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
 	char srcaddr[18], dstaddr[18];
-	bdaddr_t src;
 	sdp_list_t *records;
 	GSList *l, *next;
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 	ba2str(&device->bdaddr, dstaddr);
 
-	records = read_records(&src, &device->bdaddr);
+	records = read_records(adapter_get_address(adapter), &device->bdaddr);
 
 	DBG("Removing profiles for %s", dstaddr);
 
@@ -1547,10 +1533,8 @@ static void update_bredr_services(struct browse_req *req, sdp_list_t *recs)
 	sdp_list_t *seq;
 	char srcaddr[18], dstaddr[18];
 	uint8_t dst_type;
-	bdaddr_t src;
 
-	adapter_get_address(adapter, &src);
-	ba2str(&src, srcaddr);
+	ba2str(adapter_get_address(adapter), srcaddr);
 	ba2str(&device->bdaddr, dstaddr);
 
 	for (seq = recs; seq; seq = seq->next) {
@@ -1681,19 +1665,18 @@ static void update_gatt_services(struct browse_req *req, GSList *current,
 static void store_profiles(struct btd_device *device)
 {
 	struct btd_adapter *adapter = device->adapter;
-	bdaddr_t src;
 	char *str;
 
-	adapter_get_address(adapter, &src);
-
 	if (!device->uuids) {
-		write_device_profiles(&src, &device->bdaddr,
-				      device->bdaddr_type, "");
+		write_device_profiles(adapter_get_address(adapter),
+					&device->bdaddr, device->bdaddr_type,
+					"");
 		return;
 	}
 
 	str = bt_list2string(device->uuids);
-	write_device_profiles(&src, &device->bdaddr, device->bdaddr_type, str);
+	write_device_profiles(adapter_get_address(adapter), &device->bdaddr,
+						device->bdaddr_type, str);
 	g_free(str);
 }
 
@@ -1832,7 +1815,6 @@ static void browse_cb(sdp_list_t *recs, int err, gpointer user_data)
 	struct browse_req *req = user_data;
 	struct btd_device *device = req->device;
 	struct btd_adapter *adapter = device->adapter;
-	bdaddr_t src;
 	uuid_t uuid;
 
 	/* If we have a valid response and req->search_uuid == 2, then L2CAP
@@ -1847,12 +1829,11 @@ static void browse_cb(sdp_list_t *recs, int err, gpointer user_data)
 
 	update_bredr_services(req, recs);
 
-	adapter_get_address(adapter, &src);
-
 	/* Search for mandatory uuids */
 	if (uuid_list[req->search_uuid]) {
 		sdp_uuid16_create(&uuid, uuid_list[req->search_uuid++]);
-		bt_search_service(&src, &device->bdaddr, &uuid,
+		bt_search_service(adapter_get_address(adapter),
+						&device->bdaddr, &uuid,
 						browse_cb, user_data, NULL);
 		return;
 	}
@@ -1902,13 +1883,13 @@ static char *primary_list_to_string(GSList *primary_list)
 static void store_services(struct btd_device *device)
 {
 	struct btd_adapter *adapter = device->adapter;
-	bdaddr_t dba, sba;
+	bdaddr_t dba;
 	char *str = primary_list_to_string(device->primaries);
 
-	adapter_get_address(adapter, &sba);
 	device_get_address(device, &dba, NULL);
 
-	write_device_services(&sba, &dba, device->bdaddr_type, str);
+	write_device_services(adapter_get_address(adapter), &dba,
+						device->bdaddr_type, str);
 
 	g_free(str);
 }
@@ -2130,9 +2111,7 @@ GIOChannel *device_att_connect(gpointer user_data)
 	GIOChannel *io;
 	GError *gerr = NULL;
 	char addr[18];
-	bdaddr_t sba;
 
-	adapter_get_address(adapter, &sba);
 	ba2str(&device->bdaddr, addr);
 
 	DBG("Connection attempt to: %s", addr);
@@ -2145,7 +2124,8 @@ GIOChannel *device_att_connect(gpointer user_data)
 	if (device_is_bredr(device)) {
 		io = bt_io_connect(att_connect_cb,
 					attcb, NULL, &gerr,
-					BT_IO_OPT_SOURCE_BDADDR, &sba,
+					BT_IO_OPT_SOURCE_BDADDR,
+					adapter_get_address(adapter),
 					BT_IO_OPT_DEST_BDADDR, &device->bdaddr,
 					BT_IO_OPT_PSM, ATT_PSM,
 					BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_MEDIUM,
@@ -2154,7 +2134,8 @@ GIOChannel *device_att_connect(gpointer user_data)
 		/* this is a LE device during pairing, using low sec level */
 		io = bt_io_connect(att_connect_cb,
 				attcb, NULL, &gerr,
-				BT_IO_OPT_SOURCE_BDADDR, &sba,
+				BT_IO_OPT_SOURCE_BDADDR,
+				adapter_get_address(adapter),
 				BT_IO_OPT_DEST_BDADDR, &device->bdaddr,
 				BT_IO_OPT_DEST_TYPE, device->bdaddr_type,
 				BT_IO_OPT_CID, ATT_CID,
@@ -2170,7 +2151,8 @@ GIOChannel *device_att_connect(gpointer user_data)
 	} else {
 		io = bt_io_connect(att_connect_cb,
 				attcb, NULL, &gerr,
-				BT_IO_OPT_SOURCE_BDADDR, &sba,
+				BT_IO_OPT_SOURCE_BDADDR,
+				adapter_get_address(adapter),
 				BT_IO_OPT_DEST_BDADDR, &device->bdaddr,
 				BT_IO_OPT_DEST_TYPE, device->bdaddr_type,
 				BT_IO_OPT_CID, ATT_CID,
@@ -2223,14 +2205,12 @@ int device_browse_primary(struct btd_device *device, DBusMessage *msg,
 	struct att_callbacks *attcb;
 	struct browse_req *req;
 	BtIOSecLevel sec_level;
-	bdaddr_t src;
 
 	if (device->browse)
 		return -EBUSY;
 
 	req = g_new0(struct browse_req, 1);
 	req->device = btd_device_ref(device);
-	adapter_get_address(adapter, &src);
 
 	device->browse = req;
 
@@ -2248,7 +2228,8 @@ int device_browse_primary(struct btd_device *device, DBusMessage *msg,
 
 	device->att_io = bt_io_connect(att_connect_cb,
 				attcb, NULL, NULL,
-				BT_IO_OPT_SOURCE_BDADDR, &src,
+				BT_IO_OPT_SOURCE_BDADDR,
+				adapter_get_address(adapter),
 				BT_IO_OPT_DEST_BDADDR, &device->bdaddr,
 				BT_IO_OPT_DEST_TYPE, device->bdaddr_type,
 				BT_IO_OPT_CID, ATT_CID,
@@ -2286,15 +2267,12 @@ int device_browse_sdp(struct btd_device *device, DBusMessage *msg,
 	struct btd_adapter *adapter = device->adapter;
 	struct browse_req *req;
 	bt_callback_t cb;
-	bdaddr_t src;
 	uuid_t uuid;
 	int err;
 
 	if (device->browse)
 		return -EBUSY;
 
-	adapter_get_address(adapter, &src);
-
 	req = g_new0(struct browse_req, 1);
 	req->device = btd_device_ref(device);
 	if (search) {
@@ -2306,7 +2284,8 @@ int device_browse_sdp(struct btd_device *device, DBusMessage *msg,
 		cb = browse_cb;
 	}
 
-	err = bt_search_service(&src, &device->bdaddr, &uuid, cb, req, NULL);
+	err = bt_search_service(adapter_get_address(adapter), &device->bdaddr,
+							&uuid, cb, req, NULL);
 	if (err < 0) {
 		browse_request_free(req);
 		return err;
@@ -2578,6 +2557,7 @@ DBusMessage *device_create_bonding(struct btd_device *device,
 	if (device_is_bonded(device))
 		return btd_error_already_exists(msg);
 
+				adapter_get_address(adapter),
 	bonding = bonding_request_new(msg, device, agent_path,
 					capability);
 
@@ -3128,8 +3108,6 @@ void btd_device_add_uuid(struct btd_device *device, const char *uuid)
 const sdp_record_t *btd_device_get_record(struct btd_device *device,
 							const char *uuid)
 {
-	bdaddr_t src;
-
 	if (device->tmp_records) {
 		const sdp_record_t *record;
 
@@ -3142,9 +3120,8 @@ const sdp_record_t *btd_device_get_record(struct btd_device *device,
 		device->tmp_records = NULL;
 	}
 
-	adapter_get_address(device->adapter, &src);
-
-	device->tmp_records = read_records(&src, &device->bdaddr);
+	device->tmp_records = read_records(adapter_get_address(device->adapter),
+							&device->bdaddr);
 	if (!device->tmp_records)
 		return NULL;
 
@@ -3195,14 +3172,12 @@ void device_set_class(struct btd_device *device, uint32_t value)
 
 int device_get_appearance(struct btd_device *device, uint16_t *value)
 {
-	bdaddr_t src;
 	uint16_t app;
 	int err;
 
-	adapter_get_address(device_get_adapter(device), &src);
-
-	err = read_remote_appearance(&src, &device->bdaddr,
-						device->bdaddr_type, &app);
+	err = read_remote_appearance(adapter_get_address(device->adapter),
+					&device->bdaddr, device->bdaddr_type,
+					&app);
 	if (err < 0)
 		return err;
 
@@ -3215,7 +3190,6 @@ int device_get_appearance(struct btd_device *device, uint16_t *value)
 void device_set_appearance(struct btd_device *device, uint16_t value)
 {
 	const char *icon = gap_appearance_to_icon(value);
-	bdaddr_t src;
 
 	emit_property_changed(device->path,
 				DEVICE_INTERFACE, "Appearance",
@@ -3226,9 +3200,8 @@ void device_set_appearance(struct btd_device *device, uint16_t value)
 					DEVICE_INTERFACE, "Icon",
 					DBUS_TYPE_STRING, &icon);
 
-	adapter_get_address(device_get_adapter(device), &src);
-	write_remote_appearance(&src, &device->bdaddr, device->bdaddr_type,
-									value);
+	write_remote_appearance(adapter_get_address(device->adapter),
+				&device->bdaddr, device->bdaddr_type, value);
 }
 
 static gboolean notify_attios(gpointer user_data)
diff --git a/src/manager.c b/src/manager.c
index 2ceeed1..a96115b 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -280,11 +280,8 @@ static gint adapter_cmp(gconstpointer a, gconstpointer b)
 {
 	struct btd_adapter *adapter = (struct btd_adapter *) a;
 	const bdaddr_t *bdaddr = b;
-	bdaddr_t src;
 
-	adapter_get_address(adapter, &src);
-
-	return bacmp(&src, bdaddr);
+	return bacmp(adapter_get_address(adapter), bdaddr);
 }
 
 struct btd_adapter *manager_find_adapter(const bdaddr_t *sba)
diff --git a/src/profile.c b/src/profile.c
index 338e903..c10e315 100644
--- a/src/profile.c
+++ b/src/profile.c
@@ -185,12 +185,11 @@ static void ext_io_destroy(gpointer p)
 	}
 
 	if (ext_io->resolving) {
-		bdaddr_t src, dst;
+		bdaddr_t dst;
 
-		adapter_get_address(ext_io->adapter, &src);
 		device_get_address(ext_io->device, &dst, NULL);
 
-		bt_cancel_discovery(&src, &dst);
+		bt_cancel_discovery(adapter_get_address(ext_io->adapter), &dst);
 	}
 
 	if (ext_io->rec_handle)
@@ -501,11 +500,8 @@ static int ext_start_servers(struct ext_profile *ext,
 	GError *err = NULL;
 	uint16_t handle;
 	GIOChannel *io;
-	bdaddr_t src;
-
-	adapter_get_address(adapter, &src);
 
-	handle = ext_register_record(ext, &src);
+	handle = ext_register_record(ext, adapter_get_address(adapter));
 
 	if (ext->authorize) {
 		confirm = ext_confirm;
@@ -521,7 +517,8 @@ static int ext_start_servers(struct ext_profile *ext,
 		server->rec_handle = handle;
 
 		io = bt_io_listen(connect, confirm, server, NULL, &err,
-					BT_IO_OPT_SOURCE_BDADDR, &src,
+					BT_IO_OPT_SOURCE_BDADDR,
+					adapter_get_address(adapter),
 					BT_IO_OPT_PSM, ext->psm,
 					BT_IO_OPT_SEC_LEVEL, ext->sec_level,
 					BT_IO_OPT_INVALID);
@@ -545,7 +542,8 @@ static int ext_start_servers(struct ext_profile *ext,
 		server->rec_handle = handle;
 
 		io = bt_io_listen(connect, confirm, server, NULL, &err,
-					BT_IO_OPT_SOURCE_BDADDR, &src,
+					BT_IO_OPT_SOURCE_BDADDR,
+					adapter_get_address(adapter),
 					BT_IO_OPT_CHANNEL, ext->chan,
 					BT_IO_OPT_SEC_LEVEL, ext->sec_level,
 					BT_IO_OPT_INVALID);
@@ -720,7 +718,7 @@ static void record_cb(sdp_list_t *recs, int err, gpointer user_data)
 {
 	struct ext_io *conn = user_data;
 	struct ext_profile *ext = conn->ext;
-	bdaddr_t src, dst;
+	bdaddr_t dst;
 	sdp_list_t *r;
 
 	conn->resolving = false;
@@ -772,10 +770,9 @@ static void record_cb(sdp_list_t *recs, int err, gpointer user_data)
 		goto failed;
 	}
 
-	adapter_get_address(conn->adapter, &src);
 	device_get_address(conn->device, &dst, NULL);
 
-	err = connect_io(conn, &src, &dst);
+	err = connect_io(conn, adapter_get_address(conn->adapter), &dst);
 	if (err < 0) {
 		error("Connecting %s failed: %s", ext->name, strerror(-err));
 		goto failed;
@@ -810,7 +807,7 @@ static int ext_connect_dev(struct btd_device *dev, struct btd_profile *profile,
 	struct btd_adapter *adapter;
 	struct ext_io *conn;
 	struct ext_profile *ext;
-	bdaddr_t src, dst;
+	bdaddr_t dst;
 	int err;
 
 	ext = find_ext(profile);
@@ -818,16 +815,15 @@ static int ext_connect_dev(struct btd_device *dev, struct btd_profile *profile,
 		return -ENOENT;
 
 	adapter = device_get_adapter(dev);
-	adapter_get_address(adapter, &src);
 	device_get_address(dev, &dst, NULL);
 
 	conn = g_new0(struct ext_io, 1);
 	conn->ext = ext;
 
 	if (ext->psm || ext->chan)
-		err = connect_io(conn, &src, &dst);
+		err = connect_io(conn, adapter_get_address(adapter), &dst);
 	else
-		err = resolve_service(conn, &src, &dst);
+		err = resolve_service(conn, adapter_get_address(adapter), &dst);
 
 	if (err < 0)
 		goto failed;
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/7] storage: Constify bdaddr_t pointers parameters
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
@ 2012-10-05  8:16 ` Szymon Janc
  2012-10-05  8:16 ` [PATCH 3/7] adapter: Constify pointer returned by adapter_get_address Szymon Janc
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 src/storage.c |   97 +++++++++++++++++++++++++++++++--------------------------
 src/storage.h |   95 ++++++++++++++++++++++++++++++-------------------------
 2 files changed, 105 insertions(+), 87 deletions(-)

diff --git a/src/storage.c b/src/storage.c
index 96db6f5..df6b0aa 100644
--- a/src/storage.c
+++ b/src/storage.c
@@ -110,7 +110,7 @@ int write_device_alias(const char *src, const char *dst, uint8_t dst_type,
 	return textfile_put(filename, key, alias);
 }
 
-int write_discoverable_timeout(bdaddr_t *bdaddr, int timeout)
+int write_discoverable_timeout(const bdaddr_t *bdaddr, int timeout)
 {
 	char filename[PATH_MAX + 1], str[32];
 
@@ -143,7 +143,7 @@ int read_discoverable_timeout(const char *src, int *timeout)
 	return 0;
 }
 
-int write_pairable_timeout(bdaddr_t *bdaddr, int timeout)
+int write_pairable_timeout(const bdaddr_t *bdaddr, int timeout)
 {
 	char filename[PATH_MAX + 1], str[32];
 
@@ -176,7 +176,7 @@ int read_pairable_timeout(const char *src, int *timeout)
 	return 0;
 }
 
-int write_device_mode(bdaddr_t *bdaddr, const char *mode)
+int write_device_mode(const bdaddr_t *bdaddr, const char *mode)
 {
 	char filename[PATH_MAX + 1];
 
@@ -226,7 +226,7 @@ int read_on_mode(const char *src, char *mode, int length)
 	return 0;
 }
 
-int write_local_name(bdaddr_t *bdaddr, const char *name)
+int write_local_name(const bdaddr_t *bdaddr, const char *name)
 {
 	char filename[PATH_MAX + 1], str[249];
 	int i;
@@ -245,7 +245,7 @@ int write_local_name(bdaddr_t *bdaddr, const char *name)
 	return textfile_put(filename, "name", str);
 }
 
-int read_local_name(bdaddr_t *bdaddr, char *name)
+int read_local_name(const bdaddr_t *bdaddr, char *name)
 {
 	char filename[PATH_MAX + 1], *str;
 	int len;
@@ -266,7 +266,7 @@ int read_local_name(bdaddr_t *bdaddr, char *name)
 	return 0;
 }
 
-int write_local_class(bdaddr_t *bdaddr, uint8_t *class)
+int write_local_class(const bdaddr_t *bdaddr, uint8_t *class)
 {
 	char filename[PATH_MAX + 1], str[9];
 
@@ -279,7 +279,7 @@ int write_local_class(bdaddr_t *bdaddr, uint8_t *class)
 	return textfile_put(filename, "class", str);
 }
 
-int read_local_class(bdaddr_t *bdaddr, uint8_t *class)
+int read_local_class(const bdaddr_t *bdaddr, uint8_t *class)
 {
 	char filename[PATH_MAX + 1], tmp[3], *str;
 	int i;
@@ -301,8 +301,8 @@ int read_local_class(bdaddr_t *bdaddr, uint8_t *class)
 	return 0;
 }
 
-int read_remote_appearance(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-							uint16_t *appearance)
+int read_remote_appearance(const bdaddr_t *local, const bdaddr_t *peer,
+				uint8_t bdaddr_type, uint16_t *appearance)
 {
 	char filename[PATH_MAX + 1], key[20], *str;
 
@@ -325,7 +325,7 @@ int read_remote_appearance(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
 	return 0;
 }
 
-int write_remote_appearance(bdaddr_t *local, bdaddr_t *peer,
+int write_remote_appearance(const bdaddr_t *local, const bdaddr_t *peer,
 				uint8_t bdaddr_type, uint16_t appearance)
 {
 	char filename[PATH_MAX + 1], key[20], str[7];
@@ -342,7 +342,8 @@ int write_remote_appearance(bdaddr_t *local, bdaddr_t *peer,
 	return textfile_put(filename, key, str);
 }
 
-int write_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t class)
+int write_remote_class(const bdaddr_t *local, const bdaddr_t *peer,
+								uint32_t class)
 {
 	char filename[PATH_MAX + 1], addr[18], str[9];
 
@@ -356,7 +357,8 @@ int write_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t class)
 	return textfile_put(filename, addr, str);
 }
 
-int read_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t *class)
+int read_remote_class(const bdaddr_t *local, const bdaddr_t *peer,
+							uint32_t *class)
 {
 	char filename[PATH_MAX + 1], addr[18], *str;
 
@@ -378,8 +380,8 @@ int read_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t *class)
 	return 0;
 }
 
-int write_device_name(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-							const char *name)
+int write_device_name(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, const char *name)
 {
 	char filename[PATH_MAX + 1], key[20], str[HCI_MAX_NAME_LENGTH + 1];
 	int i;
@@ -433,8 +435,9 @@ done:
 	return 0;
 }
 
-int write_remote_eir(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-						uint8_t *data, uint8_t data_len)
+int write_remote_eir(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, uint8_t *data,
+					uint8_t data_len)
 {
 	char filename[PATH_MAX + 1], key[20], str[481];
 	int i;
@@ -453,8 +456,8 @@ int write_remote_eir(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
 	return textfile_put(filename, key, str);
 }
 
-int read_remote_eir(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								uint8_t *data)
+int read_remote_eir(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, uint8_t *data)
 {
 	char filename[PATH_MAX + 1], key[18], *str;
 	int i;
@@ -494,8 +497,9 @@ done:
 	return 0;
 }
 
-int write_version_info(bdaddr_t *local, bdaddr_t *peer, uint16_t manufacturer,
-					uint8_t lmp_ver, uint16_t lmp_subver)
+int write_version_info(const bdaddr_t *local, const bdaddr_t *peer,
+					uint16_t manufacturer, uint8_t lmp_ver,
+					uint16_t lmp_subver)
 {
 	char filename[PATH_MAX + 1], addr[18], str[16];
 
@@ -510,7 +514,7 @@ int write_version_info(bdaddr_t *local, bdaddr_t *peer, uint16_t manufacturer,
 	return textfile_put(filename, addr, str);
 }
 
-int write_features_info(bdaddr_t *local, bdaddr_t *peer,
+int write_features_info(const bdaddr_t *local, const bdaddr_t *peer,
 				unsigned char *page1, unsigned char *page2)
 {
 	char filename[PATH_MAX + 1], addr[18];
@@ -554,7 +558,7 @@ static int decode_bytes(const char *str, unsigned char *bytes, size_t len)
 	return 0;
 }
 
-int read_remote_features(bdaddr_t *local, bdaddr_t *peer,
+int read_remote_features(const bdaddr_t *local, const bdaddr_t *peer,
 				unsigned char *page1, unsigned char *page2)
 {
 	char filename[PATH_MAX + 1], addr[18], *str;
@@ -587,8 +591,8 @@ int read_remote_features(bdaddr_t *local, bdaddr_t *peer,
 	return err;
 }
 
-int write_lastseen_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								struct tm *tm)
+int write_lastseen_info(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, struct tm *tm)
 {
 	char filename[PATH_MAX + 1], key[20], str[24];
 
@@ -605,8 +609,8 @@ int write_lastseen_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
 	return textfile_put(filename, key, str);
 }
 
-int write_lastused_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								struct tm *tm)
+int write_lastused_info(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, struct tm *tm)
 {
 	char filename[PATH_MAX + 1], key[20], str[24];
 
@@ -623,8 +627,9 @@ int write_lastused_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
 	return textfile_put(filename, key, str);
 }
 
-int write_link_key(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-				unsigned char *key, uint8_t type, int length)
+int write_link_key(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, unsigned char *key,
+					uint8_t type, int length)
 {
 	char filename[PATH_MAX + 1], addr[20], str[38];
 	int i;
@@ -653,8 +658,9 @@ int write_link_key(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
 	return textfile_put(filename, addr, str);
 }
 
-int read_link_key(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-					unsigned char *key, uint8_t *type)
+int read_link_key(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, unsigned char *key,
+					uint8_t *type)
 {
 	char filename[PATH_MAX + 1], addr[20], tmp[3], *str;
 	int i;
@@ -697,7 +703,7 @@ done:
 	return 0;
 }
 
-ssize_t read_pin_code(bdaddr_t *local, bdaddr_t *peer, char *pin)
+ssize_t read_pin_code(const bdaddr_t *local, const bdaddr_t *peer, char *pin)
 {
 	char filename[PATH_MAX + 1], addr[18], *str;
 	ssize_t len;
@@ -760,8 +766,8 @@ gboolean read_trust(const bdaddr_t *local, const char *addr, uint8_t addr_type)
 	return ret;
 }
 
-int write_device_profiles(bdaddr_t *src, bdaddr_t *dst, uint8_t dst_type,
-							const char *profiles)
+int write_device_profiles(const bdaddr_t *src, const bdaddr_t *dst,
+					uint8_t dst_type, const char *profiles)
 {
 	char filename[PATH_MAX + 1], key[20];
 
@@ -778,7 +784,7 @@ int write_device_profiles(bdaddr_t *src, bdaddr_t *dst, uint8_t dst_type,
 	return textfile_put(filename, key, profiles);
 }
 
-int delete_entry(bdaddr_t *src, const char *storage, bdaddr_t *dst,
+int delete_entry(const bdaddr_t *src, const char *storage, const bdaddr_t *dst,
 							uint8_t dst_type)
 {
 	char filename[PATH_MAX + 1], key[20];
@@ -1147,7 +1153,7 @@ int read_device_id(const gchar *srcaddr, const gchar *dstaddr,
 	return 0;
 }
 
-int write_device_pairable(bdaddr_t *bdaddr, gboolean mode)
+int write_device_pairable(const bdaddr_t *bdaddr, gboolean mode)
 {
 	char filename[PATH_MAX + 1];
 
@@ -1158,7 +1164,7 @@ int write_device_pairable(bdaddr_t *bdaddr, gboolean mode)
 	return textfile_put(filename, "pairable", mode ? "yes" : "no");
 }
 
-int read_device_pairable(bdaddr_t *bdaddr, gboolean *mode)
+int read_device_pairable(const bdaddr_t *bdaddr, gboolean *mode)
 {
 	char filename[PATH_MAX + 1], *str;
 
@@ -1359,8 +1365,9 @@ int read_device_attributes(const bdaddr_t *sba, textfile_cb func, void *data)
 	return textfile_foreach(filename, func, data);
 }
 
-int read_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-					uint16_t handle, uint16_t *value)
+int read_device_ccc(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t bdaddr_type, uint16_t handle,
+					uint16_t *value)
 {
 	char filename[PATH_MAX + 1], addr[18], key[25];
 	char *str;
@@ -1386,8 +1393,9 @@ int read_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
 	return err;
 }
 
-int write_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-					uint16_t handle, uint16_t value)
+int write_device_ccc(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t bdaddr_type, uint16_t handle,
+					uint16_t value)
 {
 	char filename[PATH_MAX + 1], addr[18], key[25], config[5];
 
@@ -1403,7 +1411,7 @@ int write_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
 	return textfile_put(filename, key, config);
 }
 
-void delete_device_ccc(bdaddr_t *local, bdaddr_t *peer)
+void delete_device_ccc(const bdaddr_t *local, const bdaddr_t *peer)
 {
 	char filename[PATH_MAX + 1], addr[18];
 
@@ -1414,8 +1422,8 @@ void delete_device_ccc(bdaddr_t *local, bdaddr_t *peer)
 	delete_by_pattern(filename, addr);
 }
 
-int write_longtermkeys(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-								const char *key)
+int write_longtermkeys(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t bdaddr_type, const char *key)
 {
 	char filename[PATH_MAX + 1], addr[20];
 
@@ -1432,7 +1440,8 @@ int write_longtermkeys(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
 	return textfile_put(filename, addr, key);
 }
 
-gboolean has_longtermkeys(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type)
+gboolean has_longtermkeys(const bdaddr_t *local, const bdaddr_t *peer,
+							uint8_t bdaddr_type)
 {
 	char filename[PATH_MAX + 1], key[20], *str;
 
diff --git a/src/storage.h b/src/storage.h
index 6a8df83..741b8a7 100644
--- a/src/storage.h
+++ b/src/storage.h
@@ -27,50 +27,57 @@ int read_device_alias(const char *src, const char *dst, uint8_t dst_type,
 						char *alias, size_t size);
 int write_device_alias(const char *src, const char *dst, uint8_t dst_type,
 							const char *alias);
-int write_discoverable_timeout(bdaddr_t *bdaddr, int timeout);
+int write_discoverable_timeout(const bdaddr_t *bdaddr, int timeout);
 int read_discoverable_timeout(const char *src, int *timeout);
-int write_pairable_timeout(bdaddr_t *bdaddr, int timeout);
+int write_pairable_timeout(const bdaddr_t *bdaddr, int timeout);
 int read_pairable_timeout(const char *src, int *timeout);
-int write_device_mode(bdaddr_t *bdaddr, const char *mode);
+int write_device_mode(const bdaddr_t *bdaddr, const char *mode);
 int read_device_mode(const char *src, char *mode, int length);
 int read_on_mode(const char *src, char *mode, int length);
-int write_local_name(bdaddr_t *bdaddr, const char *name);
-int read_local_name(bdaddr_t *bdaddr, char *name);
-int write_local_class(bdaddr_t *bdaddr, uint8_t *class);
-int read_local_class(bdaddr_t *bdaddr, uint8_t *class);
-int write_remote_appearance(bdaddr_t *local, bdaddr_t *peer,
+int write_local_name(const bdaddr_t *bdaddr, const char *name);
+int read_local_name(const bdaddr_t *bdaddr, char *name);
+int write_local_class(const bdaddr_t *bdaddr, uint8_t *class);
+int read_local_class(const bdaddr_t *bdaddr, uint8_t *class);
+int write_remote_appearance(const bdaddr_t *local, const bdaddr_t *peer,
 				uint8_t bdaddr_type, uint16_t appearance);
-int read_remote_appearance(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-							uint16_t *appearance);
-int write_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t class);
-int read_remote_class(bdaddr_t *local, bdaddr_t *peer, uint32_t *class);
-int write_device_name(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-							const char *name);
+int read_remote_appearance(const bdaddr_t *local, const bdaddr_t *peer,
+				uint8_t bdaddr_type, uint16_t *appearance);
+int write_remote_class(const bdaddr_t *local, const bdaddr_t *peer,
+							uint32_t class);
+int read_remote_class(const bdaddr_t *local, const bdaddr_t *peer,
+							uint32_t *class);
+int write_device_name(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, const char *name);
 int read_device_name(const char *src, const char *dst, uint8_t dst_type,
 								char *name);
-int write_remote_eir(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-					uint8_t *data, uint8_t data_len);
-int read_remote_eir(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								uint8_t *data);
-int write_version_info(bdaddr_t *local, bdaddr_t *peer, uint16_t manufacturer, uint8_t lmp_ver, uint16_t lmp_subver);
-int write_features_info(bdaddr_t *local, bdaddr_t *peer, unsigned char *page1, unsigned char *page2);
-int read_remote_features(bdaddr_t *local, bdaddr_t *peer, unsigned char *page1, unsigned char *page2);
-int write_lastseen_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								struct tm *tm);
-int write_lastused_info(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-								struct tm *tm);
-int write_link_key(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-				unsigned char *key, uint8_t type, int length);
-int read_link_key(bdaddr_t *local, bdaddr_t *peer, uint8_t peer_type,
-					unsigned char *key, uint8_t *type);
-ssize_t read_pin_code(bdaddr_t *local, bdaddr_t *peer, char *pin);
+int write_remote_eir(const bdaddr_t *local, const bdaddr_t *peer,
+			uint8_t peer_type, uint8_t *data, uint8_t data_len);
+int read_remote_eir(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, uint8_t *data);
+int write_version_info(const bdaddr_t *local, const bdaddr_t *peer,
+				uint16_t manufacturer, uint8_t lmp_ver,
+				uint16_t lmp_subver);
+int write_features_info(const bdaddr_t *local, const bdaddr_t *peer,
+				unsigned char *page1, unsigned char *page2);
+int read_remote_features(const bdaddr_t *local, const bdaddr_t *peer,
+				unsigned char *page1, unsigned char *page2);
+int write_lastseen_info(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, struct tm *tm);
+int write_lastused_info(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, struct tm *tm);
+int write_link_key(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t peer_type, unsigned char *key,
+					uint8_t type, int length);
+int read_link_key(const bdaddr_t *local, const bdaddr_t *peer,
+			uint8_t peer_type, unsigned char *key, uint8_t *type);
+ssize_t read_pin_code(const bdaddr_t *local, const bdaddr_t *peer, char *pin);
 gboolean read_trust(const bdaddr_t *local, const char *addr,
 						uint8_t addr_type);
 int write_trust(const char *src, const char *addr, uint8_t addr_type,
 							gboolean trust);
-int write_device_profiles(bdaddr_t *src, bdaddr_t *dst, uint8_t dst_type,
-							const char *profiles);
-int delete_entry(bdaddr_t *src, const char *storage, bdaddr_t *dst,
+int write_device_profiles(const bdaddr_t *src, const bdaddr_t *dst,
+				uint8_t dst_type, const char *profiles);
+int delete_entry(const bdaddr_t *src, const char *storage, const bdaddr_t *dst,
 							uint8_t dst_type);
 int store_record(const gchar *src, const gchar *dst, uint8_t dst_type,
 							sdp_record_t *rec);
@@ -89,8 +96,8 @@ int store_device_id(const gchar *src, const gchar *dst, uint8_t dst_type,
 int read_device_id(const gchar *src, const gchar *dst, uint8_t dst_type,
 					uint16_t *source, uint16_t *vendor,
 					uint16_t *product, uint16_t *version);
-int write_device_pairable(bdaddr_t *local, gboolean mode);
-int read_device_pairable(bdaddr_t *local, gboolean *mode);
+int write_device_pairable(const bdaddr_t *local, gboolean mode);
+int read_device_pairable(const bdaddr_t *local, gboolean *mode);
 gboolean read_blocked(const bdaddr_t *local, const bdaddr_t *remote,
 							uint8_t remote_type);
 int write_blocked(const bdaddr_t *local, const bdaddr_t *remote,
@@ -110,11 +117,13 @@ int write_device_attribute(const bdaddr_t *sba, const bdaddr_t *dba,
 				uint8_t bdaddr_type, uint16_t handle,
 							const char *chars);
 int read_device_attributes(const bdaddr_t *sba, textfile_cb func, void *data);
-int read_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-					uint16_t handle, uint16_t *value);
-int write_device_ccc(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-					uint16_t handle, uint16_t value);
-void delete_device_ccc(bdaddr_t *local, bdaddr_t *peer);
-int write_longtermkeys(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
-							const char *key);
-gboolean has_longtermkeys(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type);
+int read_device_ccc(const bdaddr_t *local, const bdaddr_t *peer,
+			uint8_t bdaddr_type, uint16_t handle, uint16_t *value);
+int write_device_ccc(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t bdaddr_type, uint16_t handle,
+					uint16_t value);
+void delete_device_ccc(const bdaddr_t *local, const bdaddr_t *peer);
+int write_longtermkeys(const bdaddr_t *local, const bdaddr_t *peer,
+					uint8_t bdaddr_type, const char *key);
+gboolean has_longtermkeys(const bdaddr_t *local, const bdaddr_t *peer,
+							uint8_t bdaddr_type);
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/7] adapter: Constify pointer returned by adapter_get_address
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
  2012-10-05  8:16 ` [PATCH 2/7] storage: Constify bdaddr_t pointers parameters Szymon Janc
@ 2012-10-05  8:16 ` Szymon Janc
  2012-10-05  8:16 ` [PATCH 4/7] device: Convert device_get_address into simple getter Szymon Janc
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 audio/manager.c               |    4 ++--
 profiles/gatt/gas.c           |   10 ++++++----
 profiles/health/hdp_util.c    |    9 ++++++---
 profiles/health/mcap.c        |    2 +-
 profiles/health/mcap_lib.h    |    2 +-
 profiles/network/connection.c |    6 +++---
 profiles/network/connection.h |    2 +-
 profiles/network/manager.c    |    3 ++-
 profiles/proximity/monitor.c  |    4 ++--
 profiles/sap/server.c         |    2 +-
 profiles/sap/server.h         |    2 +-
 src/adapter.c                 |    2 +-
 src/adapter.h                 |    2 +-
 src/attrib-server.c           |    2 +-
 src/device.c                  |    5 +++--
 src/eir.c                     |    2 +-
 src/eir.h                     |    2 +-
 src/profile.c                 |    9 ++++++---
 18 files changed, 40 insertions(+), 30 deletions(-)

diff --git a/audio/manager.c b/audio/manager.c
index 6ddea5a..e6886d7 100644
--- a/audio/manager.c
+++ b/audio/manager.c
@@ -507,7 +507,7 @@ static int headset_server_init(struct audio_adapter *adapter)
 	GError *err = NULL;
 	uint32_t features;
 	GIOChannel *io;
-	bdaddr_t *src;
+	const bdaddr_t *src;
 
 	if (config) {
 		gboolean tmp;
@@ -608,7 +608,7 @@ static int gateway_server_init(struct audio_adapter *adapter)
 	gboolean master = TRUE;
 	GError *err = NULL;
 	GIOChannel *io;
-	bdaddr_t *src;
+	const bdaddr_t *src;
 
 	if (config) {
 		gboolean tmp;
diff --git a/profiles/gatt/gas.c b/profiles/gatt/gas.c
index f0fcbe7..03bdd5a 100644
--- a/profiles/gatt/gas.c
+++ b/profiles/gatt/gas.c
@@ -86,8 +86,9 @@ static inline int create_filename(char *buf, size_t size,
 	return create_name(buf, size, STORAGEDIR, addr, name);
 }
 
-static int write_ctp_handle(bdaddr_t *sba, bdaddr_t *dba, uint8_t bdaddr_type,
-						uint16_t uuid, uint16_t handle)
+static int write_ctp_handle(const bdaddr_t *sba, const bdaddr_t *dba,
+					uint8_t bdaddr_type, uint16_t uuid,
+					uint16_t handle)
 {
 	char filename[PATH_MAX + 1], addr[18], key[27], value[7];
 
@@ -104,8 +105,9 @@ static int write_ctp_handle(bdaddr_t *sba, bdaddr_t *dba, uint8_t bdaddr_type,
 	return textfile_put(filename, key, value);
 }
 
-static int read_ctp_handle(bdaddr_t *sba, bdaddr_t *dba, uint8_t bdaddr_type,
-						uint16_t uuid, uint16_t *value)
+static int read_ctp_handle(const bdaddr_t *sba, const bdaddr_t *dba,
+					uint8_t bdaddr_type, uint16_t uuid,
+					uint16_t *value)
 {
 	char filename[PATH_MAX + 1], addr[18], key[27];
 	char *str;
diff --git a/profiles/health/hdp_util.c b/profiles/health/hdp_util.c
index 931c1dd..1d9419e 100644
--- a/profiles/health/hdp_util.c
+++ b/profiles/health/hdp_util.c
@@ -857,7 +857,8 @@ gboolean hdp_get_mdep(struct hdp_device *device, struct hdp_application *app,
 				GDestroyNotify destroy, GError **err)
 {
 	struct get_mdep_data *mdep_data;
-	bdaddr_t dst, *src;
+	bdaddr_t dst;
+	const bdaddr_t *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
@@ -1086,7 +1087,8 @@ gboolean hdp_establish_mcl(struct hdp_device *device,
 						GError **err)
 {
 	struct conn_mcl_data *conn_data;
-	bdaddr_t dst, *src;
+	bdaddr_t dst;
+	const bdaddr_t *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
@@ -1156,7 +1158,8 @@ gboolean hdp_get_dcpsm(struct hdp_device *device, hdp_continue_dcpsm_f func,
 							GError **err)
 {
 	struct get_dcpsm_data *dcpsm_data;
-	bdaddr_t dst, *src;
+	bdaddr_t dst;
+	const bdaddr_t *src;
 	uuid_t uuid;
 
 	device_get_address(device->dev, &dst, NULL);
diff --git a/profiles/health/mcap.c b/profiles/health/mcap.c
index 86f0575..57ea1c3 100644
--- a/profiles/health/mcap.c
+++ b/profiles/health/mcap.c
@@ -1984,7 +1984,7 @@ drop:
 	g_io_channel_shutdown(chan, TRUE, NULL);
 }
 
-struct mcap_instance *mcap_create_instance(bdaddr_t *src,
+struct mcap_instance *mcap_create_instance(const bdaddr_t *src,
 					BtIOSecLevel sec,
 					uint16_t ccpsm,
 					uint16_t dcpsm,
diff --git a/profiles/health/mcap_lib.h b/profiles/health/mcap_lib.h
index 8fcc141..603ccc0 100644
--- a/profiles/health/mcap_lib.h
+++ b/profiles/health/mcap_lib.h
@@ -196,7 +196,7 @@ void mcap_sync_set_req(struct mcap_mcl *mcl,
 
 /* MCAP main operations */
 
-struct mcap_instance *mcap_create_instance(bdaddr_t *src,
+struct mcap_instance *mcap_create_instance(const bdaddr_t *src,
 					BtIOSecLevel sec, uint16_t ccpsm,
 					uint16_t dcpsm,
 					mcap_mcl_event_cb mcl_connected,
diff --git a/profiles/network/connection.c b/profiles/network/connection.c
index 7688beb..9646e5a 100644
--- a/profiles/network/connection.c
+++ b/profiles/network/connection.c
@@ -594,8 +594,8 @@ void connection_unregister(const char *path)
 }
 
 static struct network_peer *create_peer(struct btd_device *device,
-					const char *path, bdaddr_t *src,
-					bdaddr_t *dst)
+					const char *path, const bdaddr_t *src,
+					const bdaddr_t *dst)
 {
 	struct network_peer *peer;
 
@@ -623,7 +623,7 @@ static struct network_peer *create_peer(struct btd_device *device,
 }
 
 int connection_register(struct btd_device *device, const char *path,
-			bdaddr_t *src, bdaddr_t *dst, uint16_t id)
+			const bdaddr_t *src, const bdaddr_t *dst, uint16_t id)
 {
 	struct network_peer *peer;
 	struct network_conn *nc;
diff --git a/profiles/network/connection.h b/profiles/network/connection.h
index 2e33c55..efc4ccb 100644
--- a/profiles/network/connection.h
+++ b/profiles/network/connection.h
@@ -22,5 +22,5 @@
  */
 
 int connection_register(struct btd_device *device, const char *path,
-			bdaddr_t *src, bdaddr_t *dst, uint16_t id);
+			const bdaddr_t *src, const bdaddr_t *dst, uint16_t id);
 void connection_unregister(const char *path);
diff --git a/profiles/network/manager.c b/profiles/network/manager.c
index 661181d..42b5214 100644
--- a/profiles/network/manager.c
+++ b/profiles/network/manager.c
@@ -78,7 +78,8 @@ static int network_probe(struct btd_profile *p, struct btd_device *device,
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
 	const gchar *path = device_get_path(device);
-	bdaddr_t *src, dst;
+	const bdaddr_t *src;
+	bdaddr_t dst;
 
 	DBG("path %s", path);
 
diff --git a/profiles/proximity/monitor.c b/profiles/proximity/monitor.c
index 477eeea..03df0e2 100644
--- a/profiles/proximity/monitor.c
+++ b/profiles/proximity/monitor.c
@@ -93,7 +93,7 @@ static inline int create_filename(char *buf, size_t size,
 	return create_name(buf, size, STORAGEDIR, addr, name);
 }
 
-static int write_proximity_config(bdaddr_t *sba, bdaddr_t *dba,
+static int write_proximity_config(const bdaddr_t *sba, const bdaddr_t *dba,
 					const char *alert, const char *level)
 {
 	char filename[PATH_MAX + 1], addr[18], key[38];
@@ -109,7 +109,7 @@ static int write_proximity_config(bdaddr_t *sba, bdaddr_t *dba,
 	return textfile_put(filename, key, level);
 }
 
-static char *read_proximity_config(bdaddr_t *sba, bdaddr_t *dba,
+static char *read_proximity_config(const bdaddr_t *sba, const bdaddr_t *dba,
 							const char *alert)
 {
 	char filename[PATH_MAX + 1], addr[18], key[38];
diff --git a/profiles/sap/server.c b/profiles/sap/server.c
index 6072432..9a7cb72 100644
--- a/profiles/sap/server.c
+++ b/profiles/sap/server.c
@@ -1366,7 +1366,7 @@ static void destroy_sap_interface(void *data)
 	server_remove(server);
 }
 
-int sap_server_register(const char *path, bdaddr_t *src)
+int sap_server_register(const char *path, const bdaddr_t *src)
 {
 	sdp_record_t *record = NULL;
 	GError *gerr = NULL;
diff --git a/profiles/sap/server.h b/profiles/sap/server.h
index 9ea9a78..e636d91 100644
--- a/profiles/sap/server.h
+++ b/profiles/sap/server.h
@@ -20,5 +20,5 @@
 
 #include <gdbus.h>
 
-int sap_server_register(const char *path, bdaddr_t *src);
+int sap_server_register(const char *path, const bdaddr_t *src);
 void sap_server_unregister(const char *path);
diff --git a/src/adapter.c b/src/adapter.c
index 6cb6f7c..c640956 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -2668,7 +2668,7 @@ const gchar *adapter_get_path(struct btd_adapter *adapter)
 	return adapter->path;
 }
 
-bdaddr_t *adapter_get_address(struct btd_adapter *adapter)
+const bdaddr_t *adapter_get_address(struct btd_adapter *adapter)
 {
 	return &adapter->bdaddr;
 }
diff --git a/src/adapter.h b/src/adapter.h
index f3599b5..d4fb14b 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -122,7 +122,7 @@ void adapter_set_discovering(struct btd_adapter *adapter,
 						gboolean discovering);
 uint16_t adapter_get_dev_id(struct btd_adapter *adapter);
 const gchar *adapter_get_path(struct btd_adapter *adapter);
-bdaddr_t *adapter_get_address(struct btd_adapter *adapter);
+const bdaddr_t *adapter_get_address(struct btd_adapter *adapter);
 struct remote_dev_info *adapter_search_found_devices(struct btd_adapter *adapter,
 							bdaddr_t *bdaddr);
 void adapter_update_found_devices(struct btd_adapter *adapter,
diff --git a/src/attrib-server.c b/src/attrib-server.c
index e7e2531..9155ab2 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -1237,7 +1237,7 @@ int btd_adapter_gatt_server_start(struct btd_adapter *adapter)
 {
 	struct gatt_server *server;
 	GError *gerr = NULL;
-	bdaddr_t *addr;
+	const bdaddr_t *addr;
 
 	DBG("Start GATT server in hci%d", adapter_get_dev_id(adapter));
 
diff --git a/src/device.c b/src/device.c
index d5aa8e1..dfbf925 100644
--- a/src/device.c
+++ b/src/device.c
@@ -1116,7 +1116,7 @@ struct btd_device *device_create(struct btd_adapter *adapter,
 	gchar *address_up;
 	struct btd_device *device;
 	const gchar *adapter_path = adapter_get_path(adapter);
-	bdaddr_t *src;
+	const bdaddr_t *src;
 	char srcaddr[18], alias[MAX_NAME_LENGTH + 1];
 	uint16_t vendor, product, version;
 
@@ -1222,7 +1222,8 @@ uint16_t btd_device_get_version(struct btd_device *device)
 
 static void device_remove_stored(struct btd_device *device)
 {
-	bdaddr_t *src, dst;
+	const bdaddr_t *src;
+	bdaddr_t dst;
 	uint8_t dst_type;
 
 	src = adapter_get_address(device->adapter);
diff --git a/src/eir.c b/src/eir.c
index d9fdb32..1f8d229 100644
--- a/src/eir.c
+++ b/src/eir.c
@@ -280,7 +280,7 @@ static void eir_generate_uuid128(sdp_list_t *list, uint8_t *ptr,
 	}
 }
 
-int eir_create_oob(bdaddr_t *addr, const char *name, uint32_t cod,
+int eir_create_oob(const bdaddr_t *addr, const char *name, uint32_t cod,
 			uint8_t *hash, uint8_t *randomizer,
 			uint16_t did_vendor, uint16_t did_product,
 			uint16_t did_version, uint16_t did_source,
diff --git a/src/eir.h b/src/eir.h
index d8c5e32..1ad0832 100644
--- a/src/eir.h
+++ b/src/eir.h
@@ -53,7 +53,7 @@ struct eir_data {
 void eir_data_free(struct eir_data *eir);
 int eir_parse(struct eir_data *eir, uint8_t *eir_data, uint8_t eir_len);
 int eir_parse_oob(struct eir_data *eir, uint8_t *eir_data, uint16_t eir_len);
-int eir_create_oob(bdaddr_t *addr, const char *name, uint32_t cod,
+int eir_create_oob(const bdaddr_t *addr, const char *name, uint32_t cod,
 			uint8_t *hash, uint8_t *randomizer,
 			uint16_t did_vendor, uint16_t did_product,
 			uint16_t did_version, uint16_t did_source,
diff --git a/src/profile.c b/src/profile.c
index c10e315..46b2e21 100644
--- a/src/profile.c
+++ b/src/profile.c
@@ -470,7 +470,8 @@ static sdp_record_t *ext_get_record(struct ext_profile *ext)
 	return NULL;
 }
 
-static uint16_t ext_register_record(struct ext_profile *ext, bdaddr_t *src)
+static uint16_t ext_register_record(struct ext_profile *ext,
+							const bdaddr_t *src)
 {
 	sdp_record_t *rec;
 
@@ -661,7 +662,8 @@ static void ext_device_remove(struct btd_profile *p, struct btd_device *dev)
 	remove_connect(ext, dev);
 }
 
-static int connect_io(struct ext_io *conn, bdaddr_t *src, bdaddr_t *dst)
+static int connect_io(struct ext_io *conn, const bdaddr_t *src,
+							const bdaddr_t *dst)
 {
 	struct ext_profile *ext = conn->ext;
 	GError *gerr = NULL;
@@ -786,7 +788,8 @@ failed:
 	ext_io_destroy(conn);
 }
 
-static int resolve_service(struct ext_io *conn, bdaddr_t *src, bdaddr_t *dst)
+static int resolve_service(struct ext_io *conn, const bdaddr_t *src,
+							const bdaddr_t *dst)
 {
 	struct ext_profile *ext = conn->ext;
 	uuid_t uuid;
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/7] device: Convert device_get_address into simple getter
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
  2012-10-05  8:16 ` [PATCH 2/7] storage: Constify bdaddr_t pointers parameters Szymon Janc
  2012-10-05  8:16 ` [PATCH 3/7] adapter: Constify pointer returned by adapter_get_address Szymon Janc
@ 2012-10-05  8:16 ` Szymon Janc
  2012-10-05  8:16 ` [PATCH 5/7] mgmt: Constify use of bdaddr_t pointer parameters Szymon Janc
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

This allow to remove number of local variables used only to get device
address and pass it as pointer later on.

bdaddr_type parameter is also removed as there is device_get_addr_type
already present which can be used to get it if needed.

---
 attrib/client.c              |   42 ++++++++++++++++--------------------------
 audio/manager.c              |    6 ++----
 plugins/wiimote.c            |    4 +---
 profiles/gatt/gas.c          |   20 ++++++++------------
 profiles/health/hdp.c        |    4 +---
 profiles/health/hdp_util.c   |   27 +++++++++++++--------------
 profiles/input/device.c      |    6 +++---
 profiles/network/manager.c   |   10 +++++-----
 profiles/proximity/monitor.c |   11 +++--------
 src/adapter.c                |    6 ++----
 src/device.c                 |   37 ++++++++++++++-----------------------
 src/device.h                 |    3 +--
 src/event.c                  |   27 +++++++++------------------
 src/profile.c                |   24 +++++++++---------------
 14 files changed, 87 insertions(+), 140 deletions(-)

diff --git a/attrib/client.c b/attrib/client.c
index eea06ae..30513d1 100644
--- a/attrib/client.c
+++ b/attrib/client.c
@@ -222,17 +222,6 @@ static void remove_attio(struct gatt_service *gatt)
 	}
 }
 
-static void gatt_get_address(struct gatt_service *gatt, bdaddr_t *sba,
-					bdaddr_t *dba, uint8_t *bdaddr_type)
-{
-	struct btd_device *device = gatt->dev;
-	struct btd_adapter *adapter;
-
-	adapter = device_get_adapter(device);
-	bacpy(sba, adapter_get_address(adapter));
-	device_get_address(device, dba, bdaddr_type);
-}
-
 static int characteristic_handle_cmp(gconstpointer a, gconstpointer b)
 {
 	const struct characteristic *chr = a;
@@ -684,14 +673,15 @@ static GSList *string_to_characteristic_list(struct gatt_service *gatt,
 
 static GSList *load_characteristics(struct gatt_service *gatt, uint16_t start)
 {
+	struct btd_device *device = gatt->dev;
+	struct btd_adapter *adapter = device_get_adapter(device);
 	GSList *chrs_list;
-	bdaddr_t sba, dba;
-	uint8_t bdaddr_type;
 	char *str;
 
-	gatt_get_address(gatt, &sba, &dba, &bdaddr_type);
-
-	str = read_device_characteristics(&sba, &dba, bdaddr_type, start);
+	str = read_device_characteristics(adapter_get_address(adapter),
+						device_get_address(device),
+						device_get_addr_type(device),
+						start);
 	if (str == NULL)
 		return NULL;
 
@@ -705,8 +695,7 @@ static GSList *load_characteristics(struct gatt_service *gatt, uint16_t start)
 static void store_attribute(struct gatt_service *gatt, uint16_t handle,
 				uint16_t type, uint8_t *value, gsize len)
 {
-	bdaddr_t sba, dba;
-	uint8_t bdaddr_type;
+	struct btd_device *device = gatt->dev;
 	bt_uuid_t uuid;
 	char *str, *tmp;
 	guint i;
@@ -721,9 +710,9 @@ static void store_attribute(struct gatt_service *gatt, uint16_t handle,
 	for (i = 0, tmp = str + MAX_LEN_UUID_STR; i < len; i++, tmp += 2)
 		sprintf(tmp, "%02X", value[i]);
 
-	gatt_get_address(gatt, &sba, &dba, &bdaddr_type);
-
-	write_device_attribute(&sba, &dba, bdaddr_type, handle, str);
+	write_device_attribute(adapter_get_address(device_get_adapter(device)),
+				device_get_address(device),
+				device_get_addr_type(device), handle, str);
 
 	g_free(str);
 }
@@ -964,9 +953,9 @@ static void char_discovered_cb(GSList *characteristics, guint8 status,
 	struct gatt_service *gatt = current->gatt;
 	struct gatt_primary *prim = gatt->prim;
 	uint16_t *previous_end = NULL;
+	struct btd_device *device = gatt->dev;
+	struct btd_adapter *adapter = device_get_adapter(device);
 	GSList *l;
-	bdaddr_t sba, dba;
-	uint8_t bdaddr_type;
 
 	if (status != 0) {
 		const char *str = att_ecode2str(status);
@@ -1005,9 +994,10 @@ static void char_discovered_cb(GSList *characteristics, guint8 status,
 	if (previous_end)
 		*previous_end = prim->range.end;
 
-	gatt_get_address(gatt, &sba, &dba, &bdaddr_type);
-	store_characteristics(&sba, &dba, bdaddr_type, prim->range.start,
-								gatt->chars);
+	store_characteristics(adapter_get_address(adapter),
+					device_get_address(device),
+					device_get_addr_type(device),
+					prim->range.start, gatt->chars);
 
 	g_slist_foreach(gatt->chars, update_all_chars, gatt);
 
diff --git a/audio/manager.c b/audio/manager.c
index e6886d7..26cd9bf 100644
--- a/audio/manager.c
+++ b/audio/manager.c
@@ -663,11 +663,9 @@ failed:
 static struct audio_device *get_audio_dev(struct btd_device *device)
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
-	bdaddr_t dst;
 
-	device_get_address(device, &dst, NULL);
-
-	return manager_get_device(adapter_get_address(adapter), &dst, TRUE);
+	return manager_get_device(adapter_get_address(adapter),
+					device_get_address(device), TRUE);
 }
 
 static void audio_remove(struct btd_profile *p, struct btd_device *device)
diff --git a/plugins/wiimote.c b/plugins/wiimote.c
index 93d1e2d..5708bf8 100644
--- a/plugins/wiimote.c
+++ b/plugins/wiimote.c
@@ -62,11 +62,9 @@ static ssize_t wii_pincb(struct btd_adapter *adapter, struct btd_device *device,
 						char *pinbuf, gboolean *display)
 {
 	uint16_t vendor, product;
-	bdaddr_t dba;
 	char addr[18], name[25];
 
-	device_get_address(device, &dba, NULL);
-	ba2str(&dba, addr);
+	ba2str(device_get_address(device), addr);
 
 	vendor = btd_device_get_vendor(device);
 	product = btd_device_get_product(device);
diff --git a/profiles/gatt/gas.c b/profiles/gatt/gas.c
index 03bdd5a..82c2ef0 100644
--- a/profiles/gatt/gas.c
+++ b/profiles/gatt/gas.c
@@ -170,8 +170,6 @@ static void ccc_written_cb(guint8 status, const guint8 *pdu, guint16 plen,
 							gpointer user_data)
 {
 	struct gas *gas = user_data;
-	bdaddr_t dba;
-	uint8_t bdaddr_type;
 
 	if (status) {
 		error("Write Service Changed CCC failed: %s",
@@ -181,11 +179,11 @@ static void ccc_written_cb(guint8 status, const guint8 *pdu, guint16 plen,
 
 	DBG("Service Changed indications enabled");
 
-	device_get_address(gas->device, &dba, &bdaddr_type);
-
 	write_ctp_handle(adapter_get_address(device_get_adapter(gas->device)),
-				&dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
-				gas->changed_handle);
+					device_get_address(gas->device),
+					device_get_addr_type(gas->device),
+					GATT_CHARAC_SERVICE_CHANGED,
+					gas->changed_handle);
 }
 
 static void write_ccc(GAttrib *attrib, uint16_t handle, gpointer user_data)
@@ -379,8 +377,6 @@ int gas_register(struct btd_device *device, struct att_range *gap,
 						struct att_range *gatt)
 {
 	struct gas *gas;
-	bdaddr_t dba;
-	uint8_t bdaddr_type;
 
 	gas = g_new0(struct gas, 1);
 	gas->gap.start = gap->start;
@@ -396,11 +392,11 @@ int gas_register(struct btd_device *device, struct att_range *gap,
 						attio_connected_cb,
 						attio_disconnected_cb, gas);
 
-	device_get_address(gas->device, &dba, &bdaddr_type);
-
 	read_ctp_handle(adapter_get_address(device_get_adapter(gas->device)),
-				&dba, bdaddr_type, GATT_CHARAC_SERVICE_CHANGED,
-				&gas->changed_handle);
+					device_get_address(gas->device),
+					device_get_addr_type(gas->device),
+					GATT_CHARAC_SERVICE_CHANGED,
+					&gas->changed_handle);
 
 	return 0;
 }
diff --git a/profiles/health/hdp.c b/profiles/health/hdp.c
index d07462a..fd21a23 100644
--- a/profiles/health/hdp.c
+++ b/profiles/health/hdp.c
@@ -210,10 +210,8 @@ static int cmp_device(gconstpointer a, gconstpointer b)
 static gint cmp_dev_addr(gconstpointer a, gconstpointer dst)
 {
 	const struct hdp_device *device = a;
-	bdaddr_t addr;
 
-	device_get_address(device->dev, &addr, NULL);
-	return bacmp(&addr, dst);
+	return bacmp(device_get_address(device->dev), dst);
 }
 
 static gint cmp_dev_mcl(gconstpointer a, gconstpointer mcl)
diff --git a/profiles/health/hdp_util.c b/profiles/health/hdp_util.c
index 1d9419e..1fd33e5 100644
--- a/profiles/health/hdp_util.c
+++ b/profiles/health/hdp_util.c
@@ -857,12 +857,12 @@ gboolean hdp_get_mdep(struct hdp_device *device, struct hdp_application *app,
 				GDestroyNotify destroy, GError **err)
 {
 	struct get_mdep_data *mdep_data;
-	bdaddr_t dst;
 	const bdaddr_t *src;
+	const bdaddr_t *dst;
 	uuid_t uuid;
 
-	device_get_address(device->dev, &dst, NULL);
 	src = adapter_get_address(device_get_adapter(device->dev));
+	dst = device_get_address(device->dev);
 
 	mdep_data = g_new0(struct get_mdep_data, 1);
 	mdep_data->app = hdp_application_ref(app);
@@ -871,7 +871,7 @@ gboolean hdp_get_mdep(struct hdp_device *device, struct hdp_application *app,
 	mdep_data->destroy = destroy;
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(src, &dst, &uuid, get_mdep_cb, mdep_data,
+	if (bt_search_service(src, dst, &uuid, get_mdep_cb, mdep_data,
 							free_mdep_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
@@ -1044,7 +1044,6 @@ static void search_cb(sdp_list_t *recs, int err, gpointer user_data)
 {
 	struct conn_mcl_data *conn_data = user_data;
 	GError *gerr = NULL;
-	bdaddr_t dst;
 	uint16_t ccpsm;
 
 	if (conn_data->dev->hdp_adapter->mi == NULL) {
@@ -1067,10 +1066,10 @@ static void search_cb(sdp_list_t *recs, int err, gpointer user_data)
 
 	conn_data = con_mcl_data_ref(conn_data);
 
-	device_get_address(conn_data->dev->dev, &dst, NULL);
-	if (!mcap_create_mcl(conn_data->dev->hdp_adapter->mi, &dst, ccpsm,
-						create_mcl_cb, conn_data,
-						destroy_con_mcl_data, &gerr)) {
+	if (!mcap_create_mcl(conn_data->dev->hdp_adapter->mi,
+					device_get_address(conn_data->dev->dev),
+					ccpsm, create_mcl_cb, conn_data,
+					destroy_con_mcl_data, &gerr)) {
 		con_mcl_data_unref(conn_data);
 		goto fail;
 	}
@@ -1087,12 +1086,12 @@ gboolean hdp_establish_mcl(struct hdp_device *device,
 						GError **err)
 {
 	struct conn_mcl_data *conn_data;
-	bdaddr_t dst;
 	const bdaddr_t *src;
+	const bdaddr_t *dst;
 	uuid_t uuid;
 
-	device_get_address(device->dev, &dst, NULL);
 	src = adapter_get_address(device_get_adapter(device->dev));
+	dst = device_get_address(device->dev);
 
 	conn_data = g_new0(struct conn_mcl_data, 1);
 	conn_data->refs = 1;
@@ -1102,7 +1101,7 @@ gboolean hdp_establish_mcl(struct hdp_device *device,
 	conn_data->dev = health_device_ref(device);
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(src, &dst, &uuid, search_cb, conn_data,
+	if (bt_search_service(src, dst, &uuid, search_cb, conn_data,
 						destroy_con_mcl_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
@@ -1158,12 +1157,12 @@ gboolean hdp_get_dcpsm(struct hdp_device *device, hdp_continue_dcpsm_f func,
 							GError **err)
 {
 	struct get_dcpsm_data *dcpsm_data;
-	bdaddr_t dst;
 	const bdaddr_t *src;
+	const bdaddr_t *dst;
 	uuid_t uuid;
 
-	device_get_address(device->dev, &dst, NULL);
 	src = adapter_get_address(device_get_adapter(device->dev));
+	dst = device_get_address(device->dev);
 
 	dcpsm_data = g_new0(struct get_dcpsm_data, 1);
 	dcpsm_data->func = func;
@@ -1171,7 +1170,7 @@ gboolean hdp_get_dcpsm(struct hdp_device *device, hdp_continue_dcpsm_f func,
 	dcpsm_data->destroy = destroy;
 
 	bt_string2uuid(&uuid, HDP_UUID);
-	if (bt_search_service(src, &dst, &uuid, get_dcpsm_cb, dcpsm_data,
+	if (bt_search_service(src, dst, &uuid, get_dcpsm_cb, dcpsm_data,
 							free_dcpsm_data) < 0) {
 		g_set_error(err, HDP_ERROR, HDP_CONNECTION_ERROR,
 						"Can't get remote SDP record");
diff --git a/profiles/input/device.c b/profiles/input/device.c
index ed50e3b..92e1fa9 100644
--- a/profiles/input/device.c
+++ b/profiles/input/device.c
@@ -782,11 +782,10 @@ static struct input_device *input_device_new(struct btd_device *device,
 	struct btd_adapter *adapter = device_get_adapter(device);
 	struct input_device *idev;
 	char name[249], src_addr[18], dst_addr[18];
-	uint8_t dst_type;
 
 	idev = g_new0(struct input_device, 1);
 	bacpy(&idev->src, adapter_get_address(adapter));
-	device_get_address(device, &idev->dst, &dst_type);
+	bacpy(&idev->dst, device_get_address(device));
 	idev->device = btd_device_ref(device);
 	idev->path = g_strdup(path);
 	idev->handle = handle;
@@ -795,7 +794,8 @@ static struct input_device *input_device_new(struct btd_device *device,
 	ba2str(&idev->src, src_addr);
 	ba2str(&idev->dst, dst_addr);
 
-	if (read_device_name(src_addr, dst_addr, dst_type, name) == 0)
+	if (read_device_name(src_addr, dst_addr, device_get_addr_type(device),
+				name) == 0)
 		idev->name = g_strdup(name);
 
 	if (g_dbus_register_interface(btd_get_dbus_connection(),
diff --git a/profiles/network/manager.c b/profiles/network/manager.c
index 42b5214..049fbc7 100644
--- a/profiles/network/manager.c
+++ b/profiles/network/manager.c
@@ -79,19 +79,19 @@ static int network_probe(struct btd_profile *p, struct btd_device *device,
 	struct btd_adapter *adapter = device_get_adapter(device);
 	const gchar *path = device_get_path(device);
 	const bdaddr_t *src;
-	bdaddr_t dst;
+	const bdaddr_t *dst;
 
 	DBG("path %s", path);
 
 	src = adapter_get_address(adapter);
-	device_get_address(device, &dst, NULL);
+	dst = device_get_address(device);
 
 	if (g_slist_find_custom(uuids, PANU_UUID, bt_uuid_strcmp))
-		connection_register(device, path, src, &dst, BNEP_SVC_PANU);
+		connection_register(device, path, src, dst, BNEP_SVC_PANU);
 	if (g_slist_find_custom(uuids, GN_UUID, bt_uuid_strcmp))
-		connection_register(device, path, src, &dst, BNEP_SVC_GN);
+		connection_register(device, path, src, dst, BNEP_SVC_GN);
 	if (g_slist_find_custom(uuids, NAP_UUID, bt_uuid_strcmp))
-		connection_register(device, path, src, &dst, BNEP_SVC_NAP);
+		connection_register(device, path, src, dst, BNEP_SVC_NAP);
 
 	return 0;
 }
diff --git a/profiles/proximity/monitor.c b/profiles/proximity/monitor.c
index 03df0e2..1a14265 100644
--- a/profiles/proximity/monitor.c
+++ b/profiles/proximity/monitor.c
@@ -407,7 +407,6 @@ static DBusMessage *set_link_loss_alert(DBusConnection *conn, DBusMessage *msg,
 {
 	struct monitor *monitor = data;
 	struct btd_device *device = monitor->device;
-	bdaddr_t dba;
 
 	if (!level_is_valid(level))
 		return btd_error_invalid_args(msg);
@@ -418,10 +417,9 @@ static DBusMessage *set_link_loss_alert(DBusConnection *conn, DBusMessage *msg,
 	g_free(monitor->linklosslevel);
 	monitor->linklosslevel = g_strdup(level);
 
-	device_get_address(device, &dba, NULL);
-
 	write_proximity_config(adapter_get_address(device_get_adapter(device)),
-					&dba, "LinkLossAlertLevel", level);
+					device_get_address(device),
+					"LinkLossAlertLevel", level);
 
 	if (monitor->attrib)
 		write_alert_level(monitor);
@@ -593,14 +591,11 @@ int monitor_register(struct btd_device *device,
 {
 	const char *path = device_get_path(device);
 	struct monitor *monitor;
-	bdaddr_t dba;
 	char *level;
 
-	device_get_address(device, &dba, NULL);
-
 	level = read_proximity_config(
 			adapter_get_address(device_get_adapter(device)),
-			&dba, "LinkLossAlertLevel");
+			device_get_address(device), "LinkLossAlertLevel");
 
 	monitor = g_new0(struct monitor, 1);
 	monitor->device = btd_device_ref(device);
diff --git a/src/adapter.c b/src/adapter.c
index c640956..46048ad 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -3616,7 +3616,6 @@ ssize_t btd_adapter_get_pin(struct btd_adapter *adapter, struct btd_device *dev,
 {
 	GSList *l;
 	btd_adapter_pin_cb_t cb;
-	bdaddr_t dba;
 	ssize_t ret;
 
 	for (l = adapter->pin_callbacks; l != NULL; l = g_slist_next(l)) {
@@ -3626,9 +3625,8 @@ ssize_t btd_adapter_get_pin(struct btd_adapter *adapter, struct btd_device *dev,
 			return ret;
 	}
 
-	device_get_address(dev, &dba, NULL);
-
-	return read_pin_code(adapter_get_address(adapter), &dba, pin_buf);
+	return read_pin_code(adapter_get_address(adapter),
+					device_get_address(dev), pin_buf);
 }
 
 void btd_adapter_register_powered_callback(struct btd_adapter *adapter,
diff --git a/src/device.c b/src/device.c
index dfbf925..72cae3b 100644
--- a/src/device.c
+++ b/src/device.c
@@ -1222,28 +1222,25 @@ uint16_t btd_device_get_version(struct btd_device *device)
 
 static void device_remove_stored(struct btd_device *device)
 {
-	const bdaddr_t *src;
-	bdaddr_t dst;
-	uint8_t dst_type;
-
-	src = adapter_get_address(device->adapter);
-	device_get_address(device, &dst, &dst_type);
+	const bdaddr_t *src = adapter_get_address(device->adapter);
+	uint8_t dst_type = device->bdaddr_type;
 
-	delete_entry(src, "profiles", &dst, dst_type);
-	delete_entry(src, "trusts", &dst, dst_type);
+	delete_entry(src, "profiles", &device->bdaddr, dst_type);
+	delete_entry(src, "trusts", &device->bdaddr, dst_type);
 
 	if (device_is_bonded(device)) {
-		delete_entry(src, "linkkeys", &dst, dst_type);
-		delete_entry(src, "aliases", &dst, dst_type);
-		delete_entry(src, "longtermkeys", &dst, dst_type);
+		delete_entry(src, "linkkeys", &device->bdaddr, dst_type);
+		delete_entry(src, "aliases", &device->bdaddr, dst_type);
+		delete_entry(src, "longtermkeys", &device->bdaddr, dst_type);
 
 		device_set_bonded(device, FALSE);
 		device->paired = FALSE;
-		btd_adapter_remove_bonding(device->adapter, &dst, dst_type);
+		btd_adapter_remove_bonding(device->adapter, &device->bdaddr,
+								dst_type);
 	}
 
-	delete_all_records(src, &dst, dst_type);
-	delete_device_service(src, &dst, dst_type);
+	delete_all_records(src, &device->bdaddr, dst_type);
+	delete_device_service(src, &device->bdaddr, dst_type);
 
 	if (device->blocked)
 		device_unblock(device, TRUE, FALSE);
@@ -1884,12 +1881,9 @@ static char *primary_list_to_string(GSList *primary_list)
 static void store_services(struct btd_device *device)
 {
 	struct btd_adapter *adapter = device->adapter;
-	bdaddr_t dba;
 	char *str = primary_list_to_string(device->primaries);
 
-	device_get_address(device, &dba, NULL);
-
-	write_device_services(adapter_get_address(adapter), &dba,
+	write_device_services(adapter_get_address(adapter), &device->bdaddr,
 						device->bdaddr_type, str);
 
 	g_free(str);
@@ -2318,12 +2312,9 @@ struct btd_adapter *device_get_adapter(struct btd_device *device)
 	return device->adapter;
 }
 
-void device_get_address(struct btd_device *device, bdaddr_t *bdaddr,
-							uint8_t *bdaddr_type)
+bdaddr_t *device_get_address(struct btd_device *device)
 {
-	bacpy(bdaddr, &device->bdaddr);
-	if (bdaddr_type != NULL)
-		*bdaddr_type = device->bdaddr_type;
+	return &device->bdaddr;
 }
 
 void device_set_addr_type(struct btd_device *device, uint8_t bdaddr_type)
diff --git a/src/device.h b/src/device.h
index 462b9a1..f919af4 100644
--- a/src/device.h
+++ b/src/device.h
@@ -64,8 +64,7 @@ void btd_device_add_uuid(struct btd_device *device, const char *uuid);
 void device_probe_profile(gpointer a, gpointer b);
 void device_remove_profile(gpointer a, gpointer b);
 struct btd_adapter *device_get_adapter(struct btd_device *device);
-void device_get_address(struct btd_device *device, bdaddr_t *bdaddr,
-							uint8_t *bdaddr_type);
+bdaddr_t *device_get_address(struct btd_device *device);
 void device_set_addr_type(struct btd_device *device, uint8_t bdaddr_type);
 uint8_t device_get_addr_type(struct btd_device *device);
 const gchar *device_get_path(struct btd_device *device);
diff --git a/src/event.c b/src/event.c
index 9626053..84c7f88 100644
--- a/src/event.c
+++ b/src/event.c
@@ -90,20 +90,18 @@ static void pincode_cb(struct agent *agent, DBusError *derr,
 				const char *pincode, struct btd_device *device)
 {
 	struct btd_adapter *adapter = device_get_adapter(device);
-	bdaddr_t dba;
 	int err;
 
-	device_get_address(device, &dba, NULL);
-
 	if (derr) {
-		err = btd_adapter_pincode_reply(adapter, &dba, NULL, 0);
+		err = btd_adapter_pincode_reply(adapter,
+					device_get_address(device), NULL, 0);
 		if (err < 0)
 			goto fail;
 		return;
 	}
 
-	err = btd_adapter_pincode_reply(adapter, &dba, pincode,
-						pincode ? strlen(pincode) : 0);
+	err = btd_adapter_pincode_reply(adapter, device_get_address(device),
+					pincode, pincode ? strlen(pincode) : 0);
 	if (err < 0)
 		goto fail;
 
@@ -141,13 +139,9 @@ int btd_event_request_pin(bdaddr_t *sba, bdaddr_t *dba, gboolean secure)
 static int confirm_reply(struct btd_adapter *adapter,
 				struct btd_device *device, gboolean success)
 {
-	bdaddr_t bdaddr;
-	uint8_t bdaddr_type;
-
-	device_get_address(device, &bdaddr, &bdaddr_type);
-
-	return btd_adapter_confirm_reply(adapter, &bdaddr, bdaddr_type,
-								success);
+	return btd_adapter_confirm_reply(adapter, device_get_address(device),
+						device_get_addr_type(device),
+						success);
 }
 
 static void confirm_cb(struct agent *agent, DBusError *err, void *user_data)
@@ -164,15 +158,12 @@ static void passkey_cb(struct agent *agent, DBusError *err, uint32_t passkey,
 {
 	struct btd_device *device = user_data;
 	struct btd_adapter *adapter = device_get_adapter(device);
-	bdaddr_t bdaddr;
-	uint8_t bdaddr_type;
-
-	device_get_address(device, &bdaddr, &bdaddr_type);
 
 	if (err)
 		passkey = INVALID_PASSKEY;
 
-	btd_adapter_passkey_reply(adapter, &bdaddr, bdaddr_type, passkey);
+	btd_adapter_passkey_reply(adapter, device_get_address(device),
+					device_get_addr_type(device), passkey);
 }
 
 int btd_event_user_confirm(bdaddr_t *sba, bdaddr_t *dba, uint32_t passkey)
diff --git a/src/profile.c b/src/profile.c
index 46b2e21..eb63e1e 100644
--- a/src/profile.c
+++ b/src/profile.c
@@ -184,13 +184,9 @@ static void ext_io_destroy(gpointer p)
 		ext_cancel(ext);
 	}
 
-	if (ext_io->resolving) {
-		bdaddr_t dst;
-
-		device_get_address(ext_io->device, &dst, NULL);
-
-		bt_cancel_discovery(adapter_get_address(ext_io->adapter), &dst);
-	}
+	if (ext_io->resolving)
+		bt_cancel_discovery(adapter_get_address(ext_io->adapter),
+					device_get_address(ext_io->device));
 
 	if (ext_io->rec_handle)
 		remove_record_from_server(ext_io->rec_handle);
@@ -720,7 +716,6 @@ static void record_cb(sdp_list_t *recs, int err, gpointer user_data)
 {
 	struct ext_io *conn = user_data;
 	struct ext_profile *ext = conn->ext;
-	bdaddr_t dst;
 	sdp_list_t *r;
 
 	conn->resolving = false;
@@ -772,9 +767,8 @@ static void record_cb(sdp_list_t *recs, int err, gpointer user_data)
 		goto failed;
 	}
 
-	device_get_address(conn->device, &dst, NULL);
-
-	err = connect_io(conn, adapter_get_address(conn->adapter), &dst);
+	err = connect_io(conn, adapter_get_address(conn->adapter),
+					device_get_address(conn->device));
 	if (err < 0) {
 		error("Connecting %s failed: %s", ext->name, strerror(-err));
 		goto failed;
@@ -810,7 +804,6 @@ static int ext_connect_dev(struct btd_device *dev, struct btd_profile *profile,
 	struct btd_adapter *adapter;
 	struct ext_io *conn;
 	struct ext_profile *ext;
-	bdaddr_t dst;
 	int err;
 
 	ext = find_ext(profile);
@@ -818,15 +811,16 @@ static int ext_connect_dev(struct btd_device *dev, struct btd_profile *profile,
 		return -ENOENT;
 
 	adapter = device_get_adapter(dev);
-	device_get_address(dev, &dst, NULL);
 
 	conn = g_new0(struct ext_io, 1);
 	conn->ext = ext;
 
 	if (ext->psm || ext->chan)
-		err = connect_io(conn, adapter_get_address(adapter), &dst);
+		err = connect_io(conn, adapter_get_address(adapter),
+						device_get_address(dev));
 	else
-		err = resolve_service(conn, adapter_get_address(adapter), &dst);
+		err = resolve_service(conn, adapter_get_address(adapter),
+						device_get_address(dev));
 
 	if (err < 0)
 		goto failed;
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 5/7] mgmt: Constify use of bdaddr_t pointer parameters
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
                   ` (2 preceding siblings ...)
  2012-10-05  8:16 ` [PATCH 4/7] device: Convert device_get_address into simple getter Szymon Janc
@ 2012-10-05  8:16 ` Szymon Janc
  2012-10-05  8:17 ` [PATCH 6/7] adapter: " Szymon Janc
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

Mark all input only bdaddr_t pointer parameters as const.

---
 plugins/neard.c |    5 +++--
 src/adapter.c   |    6 +++---
 src/adapter.h   |    6 +++---
 src/mgmt.c      |   31 ++++++++++++++++---------------
 src/mgmt.h      |   26 +++++++++++++-------------
 5 files changed, 38 insertions(+), 36 deletions(-)

diff --git a/plugins/neard.c b/plugins/neard.c
index 2fe1785..2da5024 100644
--- a/plugins/neard.c
+++ b/plugins/neard.c
@@ -216,8 +216,9 @@ static void read_local_complete(struct btd_adapter *adapter, uint8_t *hash,
 		error("D-Bus send failed");
 }
 
-static void bonding_complete(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-					uint8_t status, void *user_data)
+static void bonding_complete(struct btd_adapter *adapter,
+					const bdaddr_t *bdaddr, uint8_t status,
+					void *user_data)
 {
 	DBusMessage *msg = user_data;
 	DBusMessage *reply;
diff --git a/src/adapter.c b/src/adapter.c
index 46048ad..152d3bd 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -3716,7 +3716,7 @@ int adapter_cancel_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr)
 }
 
 static void check_oob_bonding_complete(struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t status)
+					const bdaddr_t *bdaddr, uint8_t status)
 {
 	if (!adapter->oob_handler || !adapter->oob_handler->bonding_cb)
 		return;
@@ -3731,8 +3731,8 @@ static void check_oob_bonding_complete(struct btd_adapter *adapter,
 	adapter->oob_handler = NULL;
 }
 
-void adapter_bonding_complete(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-								uint8_t status)
+void adapter_bonding_complete(struct btd_adapter *adapter,
+					const bdaddr_t *bdaddr, uint8_t status)
 {
 	struct btd_device *device;
 	char addr[18];
diff --git a/src/adapter.h b/src/adapter.h
index d4fb14b..07c0ad5 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -47,7 +47,7 @@ typedef void (*oob_read_local_cb_t) (struct btd_adapter *adapter,
 					uint8_t *hash, uint8_t *randomizer,
 					void *user_data);
 typedef void (*oob_bonding_cb_t) (struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t status,
+					const bdaddr_t *bdaddr, uint8_t status,
 					void *user_data);
 
 struct oob_handler {
@@ -236,8 +236,8 @@ int adapter_create_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr,
 
 int adapter_cancel_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr);
 
-void adapter_bonding_complete(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t status);
+void adapter_bonding_complete(struct btd_adapter *adapter,
+					const bdaddr_t *bdaddr, uint8_t status);
 
 int btd_adapter_read_local_oob_data(struct btd_adapter *adapter);
 void adapter_read_local_oob_data_complete(struct btd_adapter *adapter,
diff --git a/src/mgmt.c b/src/mgmt.c
index b689be8..d3f7809 100644
--- a/src/mgmt.c
+++ b/src/mgmt.c
@@ -432,8 +432,8 @@ static void mgmt_new_settings(int sk, uint16_t index, void *buf, size_t len)
 	info->current_settings = settings;
 }
 
-static void bonding_complete(struct controller_info *info, bdaddr_t *bdaddr,
-								uint8_t status)
+static void bonding_complete(struct controller_info *info,
+					const bdaddr_t *bdaddr, uint8_t status)
 {
 	struct btd_adapter *adapter;
 
@@ -579,7 +579,7 @@ static void mgmt_connect_failed(int sk, uint16_t index, void *buf, size_t len)
 	bonding_complete(info, &ev->addr.bdaddr, ev->status);
 }
 
-int mgmt_pincode_reply(int index, bdaddr_t *bdaddr, const char *pin,
+int mgmt_pincode_reply(int index, const bdaddr_t *bdaddr, const char *pin,
 								size_t pin_len)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_pin_code_reply)];
@@ -660,7 +660,7 @@ static void mgmt_pin_code_request(int sk, uint16_t index, void *buf, size_t len)
 	}
 }
 
-int mgmt_confirm_reply(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_confirm_reply(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							gboolean success)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_user_confirm_reply)];
@@ -691,7 +691,7 @@ int mgmt_confirm_reply(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
 	return 0;
 }
 
-int mgmt_passkey_reply(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_passkey_reply(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							uint32_t passkey)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_user_passkey_reply)];
@@ -2130,7 +2130,7 @@ int mgmt_set_fast_connectable(int index, gboolean enable)
 	return 0;
 }
 
-int mgmt_read_clock(int index, bdaddr_t *bdaddr, int which, int timeout,
+int mgmt_read_clock(int index, const bdaddr_t *bdaddr, int which, int timeout,
 					uint32_t *clock, uint16_t *accuracy)
 {
 	char addr[18];
@@ -2158,7 +2158,7 @@ int mgmt_read_bdaddr(int index, bdaddr_t *bdaddr)
 	return 0;
 }
 
-int mgmt_block_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
+int mgmt_block_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_block_device)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2187,7 +2187,7 @@ int mgmt_block_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
 	return 0;
 }
 
-int mgmt_unblock_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
+int mgmt_unblock_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_unblock_device)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2228,7 +2228,7 @@ int mgmt_get_conn_list(int index, GSList **conns)
 	return 0;
 }
 
-int mgmt_disconnect(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
+int mgmt_disconnect(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_disconnect)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2252,7 +2252,7 @@ int mgmt_disconnect(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
 	return 0;
 }
 
-int mgmt_unpair_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type)
+int mgmt_unpair_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_unpair_device)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2373,7 +2373,8 @@ int mgmt_set_io_capability(int index, uint8_t io_capability)
 	return 0;
 }
 
-int mgmt_create_bonding(int index, bdaddr_t *bdaddr, uint8_t addr_type, uint8_t io_cap)
+int mgmt_create_bonding(int index, const bdaddr_t *bdaddr, uint8_t addr_type,
+								uint8_t io_cap)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_pair_device)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2399,7 +2400,7 @@ int mgmt_create_bonding(int index, bdaddr_t *bdaddr, uint8_t addr_type, uint8_t
 	return 0;
 }
 
-int mgmt_cancel_bonding(int index, bdaddr_t *bdaddr)
+int mgmt_cancel_bonding(int index, const bdaddr_t *bdaddr)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_addr_info)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2438,7 +2439,7 @@ int mgmt_read_local_oob_data(int index)
 	return 0;
 }
 
-int mgmt_add_remote_oob_data(int index, bdaddr_t *bdaddr,
+int mgmt_add_remote_oob_data(int index, const bdaddr_t *bdaddr,
 					uint8_t *hash, uint8_t *randomizer)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_add_remote_oob_data)];
@@ -2467,7 +2468,7 @@ int mgmt_add_remote_oob_data(int index, bdaddr_t *bdaddr,
 	return 0;
 }
 
-int mgmt_remove_remote_oob_data(int index, bdaddr_t *bdaddr)
+int mgmt_remove_remote_oob_data(int index, const bdaddr_t *bdaddr)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_remove_remote_oob_data)];
 	struct mgmt_hdr *hdr = (void *) buf;
@@ -2491,7 +2492,7 @@ int mgmt_remove_remote_oob_data(int index, bdaddr_t *bdaddr)
 	return 0;
 }
 
-int mgmt_confirm_name(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_confirm_name(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							gboolean name_known)
 {
 	char buf[MGMT_HDR_SIZE + sizeof(struct mgmt_cp_confirm_name)];
diff --git a/src/mgmt.h b/src/mgmt.h
index 1d25cb0..a2c0497 100644
--- a/src/mgmt.h
+++ b/src/mgmt.h
@@ -36,18 +36,18 @@ int mgmt_start_discovery(int index);
 int mgmt_start_le_scanning(int index);
 int mgmt_stop_discovery(int index);
 
-int mgmt_read_clock(int index, bdaddr_t *bdaddr, int which, int timeout,
+int mgmt_read_clock(int index, const bdaddr_t *bdaddr, int which, int timeout,
 					uint32_t *clock, uint16_t *accuracy);
 int mgmt_read_bdaddr(int index, bdaddr_t *bdaddr);
 
-int mgmt_block_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type);
-int mgmt_unblock_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type);
+int mgmt_block_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type);
+int mgmt_unblock_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type);
 
 int mgmt_get_conn_list(int index, GSList **conns);
 
-int mgmt_disconnect(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type);
+int mgmt_disconnect(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type);
 
-int mgmt_unpair_device(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type);
+int mgmt_unpair_device(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type);
 
 int mgmt_add_uuid(int index, uuid_t *uuid, uint8_t svc_hint);
 int mgmt_remove_uuid(int index, uuid_t *uuid);
@@ -60,24 +60,24 @@ int mgmt_load_ltks(int index, GSList *keys);
 
 int mgmt_set_io_capability(int index, uint8_t io_capability);
 
-int mgmt_create_bonding(int index, bdaddr_t *bdaddr, uint8_t addr_type,
+int mgmt_create_bonding(int index, const bdaddr_t *bdaddr, uint8_t addr_type,
 							uint8_t io_cap);
-int mgmt_cancel_bonding(int index, bdaddr_t *bdaddr);
+int mgmt_cancel_bonding(int index, const bdaddr_t *bdaddr);
 
-int mgmt_pincode_reply(int index, bdaddr_t *bdaddr, const char *pin,
+int mgmt_pincode_reply(int index, const bdaddr_t *bdaddr, const char *pin,
 								size_t pin_len);
-int mgmt_confirm_reply(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_confirm_reply(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							gboolean success);
-int mgmt_passkey_reply(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_passkey_reply(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							uint32_t passkey);
 
 int mgmt_read_local_oob_data(int index);
 
-int mgmt_add_remote_oob_data(int index, bdaddr_t *bdaddr,
+int mgmt_add_remote_oob_data(int index, const bdaddr_t *bdaddr,
 					uint8_t *hash, uint8_t *randomizer);
-int mgmt_remove_remote_oob_data(int index, bdaddr_t *bdaddr);
+int mgmt_remove_remote_oob_data(int index, const bdaddr_t *bdaddr);
 
-int mgmt_confirm_name(int index, bdaddr_t *bdaddr, uint8_t bdaddr_type,
+int mgmt_confirm_name(int index, const bdaddr_t *bdaddr, uint8_t bdaddr_type,
 							gboolean name_known);
 
 int mgmt_ssp_enabled(int index);
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 6/7] adapter: Constify use of bdaddr_t pointer parameters
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
                   ` (3 preceding siblings ...)
  2012-10-05  8:16 ` [PATCH 5/7] mgmt: Constify use of bdaddr_t pointer parameters Szymon Janc
@ 2012-10-05  8:17 ` Szymon Janc
  2012-10-05  8:17 ` [PATCH 7/7] device: Make device_get_address return const pointer Szymon Janc
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:17 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

Mark all input only bdaddr_t pointer parameters as const.

---
 src/adapter.c |   52 +++++++++++++++++++++++++++++-----------------------
 src/adapter.h |   51 +++++++++++++++++++++++++++++----------------------
 2 files changed, 58 insertions(+), 45 deletions(-)

diff --git a/src/adapter.c b/src/adapter.c
index 152d3bd..7e695b9 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -2037,14 +2037,14 @@ static void load_devices(struct btd_adapter *adapter)
 	textfile_foreach(filename, create_stored_device_from_blocked, adapter);
 }
 
-int btd_adapter_block_address(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t bdaddr_type)
+int btd_adapter_block_address(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	return mgmt_block_device(adapter->dev_id, bdaddr, bdaddr_type);
 }
 
-int btd_adapter_unblock_address(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t bdaddr_type)
+int btd_adapter_unblock_address(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	return mgmt_unblock_device(adapter->dev_id, bdaddr,
 								bdaddr_type);
@@ -2751,7 +2751,7 @@ static int found_device_cmp(gconstpointer a, gconstpointer b)
 }
 
 struct remote_dev_info *adapter_search_found_devices(struct btd_adapter *adapter,
-							bdaddr_t *bdaddr)
+							const bdaddr_t *bdaddr)
 {
 	GSList *l;
 
@@ -2978,7 +2978,7 @@ static void dev_prepend_uuid(gpointer data, gpointer user_data)
 	dev->services = g_slist_prepend(dev->services, g_strdup(new_uuid));
 }
 
-static gboolean pairing_is_legacy(bdaddr_t *local, bdaddr_t *peer,
+static gboolean pairing_is_legacy(const bdaddr_t *local, const bdaddr_t *peer,
 					const uint8_t *eir, const char *name)
 {
 	unsigned char features[8];
@@ -2998,7 +2998,7 @@ static gboolean pairing_is_legacy(bdaddr_t *local, bdaddr_t *peer,
 		return TRUE;
 }
 
-static char *read_stored_data(bdaddr_t *local, bdaddr_t *peer,
+static char *read_stored_data(const bdaddr_t *local, const bdaddr_t *peer,
 			      uint8_t peer_type, const char *file)
 {
 	char local_addr[18], key[20], filename[PATH_MAX + 1], *str;
@@ -3067,9 +3067,10 @@ static gboolean connect_pending_cb(gpointer user_data)
 }
 
 void adapter_update_found_devices(struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t bdaddr_type,
-					int8_t rssi, uint8_t confirm_name,
-					uint8_t *data, uint8_t data_len)
+					const bdaddr_t *bdaddr,
+					uint8_t bdaddr_type, int8_t rssi,
+					uint8_t confirm_name, uint8_t *data,
+					uint8_t data_len)
 {
 	struct remote_dev_info *dev;
 	struct eir_data eir_data;
@@ -3652,7 +3653,7 @@ int btd_adapter_set_fast_connectable(struct btd_adapter *adapter,
 	return mgmt_set_fast_connectable(adapter->dev_id, enable);
 }
 
-int btd_adapter_read_clock(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+int btd_adapter_read_clock(struct btd_adapter *adapter, const bdaddr_t *bdaddr,
 				int which, int timeout, uint32_t *clock,
 				uint16_t *accuracy)
 {
@@ -3664,33 +3665,37 @@ int btd_adapter_read_clock(struct btd_adapter *adapter, bdaddr_t *bdaddr,
 }
 
 int btd_adapter_disconnect_device(struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t bdaddr_type)
+						const bdaddr_t *bdaddr,
+						uint8_t bdaddr_type)
 
 {
 	return mgmt_disconnect(adapter->dev_id, bdaddr, bdaddr_type);
 }
 
-int btd_adapter_remove_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t bdaddr_type)
+int btd_adapter_remove_bonding(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type)
 {
 	return mgmt_unpair_device(adapter->dev_id, bdaddr, bdaddr_type);
 }
 
-int btd_adapter_pincode_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+int btd_adapter_pincode_reply(struct btd_adapter *adapter,
+					const bdaddr_t *bdaddr,
 					const char *pin, size_t pin_len)
 {
 	return mgmt_pincode_reply(adapter->dev_id, bdaddr, pin, pin_len);
 }
 
-int btd_adapter_confirm_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-					uint8_t bdaddr_type, gboolean success)
+int btd_adapter_confirm_reply(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type,
+				gboolean success)
 {
 	return mgmt_confirm_reply(adapter->dev_id, bdaddr, bdaddr_type,
 								success);
 }
 
-int btd_adapter_passkey_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-					uint8_t bdaddr_type, uint32_t passkey)
+int btd_adapter_passkey_reply(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type,
+				uint32_t passkey)
 {
 	return mgmt_passkey_reply(adapter->dev_id, bdaddr, bdaddr_type,
 								passkey);
@@ -3703,14 +3708,14 @@ int btd_adapter_set_did(struct btd_adapter *adapter, uint16_t vendor,
 	return mgmt_set_did(adapter->dev_id, vendor, product, version, source);
 }
 
-int adapter_create_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+int adapter_create_bonding(struct btd_adapter *adapter, const bdaddr_t *bdaddr,
 					uint8_t addr_type, uint8_t io_cap)
 {
 	suspend_discovery(adapter);
 	return mgmt_create_bonding(adapter->dev_id, bdaddr, addr_type, io_cap);
 }
 
-int adapter_cancel_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr)
+int adapter_cancel_bonding(struct btd_adapter *adapter, const bdaddr_t *bdaddr)
 {
 	return mgmt_cancel_bonding(adapter->dev_id, bdaddr);
 }
@@ -3760,14 +3765,15 @@ int btd_adapter_read_local_oob_data(struct btd_adapter *adapter)
 }
 
 int btd_adapter_add_remote_oob_data(struct btd_adapter *adapter,
-			bdaddr_t *bdaddr, uint8_t *hash, uint8_t *randomizer)
+					const bdaddr_t *bdaddr,
+					uint8_t *hash, uint8_t *randomizer)
 {
 	return mgmt_add_remote_oob_data(adapter->dev_id, bdaddr, hash,
 								randomizer);
 }
 
 int btd_adapter_remove_remote_oob_data(struct btd_adapter *adapter,
-							bdaddr_t *bdaddr)
+							const bdaddr_t *bdaddr)
 {
 	return mgmt_remove_remote_oob_data(adapter->dev_id, bdaddr);
 }
diff --git a/src/adapter.h b/src/adapter.h
index 07c0ad5..72a9988 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -124,11 +124,12 @@ uint16_t adapter_get_dev_id(struct btd_adapter *adapter);
 const gchar *adapter_get_path(struct btd_adapter *adapter);
 const bdaddr_t *adapter_get_address(struct btd_adapter *adapter);
 struct remote_dev_info *adapter_search_found_devices(struct btd_adapter *adapter,
-							bdaddr_t *bdaddr);
+							const bdaddr_t *bdaddr);
 void adapter_update_found_devices(struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t bdaddr_type,
-					int8_t rssi, uint8_t confirm_name,
-					uint8_t *data, uint8_t data_len);
+					const bdaddr_t *bdaddr,
+					uint8_t bdaddr_type, int8_t rssi,
+					uint8_t confirm_name, uint8_t *data,
+					uint8_t data_len);
 void adapter_emit_device_found(struct btd_adapter *adapter,
 						struct remote_dev_info *dev);
 void adapter_mode_changed(struct btd_adapter *adapter, uint8_t scan_mode);
@@ -205,36 +206,41 @@ void btd_adapter_unregister_powered_callback(struct btd_adapter *adapter,
 int btd_adapter_set_fast_connectable(struct btd_adapter *adapter,
 							gboolean enable);
 
-int btd_adapter_read_clock(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+int btd_adapter_read_clock(struct btd_adapter *adapter, const bdaddr_t *bdaddr,
 				int which, int timeout, uint32_t *clock,
 				uint16_t *accuracy);
 
-int btd_adapter_block_address(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t bdaddr_type);
-int btd_adapter_unblock_address(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-							uint8_t bdaddr_type);
+int btd_adapter_block_address(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type);
+int btd_adapter_unblock_address(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type);
 
 int btd_adapter_disconnect_device(struct btd_adapter *adapter,
-					bdaddr_t *bdaddr, uint8_t bdaddr_type);
-
-int btd_adapter_remove_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+							const bdaddr_t *bdaddr,
 							uint8_t bdaddr_type);
 
-int btd_adapter_pincode_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
+int btd_adapter_remove_bonding(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type);
+
+int btd_adapter_pincode_reply(struct btd_adapter *adapter,
+					const  bdaddr_t *bdaddr,
 					const char *pin, size_t pin_len);
-int btd_adapter_confirm_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-					uint8_t bdaddr_type, gboolean success);
-int btd_adapter_passkey_reply(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-					uint8_t bdaddr_type, uint32_t passkey);
+int btd_adapter_confirm_reply(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type,
+				gboolean success);
+int btd_adapter_passkey_reply(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type,
+				uint32_t passkey);
 
 int btd_adapter_set_did(struct btd_adapter *adapter, uint16_t vendor,
 					uint16_t product, uint16_t version,
 					uint16_t source);
 
-int adapter_create_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr,
-				uint8_t bdaddr_type, uint8_t io_cap);
+int adapter_create_bonding(struct btd_adapter *adapter,
+				const bdaddr_t *bdaddr, uint8_t bdaddr_type,
+				uint8_t io_cap);
 
-int adapter_cancel_bonding(struct btd_adapter *adapter, bdaddr_t *bdaddr);
+int adapter_cancel_bonding(struct btd_adapter *adapter, const bdaddr_t *bdaddr);
 
 void adapter_bonding_complete(struct btd_adapter *adapter,
 					const bdaddr_t *bdaddr, uint8_t status);
@@ -244,10 +250,11 @@ void adapter_read_local_oob_data_complete(struct btd_adapter *adapter,
 					uint8_t *hash, uint8_t *randomizer);
 
 int btd_adapter_add_remote_oob_data(struct btd_adapter *adapter,
-			bdaddr_t *bdaddr, uint8_t *hash, uint8_t *randomizer);
+					const bdaddr_t *bdaddr,
+					uint8_t *hash, uint8_t *randomizer);
 
 int btd_adapter_remove_remote_oob_data(struct btd_adapter *adapter,
-							bdaddr_t *bdaddr);
+							const bdaddr_t *bdaddr);
 
 int btd_adapter_gatt_server_start(struct btd_adapter *adapter);
 void btd_adapter_gatt_server_stop(struct btd_adapter *adapter);
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 7/7] device: Make device_get_address return const pointer
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
                   ` (4 preceding siblings ...)
  2012-10-05  8:17 ` [PATCH 6/7] adapter: " Szymon Janc
@ 2012-10-05  8:17 ` Szymon Janc
  2012-10-05  8:39 ` [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Johan Hedberg
  2012-10-05 10:54 ` Anderson Lizardo
  7 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05  8:17 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 src/device.c |    2 +-
 src/device.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/device.c b/src/device.c
index 72cae3b..1c65b68 100644
--- a/src/device.c
+++ b/src/device.c
@@ -2312,7 +2312,7 @@ struct btd_adapter *device_get_adapter(struct btd_device *device)
 	return device->adapter;
 }
 
-bdaddr_t *device_get_address(struct btd_device *device)
+const bdaddr_t *device_get_address(struct btd_device *device)
 {
 	return &device->bdaddr;
 }
diff --git a/src/device.h b/src/device.h
index f919af4..0c16c18 100644
--- a/src/device.h
+++ b/src/device.h
@@ -64,7 +64,7 @@ void btd_device_add_uuid(struct btd_device *device, const char *uuid);
 void device_probe_profile(gpointer a, gpointer b);
 void device_remove_profile(gpointer a, gpointer b);
 struct btd_adapter *device_get_adapter(struct btd_device *device);
-bdaddr_t *device_get_address(struct btd_device *device);
+const bdaddr_t *device_get_address(struct btd_device *device);
 void device_set_addr_type(struct btd_device *device, uint8_t bdaddr_type);
 uint8_t device_get_addr_type(struct btd_device *device);
 const gchar *device_get_path(struct btd_device *device);
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/7] adapter: Convert adapter_get_address into simple getter
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
                   ` (5 preceding siblings ...)
  2012-10-05  8:17 ` [PATCH 7/7] device: Make device_get_address return const pointer Szymon Janc
@ 2012-10-05  8:39 ` Johan Hedberg
  2012-10-05 10:54 ` Anderson Lizardo
  7 siblings, 0 replies; 10+ messages in thread
From: Johan Hedberg @ 2012-10-05  8:39 UTC (permalink / raw)
  To: Szymon Janc; +Cc: linux-bluetooth

Hi Szymon,

On Fri, Oct 05, 2012, Szymon Janc wrote:
> Most uses of adapter_get_address were in form of:
> 
> bdaddr_t addr;
> adapter_get_address(adapter, &addr);
> foo(&addr);
> 
> Changing it to getter makes code simpler and avoid number of not
> needed memcpy.
> 
> ---
>  attrib/client.c              |    2 +-
>  audio/manager.c              |   48 +++++---------
>  plugins/adaptername.c        |    4 +-
>  plugins/dbusoob.c            |    8 +--
>  plugins/neard.c              |   16 ++---
>  plugins/service.c            |   57 ++++++-----------
>  plugins/wiimote.c            |    5 +-
>  profiles/alert/server.c      |    4 +-
>  profiles/gatt/gas.c          |   16 ++---
>  profiles/health/hdp.c        |   14 ++---
>  profiles/health/hdp_util.c   |   24 ++++---
>  profiles/input/device.c      |    2 +-
>  profiles/input/manager.c     |   11 +---
>  profiles/network/manager.c   |   10 +--
>  profiles/network/server.c    |    8 +--
>  profiles/proximity/monitor.c |   13 ++--
>  profiles/sap/manager.c       |    5 +-
>  src/adapter.c                |   13 ++--
>  src/adapter.h                |    2 +-
>  src/attrib-server.c          |   18 +++---
>  src/device.c                 |  143 +++++++++++++++++-------------------------
>  src/manager.c                |    5 +-
>  src/profile.c                |   28 ++++-----
>  23 files changed, 179 insertions(+), 277 deletions(-)

All patches have been applied. Thanks.

Johan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/7] adapter: Convert adapter_get_address into simple getter
  2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
                   ` (6 preceding siblings ...)
  2012-10-05  8:39 ` [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Johan Hedberg
@ 2012-10-05 10:54 ` Anderson Lizardo
  2012-10-05 11:00   ` Szymon Janc
  7 siblings, 1 reply; 10+ messages in thread
From: Anderson Lizardo @ 2012-10-05 10:54 UTC (permalink / raw)
  To: Szymon Janc; +Cc: linux-bluetooth

Hi Szymon,

On Fri, Oct 5, 2012 at 4:16 AM, Szymon Janc <szymon.janc@tieto.com> wrote:
> @@ -2578,6 +2557,7 @@ DBusMessage *device_create_bonding(struct btd_device *device,
>         if (device_is_bonded(device))
>                 return btd_error_already_exists(msg);
>
> +                               adapter_get_address(adapter),
>         bonding = bonding_request_new(msg, device, agent_path,
>                                         capability);
>

The above looks like a typo (and unfortunately, it compiles, due to the comma).

Regards,
-- 
Anderson Lizardo
Instituto Nokia de Tecnologia - INdT
Manaus - Brazil

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/7] adapter: Convert adapter_get_address into simple getter
  2012-10-05 10:54 ` Anderson Lizardo
@ 2012-10-05 11:00   ` Szymon Janc
  0 siblings, 0 replies; 10+ messages in thread
From: Szymon Janc @ 2012-10-05 11:00 UTC (permalink / raw)
  To: Anderson Lizardo; +Cc: linux-bluetooth

On Friday 05 of October 2012 13:54:17 Anderson Lizardo wrote:
> Hi Szymon,

Hi,

> 
> On Fri, Oct 5, 2012 at 4:16 AM, Szymon Janc <szymon.janc@tieto.com> wrote:
> > @@ -2578,6 +2557,7 @@ DBusMessage *device_create_bonding(struct btd_device *device,
> >         if (device_is_bonded(device))
> >                 return btd_error_already_exists(msg);
> >
> > +                               adapter_get_address(adapter),
> >         bonding = bonding_request_new(msg, device, agent_path,
> >                                         capability);
> >
> 
> The above looks like a typo (and unfortunately, it compiles, due to the comma).


Crap, will send fix asap.

-- 
BR
Szymon Janc

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-10-05 11:00 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-05  8:16 [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Szymon Janc
2012-10-05  8:16 ` [PATCH 2/7] storage: Constify bdaddr_t pointers parameters Szymon Janc
2012-10-05  8:16 ` [PATCH 3/7] adapter: Constify pointer returned by adapter_get_address Szymon Janc
2012-10-05  8:16 ` [PATCH 4/7] device: Convert device_get_address into simple getter Szymon Janc
2012-10-05  8:16 ` [PATCH 5/7] mgmt: Constify use of bdaddr_t pointer parameters Szymon Janc
2012-10-05  8:17 ` [PATCH 6/7] adapter: " Szymon Janc
2012-10-05  8:17 ` [PATCH 7/7] device: Make device_get_address return const pointer Szymon Janc
2012-10-05  8:39 ` [PATCH 1/7] adapter: Convert adapter_get_address into simple getter Johan Hedberg
2012-10-05 10:54 ` Anderson Lizardo
2012-10-05 11:00   ` Szymon Janc

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.