Medium · published September 22, 2026
Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to 1.36.10, 1.37.6, 1.38.4, and 1.39.1, Envoy's ProdClusterManagerFactory::allocateConnPool dereferences transport_socket_options while selecting an HTTP/3 connection pool without first checking whether the pointer is null. LoadBalancerContext implementations used by synthetic, mirror, health-check, and async-client calls can return no transport-socket options. With auto_config and HTTP/3 enabled, routine traffic reaching one of those contexts can crash an Envoy worker. The relevant scope boundary is that the affected branch requires HTTP/3 in the protocol set and a context that supplies no transport-socket options. This issue is fixed in versions 1.36.10, 1.37.6, 1.38.4, and 1.39.1.
| Product | Versions | Fixed in |
|---|---|---|
| envoyproxy/envoy | < 1.36.10 | 1.36.10 |
| envoyproxy/envoy | ≥ 1.37.0, < 1.37.6 | 1.37.6 |
| envoyproxy/envoy | ≥ 1.38.0, < 1.38.4 | 1.38.4 |
| envoyproxy/envoy | ≥ 1.39.0, < 1.39.1 | 1.39.1 |