summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlok Barsode <alok.barsode@azingo.com>2009-07-10 15:16:01 +0530
committerJohan Hedberg <johan.hedberg@nokia.com>2009-07-13 12:30:59 +0300
commitd209c50141349ee9413d0717002af3d036db4762 (patch)
treeb6baad99a0b94168dead5edf6460c834e4ff903d /src
parent164ccf9a6641fe646d8476f6b860d5ff4905632b (diff)
Adding read_name to hciops plugin.
Diffstat (limited to 'src')
-rw-r--r--src/adapter.c13
-rw-r--r--src/adapter.h1
2 files changed, 4 insertions, 10 deletions
diff --git a/src/adapter.c b/src/adapter.c
index 4b94ed8e..06640e75 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -877,7 +877,7 @@ void adapter_update_local_name(bdaddr_t *bdaddr, uint8_t status, void *ptr)
void adapter_setname_complete(bdaddr_t *local, uint8_t status)
{
struct btd_adapter *adapter;
- int dd, err;
+ int err;
if (status)
return;
@@ -888,18 +888,11 @@ void adapter_setname_complete(bdaddr_t *local, uint8_t status)
return;
}
- dd = hci_open_dev(adapter->dev_id);
- if (dd < 0) {
- error("HCI device open failed: hci%d", adapter->dev_id);
- return;
- }
-
- err = hci_send_cmd(dd, OGF_HOST_CTL, OCF_READ_LOCAL_NAME, 0, 0);
+ err = adapter_ops->read_name(adapter->dev_id);
if (err < 0)
error("Sending getting name command failed: %s (%d)",
strerror(errno), errno);
- hci_close_dev(dd);
}
static DBusMessage *set_name(DBusConnection *conn, DBusMessage *msg,
@@ -2132,7 +2125,7 @@ int adapter_start(struct btd_adapter *adapter)
return err;
}
- hci_send_cmd(dd, OGF_HOST_CTL, OCF_READ_LOCAL_NAME, 0, 0);
+ adapter_ops->read_name(adapter->dev_id);
if (!(features[6] & LMP_SIMPLE_PAIR))
goto setup;
diff --git a/src/adapter.h b/src/adapter.h
index 9845ac7e..d34fb80f 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -174,6 +174,7 @@ struct btd_adapter_ops {
int (*resolve_name) (int index, bdaddr_t *bdaddr);
int (*cancel_resolve_name) (int index, bdaddr_t *bdaddr);
int (*set_name) (int index, const char *name);
+ int (*read_name) (int index);
};
int btd_register_adapter_ops(struct btd_adapter_ops *btd_adapter_ops);