diff options
author | Alexander Couzens <lynxis@fe80.eu> | 2019-04-28 13:28:15 +0200 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2019-04-28 10:13:51 -0500 |
commit | 64df5344c5fe8e004a63ea9a912dd78b50a6d804 (patch) | |
tree | 7098e023b70e8b6258de1b43b7964d4b65bf57bd /drivers | |
parent | d604052cef7fe2f3b4b5f4f3debeb9f5e3b0d72c (diff) | |
download | ofono-64df5344c5fe8e004a63ea9a912dd78b50a6d804.tar.gz |
qmi: netmon: fix crashs on get_rssi_cb when BER or RSSI are empty
The message can be emitted without the fields being present. In this case ber or rssi are 0
resulting in a null pointer deref.
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/qmimodem/netmon.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/qmimodem/netmon.c b/drivers/qmimodem/netmon.c index 14a55632..729879ce 100644 --- a/drivers/qmimodem/netmon.c +++ b/drivers/qmimodem/netmon.c @@ -89,8 +89,8 @@ static void get_rssi_cb(struct qmi_result *result, void *user_data) /* RSSI */ rssi = qmi_result_get(result, 0x11, &len); - num = GUINT16_FROM_LE(rssi->count); if (rssi) { + num = GUINT16_FROM_LE(rssi->count); for (i = 0; i < num; i++) { DBG("RSSI: %hhu on RAT %hhd", rssi->info[i].rssi, @@ -126,8 +126,8 @@ static void get_rssi_cb(struct qmi_result *result, void *user_data) /* Bit error rate */ ber = qmi_result_get(result, 0x15, &len); - num = GUINT16_FROM_LE(ber->count); if (ber) { + num = GUINT16_FROM_LE(ber->count); for (i = 0; i < ber->count; i++) { DBG("Bit error rate: %hu on RAT %hhd", GUINT16_FROM_LE(ber->info[i].rate), |