Change8

v3.3-dev9

📦 haproxyView on GitHub →
8 features🐛 39 fixes🔧 27 symbols

Summary

This release introduces path parameters, improves QUIC support, and enhances debugging and statistics reporting. It also includes numerous bug fixes and optimizations across various modules.

Migration Steps

  1. Migrate the patterns reference to cebs_tree.
  2. Switch guid to more compact cebuis_tree.
  3. Switch addr_node to cebis_tree.
  4. Switch conf.name to cebis_tree.
  5. Switch the host_dn member to cebis_tree.

✨ New Features

  • Introduce the concept of path parameters in the server.
  • Add TLS group and sig scheme TLVs to proxy-protocol.
  • Import cebtree version 0.5.0 to support duplicates.
  • Migrate the patterns reference to cebs_tree.
  • Switch guid to more compact cebuis_tree.
  • Switch addr_node to cebis_tree.
  • Switch conf.name to cebis_tree.
  • Switch the host_dn member to cebis_tree.

🐛 Bug Fixes

  • Fix error message about several '-m' parameters.
  • Use SNI as pool connection name for SSL server only.
  • Update healthcheck when server settings are changed via CLI.
  • Don't use SNI as pool-conn-name for non-SSL connections.
  • Too short PADDING frame for too short packets.
  • Work around a small bug in musl's CPU_ISSET().
  • Properly initialize msg_controllen.
  • Fix crash with stop_proxy() called during init.
  • Fix the dump of pools info to deal with buffers limitations.
  • Properly support GSO on backend side.
  • Reset MUX blocking flags when a send error is caught.
  • Don't block receives in H2_CS_ERROR and H2_CS_ERROR2 states.
  • Restart reading when mbuf ring is no longer full.
  • Remove H2_CF_DEM_DFULL flags when the demux buffer is reset.
  • Report RST/error to app-layer stream during 0-copy forwarding.
  • Reinforce conditions to report an error to app-layer stream.
  • Fix ALPN inheritance from server.
  • Ensure checks are compatible with QUIC servers.
  • Force channel analysis on successful synchronous send.
  • Null pointer dereference upon allocation failure.
  • Potential NULL deref in trace macro.
  • Fix potential NULL deref in trace callback.
  • Prototype inconsistency.
  • Functions defined but not used.
  • Properly cache do-resolv resolution.
  • Restore round-robin selection on records in DNS answers.
  • Test for empty tree when getting a record from DNS answer.
  • Make resolution own its hostname_dn value.
  • Accept to create resolution without hostname.
  • Wake resolver task up when unlinking a stream requester.
  • Crash when updating CA during OCSP updates (reverted).
  • Fix potential NULL deref in http_process_req_common().
  • Crash when updating CA during OCSP updates.
  • Always normalize FQDN from response.
  • Fix reporting of task latency.
  • Don't loop on non-expirable entries.
  • Fix a crash when using QUIC.
  • Fix a crash if we failed to create the mux.
  • Make sure never to miss a process_table_expire update.

Affected Symbols