mirror of
https://github.com/postgres/postgres.git
synced 2025-04-20 00:42:27 +03:00
pg_standby: Avoid writing one byte beyond the end of the buffer.
Previously, read() might have returned a length equal to the buffer length, and then the subsequent store to buf[len] would write a zero-byte one byte past the end. This doesn't seem likely to be a security issue, but there's some chance it could result in pg_standby misbehaving. Spotted by Coverity; patch by Michael Paquier, reviewed by me.
This commit is contained in:
parent
741b1b22a2
commit
151fb75b0d
@ -435,7 +435,7 @@ CheckForExternalTrigger(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((len = read(fd, buf, sizeof(buf))) < 0)
|
if ((len = read(fd, buf, sizeof(buf) - 1)) < 0)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "WARNING: could not read \"%s\": %s\n",
|
fprintf(stderr, "WARNING: could not read \"%s\": %s\n",
|
||||||
triggerPath, strerror(errno));
|
triggerPath, strerror(errno));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user