diff options
author | Christian Ehrhardt <christian.ehrhardt@canonical.com> | 2019-07-04 10:40:06 +0200 |
---|---|---|
committer | Christian Ehrhardt <christian.ehrhardt@canonical.com> | 2019-07-04 10:48:05 +0200 |
commit | 8d53e9f3c6001dcb2865f6e894da5b54e1418f88 (patch) | |
tree | 63907f21c13636a987d43463c675d0727a04e327 /examples/vm_power_manager/channel_monitor.c | |
parent | e2bea7436061ca2e7e14bfcfdc5870f2555c3965 (diff) |
New upstream version 18.11.2upstream-18.11-stable
Change-Id: I23eb4f9179abf1f9c659891f8fddb27ee68ad26b
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Diffstat (limited to 'examples/vm_power_manager/channel_monitor.c')
-rw-r--r-- | examples/vm_power_manager/channel_monitor.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/examples/vm_power_manager/channel_monitor.c b/examples/vm_power_manager/channel_monitor.c index 5da53154..b5b7c678 100644 --- a/examples/vm_power_manager/channel_monitor.c +++ b/examples/vm_power_manager/channel_monitor.c @@ -158,7 +158,8 @@ parse_json_to_pkt(json_t *element, struct channel_packet *pkt) if (ret) return ret; } else if (!strcmp(key, "name")) { - strcpy(pkt->vm_name, json_string_value(value)); + strlcpy(pkt->vm_name, json_string_value(value), + sizeof(pkt->vm_name)); } else if (!strcmp(key, "command")) { char command[32]; snprintf(command, 32, "%s", json_string_value(value)); @@ -835,18 +836,13 @@ read_json_packet(struct channel_info *chan_info) indent--; if ((indent > 0) || (idx > 0)) idx++; - if (indent == 0) + if (indent <= 0) json_data[idx] = 0; if (idx >= MAX_JSON_STRING_LEN-1) break; } while (indent > 0); - if (indent > 0) - /* - * We've broken out of the read loop without getting - * a closing brace, so throw away the data - */ - json_data[idx] = 0; + json_data[idx] = '\0'; if (strlen(json_data) == 0) continue; |