1. 29 Mar, 2024 3 commits
    • Dridi Boukelmoune's avatar
      http2_hpack: Reorganize header addition for clarity · b7bc7f56
      Dridi Boukelmoune authored
      Instead of passing both a decoder and individual decoder fields, the
      signature for h2h_addhdr() changed to only take the decoder. The order
      of parameters is destination first, then the source following the
      calling conventon of functions like memcpy().
      
      Internally the function is reorganized with a bunch of txt variables to
      keep track of the header being added, its name and value. In addition to
      clarity, this also helps improve safety and correctness.
      
      For example the :authority pseudo-header name is erased in place to turn
      it into a regular host header, but having a dedicated txt for the header
      name allows its preservation.
      b7bc7f56
    • Dridi Boukelmoune's avatar
      txt: New macros to work with strings · 7c684d90
      Dridi Boukelmoune authored
      7c684d90
    • Dridi Boukelmoune's avatar
      vtc_http2: Print headers as "name: value" · 8d0cb3f5
      Dridi Boukelmoune authored
      The extra space before the colon looked uncanny. The rest is just code
      indentation improvements.
      
      Better diff with the --ignore-all-space --word-diff options.
      8d0cb3f5
  2. 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
  3. 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
  4. 19 Mar, 2024 1 commit
  5. 18 Mar, 2024 26 commits
  6. 15 Mar, 2024 6 commits