ipfw bug on i386

Hizel Ildar hizel at vyborg.ru
Mon Apr 12 07:15:47 UTC 2010


В Mon, 12 Apr 2010 10:42:25 +0400
"Andrey V. Elsukov" <bu7cher at yandex.ru> пишет:

> On 12.04.2010 10:07, Hizel Ildar wrote:
> > Hey! I'm fix this bug :D
> >
> > patch:
> >
> > foo# diff -ruN main.c~ main.c
> > --- main.c~     2010-03-04 19:54:56.000000000 +0300
> > +++ main.c      2010-04-12 09:37:21.000000000 +0400
> > @@ -553,7 +553,7 @@
> >          }
> >
> >          while (fgets(buf, BUFSIZ, f)) {         /* read commands */
> > -               char linename[10];
> > +               char linename[11];
> >                  char *args[2];
> >
> >                  lineno++;
> 
> Can you test your it with 100k lines? :)
> I think it can be fixed with something similar to:
> 
> -               sprintf(linename, "Line %d", lineno);
> +               snprintf(linename, sizeof(linename), "Line %d",
> lineno);
> 


and the variable linename will be incorrect information, it is necessary
to increase the linename to 16 at least

char linename[16]


More information about the freebsd-current mailing list