Diff between 69eb25af0f6be27f59dd234fd97c21a5db9ea900 and 694f069a0ddb5334293e8fadeb87b2009e036587

Changed Files

File Additions Deletions Status
plugins/dbusoob.c +5 -3 modified
plugins/neard.c +6 -3 modified
src/adapter.c +5 -4 modified
src/adapter.h +2 -0 modified
src/event.c +0 -27 modified
src/event.h +0 -2 modified
src/mgmt.c +1 -1 modified

Full Patch

diff --git a/plugins/dbusoob.c b/plugins/dbusoob.c
index 7d9a858..3379f73 100644
--- a/plugins/dbusoob.c
+++ b/plugins/dbusoob.c
@@ -208,9 +208,11 @@ static gboolean store_data(struct btd_adapter *adapter,
 	if (data->class)
 		device_set_class(device, data->class);
 
-	if (data->name)
-		btd_event_remote_name(adapter_get_address(adapter), &bdaddr,
-								data->name);
+	if (data->name) {
+		adapter_store_cached_name(adapter_get_address(adapter),
+							&bdaddr, data->name);
+		device_set_name(device, data->name);
+	}
 
 	return TRUE;
 }
diff --git a/plugins/neard.c b/plugins/neard.c
index ed7a2b9..114d59c 100644
--- a/plugins/neard.c
+++ b/plugins/neard.c
@@ -312,9 +312,11 @@ static int process_eir(struct btd_adapter *adapter, uint8_t *eir, size_t size,
 		device_set_class(device, eir_data.class);
 
 	/* TODO handle incomplete name? */
-	if (eir_data.name)
-		btd_event_remote_name(adapter_get_address(adapter),
+	if (eir_data.name) {
+		adapter_store_cached_name(adapter_get_address(adapter),
 					&eir_data.addr, eir_data.name);
+		device_set_name(device, eir_data.name);
+	}
 
 	if (eir_data.hash)
 		btd_adapter_add_remote_oob_data(adapter, &eir_data.addr,
@@ -507,8 +509,9 @@ static int process_nokia_com_bt(struct btd_adapter *adapter, void *data,
 	DBG("hci%u remote:%s", adapter_get_dev_id(adapter), remote_address);
 
 	if (nokia.name) {
-		btd_event_remote_name(adapter_get_address(adapter), remote,
+		adapter_store_cached_name(adapter_get_address(adapter), remote,
 								nokia.name);
+		device_set_name(device, nokia.name);
 		g_free(nokia.name);
 	}
 
diff --git a/src/adapter.c b/src/adapter.c
index a0ae04c..3c67f8a 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -255,8 +255,8 @@ static void store_adapter_info(struct btd_adapter *adapter)
 	g_key_file_free(key_file);
 }
 
-static void store_cached_name(const bdaddr_t *local, const bdaddr_t *peer,
-				char *name)
+void adapter_store_cached_name(const bdaddr_t *local, const bdaddr_t *peer,
+							const char *name)
 {
 	char filename[PATH_MAX + 1];
 	char s_addr[18], d_addr[18];
@@ -2496,7 +2496,7 @@ static void convert_names_entry(char *key, char *value, void *user_data)
 
 	str2ba(address, &local);
 	str2ba(str, &peer);
-	store_cached_name(&local, &peer, value);
+	adapter_store_cached_name(&local, &peer, value);
 }
 
 struct device_converter {
@@ -3233,7 +3233,8 @@ void adapter_update_found_devices(struct btd_adapter *adapter,
 							eir_data.appearance);
 
 	if (eir_data.name != NULL && eir_data.name_complete)
-		store_cached_name(&adapter->bdaddr, bdaddr, eir_data.name);
+		adapter_store_cached_name(&adapter->bdaddr, bdaddr,
+								eir_data.name);
 
 	/* Avoid creating LE device if it's not discoverable */
 	if (bdaddr_type != BDADDR_BREDR &&
diff --git a/src/adapter.h b/src/adapter.h
index 54f9ea7..e131e6d 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -249,3 +249,5 @@ void adapter_connect_list_remove(struct btd_adapter *adapter,
 void btd_adapter_set_oob_handler(struct btd_adapter *adapter,
 						struct oob_handler *handler);
 gboolean btd_adapter_check_oob_handler(struct btd_adapter *adapter);
+void adapter_store_cached_name(const bdaddr_t *local, const bdaddr_t *peer,
+							const char *name);
diff --git a/src/event.c b/src/event.c
index 7fb71a1..d9d4e41 100644
--- a/src/event.c
+++ b/src/event.c
@@ -82,33 +82,6 @@ static gboolean get_adapter_and_device(const bdaddr_t *src, bdaddr_t *dst,
 	return TRUE;
 }
 
-void btd_event_remote_name(const bdaddr_t *local, bdaddr_t *peer,
-							const char *name)
-{
-	char filename[PATH_MAX + 1];
-	char local_addr[18], peer_addr[18];
-	GKeyFile *key_file;
-	gsize length = 0;
-	char *data;
-
-	ba2str(local, local_addr);
-	ba2str(peer, peer_addr);
-	snprintf(filename, PATH_MAX, STORAGEDIR "/%s/cache/%s", local_addr,
-			peer_addr);
-	filename[PATH_MAX] = '\0';
-	create_file(filename, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
-
-	key_file = g_key_file_new();
-	g_key_file_load_from_file(key_file, filename, 0, NULL);
-	g_key_file_set_string(key_file, "General", "Name", name);
-
-	data = g_key_file_to_data(key_file, &length, NULL);
-	g_file_set_contents(filename, data, length, NULL);
-	g_free(data);
-
-	g_key_file_free(key_file);
-}
-
 static void store_longtermkey(bdaddr_t *local, bdaddr_t *peer,
 				uint8_t bdaddr_type, unsigned char *key,
 				uint8_t master, uint8_t authenticated,
diff --git a/src/event.h b/src/event.h
index dcfb23c..1788a80 100644
--- a/src/event.h
+++ b/src/event.h
@@ -22,8 +22,6 @@
  *
  */
 
-void btd_event_remote_name(const bdaddr_t *local, bdaddr_t *peer,
-							const char *name);
 int btd_event_link_key_notify(bdaddr_t *local, bdaddr_t *peer, uint8_t *key,
 					uint8_t key_type, uint8_t pin_length);
 int btd_event_ltk_notify(bdaddr_t *local, bdaddr_t *peer, uint8_t bdaddr_type,
diff --git a/src/mgmt.c b/src/mgmt.c
index 6dc7cef..ad6a4fb 100644
--- a/src/mgmt.c
+++ b/src/mgmt.c
@@ -538,7 +538,7 @@ static void mgmt_device_connected(int sk, uint16_t index, void *buf, size_t len)
 	adapter_add_connection(adapter, device);
 
 	if (eir_data.name != NULL) {
-		btd_event_remote_name(&info->bdaddr, &ev->addr.bdaddr,
+		adapter_store_cached_name(&info->bdaddr, &ev->addr.bdaddr,
 								eir_data.name);
 		device_set_name(device, eir_data.name);
 	}