From: Ruediger Meier Date: Sun, 11 Jun 2017 20:20:24 +0000 (+0200) Subject: misc: fix gcc-7 sprintf warnings -Wformat-overflow X-Git-Tag: v2.31-rc1~312 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f64ddc95f39f2cb5cc5b41748754ecbe81cfa7dd;p=thirdparty%2Futil-linux.git misc: fix gcc-7 sprintf warnings -Wformat-overflow ../login-utils/last.c: In function ‘main’: ../login-utils/last.c:624:23: warning: ‘%s’ directive writing up to 31 bytes into a region of size 27 [-Wformat-overflow=] sprintf(path, "/dev/%s", ut->ut_line); ^~ ~~ ../login-utils/last.c:624:3: note: ‘sprintf’ output between 6 and 37 bytes into a destination of size 32 sprintf(path, "/dev/%s", ut->ut_line); ../libblkid/src/devname.c: In function 'probe_one': ../libblkid/src/devname.c:166:29: warning: '%s' directive writing up to 255 bytes into a region of size 245 [-Wformat-overflow=] sprintf(path, "/sys/block/%s/slaves", de->d_name); ^~ ../libblkid/src/devname.c:166:3: note: 'sprintf' output between 19 and 274 bytes into a destination of size 256 sprintf(path, "/sys/block/%s/slaves", de->d_name); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Ruediger Meier --- diff --git a/libblkid/src/devname.c b/libblkid/src/devname.c index ba3c57a419..59029ec065 100644 --- a/libblkid/src/devname.c +++ b/libblkid/src/devname.c @@ -152,7 +152,7 @@ static int is_dm_leaf(const char *devname) { struct dirent *de, *d_de; DIR *dir, *d_dir; - char path[256]; + char path[NAME_MAX + 18 + 1]; int ret = 1; if ((dir = opendir("/sys/block")) == NULL) diff --git a/login-utils/last.c b/login-utils/last.c index f93ec7fbfc..c90b574e51 100644 --- a/login-utils/last.c +++ b/login-utils/last.c @@ -598,7 +598,7 @@ static void __attribute__((__noreturn__)) usage(const struct last_control *ctl, static int is_phantom(const struct last_control *ctl, struct utmpx *ut) { struct passwd *pw; - char path[32]; + char path[sizeof(ut->ut_line) + 16]; int ret = 0; if (ut->ut_tv.tv_sec < ctl->boot_time.tv_sec)