From 18ca203a9e098894b4392348458f33bd1caaa89f Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Fri, 4 Jan 2013 13:23:34 +0200 Subject: [PATCH] core: Add proper error status checks for mgmt commands in adapter.c --- src/adapter.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/adapter.c b/src/adapter.c index ff500ee1b..68fc0120f 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -3746,6 +3746,12 @@ static void read_info_complete(uint16_t index, uint8_t status, uint16_t length, DBG("index %u", index); + if (status != MGMT_STATUS_SUCCESS) { + error("mgmt_read_info(%u) failed: %s (0x%02x)", index, + mgmt_errstr(status), status); + return; + } + adapter = adapter_find_by_id(index); if (adapter == NULL) { warn("mgmt_read_info for an already existing adapter"); @@ -3788,6 +3794,12 @@ static void read_index_list_complete(uint16_t index, uint8_t status, uint16_t num; int i; + if (status != MGMT_STATUS_SUCCESS) { + error("mgmt_read_index_list() failed: %s (0x%02x)", + mgmt_errstr(status), status); + return; + } + if (length < sizeof(*rp)) { error("Unexpected length for mgmt_read_index_list response"); return; @@ -3822,6 +3834,12 @@ static void read_version_complete(uint16_t index, uint8_t status, const struct mgmt_rp_read_version *rp = param; unsigned int id; + if (status != MGMT_STATUS_SUCCESS) { + error("mgmt_read_version() failed: %s (0x%02x)", + mgmt_errstr(status), status); + return; + } + if (length < sizeof(*rp)) { error("Unexpected length for mgmt_read_version response"); return; -- 2.47.3