1. 04 Apr, 2024 2 commits
    • Dridi Boukelmoune's avatar
      param: Restore old default h2_max_header_list_size · 65a42d18
      Dridi Boukelmoune authored
      Except that the old default value replaces the maximum one. Aligning
      with the literal maximum value for the underlying HTTP/2 setting breaks
      32bit builds because the byte tweaks take a detour via ssize_t. When it
      casts to uintmax_t the MSB is propagated all the way, triggering the
      following error at build time:
      
      > 4294967295b is too large for this architecture.
      
      Instead of fighting a tweak that is clearly wrong, grant h2 clients a
      maximum of 2GB of uncompressed headers (instead of 4GB) that will never
      happen, because h2 is overall much wronger.
      65a42d18
    • Dridi Boukelmoune's avatar
      758dad03
  2. 29 Mar, 2024 14 commits
  3. 25 Mar, 2024 3 commits
    • AlveElde's avatar
      purge: Use EXP_Reduce() instead of EXP_Rearm() · e676f779
      AlveElde authored
      When a stale object is soft-purged, the time until the object expires
      should not be reset, as repeated soft-purges could keep the object
      around indefinitely.
      e676f779
    • AlveElde's avatar
      expire: Introduce EXP_Reduce() · 9c0abf0c
      AlveElde authored
      This commit introduces EXP_Reduce(), a function to reduce object timers.
      The goal is to provide a function better suited to soft-purging objects,
      as EXP_Rearm() has some non-obvious disadvantages when used or this
      purpose.
      
      When EXP_Rearm() is used to soft-purge an object by setting its TTL to
      0, the expiry is effectively reset to the start of the objects grace
      period. This happens because the object TTL includes a time delta
      between object insertion time (oc->t_origin) and now. The result is that
      a soft-purge extends the lifetime of an already stale object, and
      repeated soft-purges can keep the object away from expiry indefinitely.
      
      The EXP_Reduce() function is better suited for soft-purging, as it only
      updates an objects TTL if it would reduce the objects lifetime. The
      function also has facilities for reducing grace and keep.
      9c0abf0c
    • Dridi Boukelmoune's avatar
  4. 20 Mar, 2024 1 commit
    • Walid Boudebouda's avatar
      varnishncsa: Reduce CTX.gen overflow likelihood · 13fe897f
      Walid Boudebouda authored
      If a format never matches anything, the 4294967296th transaction
      proccessed by varnishncsa will wrap its generation around to zero,
      be considered a match, and let vsb_fcat() pass a null string to
      VSB_quote().
      13fe897f
  5. 19 Mar, 2024 1 commit
  6. 18 Mar, 2024 19 commits