diff options
author | Johan Hedberg <johan.hedberg@nokia.com> | 2006-08-21 08:54:58 +0000 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@nokia.com> | 2006-08-21 08:54:58 +0000 |
commit | 46b2bfea1a997ffacc4c46c53532681efdfa4a52 (patch) | |
tree | b1b86d2b9b0335b5b940ebeecb7f07f554b1be83 /hcid/dbus-adapter.c | |
parent | a40e1911412ced9760813416f162df9ef4f35c88 (diff) |
Remove UnknownAddress error (since it's unnecessary)
Diffstat (limited to 'hcid/dbus-adapter.c')
-rw-r--r-- | hcid/dbus-adapter.c | 51 |
1 files changed, 10 insertions, 41 deletions
diff --git a/hcid/dbus-adapter.c b/hcid/dbus-adapter.c index 0feccf0b..29eb9ab1 100644 --- a/hcid/dbus-adapter.c +++ b/hcid/dbus-adapter.c @@ -1351,16 +1351,6 @@ static DBusHandlerResult handle_dev_get_remote_name_req(DBusConnection *conn, DB if (check_address(peer_addr) < 0) return error_invalid_arguments(conn, msg); - /* check if it is a unknown address */ - create_name(filename, PATH_MAX, STORAGEDIR, dbus_data->address, "lastseen"); - - str = textfile_get(filename, peer_addr); - - if (!str) - return error_unknown_address(conn, msg); - - free(str); - /* check if it is in the cache */ create_name(filename, PATH_MAX, STORAGEDIR, dbus_data->address, "names"); @@ -1439,18 +1429,17 @@ static DBusHandlerResult handle_dev_get_remote_alias_req(DBusConnection *conn, D static DBusHandlerResult handle_dev_set_remote_alias_req(DBusConnection *conn, DBusMessage *msg, void *data) { - char filename[PATH_MAX + 1]; struct hci_dbus_data *dbus_data = data; DBusMessage *reply, *signal; DBusError err; - char *str_ptr, *addr_ptr, *find_ptr; + char *alias, *addr; bdaddr_t bdaddr; int ecode; dbus_error_init(&err); dbus_message_get_args(msg, &err, - DBUS_TYPE_STRING, &addr_ptr, - DBUS_TYPE_STRING, &str_ptr, + DBUS_TYPE_STRING, &addr, + DBUS_TYPE_STRING, &alias, DBUS_TYPE_INVALID); if (dbus_error_is_set(&err)) { @@ -1459,24 +1448,14 @@ static DBusHandlerResult handle_dev_set_remote_alias_req(DBusConnection *conn, D return error_invalid_arguments(conn, msg); } - if ((strlen(str_ptr) == 0) || (check_address(addr_ptr) < 0)) { + if ((strlen(alias) == 0) || (check_address(addr) < 0)) { error("Alias change failed: Invalid parameter"); return error_invalid_arguments(conn, msg); } - /* check if it is a unknown address */ - create_name(filename, PATH_MAX, STORAGEDIR, dbus_data->address, "lastseen"); - - find_ptr = textfile_get(filename, addr_ptr); + str2ba(addr, &bdaddr); - if (!find_ptr) - return error_unknown_address(conn, msg); - - free(find_ptr); - - str2ba(addr_ptr, &bdaddr); - - ecode = set_device_alias(dbus_data->dev_id, &bdaddr, str_ptr); + ecode = set_device_alias(dbus_data->dev_id, &bdaddr, alias); if (ecode < 0) return error_failed(conn, msg, -ecode); @@ -1485,8 +1464,8 @@ static DBusHandlerResult handle_dev_set_remote_alias_req(DBusConnection *conn, D return DBUS_HANDLER_RESULT_NEED_MEMORY; signal = dev_signal_factory(dbus_data->dev_id, "RemoteAliasChanged", - DBUS_TYPE_STRING, &addr_ptr, - DBUS_TYPE_STRING, &str_ptr, + DBUS_TYPE_STRING, &addr, + DBUS_TYPE_STRING, &alias, DBUS_TYPE_INVALID); if (signal) { dbus_connection_send(conn, signal, NULL); @@ -1701,8 +1680,7 @@ static DBusHandlerResult handle_dev_create_bonding_req(DBusConnection *conn, DBu auth_requested_cp ar_cp; evt_cmd_status rp; DBusError err; - char *peer_addr = NULL; - char *str; + char *str, *peer_addr = NULL; struct hci_dbus_data *dbus_data = data; struct slist *l; bdaddr_t peer_bdaddr; @@ -1744,15 +1722,6 @@ static DBusHandlerResult handle_dev_create_bonding_req(DBusConnection *conn, DBu return error_bonding_already_exists(conn, msg); } - /* check if the address belongs to the last seen cache */ - create_name(filename, PATH_MAX, STORAGEDIR, dbus_data->address, "lastseen"); - - str = textfile_get(filename, peer_addr); - if (!str) - return error_unknown_address(conn, msg); - - free(str); - dd = hci_open_dev(dbus_data->dev_id); if (dd < 0) return error_no_such_adapter(conn, msg); @@ -1852,7 +1821,7 @@ static DBusHandlerResult handle_dev_cancel_bonding_req(DBusConnection *conn, DBu /* check if there is a pending bonding request */ if (!dbus_data->bonding || bacmp(&dbus_data->bonding->bdaddr, &peer_bdaddr)) { error("No bonding request pending."); - return error_unknown_address(conn, msg); + return error_bonding_not_in_progress(conn, msg); } if (strcmp(dbus_data->requestor_name, dbus_message_get_sender(msg))) |