Messages in this thread | | | Date | Fri, 20 Jul 2012 09:31:00 -0700 | Subject | Re: [PATCH] pstore/ram: Fix possible NULL dereference | From | Kees Cook <> |
| |
On Thu, Jul 19, 2012 at 4:43 PM, Anton Vorontsov <anton.vorontsov@linaro.org> wrote: > We can dereference 'cxt->cprz' if console and dump logging are disabled > (which is unlikely, but still possible to do). This patch fixes the issue > by changing the code so that we don't dereference przs at all, we can > just calculate bufsize from console_size and record_size values. > > Plus, while at it, the patch improves the buffer size calculation. > > After Kay's printk rework, we know the optimal buffer size for console > logging -- it is LOG_LINE_MAX (defined privately in printk.c). Previously, > if only console logging was enabled, we would allocate unnecessary large > buffer in pstore, while we only need LOG_LINE_MAX. (Pstore console logging > is still capable of handling buffers > LOG_LINE_MAX, it will just do > multiple calls to psinfo->write). > > Note that I don't export the constant, since we will do even a better > thing soon: we will switch console logging to a new write_buf API, which > will eliminate the need for the additional buffer; and so we won't need > the constant. > > Reported-by: Dan Carpenter <dan.carpenter@oracle.com> > Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
Acked-by: Kees Cook <keescook@chromium.org>
-Kees
-- Kees Cook Chrome OS Security
| |