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]>
---
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;
}
--
2.20.1
_______________________________________________
Linux-nvdimm mailing list
[email protected]
https://lists.01.org/mailman/listinfo/linux-nvdimm