From fc47b5a5c5ed08285631928a182f8a4a38fd1203 Mon Sep 17 00:00:00 2001 From: "matthias.ringwald@gmail.com" Date: Thu, 30 Jan 2014 19:05:01 +0000 Subject: [PATCH] check ATT_PROPERTY_WRITE_WITHOUT_RESPONSE and ATT_PROPERTY_AUTHENTICATED_SIGNED_WRITE in resp write handlers --- ble/att.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ble/att.c b/ble/att.c index 29ed6fae5..9a024959b 100644 --- a/ble/att.c +++ b/ble/att.c @@ -930,6 +930,7 @@ static void handle_write_command(att_connection_t * att_connection, uint8_t * re if (!ok) return; if ((it.flags & ATT_PROPERTY_DYNAMIC) == 0) return; if ((it.flags & ATT_PROPERTY_WRITE_WITHOUT_RESPONSE) == 0) return; + if (att_validate_security(att_connection, &it)) return 0; (*att_write_callback)(handle, ATT_TRANSACTION_MODE_NONE, 0, request_buffer + 3, request_len - 3, NULL); } @@ -946,6 +947,8 @@ static void handle_signed_write_command(att_connection_t * att_connection, uint8 int ok = att_find_handle(&it, handle); if (!ok) return; if ((it.flags & ATT_PROPERTY_DYNAMIC) == 0) return; + if ((it.flags & ATT_PROPERTY_AUTHENTICATED_SIGNED_WRITE) == 0) return; + if (att_validate_security(att_connection, &it)) return 0; (*att_write_callback)(handle, ATT_TRANSACTION_MODE_NONE, 0, request_buffer + 3, request_len - 3 - 12, (signature_t *) request_buffer + request_len - 12); }