[v3] examples/vm_power_manager: fix string null termination
Checks
Commit Message
coverity complains about a null-termination after a read,
so we terminate once we exit the do-while read loop.
Coverity issue: 337680
Fixes: a63504a90f ("examples/power: add JSON string handling")
CC: stable@dpdk.org
Signed-off-by: David Hunt <david.hunt@intel.com>
---
v2: Move null termination outside of do-while.
v3: Simplify null termimation
---
examples/vm_power_manager/channel_monitor.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
Comments
On 26-Apr-19 3:04 PM, David Hunt wrote:
> coverity complains about a null-termination after a read,
> so we terminate once we exit the do-while read loop.
>
> Coverity issue: 337680
> Fixes: a63504a90f ("examples/power: add JSON string handling")
> CC: stable@dpdk.org
>
> Signed-off-by: David Hunt <david.hunt@intel.com>
>
> ---
> v2: Move null termination outside of do-while.
> v3: Simplify null termimation
> ---
> examples/vm_power_manager/channel_monitor.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/examples/vm_power_manager/channel_monitor.c b/examples/vm_power_manager/channel_monitor.c
> index 971e4f2bc..4a287109b 100644
> --- a/examples/vm_power_manager/channel_monitor.c
> +++ b/examples/vm_power_manager/channel_monitor.c
> @@ -822,12 +822,7 @@ read_json_packet(struct channel_info *chan_info)
> 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;
>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
26/04/2019 16:10, Burakov, Anatoly:
> On 26-Apr-19 3:04 PM, David Hunt wrote:
> > coverity complains about a null-termination after a read,
> > so we terminate once we exit the do-while read loop.
> >
> > Coverity issue: 337680
> > Fixes: a63504a90f ("examples/power: add JSON string handling")
> > CC: stable@dpdk.org
> >
> > Signed-off-by: David Hunt <david.hunt@intel.com>
>
> Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
Applied, thanks
PS: replaced "string" with "json" in title to give a bit more context.
@@ -822,12 +822,7 @@ read_json_packet(struct channel_info *chan_info)
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;