mirror of
https://passt.top/passt
synced 2025-05-22 17:25:35 +02:00
passt-repair: Ensure that read buffer is NULL-terminated
After 3d41e4d838
("passt-repair: Correct off-by-one error verifying
name"), Coverity Scan isn't convinced anymore about the fact that the
ev->name used in the snprintf() is NULL-terminated.
It comes from a read() call, and read() of course doesn't terminate
it, but we already check that the byte at ev->len - 1 is a NULL
terminator, so this is actually a false positive.
In any case, the logic ensuring that ev->name is NULL-terminated isn't
necessarily obvious, and additionally checking that the last byte in
the buffer we read is a NULL terminator is harmless, so do that
explicitly, even if it's redundant.
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
684870a766
commit
06784d7fc6
1 changed files with 1 additions and 0 deletions
|
@ -137,6 +137,7 @@ int main(int argc, char **argv)
|
|||
fprintf(stderr, "inotify read: %i", errno);
|
||||
_exit(1);
|
||||
}
|
||||
buf[n - 1] = '\0';
|
||||
|
||||
if (n < (ssize_t)sizeof(*ev)) {
|
||||
fprintf(stderr, "Short inotify read: %zi", n);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue