Bluetooth: Fix error status when pairing fails
authorPaulo Sérgio <paulo.sergio@openbossa.org>
Thu, 25 Oct 2012 19:55:51 +0000 (16:55 -0300)
committerGustavo Padovan <gustavo.padovan@collabora.co.uk>
Fri, 9 Nov 2012 15:45:37 +0000 (16:45 +0100)
commit896ea28ea824d49671fc7e9315d9c5be491a644f
tree008868caacda045b56622f02acf0349b841d8be6
parent476e44cb19f1fbf2d5883dddcc0ce31b33b45915
Bluetooth: Fix error status when pairing fails

When pairing fails due to wrong confirm value, the management layer
doesn't report a proper error status. It sends
MGMT_STATUS_CONNECT_FAILED instead of MGMT_STATUS_AUTH_FAILED.

Most of management functions that receive a status as a parameter
expects for it to be encoded as a HCI status. But when a SMP pairing
fails, the SMP layer sends the SMP reason as the error status to the
management layer.

This commit maps all SMP reasons to HCI_ERROR_AUTH_FAILURE, which will
be converted to MGMT_STATUS_AUTH_FAILED in the management layer.

Reported-by: Claudio Takahasi <claudio.takahasi@openbossa.org>
Reviewed-by: João Paulo Rechi Vita <jprvita@openbossa.org>
Signed-off-by: Paulo Sérgio <paulo.sergio@openbossa.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
net/bluetooth/smp.c