From a0b9021d54dc9890da5f0c9bd26361db4556f6c2 Mon Sep 17 00:00:00 2001 From: Darren Salt Date: Tue, 10 Feb 2009 17:17:50 +0000 Subject: Fix broken size checks in various input plugins (ref. CVE-2008-5239). --- src/input/input_stdin_fifo.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/input/input_stdin_fifo.c') diff --git a/src/input/input_stdin_fifo.c b/src/input/input_stdin_fifo.c index 4acd825a5..64b8d748c 100644 --- a/src/input/input_stdin_fifo.c +++ b/src/input/input_stdin_fifo.c @@ -123,7 +123,9 @@ static buf_element_t *stdin_plugin_read_block (input_plugin_t *this_gen, fifo_bu /* stdin_input_plugin_t *this = (stdin_input_plugin_t *) this_gen; */ buf_element_t *buf = fifo->buffer_pool_alloc (fifo); - if (todo < 0 || todo > buf->size) { + if (todo > buf->max_size) + todo = buf->max_size; + if (todo < 0) { buf->free_buffer (buf); return NULL; } -- cgit v1.2.3