On 9/20/19 11:06 AM, Vishal Verma wrote:
> Static analysis warns that pread() doesn't NUL-terminate buffers, and
> that we shouldn't pass it directly to strcmp. The sysfs string should
> normally have the right termination, but for correctness in the library,
> we shouldn't rely on that. Replace the strcmp() calls in question with
> an explicit strncmp().
> 
> Fixes: 3c0c7db045ec ("ndctl: add a wait-overwrite command")
> Cc: Dave Jiang <[email protected]>
> Cc: Dan Williams <[email protected]>
> Signed-off-by: Vishal Verma <[email protected]>

Reviewed-by: Dave Jiang <[email protected]>

> ---
>  ndctl/lib/dimm.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/ndctl/lib/dimm.c b/ndctl/lib/dimm.c
> index 2f145be..17344f0 100644
> --- a/ndctl/lib/dimm.c
> +++ b/ndctl/lib/dimm.c
> @@ -825,7 +825,7 @@ NDCTL_EXPORT int ndctl_dimm_wait_overwrite(struct 
> ndctl_dimm *dimm)
>                       break;
>               }
>  
> -             if (strcmp(buf, "overwrite") == 0) {
> +             if (strncmp(buf, "overwrite", 9) == 0) {
>                       rc = poll(&fds, 1, -1);
>                       if (rc < 0) {
>                               rc = -errno;
> @@ -839,7 +839,7 @@ NDCTL_EXPORT int ndctl_dimm_wait_overwrite(struct 
> ndctl_dimm *dimm)
>                       }
>                       fds.revents = 0;
>               } else {
> -                     if (strcmp(buf, "disabled") == 0)
> +                     if (strncmp(buf, "disabled", 8) == 0)
>                               rc = 1;
>                       break;
>               }
> 
_______________________________________________
Linux-nvdimm mailing list
[email protected]
https://lists.01.org/mailman/listinfo/linux-nvdimm

Reply via email to