[Crash-utility] [PATCH] Fix ps -l buffer overflow problem

Jeff Moyer jmoyer at redhat.com
Wed Jan 14 18:50:56 UTC 2009


Bernhard Walle <bwalle at suse.de> writes:

> That should also go mainline.
>
>
> Signed-off-by : Sachin Sant <sachinp at in.ibm.com>
> Acked-by: Bernhard Walle <bwalle at suse.de>
>
>
> 1 file changed, 1 insertion(+), 1 deletion(-)
> task.c |    2 +-
>
>
> That should also go mainline.
>
>
> Signed-off-by : Sachin Sant <sachinp at in.ibm.com>
> Acked-by: Bernhard Walle <bwalle at suse.de>
>
> diff --git a/task.c b/task.c
> --- a/task.c
> +++ b/task.c
> @@ -2902,7 +2902,7 @@
>  {
>  	int i, c;
>  	struct task_context *tcp;
> -	char format[10];
> +	char format[15];


        c = strlen(buf);
        sprintf(format, "[%c%dll%c]  ", '%', c,
                pc->output_radix == 10 ? 'u' : 'x');

Looks like it should be 11, no?  You have 6 characters + '\0' + the %d,
which can be up to 1500 (BUFSIZE).  Of course, it wouldn't kill us to
use snprintf, either.

Cheers,
Jeff




More information about the Crash-utility mailing list