• NeilBrown's avatar
    SUNRPC: cache: ignore timestamp written to 'flush' file. · 3b68e6ee
    NeilBrown authored
    The interface for flushing the sunrpc auth cache was poorly
    designed and has caused problems a number of times.
    
    The design is that you write a timestamp, and all entries
    created before that time are discarded.
    The most obvious problem is that this is not what people
    actually want.  They want to just flush the whole cache.
    The 1-second granularity can be a problem, as can the use
    of wall-clock time.
    
    A current problem is that code will write the current time to
    this file - expecting it to clear everything - and if the
    seconds number ticks over before this timestamp is checked,
    the test "then >= now" fails, and a full flush isn't forced.
    
    So lets just drop the subtleties and always flush the whole
    cache.  The worst this could do is impose an extra cost
    refilling it, but that would require someone to be using
    non-standard tools.
    
    We still report an error if the string written is not a number,
    but we cause any valid number to flush the whole cache.
    Reported-by: default avatar"Wang, Alan 1. (NSB - CN/Hangzhou)" <alan.1.wang@nokia-sbell.com>
    Signed-off-by: default avatarNeilBrown <neilb@suse.com>
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    3b68e6ee
cache.c 44.2 KB