summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2015-02-26 17:55:31 +0200
committerJohan Hedberg <johan.hedberg@intel.com>2015-02-26 17:55:31 +0200
commit60ba9a54934ed2bd1cf60c858fc0defd2e4f725e (patch)
treec3a43c195388fb98a88bf95f5c69b984ccccb6ff
parent242993bf71d7d5a6b95b909943ebb15db62454b6 (diff)
downloadbluez-60ba9a54934ed2bd1cf60c858fc0defd2e4f725e.tar.gz
doc/mgmt-api: Add security level to new CSRK events
In order to distinguish between LE Security Mode 2 levels 1 and 2 we need to know whether a CSRK is authenticated or unauthenticated. So far this information wasn't available in the New CSRK event from the kernel. This patch renames the Master parameter of the event to Type and adds two new values to it. The two old values 0x00 and 0x01 still have the same meaning as before from the local/remote CSRK perspective. Since we so far have not known anything about the security level these values must be assumed to be unauthenticated. The consequence of this update is that authenticated keys with new kernels will simply be ignored by existing code (which only accepts values 0x00 and 0x01), however since we haven't really had any code doing real signing so far this should be an acceptable compromise.
-rw-r--r--doc/mgmt-api.txt21
1 files changed, 12 insertions, 9 deletions
diff --git a/doc/mgmt-api.txt b/doc/mgmt-api.txt
index bef99902a..c72067c95 100644
--- a/doc/mgmt-api.txt
+++ b/doc/mgmt-api.txt
@@ -2969,7 +2969,7 @@ New Signature Resolving Key Event
Key {
Address (6 Octets)
Address_Type (1 Octet)
- Master (1 Octet)
+ Type (1 Octet)
Value (16 Octets)
}
@@ -2979,17 +2979,20 @@ New Signature Resolving Key Event
The Store_Hint parameter indicates whether the host is expected
to store the key persistently or not.
- When the Master parameter is set to 0x01, then the signature
- resolving key from the remote peer device is provided. It is
- the key that is used for signature verification.
+ The Type parameter has the following possible values:
+
+ 0x00 Unauthenticated local CSRK
+ 0x01 Unauthenticated remote CSRK
+ 0x02 Authenticated local CSRK
+ 0x03 Authenticated remote CSRK
- When the Master parameter is set to 0x00, then it is the local
- signature resolving key that is used to sign data. The remote
- peer device will be using it for signature verification.
+ The local keys are used for signing data to be sent to the
+ remote device, whereas the remote keys are used to verify
+ signatures received from the remote device.
The local signature resolving key will be generated with each
- pairing request. Only after receiving this event with Master
- parameter set to 0x00 it is possible to use ATT Signed Write
+ pairing request. Only after receiving this event with the Type
+ indicating a local key is it possible to use ATT Signed Write
procedures.
Possible values for the Address_Type parameter: