summaryrefslogtreecommitdiffstats
path: root/hcid/security.c
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@nokia.com>2008-06-05 13:30:11 +0000
committerJohan Hedberg <johan.hedberg@nokia.com>2008-06-05 13:30:11 +0000
commitdac5b3dfc9ce5091315294f938dc84188985dad6 (patch)
tree759f59d04d54bab34950f29d9cd470615ccecb92 /hcid/security.c
parent94f7643c52193c905edaff767c2e9a31b9102a73 (diff)
Implement first part of missing SSP callbacks
Diffstat (limited to 'hcid/security.c')
-rw-r--r--hcid/security.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/hcid/security.c b/hcid/security.c
index 6f8151f8..0df255ab 100644
--- a/hcid/security.c
+++ b/hcid/security.c
@@ -360,12 +360,20 @@ static void return_link_keys(int dev, bdaddr_t *sba, void *ptr)
static void user_confirm_request(int dev, bdaddr_t *sba, void *ptr)
{
- hci_send_cmd(dev, OGF_LINK_CTL, OCF_USER_CONFIRM_NEG_REPLY, 6, ptr);
+ evt_user_confirm_request *req = ptr;
+
+ if (hcid_dbus_user_confirm(sba, &req->bdaddr, req->passkey) < 0)
+ hci_send_cmd(dev, OGF_LINK_CTL, OCF_USER_CONFIRM_NEG_REPLY,
+ 6, ptr);
}
static void user_passkey_request(int dev, bdaddr_t *sba, void *ptr)
{
- hci_send_cmd(dev, OGF_LINK_CTL, OCF_USER_PASSKEY_NEG_REPLY, 6, ptr);
+ evt_user_passkey_request *req = ptr;
+
+ if (hcid_dbus_user_passkey(sba, &req->bdaddr) < 0)
+ hci_send_cmd(dev, OGF_LINK_CTL, OCF_USER_PASSKEY_NEG_REPLY,
+ 6, ptr);
}
static void remote_oob_data_request(int dev, bdaddr_t *sba, void *ptr)