diff options
author | Leandro Pereira <leandro@hardinfo.org> | 2016-07-30 19:59:14 -0300 |
---|---|---|
committer | Leandro Pereira <leandro@hardinfo.org> | 2016-07-30 19:59:14 -0300 |
commit | d1e868879bb8f95b3c2b16d4f8b2560b2a23ff74 (patch) | |
tree | 6f63147c0c9fb2a6dcfaec435f81afcb03a9bdb6 /hardinfo/socket.c | |
parent | 29a1dea575c6252ead314f97d09a558be35a0c2f (diff) |
Fix possible buffer overflow while reading HDD temperature
Diffstat (limited to 'hardinfo/socket.c')
-rw-r--r-- | hardinfo/socket.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/hardinfo/socket.c b/hardinfo/socket.c index 339df30e..40cb8e50 100644 --- a/hardinfo/socket.c +++ b/hardinfo/socket.c @@ -96,10 +96,10 @@ int sock_ready_to_write(Socket * s) int sock_read(Socket * s, gchar * buffer, gint size) { - if (sock_ready_to_read(s)) { + if (size > 2 && sock_ready_to_read(s)) { gint n; - n = read(s->sock, buffer, size); + n = read(s->sock, buffer, size - 1); if (n > 0) { buffer[n] = '\0'; } else { |