Message ID | 20201001193816.975987-1-vishal.l.verma@intel.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 56e26ee7d41ec90c52d713388c5bd8ff4ef37c6e |
Headers | show |
Series | [ndctl,1/2] libndctl: fix a potential buffer overflow | expand |
diff --git a/ndctl/lib/libndctl.c b/ndctl/lib/libndctl.c index 6556b33..5546963 100644 --- a/ndctl/lib/libndctl.c +++ b/ndctl/lib/libndctl.c @@ -3675,8 +3675,8 @@ NDCTL_EXPORT int ndctl_dimm_is_active(struct ndctl_dimm *dimm) { struct ndctl_ctx *ctx = ndctl_dimm_get_ctx(dimm); char *path = dimm->dimm_buf; + char buf[SYSFS_ATTR_SIZE]; int len = dimm->buf_len; - char buf[20]; if (snprintf(path, len, "%s/state", dimm->dimm_path) >= len) { err(ctx, "%s: buffer too small!\n",
Static analysis points out that the 'buf' in ndctl_dimm_is_active was inappropriately sized. We already have 'SYSFS_ATTR_SIZE' for such buffers, and it looks like this was just an oversight. Fixes: 0a4509d7de2f ("ndctl: enumerate interleave sets") Cc: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> --- ndctl/lib/libndctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)