aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Evans <evansr@google.com>2024-03-29 21:59:23 +0000
committerTony Hutter <hutter2@llnl.gov>2024-04-29 20:50:05 +0000
commite0cfa1592da065fb0e0ba7579ea4d152ce099323 (patch)
tree53e3b2c5b6d4568af9aecad3412ca5250986f3c2
parentd088fb7d24083988f38e4224a6ef9cc71c12a6a3 (diff)
downloadsrc-e0cfa1592da065fb0e0ba7579ea4d152ce099323.tar.gz
src-e0cfa1592da065fb0e0ba7579ea4d152ce099323.zip
Fix buffer underflow if sysfs file is empty
Reviewed-by: Alexander Motin <mav@FreeBSD.org> Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Jason Lee <jasonlee@lanl.gov> Signed-off-by: Robert Evans <evansr@google.com> Closes #16028 Closes #16035
-rw-r--r--cmd/zpool/os/linux/zpool_vdev_os.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/cmd/zpool/os/linux/zpool_vdev_os.c b/cmd/zpool/os/linux/zpool_vdev_os.c
index 006a3a7d8e01..80627b58211c 100644
--- a/cmd/zpool/os/linux/zpool_vdev_os.c
+++ b/cmd/zpool/os/linux/zpool_vdev_os.c
@@ -458,7 +458,7 @@ static char *zpool_sysfs_gets(char *path)
}
/* Remove trailing newline */
- if (buf[count - 1] == '\n')
+ if (count > 0 && buf[count - 1] == '\n')
buf[count - 1] = 0;
close(fd);