On 7/14/05, Christoph Hellwig <[EMAIL PROTECTED]> wrote:
> > +static inline void buf_check_size(struct cbuf *buf, int len)
> > +{
> > +     if (buf->p+len > buf->ep) {
> > +             if (buf->p < buf->ep) {
> > +                     eprintk(KERN_ERR, "buffer overflow\n");
> > +                     buf->p = buf->ep + 1;
> > +             }
> > +     }
> > +}
> 
> "handling" a buffer overflow with a printk doesn't seem appopinquate.
> In what cases can this happen and what problems may it cause?
> 

I believe all of these cases represent what we would consider to be
protocol errors.  I suppose it is possible that our truncation
approach could be used as an exploit in some weird case -- I'll take a
look at fixing things so that any such overflow case is treated as a
fatal protocol error and reported as such (via the protocol as
appropriate).

      -eric
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to