getHttpOptions(const envoy::extensions::upstreams::http::v3::HttpProtocolOptions& options) {
getHttp2Options(const envoy::extensions::upstreams::http::v3::HttpProtocolOptions& options) {
getHttp3Options(const envoy::extensions::upstreams::http::v3::HttpProtocolOptions& options) {
bool useHttp2(const envoy::extensions::upstreams::http::v3::HttpProtocolOptions& options) {
bool useHttp3(const envoy::extensions::upstreams::http::v3::HttpProtocolOptions& options) {
} else if (options.has_auto_config() && options.auto_config().has_http3_protocol_options()) {
if (cache_options.has_key_value_store_config() && server_context.options().concurrency() != 1) {
uint64_t ProtocolOptionsConfigImpl::parseFeatures(const envoy::config::cluster::v3::Cluster& config,
absl::StatusOr<std::unique_ptr<Envoy::Http::HashPolicy>> ProtocolOptionsConfigImpl::buildHashPolicy(
return Envoy::Http::HashPolicyImpl::create(options.hash_policy(), server_context.regexEngine());
auto options_or_error = Http2::Utility::initializeAndValidateOptions(getHttp2Options(options));
buildMatcher(options.outlier_detection().error_matcher(), outlier_detection_http_error_matcher_,
ASSERT(Http2::Utility::initializeAndValidateOptions(validated_http2_options).status().ok());
LEGACY_REGISTER_FACTORY(ProtocolOptionsConfigFactory, Server::Configuration::ProtocolOptionsFactory,