cvs commit: src/contrib/top top.X top.c top.h src/usr.bin/top
machine.c
Simon L. Nielsen
simon at FreeBSD.org
Sun Apr 15 12:07:29 UTC 2007
On 2007.04.14 18:17:30 +0400, Stanislav Sedov wrote:
> On Sat, 14 Apr 2007 14:46:55 +0200
> "Simon L. Nielsen" <simon at FreeBSD.org> mentioned:
>
> > On 2007.04.14 15:42:46 +0400, Stanislav Sedov wrote:
> > > On Sat, 14 Apr 2007 12:35:59 +0200
> > > Pav Lucistnik <pav at FreeBSD.org> mentioned:
> > > >
> > > > Also, is the width cut-off technical problem, or is it fixable?
> > > > See http://people.freebsd.org/~pav/top.png for what I mean.
> > > >
> > >
> > > Well, they allocate a static buffer of 128 byte lenght, so the result
> > > doesn't fit into it. Also, there's buffer overrun, since sprintf is
> > > used, not snprintf.
> >
> > So, if a user sets a very long proctitle now and some other user runs
> > top with the new feature the buffer will overflow?
>
> Well, not quite right. If you screen is wider then 128 symbols, there
> could be an overflow, since the row buffer is 128 bytes length.
>
> I have not touched any limits, just replaced the string it displays. So
> there can be overflow with patch or without it, if both the command
> name and screen width is wider then 128.
>
> Well, anyway i'm going to fix that right now.
OK, great. "Buffer overflow" and sprintf just make the red warning
lights go off :-).
--
Simon L. Nielsen
More information about the cvs-src
mailing list