• Dridi Boukelmoune's avatar
    http1: Missing workspace release · 66e2ea31
    Dridi Boukelmoune authored
    Working on the workspace sanitizer (ancestor of the workspace emulator)
    final rollbacks were needed to unwind allocations. There was however a
    branch where error handling was missing a workspace release, and it was
    fine before the introduction of the final rollbacks.
    
    To avoid turning the workspace emulator into a DoS vector the rollbacks
    are now only enforced for emulator builds. The specific "insufficient
    workspace" log is amended to ensure future changes to the session
    workspace footprint don't accidentally remove test coverage for that
    branch. The same could be done for other "insufficient workspace" logs
    in the PROXY protocol parsing.
    
    Refs 0632b846 (req: Prevent early rollback)
    Refs ce71896a (sess: Plug conceptual leak)
    Refs 246b1eb1 (busyobj: Plug conceptual leak)
    Refs 5b4f0f1a (htc: Defer workspace rollbacks for request tasks)
    Refs #3644
    
    Spotted by Alf's single process fuzzing setup that we should eventually
    revisit.
    
    Refs #3152
    66e2ea31
cache_busyobj.c 4.64 KB