• P
    Fix race condition & allow operation cache to grow. · 64954e2f
    Pauli 提交于
    This fixes a race condition where the index to the cache location was found
    under a read lock and a later write lock set the cache entry.  The issue being
    that two threads could get the same location index and then fight each other
    over writing the cache entry.  The most likely outcome is a memory leak,
    however it would be possible to set up an invalid cache entry.
    
    The operation cache was a fixed sized array, once full an assertion failed.
    The other fix here is to convert this to a stack.  The code is simplified and
    it avoids a cache overflow condition.
    Reviewed-by: NRichard Levitte <levitte@openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/14062)
    64954e2f
p_lib.c 65.6 KB