From: Timo Sirainen Date: Wed, 4 Sep 2013 18:23:33 +0000 (+0300) Subject: Fixed off-by-one buffer overflows (practically non-exploitable). X-Git-Tag: 2.2.6~117 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2a325b952fe47346d76221d2c07a3fe02faf8800;p=thirdparty%2Fdovecot%2Fcore.git Fixed off-by-one buffer overflows (practically non-exploitable). Found by Coverity scan. --- diff --git a/src/doveadm/doveadm-master.c b/src/doveadm/doveadm-master.c index ae989e0a97..2c2da3260e 100644 --- a/src/doveadm/doveadm-master.c +++ b/src/doveadm/doveadm-master.c @@ -23,7 +23,7 @@ static bool pid_file_read(const char *path, pid_t *pid_r) i_fatal("open(%s) failed: %m", path); } - ret = read(fd, buf, sizeof(buf)); + ret = read(fd, buf, sizeof(buf)-1); if (ret <= 0) { if (ret == 0) i_error("Empty PID file in %s", path); diff --git a/src/master/main.c b/src/master/main.c index 454b877353..664b418998 100644 --- a/src/master/main.c +++ b/src/master/main.c @@ -201,7 +201,7 @@ static void fatal_log_check(const struct master_settings *set) if (fd == -1) return; - ret = read(fd, buf, sizeof(buf)); + ret = read(fd, buf, sizeof(buf)-1); if (ret < 0) i_error("read(%s) failed: %m", path); else { @@ -231,7 +231,7 @@ static bool pid_file_read(const char *path, pid_t *pid_r) i_fatal("open(%s) failed: %m", path); } - ret = read(fd, buf, sizeof(buf)); + ret = read(fd, buf, sizeof(buf)-1); if (ret <= 0) { if (ret == 0) i_error("Empty PID file in %s, overriding", path);