github.com/hxx258456/ccgo@v0.0.5-0.20230213014102-48b35f46f66f/go-control-plane/envoy/extensions/upstreams/http/v3/http_protocol_options.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.25.0
     4  // 	protoc        v3.16.0
     5  // source: envoy/extensions/upstreams/http/v3/http_protocol_options.proto
     6  
     7  package envoy_extensions_upstreams_http_v3
     8  
     9  import (
    10  	_ "github.com/cncf/xds/go/udpa/annotations"
    11  	v3 "github.com/hxx258456/ccgo/go-control-plane/envoy/config/core/v3"
    12  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    13  	proto "github.com/golang/protobuf/proto"
    14  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    15  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    16  	reflect "reflect"
    17  	sync "sync"
    18  )
    19  
    20  const (
    21  	// Verify that this generated code is sufficiently up-to-date.
    22  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    23  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    24  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    25  )
    26  
    27  // This is a compile-time assertion that a sufficiently up-to-date version
    28  // of the legacy proto package is being used.
    29  const _ = proto.ProtoPackageIsVersion4
    30  
    31  // HttpProtocolOptions specifies Http upstream protocol options. This object
    32  // is used in
    33  // :ref:`typed_extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`,
    34  // keyed by the name `envoy.extensions.upstreams.http.v3.HttpProtocolOptions`.
    35  //
    36  // This controls what protocol(s) should be used for upstream and how said protocol(s) are configured.
    37  //
    38  // This replaces the prior pattern of explicit protocol configuration directly
    39  // in the cluster. So a configuration like this, explicitly configuring the use of HTTP/2 upstream:
    40  //
    41  // .. code::
    42  //
    43  //   clusters:
    44  //     - name: some_service
    45  //       connect_timeout: 5s
    46  //       upstream_http_protocol_options:
    47  //         auto_sni: true
    48  //       common_http_protocol_options:
    49  //         idle_timeout: 1s
    50  //       http2_protocol_options:
    51  //         max_concurrent_streams: 100
    52  //        .... [further cluster config]
    53  //
    54  // Would now look like this:
    55  //
    56  // .. code::
    57  //
    58  //   clusters:
    59  //     - name: some_service
    60  //       connect_timeout: 5s
    61  //       typed_extension_protocol_options:
    62  //         envoy.extensions.upstreams.http.v3.HttpProtocolOptions:
    63  //           "@type": type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions
    64  //           upstream_http_protocol_options:
    65  //             auto_sni: true
    66  //           common_http_protocol_options:
    67  //             idle_timeout: 1s
    68  //           explicit_http_config:
    69  //             http2_protocol_options:
    70  //               max_concurrent_streams: 100
    71  //        .... [further cluster config]
    72  // [#next-free-field: 6]
    73  type HttpProtocolOptions struct {
    74  	state         protoimpl.MessageState
    75  	sizeCache     protoimpl.SizeCache
    76  	unknownFields protoimpl.UnknownFields
    77  
    78  	// This contains options common across HTTP/1 and HTTP/2
    79  	CommonHttpProtocolOptions *v3.HttpProtocolOptions `protobuf:"bytes,1,opt,name=common_http_protocol_options,json=commonHttpProtocolOptions,proto3" json:"common_http_protocol_options,omitempty"`
    80  	// This contains common protocol options which are only applied upstream.
    81  	UpstreamHttpProtocolOptions *v3.UpstreamHttpProtocolOptions `protobuf:"bytes,2,opt,name=upstream_http_protocol_options,json=upstreamHttpProtocolOptions,proto3" json:"upstream_http_protocol_options,omitempty"`
    82  	// This controls the actual protocol to be used upstream.
    83  	//
    84  	// Types that are assignable to UpstreamProtocolOptions:
    85  	//	*HttpProtocolOptions_ExplicitHttpConfig_
    86  	//	*HttpProtocolOptions_UseDownstreamProtocolConfig
    87  	//	*HttpProtocolOptions_AutoConfig
    88  	UpstreamProtocolOptions isHttpProtocolOptions_UpstreamProtocolOptions `protobuf_oneof:"upstream_protocol_options"`
    89  }
    90  
    91  func (x *HttpProtocolOptions) Reset() {
    92  	*x = HttpProtocolOptions{}
    93  	if protoimpl.UnsafeEnabled {
    94  		mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[0]
    95  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    96  		ms.StoreMessageInfo(mi)
    97  	}
    98  }
    99  
   100  func (x *HttpProtocolOptions) String() string {
   101  	return protoimpl.X.MessageStringOf(x)
   102  }
   103  
   104  func (*HttpProtocolOptions) ProtoMessage() {}
   105  
   106  func (x *HttpProtocolOptions) ProtoReflect() protoreflect.Message {
   107  	mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[0]
   108  	if protoimpl.UnsafeEnabled && x != nil {
   109  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   110  		if ms.LoadMessageInfo() == nil {
   111  			ms.StoreMessageInfo(mi)
   112  		}
   113  		return ms
   114  	}
   115  	return mi.MessageOf(x)
   116  }
   117  
   118  // Deprecated: Use HttpProtocolOptions.ProtoReflect.Descriptor instead.
   119  func (*HttpProtocolOptions) Descriptor() ([]byte, []int) {
   120  	return file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescGZIP(), []int{0}
   121  }
   122  
   123  func (x *HttpProtocolOptions) GetCommonHttpProtocolOptions() *v3.HttpProtocolOptions {
   124  	if x != nil {
   125  		return x.CommonHttpProtocolOptions
   126  	}
   127  	return nil
   128  }
   129  
   130  func (x *HttpProtocolOptions) GetUpstreamHttpProtocolOptions() *v3.UpstreamHttpProtocolOptions {
   131  	if x != nil {
   132  		return x.UpstreamHttpProtocolOptions
   133  	}
   134  	return nil
   135  }
   136  
   137  func (m *HttpProtocolOptions) GetUpstreamProtocolOptions() isHttpProtocolOptions_UpstreamProtocolOptions {
   138  	if m != nil {
   139  		return m.UpstreamProtocolOptions
   140  	}
   141  	return nil
   142  }
   143  
   144  func (x *HttpProtocolOptions) GetExplicitHttpConfig() *HttpProtocolOptions_ExplicitHttpConfig {
   145  	if x, ok := x.GetUpstreamProtocolOptions().(*HttpProtocolOptions_ExplicitHttpConfig_); ok {
   146  		return x.ExplicitHttpConfig
   147  	}
   148  	return nil
   149  }
   150  
   151  func (x *HttpProtocolOptions) GetUseDownstreamProtocolConfig() *HttpProtocolOptions_UseDownstreamHttpConfig {
   152  	if x, ok := x.GetUpstreamProtocolOptions().(*HttpProtocolOptions_UseDownstreamProtocolConfig); ok {
   153  		return x.UseDownstreamProtocolConfig
   154  	}
   155  	return nil
   156  }
   157  
   158  func (x *HttpProtocolOptions) GetAutoConfig() *HttpProtocolOptions_AutoHttpConfig {
   159  	if x, ok := x.GetUpstreamProtocolOptions().(*HttpProtocolOptions_AutoConfig); ok {
   160  		return x.AutoConfig
   161  	}
   162  	return nil
   163  }
   164  
   165  type isHttpProtocolOptions_UpstreamProtocolOptions interface {
   166  	isHttpProtocolOptions_UpstreamProtocolOptions()
   167  }
   168  
   169  type HttpProtocolOptions_ExplicitHttpConfig_ struct {
   170  	// To explicitly configure either HTTP/1 or HTTP/2 (but not both!) use *explicit_http_config*.
   171  	// If the *explicit_http_config* is empty, HTTP/1.1 is used.
   172  	ExplicitHttpConfig *HttpProtocolOptions_ExplicitHttpConfig `protobuf:"bytes,3,opt,name=explicit_http_config,json=explicitHttpConfig,proto3,oneof"`
   173  }
   174  
   175  type HttpProtocolOptions_UseDownstreamProtocolConfig struct {
   176  	// This allows switching on protocol based on what protocol the downstream
   177  	// connection used.
   178  	UseDownstreamProtocolConfig *HttpProtocolOptions_UseDownstreamHttpConfig `protobuf:"bytes,4,opt,name=use_downstream_protocol_config,json=useDownstreamProtocolConfig,proto3,oneof"`
   179  }
   180  
   181  type HttpProtocolOptions_AutoConfig struct {
   182  	// This allows switching on protocol based on ALPN
   183  	AutoConfig *HttpProtocolOptions_AutoHttpConfig `protobuf:"bytes,5,opt,name=auto_config,json=autoConfig,proto3,oneof"`
   184  }
   185  
   186  func (*HttpProtocolOptions_ExplicitHttpConfig_) isHttpProtocolOptions_UpstreamProtocolOptions() {}
   187  
   188  func (*HttpProtocolOptions_UseDownstreamProtocolConfig) isHttpProtocolOptions_UpstreamProtocolOptions() {
   189  }
   190  
   191  func (*HttpProtocolOptions_AutoConfig) isHttpProtocolOptions_UpstreamProtocolOptions() {}
   192  
   193  // If this is used, the cluster will only operate on one of the possible upstream protocols.
   194  // Note that HTTP/2 or above should generally be used for upstream gRPC clusters.
   195  type HttpProtocolOptions_ExplicitHttpConfig struct {
   196  	state         protoimpl.MessageState
   197  	sizeCache     protoimpl.SizeCache
   198  	unknownFields protoimpl.UnknownFields
   199  
   200  	// Types that are assignable to ProtocolConfig:
   201  	//	*HttpProtocolOptions_ExplicitHttpConfig_HttpProtocolOptions
   202  	//	*HttpProtocolOptions_ExplicitHttpConfig_Http2ProtocolOptions
   203  	//	*HttpProtocolOptions_ExplicitHttpConfig_Http3ProtocolOptions
   204  	ProtocolConfig isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig `protobuf_oneof:"protocol_config"`
   205  }
   206  
   207  func (x *HttpProtocolOptions_ExplicitHttpConfig) Reset() {
   208  	*x = HttpProtocolOptions_ExplicitHttpConfig{}
   209  	if protoimpl.UnsafeEnabled {
   210  		mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[1]
   211  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   212  		ms.StoreMessageInfo(mi)
   213  	}
   214  }
   215  
   216  func (x *HttpProtocolOptions_ExplicitHttpConfig) String() string {
   217  	return protoimpl.X.MessageStringOf(x)
   218  }
   219  
   220  func (*HttpProtocolOptions_ExplicitHttpConfig) ProtoMessage() {}
   221  
   222  func (x *HttpProtocolOptions_ExplicitHttpConfig) ProtoReflect() protoreflect.Message {
   223  	mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[1]
   224  	if protoimpl.UnsafeEnabled && x != nil {
   225  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   226  		if ms.LoadMessageInfo() == nil {
   227  			ms.StoreMessageInfo(mi)
   228  		}
   229  		return ms
   230  	}
   231  	return mi.MessageOf(x)
   232  }
   233  
   234  // Deprecated: Use HttpProtocolOptions_ExplicitHttpConfig.ProtoReflect.Descriptor instead.
   235  func (*HttpProtocolOptions_ExplicitHttpConfig) Descriptor() ([]byte, []int) {
   236  	return file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescGZIP(), []int{0, 0}
   237  }
   238  
   239  func (m *HttpProtocolOptions_ExplicitHttpConfig) GetProtocolConfig() isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig {
   240  	if m != nil {
   241  		return m.ProtocolConfig
   242  	}
   243  	return nil
   244  }
   245  
   246  func (x *HttpProtocolOptions_ExplicitHttpConfig) GetHttpProtocolOptions() *v3.Http1ProtocolOptions {
   247  	if x, ok := x.GetProtocolConfig().(*HttpProtocolOptions_ExplicitHttpConfig_HttpProtocolOptions); ok {
   248  		return x.HttpProtocolOptions
   249  	}
   250  	return nil
   251  }
   252  
   253  func (x *HttpProtocolOptions_ExplicitHttpConfig) GetHttp2ProtocolOptions() *v3.Http2ProtocolOptions {
   254  	if x, ok := x.GetProtocolConfig().(*HttpProtocolOptions_ExplicitHttpConfig_Http2ProtocolOptions); ok {
   255  		return x.Http2ProtocolOptions
   256  	}
   257  	return nil
   258  }
   259  
   260  func (x *HttpProtocolOptions_ExplicitHttpConfig) GetHttp3ProtocolOptions() *v3.Http3ProtocolOptions {
   261  	if x, ok := x.GetProtocolConfig().(*HttpProtocolOptions_ExplicitHttpConfig_Http3ProtocolOptions); ok {
   262  		return x.Http3ProtocolOptions
   263  	}
   264  	return nil
   265  }
   266  
   267  type isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig interface {
   268  	isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig()
   269  }
   270  
   271  type HttpProtocolOptions_ExplicitHttpConfig_HttpProtocolOptions struct {
   272  	HttpProtocolOptions *v3.Http1ProtocolOptions `protobuf:"bytes,1,opt,name=http_protocol_options,json=httpProtocolOptions,proto3,oneof"`
   273  }
   274  
   275  type HttpProtocolOptions_ExplicitHttpConfig_Http2ProtocolOptions struct {
   276  	Http2ProtocolOptions *v3.Http2ProtocolOptions `protobuf:"bytes,2,opt,name=http2_protocol_options,json=http2ProtocolOptions,proto3,oneof"`
   277  }
   278  
   279  type HttpProtocolOptions_ExplicitHttpConfig_Http3ProtocolOptions struct {
   280  	// .. warning::
   281  	//   QUIC support is currently alpha and should be used with caution. Please
   282  	//   see :ref:`here <arch_overview_http3>` for details.
   283  	Http3ProtocolOptions *v3.Http3ProtocolOptions `protobuf:"bytes,3,opt,name=http3_protocol_options,json=http3ProtocolOptions,proto3,oneof"`
   284  }
   285  
   286  func (*HttpProtocolOptions_ExplicitHttpConfig_HttpProtocolOptions) isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig() {
   287  }
   288  
   289  func (*HttpProtocolOptions_ExplicitHttpConfig_Http2ProtocolOptions) isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig() {
   290  }
   291  
   292  func (*HttpProtocolOptions_ExplicitHttpConfig_Http3ProtocolOptions) isHttpProtocolOptions_ExplicitHttpConfig_ProtocolConfig() {
   293  }
   294  
   295  // If this is used, the cluster can use either of the configured protocols, and
   296  // will use whichever protocol was used by the downstream connection.
   297  //
   298  // If HTTP/3 is configured for downstream and not configured for upstream,
   299  // HTTP/3 requests will fail over to HTTP/2.
   300  type HttpProtocolOptions_UseDownstreamHttpConfig struct {
   301  	state         protoimpl.MessageState
   302  	sizeCache     protoimpl.SizeCache
   303  	unknownFields protoimpl.UnknownFields
   304  
   305  	HttpProtocolOptions  *v3.Http1ProtocolOptions `protobuf:"bytes,1,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"`
   306  	Http2ProtocolOptions *v3.Http2ProtocolOptions `protobuf:"bytes,2,opt,name=http2_protocol_options,json=http2ProtocolOptions,proto3" json:"http2_protocol_options,omitempty"`
   307  	// .. warning::
   308  	//   QUIC support is currently alpha and should be used with caution. Please
   309  	//   see :ref:`here <arch_overview_http3>` for details.
   310  	Http3ProtocolOptions *v3.Http3ProtocolOptions `protobuf:"bytes,3,opt,name=http3_protocol_options,json=http3ProtocolOptions,proto3" json:"http3_protocol_options,omitempty"`
   311  }
   312  
   313  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) Reset() {
   314  	*x = HttpProtocolOptions_UseDownstreamHttpConfig{}
   315  	if protoimpl.UnsafeEnabled {
   316  		mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[2]
   317  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   318  		ms.StoreMessageInfo(mi)
   319  	}
   320  }
   321  
   322  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) String() string {
   323  	return protoimpl.X.MessageStringOf(x)
   324  }
   325  
   326  func (*HttpProtocolOptions_UseDownstreamHttpConfig) ProtoMessage() {}
   327  
   328  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) ProtoReflect() protoreflect.Message {
   329  	mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[2]
   330  	if protoimpl.UnsafeEnabled && x != nil {
   331  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   332  		if ms.LoadMessageInfo() == nil {
   333  			ms.StoreMessageInfo(mi)
   334  		}
   335  		return ms
   336  	}
   337  	return mi.MessageOf(x)
   338  }
   339  
   340  // Deprecated: Use HttpProtocolOptions_UseDownstreamHttpConfig.ProtoReflect.Descriptor instead.
   341  func (*HttpProtocolOptions_UseDownstreamHttpConfig) Descriptor() ([]byte, []int) {
   342  	return file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescGZIP(), []int{0, 1}
   343  }
   344  
   345  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) GetHttpProtocolOptions() *v3.Http1ProtocolOptions {
   346  	if x != nil {
   347  		return x.HttpProtocolOptions
   348  	}
   349  	return nil
   350  }
   351  
   352  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) GetHttp2ProtocolOptions() *v3.Http2ProtocolOptions {
   353  	if x != nil {
   354  		return x.Http2ProtocolOptions
   355  	}
   356  	return nil
   357  }
   358  
   359  func (x *HttpProtocolOptions_UseDownstreamHttpConfig) GetHttp3ProtocolOptions() *v3.Http3ProtocolOptions {
   360  	if x != nil {
   361  		return x.Http3ProtocolOptions
   362  	}
   363  	return nil
   364  }
   365  
   366  // If this is used, the cluster can use either HTTP/1 or HTTP/2, and will use whichever
   367  // protocol is negotiated by ALPN with the upstream.
   368  // Clusters configured with *AutoHttpConfig* will use the highest available
   369  // protocol; HTTP/2 if supported, otherwise HTTP/1.
   370  // If the upstream does not support ALPN, *AutoHttpConfig* will fail over to HTTP/1.
   371  // This can only be used with transport sockets which support ALPN. Using a
   372  // transport socket which does not support ALPN will result in configuration
   373  // failure. The transport layer may be configured with custom ALPN, but the default ALPN
   374  // for the cluster (or if custom ALPN fails) will be "h2,http/1.1".
   375  type HttpProtocolOptions_AutoHttpConfig struct {
   376  	state         protoimpl.MessageState
   377  	sizeCache     protoimpl.SizeCache
   378  	unknownFields protoimpl.UnknownFields
   379  
   380  	HttpProtocolOptions  *v3.Http1ProtocolOptions `protobuf:"bytes,1,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"`
   381  	Http2ProtocolOptions *v3.Http2ProtocolOptions `protobuf:"bytes,2,opt,name=http2_protocol_options,json=http2ProtocolOptions,proto3" json:"http2_protocol_options,omitempty"`
   382  	// Unlike HTTP/1 and HTTP/2, HTTP/3 will not be configured unless it is
   383  	// present, and (soon) only if there is an indication of server side
   384  	// support.
   385  	// See :ref:`here <arch_overview_http3_upstream>` for more information on
   386  	// when HTTP/3 will be used, and when Envoy will fail over to TCP.
   387  	//
   388  	// .. warning::
   389  	//   QUIC support is currently alpha and should be used with caution. Please
   390  	//   see :ref:`here <arch_overview_http3>` for details.
   391  	//   AutoHttpConfig config is undergoing especially rapid change and as it
   392  	//   is alpha is not guaranteed to be API-stable.
   393  	Http3ProtocolOptions *v3.Http3ProtocolOptions `protobuf:"bytes,3,opt,name=http3_protocol_options,json=http3ProtocolOptions,proto3" json:"http3_protocol_options,omitempty"`
   394  	// [#not-implemented-hide:]
   395  	// The presence of alternate protocols cache options causes the use of the
   396  	// alternate protocols cache, which is responsible for parsing and caching
   397  	// HTTP Alt-Svc headers. This enables the use of HTTP/3 for origins that
   398  	// advertise supporting it.
   399  	// TODO(RyanTheOptimist): Make this field required when HTTP/3 is enabled.
   400  	AlternateProtocolsCacheOptions *v3.AlternateProtocolsCacheOptions `protobuf:"bytes,4,opt,name=alternate_protocols_cache_options,json=alternateProtocolsCacheOptions,proto3" json:"alternate_protocols_cache_options,omitempty"`
   401  }
   402  
   403  func (x *HttpProtocolOptions_AutoHttpConfig) Reset() {
   404  	*x = HttpProtocolOptions_AutoHttpConfig{}
   405  	if protoimpl.UnsafeEnabled {
   406  		mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[3]
   407  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   408  		ms.StoreMessageInfo(mi)
   409  	}
   410  }
   411  
   412  func (x *HttpProtocolOptions_AutoHttpConfig) String() string {
   413  	return protoimpl.X.MessageStringOf(x)
   414  }
   415  
   416  func (*HttpProtocolOptions_AutoHttpConfig) ProtoMessage() {}
   417  
   418  func (x *HttpProtocolOptions_AutoHttpConfig) ProtoReflect() protoreflect.Message {
   419  	mi := &file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[3]
   420  	if protoimpl.UnsafeEnabled && x != nil {
   421  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   422  		if ms.LoadMessageInfo() == nil {
   423  			ms.StoreMessageInfo(mi)
   424  		}
   425  		return ms
   426  	}
   427  	return mi.MessageOf(x)
   428  }
   429  
   430  // Deprecated: Use HttpProtocolOptions_AutoHttpConfig.ProtoReflect.Descriptor instead.
   431  func (*HttpProtocolOptions_AutoHttpConfig) Descriptor() ([]byte, []int) {
   432  	return file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescGZIP(), []int{0, 2}
   433  }
   434  
   435  func (x *HttpProtocolOptions_AutoHttpConfig) GetHttpProtocolOptions() *v3.Http1ProtocolOptions {
   436  	if x != nil {
   437  		return x.HttpProtocolOptions
   438  	}
   439  	return nil
   440  }
   441  
   442  func (x *HttpProtocolOptions_AutoHttpConfig) GetHttp2ProtocolOptions() *v3.Http2ProtocolOptions {
   443  	if x != nil {
   444  		return x.Http2ProtocolOptions
   445  	}
   446  	return nil
   447  }
   448  
   449  func (x *HttpProtocolOptions_AutoHttpConfig) GetHttp3ProtocolOptions() *v3.Http3ProtocolOptions {
   450  	if x != nil {
   451  		return x.Http3ProtocolOptions
   452  	}
   453  	return nil
   454  }
   455  
   456  func (x *HttpProtocolOptions_AutoHttpConfig) GetAlternateProtocolsCacheOptions() *v3.AlternateProtocolsCacheOptions {
   457  	if x != nil {
   458  		return x.AlternateProtocolsCacheOptions
   459  	}
   460  	return nil
   461  }
   462  
   463  var File_envoy_extensions_upstreams_http_v3_http_protocol_options_proto protoreflect.FileDescriptor
   464  
   465  var file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDesc = []byte{
   466  	0x0a, 0x3e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
   467  	0x6e, 0x73, 0x2f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x2f, 0x68, 0x74, 0x74,
   468  	0x70, 0x2f, 0x76, 0x33, 0x2f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
   469  	0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   470  	0x12, 0x22, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
   471  	0x6e, 0x73, 0x2e, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x68, 0x74, 0x74,
   472  	0x70, 0x2e, 0x76, 0x33, 0x1a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66,
   473  	0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   474  	0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f,
   475  	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74,
   476  	0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
   477  	0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   478  	0x6f, 0x22, 0xf0, 0x0d, 0x0a, 0x13, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
   479  	0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6a, 0x0a, 0x1c, 0x63, 0x6f, 0x6d,
   480  	0x6d, 0x6f, 0x6e, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
   481  	0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
   482  	0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63,
   483  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f,
   484  	0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d,
   485  	0x6f, 0x6e, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70,
   486  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x76, 0x0a, 0x1e, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61,
   487  	0x6d, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f,
   488  	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
   489  	0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72,
   490  	0x65, 0x2e, 0x76, 0x33, 0x2e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x74, 0x74,
   491  	0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   492  	0x52, 0x1b, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72,
   493  	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x7e, 0x0a,
   494  	0x14, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x63,
   495  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x65, 0x6e,
   496  	0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x75,
   497  	0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x2e, 0x76, 0x33,
   498  	0x2e, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74,
   499  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x48, 0x74, 0x74,
   500  	0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6c, 0x69,
   501  	0x63, 0x69, 0x74, 0x48, 0x74, 0x74, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x96, 0x01,
   502  	0x0a, 0x1e, 0x75, 0x73, 0x65, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
   503  	0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   504  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65,
   505  	0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65,
   506  	0x61, 0x6d, 0x73, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70,
   507  	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
   508  	0x55, 0x73, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x74, 0x74,
   509  	0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1b, 0x75, 0x73, 0x65, 0x44, 0x6f,
   510  	0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
   511  	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x63,
   512  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x65, 0x6e,
   513  	0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x75,
   514  	0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x2e, 0x76, 0x33,
   515  	0x2e, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74,
   516  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x74, 0x74, 0x70, 0x43, 0x6f, 0x6e,
   517  	0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69,
   518  	0x67, 0x1a, 0xd6, 0x02, 0x0a, 0x12, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x48, 0x74,
   519  	0x74, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 0x0a, 0x15, 0x68, 0x74, 0x74, 0x70,
   520  	0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
   521  	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
   522  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48,
   523  	0x74, 0x74, 0x70, 0x31, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69,
   524  	0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x13, 0x68, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f,
   525  	0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x62, 0x0a, 0x16, 0x68, 0x74,
   526  	0x74, 0x70, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74,
   527  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76,
   528  	0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76,
   529  	0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f,
   530  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x14, 0x68, 0x74, 0x74, 0x70, 0x32, 0x50,
   531  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x62,
   532  	0x0a, 0x16, 0x68, 0x74, 0x74, 0x70, 0x33, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
   533  	0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a,
   534  	0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f,
   535  	0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f,
   536  	0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x14, 0x68, 0x74,
   537  	0x74, 0x70, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f,
   538  	0x6e, 0x73, 0x42, 0x16, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x63,
   539  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x1a, 0xbd, 0x02, 0x0a, 0x17, 0x55,
   540  	0x73, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x74, 0x74, 0x70,
   541  	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5e, 0x0a, 0x15, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x70,
   542  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
   543  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
   544  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74,
   545  	0x70, 0x31, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
   546  	0x73, 0x52, 0x13, 0x68, 0x74, 0x74, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f,
   547  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x60, 0x0a, 0x16, 0x68, 0x74, 0x74, 0x70, 0x32, 0x5f,
   548  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   549  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
   550  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74,
   551  	0x74, 0x70, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f,
   552  	0x6e, 0x73, 0x52, 0x14, 0x68, 0x74, 0x74, 0x70, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
   553  	0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x60, 0x0a, 0x16, 0x68, 0x74, 0x74, 0x70,
   554  	0x33, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f,
   555  	0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
   556  	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e,
   557  	0x48, 0x74, 0x74, 0x70, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74,
   558  	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x14, 0x68, 0x74, 0x74, 0x70, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f,
   559  	0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xb5, 0x03, 0x0a, 0x0e, 0x41,
   560  	0x75, 0x74, 0x6f, 0x48, 0x74, 0x74, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5e, 0x0a,
   561  	0x15, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f,
   562  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65,
   563  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65,
   564  	0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x31, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
   565  	0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x13, 0x68, 0x74, 0x74, 0x70, 0x50, 0x72,
   566  	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x60, 0x0a,
   567  	0x16, 0x68, 0x74, 0x74, 0x70, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f,
   568  	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
   569  	0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72,
   570  	0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
   571  	0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x14, 0x68, 0x74, 0x74, 0x70, 0x32,
   572  	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
   573  	0x60, 0x0a, 0x16, 0x68, 0x74, 0x74, 0x70, 0x33, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
   574  	0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
   575  	0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63,
   576  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x33, 0x50, 0x72, 0x6f, 0x74,
   577  	0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x14, 0x68, 0x74, 0x74,
   578  	0x70, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
   579  	0x73, 0x12, 0x7f, 0x0a, 0x21, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x70,
   580  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6f,
   581  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x65,
   582  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65,
   583  	0x2e, 0x76, 0x33, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f,
   584  	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
   585  	0x6e, 0x73, 0x52, 0x1e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f,
   586  	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
   587  	0x6e, 0x73, 0x42, 0x20, 0x0a, 0x19, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x70,
   588  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
   589  	0x03, 0xf8, 0x42, 0x01, 0x42, 0x56, 0x0a, 0x30, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
   590  	0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65,
   591  	0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73,
   592  	0x2e, 0x68, 0x74, 0x74, 0x70, 0x2e, 0x76, 0x33, 0x42, 0x18, 0x48, 0x74, 0x74, 0x70, 0x50, 0x72,
   593  	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f,
   594  	0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72,
   595  	0x6f, 0x74, 0x6f, 0x33,
   596  }
   597  
   598  var (
   599  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescOnce sync.Once
   600  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescData = file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDesc
   601  )
   602  
   603  func file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescGZIP() []byte {
   604  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescOnce.Do(func() {
   605  		file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescData)
   606  	})
   607  	return file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDescData
   608  }
   609  
   610  var file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
   611  var file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_goTypes = []interface{}{
   612  	(*HttpProtocolOptions)(nil),                         // 0: envoy.extensions.upstreams.http.v3.HttpProtocolOptions
   613  	(*HttpProtocolOptions_ExplicitHttpConfig)(nil),      // 1: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig
   614  	(*HttpProtocolOptions_UseDownstreamHttpConfig)(nil), // 2: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.UseDownstreamHttpConfig
   615  	(*HttpProtocolOptions_AutoHttpConfig)(nil),          // 3: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig
   616  	(*v3.HttpProtocolOptions)(nil),                      // 4: envoy.config.core.v3.HttpProtocolOptions
   617  	(*v3.UpstreamHttpProtocolOptions)(nil),              // 5: envoy.config.core.v3.UpstreamHttpProtocolOptions
   618  	(*v3.Http1ProtocolOptions)(nil),                     // 6: envoy.config.core.v3.Http1ProtocolOptions
   619  	(*v3.Http2ProtocolOptions)(nil),                     // 7: envoy.config.core.v3.Http2ProtocolOptions
   620  	(*v3.Http3ProtocolOptions)(nil),                     // 8: envoy.config.core.v3.Http3ProtocolOptions
   621  	(*v3.AlternateProtocolsCacheOptions)(nil),           // 9: envoy.config.core.v3.AlternateProtocolsCacheOptions
   622  }
   623  var file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_depIdxs = []int32{
   624  	4,  // 0: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options:type_name -> envoy.config.core.v3.HttpProtocolOptions
   625  	5,  // 1: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options:type_name -> envoy.config.core.v3.UpstreamHttpProtocolOptions
   626  	1,  // 2: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.explicit_http_config:type_name -> envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig
   627  	2,  // 3: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.use_downstream_protocol_config:type_name -> envoy.extensions.upstreams.http.v3.HttpProtocolOptions.UseDownstreamHttpConfig
   628  	3,  // 4: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.auto_config:type_name -> envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig
   629  	6,  // 5: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig.http_protocol_options:type_name -> envoy.config.core.v3.Http1ProtocolOptions
   630  	7,  // 6: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig.http2_protocol_options:type_name -> envoy.config.core.v3.Http2ProtocolOptions
   631  	8,  // 7: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig.http3_protocol_options:type_name -> envoy.config.core.v3.Http3ProtocolOptions
   632  	6,  // 8: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.UseDownstreamHttpConfig.http_protocol_options:type_name -> envoy.config.core.v3.Http1ProtocolOptions
   633  	7,  // 9: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.UseDownstreamHttpConfig.http2_protocol_options:type_name -> envoy.config.core.v3.Http2ProtocolOptions
   634  	8,  // 10: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.UseDownstreamHttpConfig.http3_protocol_options:type_name -> envoy.config.core.v3.Http3ProtocolOptions
   635  	6,  // 11: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig.http_protocol_options:type_name -> envoy.config.core.v3.Http1ProtocolOptions
   636  	7,  // 12: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig.http2_protocol_options:type_name -> envoy.config.core.v3.Http2ProtocolOptions
   637  	8,  // 13: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig.http3_protocol_options:type_name -> envoy.config.core.v3.Http3ProtocolOptions
   638  	9,  // 14: envoy.extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig.alternate_protocols_cache_options:type_name -> envoy.config.core.v3.AlternateProtocolsCacheOptions
   639  	15, // [15:15] is the sub-list for method output_type
   640  	15, // [15:15] is the sub-list for method input_type
   641  	15, // [15:15] is the sub-list for extension type_name
   642  	15, // [15:15] is the sub-list for extension extendee
   643  	0,  // [0:15] is the sub-list for field type_name
   644  }
   645  
   646  func init() { file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_init() }
   647  func file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_init() {
   648  	if File_envoy_extensions_upstreams_http_v3_http_protocol_options_proto != nil {
   649  		return
   650  	}
   651  	if !protoimpl.UnsafeEnabled {
   652  		file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   653  			switch v := v.(*HttpProtocolOptions); i {
   654  			case 0:
   655  				return &v.state
   656  			case 1:
   657  				return &v.sizeCache
   658  			case 2:
   659  				return &v.unknownFields
   660  			default:
   661  				return nil
   662  			}
   663  		}
   664  		file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   665  			switch v := v.(*HttpProtocolOptions_ExplicitHttpConfig); i {
   666  			case 0:
   667  				return &v.state
   668  			case 1:
   669  				return &v.sizeCache
   670  			case 2:
   671  				return &v.unknownFields
   672  			default:
   673  				return nil
   674  			}
   675  		}
   676  		file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   677  			switch v := v.(*HttpProtocolOptions_UseDownstreamHttpConfig); i {
   678  			case 0:
   679  				return &v.state
   680  			case 1:
   681  				return &v.sizeCache
   682  			case 2:
   683  				return &v.unknownFields
   684  			default:
   685  				return nil
   686  			}
   687  		}
   688  		file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   689  			switch v := v.(*HttpProtocolOptions_AutoHttpConfig); i {
   690  			case 0:
   691  				return &v.state
   692  			case 1:
   693  				return &v.sizeCache
   694  			case 2:
   695  				return &v.unknownFields
   696  			default:
   697  				return nil
   698  			}
   699  		}
   700  	}
   701  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[0].OneofWrappers = []interface{}{
   702  		(*HttpProtocolOptions_ExplicitHttpConfig_)(nil),
   703  		(*HttpProtocolOptions_UseDownstreamProtocolConfig)(nil),
   704  		(*HttpProtocolOptions_AutoConfig)(nil),
   705  	}
   706  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes[1].OneofWrappers = []interface{}{
   707  		(*HttpProtocolOptions_ExplicitHttpConfig_HttpProtocolOptions)(nil),
   708  		(*HttpProtocolOptions_ExplicitHttpConfig_Http2ProtocolOptions)(nil),
   709  		(*HttpProtocolOptions_ExplicitHttpConfig_Http3ProtocolOptions)(nil),
   710  	}
   711  	type x struct{}
   712  	out := protoimpl.TypeBuilder{
   713  		File: protoimpl.DescBuilder{
   714  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   715  			RawDescriptor: file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDesc,
   716  			NumEnums:      0,
   717  			NumMessages:   4,
   718  			NumExtensions: 0,
   719  			NumServices:   0,
   720  		},
   721  		GoTypes:           file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_goTypes,
   722  		DependencyIndexes: file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_depIdxs,
   723  		MessageInfos:      file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_msgTypes,
   724  	}.Build()
   725  	File_envoy_extensions_upstreams_http_v3_http_protocol_options_proto = out.File
   726  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_rawDesc = nil
   727  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_goTypes = nil
   728  	file_envoy_extensions_upstreams_http_v3_http_protocol_options_proto_depIdxs = nil
   729  }