DragonFly BSD
DragonFly commits List (threaded) for 2010-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: userland - dhclient - Fix possible infinite loop


From: Samuel Greear <sjg@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 8 Sep 2010 18:22:53 -0700 (PDT)

commit db2a08265dc67538d417f14ccdc9fdef6fb0d60b
Author: Samuel J. Greear <sjg@thesjg.com>
Date:   Thu Sep 9 01:12:31 2010 +0000

    userland - dhclient - Fix possible infinite loop
    
    FreeBSD commit message:
    
    It is possible for bpf to return a length such that:
    
    	length != BPF_WORDALIGN(length)
    
    This meeans that it is possible for this to be true:
    
    	interface->rbuf_offset > interface->rbuf_len
    
    Handle this case in the test for running out of packets.  While
    OpenBSD's solution of setting interface->rbuf_len to
    BPF_WORDALIGN(length) is safe due to the size of the buffer, I think
    this solution results in less hidden assumptions.
    
    This should fix the problem of dhclient running away and consuming 100%
    CPU.
    
    PR:		bin/102226
    Submitted by:	Joost Bekkers <joost at jodocus.org>
    
    Reported-by:	Many
    Obtained-from:	FreeBSD

Summary of changes:
 sbin/dhclient/bpf.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/db2a08265dc67538d417f14ccdc9fdef6fb0d60b


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]