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 | |
| parent | 29a1dea575c6252ead314f97d09a558be35a0c2f (diff) | |
Fix possible buffer overflow while reading HDD temperature
| -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 { |
