OpenAFS Master Repository branch, master, updated. BP--openafs-stable-1_6_x-1218-gb6add11

Gerrit Code Review gerrit@openafs.org
Wed, 1 Jun 2011 06:14:26 -0700 (PDT)


The following commit has been merged in the master branch:
commit b6add117ad210665a811213fe17a30fabbda3a3c
Author: Simon Wilkinson <sxw@your-file-system.com>
Date:   Tue May 31 08:28:51 2011 +0100

    vos: Don't leak/overflow bulkaddrs
    
    The vos listaddrs command repeatedly reuses a bulkaddrs array. It
    zeros it once (without freeing the allocated memory), and then
    repeatedly uses it without zeroing in a loop. This means that the XDR
    library assumes that a sufficiently large block is already allocated,
    doesn't reallocate for the incoming data, or check limits.
    
    This means that if the first call to VL_GetAddrsU returns a set of
    addresses smaller than subsequent calls, we'll write past the end
    of the array, causing memory corruption.
    
    Fix this by freeing the arrays correctly with each pass of the call.
    
    Change-Id: I540d369c1529ec3574548f42cbd48b6c2b38cebd
    Reviewed-on: http://gerrit.openafs.org/4756
    Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Derrick Brashear <shadow@dementia.org>

 src/volser/vos.c |   21 +++++++++++----------
 1 files changed, 11 insertions(+), 10 deletions(-)

-- 
OpenAFS Master Repository