Class HttpConnectionManager
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,HttpConnectionManagerOrBuilder,Serializable
public final class HttpConnectionManager extends com.google.protobuf.GeneratedMessageV3 implements HttpConnectionManagerOrBuilder
[#next-free-field: 51]
Protobuf typeenvoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classHttpConnectionManager.Builder[#next-free-field: 51]static classHttpConnectionManager.CodecTypeProtobuf enumenvoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecTypestatic classHttpConnectionManager.ForwardClientCertDetailsHow to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.static classHttpConnectionManager.InternalAddressConfigProtobuf typeenvoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfigstatic interfaceHttpConnectionManager.InternalAddressConfigOrBuilderstatic classHttpConnectionManager.PathNormalizationOptions[#not-implemented-hide:] Transformations that apply to path headers.static interfaceHttpConnectionManager.PathNormalizationOptionsOrBuilderstatic classHttpConnectionManager.PathWithEscapedSlashesActionDetermines the action for request that contain %2F, %2f, %5C or %5c sequences in the URI path.static classHttpConnectionManager.ProxyStatusConfigConfigures the manner in which the Proxy-Status HTTP response header is populated.static interfaceHttpConnectionManager.ProxyStatusConfigOrBuilderstatic classHttpConnectionManager.RouteSpecifierCasestatic classHttpConnectionManager.ServerHeaderTransformationProtobuf enumenvoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformationstatic classHttpConnectionManager.SetCurrentClientCertDetails[#next-free-field: 7]static interfaceHttpConnectionManager.SetCurrentClientCertDetailsOrBuilderstatic classHttpConnectionManager.StripPortModeCasestatic classHttpConnectionManager.Tracing[#next-free-field: 10]static interfaceHttpConnectionManager.TracingOrBuilderstatic classHttpConnectionManager.UpgradeConfigThe configuration for HTTP upgrades.static interfaceHttpConnectionManager.UpgradeConfigOrBuilder-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)AccessLoggetAccessLog(int index)Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.intgetAccessLogCount()Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.List<AccessLog>getAccessLogList()Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.AccessLogOrBuildergetAccessLogOrBuilder(int index)Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.List<? extends AccessLogOrBuilder>getAccessLogOrBuilderList()Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.com.google.protobuf.BoolValuegetAddUserAgent()Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.com.google.protobuf.BoolValueOrBuildergetAddUserAgentOrBuilder()Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.booleangetAlwaysSetRequestIdInResponse()If set, Envoy will always set :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header in response.HttpConnectionManager.CodecTypegetCodecType()Supplies the type of codec that the connection manager should use.intgetCodecTypeValue()Supplies the type of codec that the connection manager should use.HttpProtocolOptionsgetCommonHttpProtocolOptions()Additional settings for HTTP requests handled by the connection manager.HttpProtocolOptionsOrBuildergetCommonHttpProtocolOptionsOrBuilder()Additional settings for HTTP requests handled by the connection manager.static HttpConnectionManagergetDefaultInstance()HttpConnectionManagergetDefaultInstanceForType()com.google.protobuf.DurationgetDelayedCloseTimeout()The delayed close timeout is for downstream connections managed by the HTTP connection manager.com.google.protobuf.DurationOrBuildergetDelayedCloseTimeoutOrBuilder()The delayed close timeout is for downstream connections managed by the HTTP connection manager.static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.DurationgetDrainTimeout()The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.com.google.protobuf.DurationOrBuildergetDrainTimeoutOrBuilder()The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.HttpConnectionManager.ForwardClientCertDetailsgetForwardClientCertDetails()How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.intgetForwardClientCertDetailsValue()How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.com.google.protobuf.BoolValuegetGenerateRequestId()Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist.com.google.protobuf.BoolValueOrBuildergetGenerateRequestIdOrBuilder()Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist.Http2ProtocolOptionsgetHttp2ProtocolOptions()Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.Http2ProtocolOptionsOrBuildergetHttp2ProtocolOptionsOrBuilder()Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.Http3ProtocolOptionsgetHttp3ProtocolOptions()Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.Http3ProtocolOptionsOrBuildergetHttp3ProtocolOptionsOrBuilder()Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.HttpFiltergetHttpFilters(int index)A list of individual HTTP filters that make up the filter chain for requests made to the connection manager.intgetHttpFiltersCount()A list of individual HTTP filters that make up the filter chain for requests made to the connection manager.List<HttpFilter>getHttpFiltersList()A list of individual HTTP filters that make up the filter chain for requests made to the connection manager.HttpFilterOrBuildergetHttpFiltersOrBuilder(int index)A list of individual HTTP filters that make up the filter chain for requests made to the connection manager.List<? extends HttpFilterOrBuilder>getHttpFiltersOrBuilderList()A list of individual HTTP filters that make up the filter chain for requests made to the connection manager.Http1ProtocolOptionsgetHttpProtocolOptions()Additional HTTP/1 settings that are passed to the HTTP/1 codec.Http1ProtocolOptionsOrBuildergetHttpProtocolOptionsOrBuilder()Additional HTTP/1 settings that are passed to the HTTP/1 codec.HttpConnectionManager.InternalAddressConfiggetInternalAddressConfig()Configures what network addresses are considered internal for stats and header sanitation purposes.HttpConnectionManager.InternalAddressConfigOrBuildergetInternalAddressConfigOrBuilder()Configures what network addresses are considered internal for stats and header sanitation purposes.LocalReplyConfiggetLocalReplyConfig()The configuration to customize local reply returned by Envoy.LocalReplyConfigOrBuildergetLocalReplyConfigOrBuilder()The configuration to customize local reply returned by Envoy.com.google.protobuf.UInt32ValuegetMaxRequestHeadersKb()The maximum request headers size for incoming connections.com.google.protobuf.UInt32ValueOrBuildergetMaxRequestHeadersKbOrBuilder()The maximum request headers size for incoming connections.booleangetMergeSlashes()Determines if adjacent slashes in the path are merged into one before any processing of requests by HTTP filters or routing.com.google.protobuf.BoolValuegetNormalizePath()Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing?com.google.protobuf.BoolValueOrBuildergetNormalizePathOrBuilder()Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing?TypedExtensionConfiggetOriginalIpDetectionExtensions(int index)The configuration for the original IP detection extensions.intgetOriginalIpDetectionExtensionsCount()The configuration for the original IP detection extensions.List<TypedExtensionConfig>getOriginalIpDetectionExtensionsList()The configuration for the original IP detection extensions.TypedExtensionConfigOrBuildergetOriginalIpDetectionExtensionsOrBuilder(int index)The configuration for the original IP detection extensions.List<? extends TypedExtensionConfigOrBuilder>getOriginalIpDetectionExtensionsOrBuilderList()The configuration for the original IP detection extensions.com.google.protobuf.Parser<HttpConnectionManager>getParserForType()HttpConnectionManager.PathNormalizationOptionsgetPathNormalizationOptions()[#not-implemented-hide:] Path normalization configuration.HttpConnectionManager.PathNormalizationOptionsOrBuildergetPathNormalizationOptionsOrBuilder()[#not-implemented-hide:] Path normalization configuration.HttpConnectionManager.PathWithEscapedSlashesActiongetPathWithEscapedSlashesAction()Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c).intgetPathWithEscapedSlashesActionValue()Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c).booleangetPreserveExternalRequestId()Whether the connection manager will keep the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if passed for a request that is edge (Edge request is the request from external clients to front Envoy) and not reset it, which is the current Envoy behaviour.booleangetProxy100Continue()If proxy_100_continue is true, Envoy will proxy incoming "Expect: 100-continue" headers upstream, and forward "100 Continue" responses downstream.HttpConnectionManager.ProxyStatusConfiggetProxyStatusConfig()Proxy-Status HTTP response header configuration.HttpConnectionManager.ProxyStatusConfigOrBuildergetProxyStatusConfigOrBuilder()Proxy-Status HTTP response header configuration.RdsgetRds()The connection manager’s route table will be dynamically loaded via the RDS API.RdsOrBuildergetRdsOrBuilder()The connection manager’s route table will be dynamically loaded via the RDS API.booleangetRepresentIpv4RemoteAddressAsIpv4MappedIpv6()If :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` is true and represent_ipv4_remote_address_as_ipv4_mapped_ipv6 is true and the remote address is an IPv4 address, the address will be mapped to IPv6 before it is appended to ``x-forwarded-for``.com.google.protobuf.DurationgetRequestHeadersTimeout()The amount of time that Envoy will wait for the request headers to be received.com.google.protobuf.DurationOrBuildergetRequestHeadersTimeoutOrBuilder()The amount of time that Envoy will wait for the request headers to be received.RequestIDExtensiongetRequestIdExtension()The configuration of the request ID extension.RequestIDExtensionOrBuildergetRequestIdExtensionOrBuilder()The configuration of the request ID extension.com.google.protobuf.DurationgetRequestTimeout()The amount of time that Envoy will wait for the entire request to be received.com.google.protobuf.DurationOrBuildergetRequestTimeoutOrBuilder()The amount of time that Envoy will wait for the entire request to be received.RouteConfigurationgetRouteConfig()The route table for the connection manager is static and is specified in this property.RouteConfigurationOrBuildergetRouteConfigOrBuilder()The route table for the connection manager is static and is specified in this property.HttpConnectionManager.RouteSpecifierCasegetRouteSpecifierCase()SchemeHeaderTransformationgetSchemeHeaderTransformation()Allows for explicit transformation of the :scheme header on the request path.SchemeHeaderTransformationOrBuildergetSchemeHeaderTransformationOrBuilder()Allows for explicit transformation of the :scheme header on the request path.ScopedRoutesgetScopedRoutes()A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header).ScopedRoutesOrBuildergetScopedRoutesOrBuilder()A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header).intgetSerializedSize()HttpConnectionManager.ServerHeaderTransformationgetServerHeaderTransformation()Defines the action to be applied to the Server header on the response path.intgetServerHeaderTransformationValue()Defines the action to be applied to the Server header on the response path.StringgetServerName()An optional override that the connection manager will write to the server header in responses.com.google.protobuf.ByteStringgetServerNameBytes()An optional override that the connection manager will write to the server header in responses.HttpConnectionManager.SetCurrentClientCertDetailsgetSetCurrentClientCertDetails()This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.HttpConnectionManager.SetCurrentClientCertDetailsOrBuildergetSetCurrentClientCertDetailsOrBuilder()This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.booleangetSkipXffAppend()If set, Envoy will not append the remote address to the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header.StringgetStatPrefix()The human readable prefix to use when emitting statistics for the connection manager.com.google.protobuf.ByteStringgetStatPrefixBytes()The human readable prefix to use when emitting statistics for the connection manager.com.google.protobuf.BoolValuegetStreamErrorOnInvalidHttpMessage()Governs Envoy's behavior when receiving invalid HTTP from downstream.com.google.protobuf.BoolValueOrBuildergetStreamErrorOnInvalidHttpMessageOrBuilder()Governs Envoy's behavior when receiving invalid HTTP from downstream.com.google.protobuf.DurationgetStreamIdleTimeout()The stream idle timeout for connections managed by the connection manager.com.google.protobuf.DurationOrBuildergetStreamIdleTimeoutOrBuilder()The stream idle timeout for connections managed by the connection manager.booleangetStripAnyHostPort()Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing.booleangetStripMatchingHostPort()Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing.HttpConnectionManager.StripPortModeCasegetStripPortModeCase()booleangetStripTrailingHostDot()Determines if trailing dot of the host should be removed from host/authority header before any processing of request by HTTP filters or routing.HttpConnectionManager.TracinggetTracing()Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.HttpConnectionManager.TracingOrBuildergetTracingOrBuilder()Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.TypedExtensionConfiggetTypedHeaderValidationConfig()Configuration options for Header Validation (UHV).TypedExtensionConfigOrBuildergetTypedHeaderValidationConfigOrBuilder()Configuration options for Header Validation (UHV).com.google.protobuf.UnknownFieldSetgetUnknownFields()HttpConnectionManager.UpgradeConfiggetUpgradeConfigs(int index)repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;intgetUpgradeConfigsCount()repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;List<HttpConnectionManager.UpgradeConfig>getUpgradeConfigsList()repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;HttpConnectionManager.UpgradeConfigOrBuildergetUpgradeConfigsOrBuilder(int index)repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;List<? extends HttpConnectionManager.UpgradeConfigOrBuilder>getUpgradeConfigsOrBuilderList()repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;com.google.protobuf.BoolValuegetUseRemoteAddress()If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers.com.google.protobuf.BoolValueOrBuildergetUseRemoteAddressOrBuilder()If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers.StringgetVia()Via header value to append to request and response headers.com.google.protobuf.ByteStringgetViaBytes()Via header value to append to request and response headers.intgetXffNumTrustedHops()The number of additional ingress proxy hops from the right side of the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header to trust when determining the origin client's IP address.booleanhasAddUserAgent()Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.booleanhasCommonHttpProtocolOptions()Additional settings for HTTP requests handled by the connection manager.booleanhasDelayedCloseTimeout()The delayed close timeout is for downstream connections managed by the HTTP connection manager.booleanhasDrainTimeout()The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.booleanhasGenerateRequestId()Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist.inthashCode()booleanhasHttp2ProtocolOptions()Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.booleanhasHttp3ProtocolOptions()Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.booleanhasHttpProtocolOptions()Additional HTTP/1 settings that are passed to the HTTP/1 codec.booleanhasInternalAddressConfig()Configures what network addresses are considered internal for stats and header sanitation purposes.booleanhasLocalReplyConfig()The configuration to customize local reply returned by Envoy.booleanhasMaxRequestHeadersKb()The maximum request headers size for incoming connections.booleanhasNormalizePath()Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing?booleanhasPathNormalizationOptions()[#not-implemented-hide:] Path normalization configuration.booleanhasProxyStatusConfig()Proxy-Status HTTP response header configuration.booleanhasRds()The connection manager’s route table will be dynamically loaded via the RDS API.booleanhasRequestHeadersTimeout()The amount of time that Envoy will wait for the request headers to be received.booleanhasRequestIdExtension()The configuration of the request ID extension.booleanhasRequestTimeout()The amount of time that Envoy will wait for the entire request to be received.booleanhasRouteConfig()The route table for the connection manager is static and is specified in this property.booleanhasSchemeHeaderTransformation()Allows for explicit transformation of the :scheme header on the request path.booleanhasScopedRoutes()A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header).booleanhasSetCurrentClientCertDetails()This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.booleanhasStreamErrorOnInvalidHttpMessage()Governs Envoy's behavior when receiving invalid HTTP from downstream.booleanhasStreamIdleTimeout()The stream idle timeout for connections managed by the connection manager.booleanhasStripAnyHostPort()Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing.booleanhasTracing()Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.booleanhasTypedHeaderValidationConfig()Configuration options for Header Validation (UHV).booleanhasUseRemoteAddress()If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static HttpConnectionManager.BuildernewBuilder()static HttpConnectionManager.BuildernewBuilder(HttpConnectionManager prototype)HttpConnectionManager.BuildernewBuilderForType()protected HttpConnectionManager.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static HttpConnectionManagerparseDelimitedFrom(InputStream input)static HttpConnectionManagerparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static HttpConnectionManagerparseFrom(byte[] data)static HttpConnectionManagerparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static HttpConnectionManagerparseFrom(com.google.protobuf.ByteString data)static HttpConnectionManagerparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static HttpConnectionManagerparseFrom(com.google.protobuf.CodedInputStream input)static HttpConnectionManagerparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static HttpConnectionManagerparseFrom(InputStream input)static HttpConnectionManagerparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static HttpConnectionManagerparseFrom(ByteBuffer data)static HttpConnectionManagerparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<HttpConnectionManager>parser()HttpConnectionManager.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
CODEC_TYPE_FIELD_NUMBER
public static final int CODEC_TYPE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STAT_PREFIX_FIELD_NUMBER
public static final int STAT_PREFIX_FIELD_NUMBER
- See Also:
- Constant Field Values
-
RDS_FIELD_NUMBER
public static final int RDS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ROUTE_CONFIG_FIELD_NUMBER
public static final int ROUTE_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SCOPED_ROUTES_FIELD_NUMBER
public static final int SCOPED_ROUTES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP_FILTERS_FIELD_NUMBER
public static final int HTTP_FILTERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ADD_USER_AGENT_FIELD_NUMBER
public static final int ADD_USER_AGENT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TRACING_FIELD_NUMBER
public static final int TRACING_FIELD_NUMBER
- See Also:
- Constant Field Values
-
COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP3_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP3_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SERVER_NAME_FIELD_NUMBER
public static final int SERVER_NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SERVER_HEADER_TRANSFORMATION_FIELD_NUMBER
public static final int SERVER_HEADER_TRANSFORMATION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SCHEME_HEADER_TRANSFORMATION_FIELD_NUMBER
public static final int SCHEME_HEADER_TRANSFORMATION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MAX_REQUEST_HEADERS_KB_FIELD_NUMBER
public static final int MAX_REQUEST_HEADERS_KB_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STREAM_IDLE_TIMEOUT_FIELD_NUMBER
public static final int STREAM_IDLE_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
REQUEST_TIMEOUT_FIELD_NUMBER
public static final int REQUEST_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
REQUEST_HEADERS_TIMEOUT_FIELD_NUMBER
public static final int REQUEST_HEADERS_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DRAIN_TIMEOUT_FIELD_NUMBER
public static final int DRAIN_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DELAYED_CLOSE_TIMEOUT_FIELD_NUMBER
public static final int DELAYED_CLOSE_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ACCESS_LOG_FIELD_NUMBER
public static final int ACCESS_LOG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
USE_REMOTE_ADDRESS_FIELD_NUMBER
public static final int USE_REMOTE_ADDRESS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
XFF_NUM_TRUSTED_HOPS_FIELD_NUMBER
public static final int XFF_NUM_TRUSTED_HOPS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ORIGINAL_IP_DETECTION_EXTENSIONS_FIELD_NUMBER
public static final int ORIGINAL_IP_DETECTION_EXTENSIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
INTERNAL_ADDRESS_CONFIG_FIELD_NUMBER
public static final int INTERNAL_ADDRESS_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SKIP_XFF_APPEND_FIELD_NUMBER
public static final int SKIP_XFF_APPEND_FIELD_NUMBER
- See Also:
- Constant Field Values
-
VIA_FIELD_NUMBER
public static final int VIA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
GENERATE_REQUEST_ID_FIELD_NUMBER
public static final int GENERATE_REQUEST_ID_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PRESERVE_EXTERNAL_REQUEST_ID_FIELD_NUMBER
public static final int PRESERVE_EXTERNAL_REQUEST_ID_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ALWAYS_SET_REQUEST_ID_IN_RESPONSE_FIELD_NUMBER
public static final int ALWAYS_SET_REQUEST_ID_IN_RESPONSE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
FORWARD_CLIENT_CERT_DETAILS_FIELD_NUMBER
public static final int FORWARD_CLIENT_CERT_DETAILS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SET_CURRENT_CLIENT_CERT_DETAILS_FIELD_NUMBER
public static final int SET_CURRENT_CLIENT_CERT_DETAILS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PROXY_100_CONTINUE_FIELD_NUMBER
public static final int PROXY_100_CONTINUE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
REPRESENT_IPV4_REMOTE_ADDRESS_AS_IPV4_MAPPED_IPV6_FIELD_NUMBER
public static final int REPRESENT_IPV4_REMOTE_ADDRESS_AS_IPV4_MAPPED_IPV6_FIELD_NUMBER
- See Also:
- Constant Field Values
-
UPGRADE_CONFIGS_FIELD_NUMBER
public static final int UPGRADE_CONFIGS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
NORMALIZE_PATH_FIELD_NUMBER
public static final int NORMALIZE_PATH_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MERGE_SLASHES_FIELD_NUMBER
public static final int MERGE_SLASHES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBER
public static final int PATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
REQUEST_ID_EXTENSION_FIELD_NUMBER
public static final int REQUEST_ID_EXTENSION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LOCAL_REPLY_CONFIG_FIELD_NUMBER
public static final int LOCAL_REPLY_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STRIP_MATCHING_HOST_PORT_FIELD_NUMBER
public static final int STRIP_MATCHING_HOST_PORT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STRIP_ANY_HOST_PORT_FIELD_NUMBER
public static final int STRIP_ANY_HOST_PORT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STREAM_ERROR_ON_INVALID_HTTP_MESSAGE_FIELD_NUMBER
public static final int STREAM_ERROR_ON_INVALID_HTTP_MESSAGE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PATH_NORMALIZATION_OPTIONS_FIELD_NUMBER
public static final int PATH_NORMALIZATION_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
STRIP_TRAILING_HOST_DOT_FIELD_NUMBER
public static final int STRIP_TRAILING_HOST_DOT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PROXY_STATUS_CONFIG_FIELD_NUMBER
public static final int PROXY_STATUS_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TYPED_HEADER_VALIDATION_CONFIG_FIELD_NUMBER
public static final int TYPED_HEADER_VALIDATION_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getRouteSpecifierCase
public HttpConnectionManager.RouteSpecifierCase getRouteSpecifierCase()
- Specified by:
getRouteSpecifierCasein interfaceHttpConnectionManagerOrBuilder
-
getStripPortModeCase
public HttpConnectionManager.StripPortModeCase getStripPortModeCase()
- Specified by:
getStripPortModeCasein interfaceHttpConnectionManagerOrBuilder
-
getCodecTypeValue
public int getCodecTypeValue()
Supplies the type of codec that the connection manager should use.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }- Specified by:
getCodecTypeValuein interfaceHttpConnectionManagerOrBuilder- Returns:
- The enum numeric value on the wire for codecType.
-
getCodecType
public HttpConnectionManager.CodecType getCodecType()
Supplies the type of codec that the connection manager should use.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }- Specified by:
getCodecTypein interfaceHttpConnectionManagerOrBuilder- Returns:
- The codecType.
-
getStatPrefix
public String getStatPrefix()
The human readable prefix to use when emitting statistics for the connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for more information.
string stat_prefix = 2 [(.validate.rules) = { ... }- Specified by:
getStatPrefixin interfaceHttpConnectionManagerOrBuilder- Returns:
- The statPrefix.
-
getStatPrefixBytes
public com.google.protobuf.ByteString getStatPrefixBytes()
The human readable prefix to use when emitting statistics for the connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for more information.
string stat_prefix = 2 [(.validate.rules) = { ... }- Specified by:
getStatPrefixBytesin interfaceHttpConnectionManagerOrBuilder- Returns:
- The bytes for statPrefix.
-
hasRds
public boolean hasRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;- Specified by:
hasRdsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the rds field is set.
-
getRds
public Rds getRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;- Specified by:
getRdsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The rds.
-
getRdsOrBuilder
public RdsOrBuilder getRdsOrBuilder()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;- Specified by:
getRdsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasRouteConfig
public boolean hasRouteConfig()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;- Specified by:
hasRouteConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the routeConfig field is set.
-
getRouteConfig
public RouteConfiguration getRouteConfig()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;- Specified by:
getRouteConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- The routeConfig.
-
getRouteConfigOrBuilder
public RouteConfigurationOrBuilder getRouteConfigOrBuilder()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;- Specified by:
getRouteConfigOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasScopedRoutes
public boolean hasScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;- Specified by:
hasScopedRoutesin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the scopedRoutes field is set.
-
getScopedRoutes
public ScopedRoutes getScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;- Specified by:
getScopedRoutesin interfaceHttpConnectionManagerOrBuilder- Returns:
- The scopedRoutes.
-
getScopedRoutesOrBuilder
public ScopedRoutesOrBuilder getScopedRoutesOrBuilder()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;- Specified by:
getScopedRoutesOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getHttpFiltersList
public List<HttpFilter> getHttpFiltersList()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;- Specified by:
getHttpFiltersListin interfaceHttpConnectionManagerOrBuilder
-
getHttpFiltersOrBuilderList
public List<? extends HttpFilterOrBuilder> getHttpFiltersOrBuilderList()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;- Specified by:
getHttpFiltersOrBuilderListin interfaceHttpConnectionManagerOrBuilder
-
getHttpFiltersCount
public int getHttpFiltersCount()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;- Specified by:
getHttpFiltersCountin interfaceHttpConnectionManagerOrBuilder
-
getHttpFilters
public HttpFilter getHttpFilters(int index)
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;- Specified by:
getHttpFiltersin interfaceHttpConnectionManagerOrBuilder
-
getHttpFiltersOrBuilder
public HttpFilterOrBuilder getHttpFiltersOrBuilder(int index)
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;- Specified by:
getHttpFiltersOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasAddUserAgent
public boolean hasAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;- Specified by:
hasAddUserAgentin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the addUserAgent field is set.
-
getAddUserAgent
public com.google.protobuf.BoolValue getAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;- Specified by:
getAddUserAgentin interfaceHttpConnectionManagerOrBuilder- Returns:
- The addUserAgent.
-
getAddUserAgentOrBuilder
public com.google.protobuf.BoolValueOrBuilder getAddUserAgentOrBuilder()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;- Specified by:
getAddUserAgentOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasTracing
public boolean hasTracing()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;- Specified by:
hasTracingin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the tracing field is set.
-
getTracing
public HttpConnectionManager.Tracing getTracing()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;- Specified by:
getTracingin interfaceHttpConnectionManagerOrBuilder- Returns:
- The tracing.
-
getTracingOrBuilder
public HttpConnectionManager.TracingOrBuilder getTracingOrBuilder()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_v3_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;- Specified by:
getTracingOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasCommonHttpProtocolOptions
public boolean hasCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }- Specified by:
hasCommonHttpProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the commonHttpProtocolOptions field is set.
-
getCommonHttpProtocolOptions
public HttpProtocolOptions getCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }- Specified by:
getCommonHttpProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The commonHttpProtocolOptions.
-
getCommonHttpProtocolOptionsOrBuilder
public HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }- Specified by:
getCommonHttpProtocolOptionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasHttpProtocolOptions
public boolean hasHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec. [#comment:TODO: The following fields are ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present: 1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;- Specified by:
hasHttpProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the httpProtocolOptions field is set.
-
getHttpProtocolOptions
public Http1ProtocolOptions getHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec. [#comment:TODO: The following fields are ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present: 1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;- Specified by:
getHttpProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The httpProtocolOptions.
-
getHttpProtocolOptionsOrBuilder
public Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
Additional HTTP/1 settings that are passed to the HTTP/1 codec. [#comment:TODO: The following fields are ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present: 1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;- Specified by:
getHttpProtocolOptionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasHttp2ProtocolOptions
public boolean hasHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }- Specified by:
hasHttp2ProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the http2ProtocolOptions field is set.
-
getHttp2ProtocolOptions
public Http2ProtocolOptions getHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }- Specified by:
getHttp2ProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The http2ProtocolOptions.
-
getHttp2ProtocolOptionsOrBuilder
public Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }- Specified by:
getHttp2ProtocolOptionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasHttp3ProtocolOptions
public boolean hasHttp3ProtocolOptions()
Additional HTTP/3 settings that are passed directly to the HTTP/3 codec. [#not-implemented-hide:]
.envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;- Specified by:
hasHttp3ProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the http3ProtocolOptions field is set.
-
getHttp3ProtocolOptions
public Http3ProtocolOptions getHttp3ProtocolOptions()
Additional HTTP/3 settings that are passed directly to the HTTP/3 codec. [#not-implemented-hide:]
.envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;- Specified by:
getHttp3ProtocolOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The http3ProtocolOptions.
-
getHttp3ProtocolOptionsOrBuilder
public Http3ProtocolOptionsOrBuilder getHttp3ProtocolOptionsOrBuilder()
Additional HTTP/3 settings that are passed directly to the HTTP/3 codec. [#not-implemented-hide:]
.envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;- Specified by:
getHttp3ProtocolOptionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getServerName
public String getServerName()
An optional override that the connection manager will write to the server header in responses. If not set, the default is ``envoy``.
string server_name = 10 [(.validate.rules) = { ... }- Specified by:
getServerNamein interfaceHttpConnectionManagerOrBuilder- Returns:
- The serverName.
-
getServerNameBytes
public com.google.protobuf.ByteString getServerNameBytes()
An optional override that the connection manager will write to the server header in responses. If not set, the default is ``envoy``.
string server_name = 10 [(.validate.rules) = { ... }- Specified by:
getServerNameBytesin interfaceHttpConnectionManagerOrBuilder- Returns:
- The bytes for serverName.
-
getServerHeaderTransformationValue
public int getServerHeaderTransformationValue()
Defines the action to be applied to the Server header on the response path. By default, Envoy will overwrite the header with the value specified in server_name.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }- Specified by:
getServerHeaderTransformationValuein interfaceHttpConnectionManagerOrBuilder- Returns:
- The enum numeric value on the wire for serverHeaderTransformation.
-
getServerHeaderTransformation
public HttpConnectionManager.ServerHeaderTransformation getServerHeaderTransformation()
Defines the action to be applied to the Server header on the response path. By default, Envoy will overwrite the header with the value specified in server_name.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }- Specified by:
getServerHeaderTransformationin interfaceHttpConnectionManagerOrBuilder- Returns:
- The serverHeaderTransformation.
-
hasSchemeHeaderTransformation
public boolean hasSchemeHeaderTransformation()
Allows for explicit transformation of the :scheme header on the request path. If not set, Envoy's default :ref:`scheme <config_http_conn_man_headers_scheme>` handling applies.
.envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;- Specified by:
hasSchemeHeaderTransformationin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the schemeHeaderTransformation field is set.
-
getSchemeHeaderTransformation
public SchemeHeaderTransformation getSchemeHeaderTransformation()
Allows for explicit transformation of the :scheme header on the request path. If not set, Envoy's default :ref:`scheme <config_http_conn_man_headers_scheme>` handling applies.
.envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;- Specified by:
getSchemeHeaderTransformationin interfaceHttpConnectionManagerOrBuilder- Returns:
- The schemeHeaderTransformation.
-
getSchemeHeaderTransformationOrBuilder
public SchemeHeaderTransformationOrBuilder getSchemeHeaderTransformationOrBuilder()
Allows for explicit transformation of the :scheme header on the request path. If not set, Envoy's default :ref:`scheme <config_http_conn_man_headers_scheme>` handling applies.
.envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;- Specified by:
getSchemeHeaderTransformationOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasMaxRequestHeadersKb
public boolean hasMaxRequestHeadersKb()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }- Specified by:
hasMaxRequestHeadersKbin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the maxRequestHeadersKb field is set.
-
getMaxRequestHeadersKb
public com.google.protobuf.UInt32Value getMaxRequestHeadersKb()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }- Specified by:
getMaxRequestHeadersKbin interfaceHttpConnectionManagerOrBuilder- Returns:
- The maxRequestHeadersKb.
-
getMaxRequestHeadersKbOrBuilder
public com.google.protobuf.UInt32ValueOrBuilder getMaxRequestHeadersKbOrBuilder()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }- Specified by:
getMaxRequestHeadersKbOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasStreamIdleTimeout
public boolean hasStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }- Specified by:
hasStreamIdleTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the streamIdleTimeout field is set.
-
getStreamIdleTimeout
public com.google.protobuf.Duration getStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }- Specified by:
getStreamIdleTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- The streamIdleTimeout.
-
getStreamIdleTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getStreamIdleTimeoutOrBuilder()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }- Specified by:
getStreamIdleTimeoutOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasRequestTimeout
public boolean hasRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }- Specified by:
hasRequestTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the requestTimeout field is set.
-
getRequestTimeout
public com.google.protobuf.Duration getRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }- Specified by:
getRequestTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- The requestTimeout.
-
getRequestTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getRequestTimeoutOrBuilder()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }- Specified by:
getRequestTimeoutOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasRequestHeadersTimeout
public boolean hasRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }- Specified by:
hasRequestHeadersTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the requestHeadersTimeout field is set.
-
getRequestHeadersTimeout
public com.google.protobuf.Duration getRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }- Specified by:
getRequestHeadersTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- The requestHeadersTimeout.
-
getRequestHeadersTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getRequestHeadersTimeoutOrBuilder()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }- Specified by:
getRequestHeadersTimeoutOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasDrainTimeout
public boolean hasDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;- Specified by:
hasDrainTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the drainTimeout field is set.
-
getDrainTimeout
public com.google.protobuf.Duration getDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;- Specified by:
getDrainTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- The drainTimeout.
-
getDrainTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getDrainTimeoutOrBuilder()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;- Specified by:
getDrainTimeoutOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasDelayedCloseTimeout
public boolean hasDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager. It is defined as a grace period after connection close processing has been locally initiated during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy from the downstream connection) prior to Envoy closing the socket associated with that connection. NOTE: This timeout is enforced even when the socket associated with the downstream connection is pending a flush of the write buffer. However, any progress made writing data to the socket will restart the timer associated with this timeout. This means that the total grace period for a socket in this state will be <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>. Delaying Envoy's connection close and giving the peer the opportunity to initiate the close sequence mitigates a race condition that exists when downstream clients do not drain/process data in a connection's receive buffer after a remote close has been detected via a socket write(). This race leads to such clients failing to process the response code sent by Envoy, which could result in erroneous downstream processing. If the timeout triggers, Envoy will close the connection's socket. The default timeout is 1000 ms if this option is not specified. .. NOTE:: To be useful in avoiding the race condition described above, this timeout must be set to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for a reasonable "worst" case processing time for a full iteration of Envoy's event loop>. .. WARNING:: A value of 0 will completely disable delayed close processing. When disabled, the downstream connection's socket will be closed immediately after the write flush is completed or will never close if the write flush does not complete..google.protobuf.Duration delayed_close_timeout = 26;- Specified by:
hasDelayedCloseTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the delayedCloseTimeout field is set.
-
getDelayedCloseTimeout
public com.google.protobuf.Duration getDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager. It is defined as a grace period after connection close processing has been locally initiated during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy from the downstream connection) prior to Envoy closing the socket associated with that connection. NOTE: This timeout is enforced even when the socket associated with the downstream connection is pending a flush of the write buffer. However, any progress made writing data to the socket will restart the timer associated with this timeout. This means that the total grace period for a socket in this state will be <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>. Delaying Envoy's connection close and giving the peer the opportunity to initiate the close sequence mitigates a race condition that exists when downstream clients do not drain/process data in a connection's receive buffer after a remote close has been detected via a socket write(). This race leads to such clients failing to process the response code sent by Envoy, which could result in erroneous downstream processing. If the timeout triggers, Envoy will close the connection's socket. The default timeout is 1000 ms if this option is not specified. .. NOTE:: To be useful in avoiding the race condition described above, this timeout must be set to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for a reasonable "worst" case processing time for a full iteration of Envoy's event loop>. .. WARNING:: A value of 0 will completely disable delayed close processing. When disabled, the downstream connection's socket will be closed immediately after the write flush is completed or will never close if the write flush does not complete..google.protobuf.Duration delayed_close_timeout = 26;- Specified by:
getDelayedCloseTimeoutin interfaceHttpConnectionManagerOrBuilder- Returns:
- The delayedCloseTimeout.
-
getDelayedCloseTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getDelayedCloseTimeoutOrBuilder()
The delayed close timeout is for downstream connections managed by the HTTP connection manager. It is defined as a grace period after connection close processing has been locally initiated during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy from the downstream connection) prior to Envoy closing the socket associated with that connection. NOTE: This timeout is enforced even when the socket associated with the downstream connection is pending a flush of the write buffer. However, any progress made writing data to the socket will restart the timer associated with this timeout. This means that the total grace period for a socket in this state will be <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>. Delaying Envoy's connection close and giving the peer the opportunity to initiate the close sequence mitigates a race condition that exists when downstream clients do not drain/process data in a connection's receive buffer after a remote close has been detected via a socket write(). This race leads to such clients failing to process the response code sent by Envoy, which could result in erroneous downstream processing. If the timeout triggers, Envoy will close the connection's socket. The default timeout is 1000 ms if this option is not specified. .. NOTE:: To be useful in avoiding the race condition described above, this timeout must be set to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for a reasonable "worst" case processing time for a full iteration of Envoy's event loop>. .. WARNING:: A value of 0 will completely disable delayed close processing. When disabled, the downstream connection's socket will be closed immediately after the write flush is completed or will never close if the write flush does not complete..google.protobuf.Duration delayed_close_timeout = 26;- Specified by:
getDelayedCloseTimeoutOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getAccessLogList
public List<AccessLog> getAccessLogList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;- Specified by:
getAccessLogListin interfaceHttpConnectionManagerOrBuilder
-
getAccessLogOrBuilderList
public List<? extends AccessLogOrBuilder> getAccessLogOrBuilderList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;- Specified by:
getAccessLogOrBuilderListin interfaceHttpConnectionManagerOrBuilder
-
getAccessLogCount
public int getAccessLogCount()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;- Specified by:
getAccessLogCountin interfaceHttpConnectionManagerOrBuilder
-
getAccessLog
public AccessLog getAccessLog(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;- Specified by:
getAccessLogin interfaceHttpConnectionManagerOrBuilder
-
getAccessLogOrBuilder
public AccessLogOrBuilder getAccessLogOrBuilder(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;- Specified by:
getAccessLogOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasUseRemoteAddress
public boolean hasUseRemoteAddress()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }- Specified by:
hasUseRemoteAddressin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the useRemoteAddress field is set.
-
getUseRemoteAddress
public com.google.protobuf.BoolValue getUseRemoteAddress()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }- Specified by:
getUseRemoteAddressin interfaceHttpConnectionManagerOrBuilder- Returns:
- The useRemoteAddress.
-
getUseRemoteAddressOrBuilder
public com.google.protobuf.BoolValueOrBuilder getUseRemoteAddressOrBuilder()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }- Specified by:
getUseRemoteAddressOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getXffNumTrustedHops
public int getXffNumTrustedHops()
The number of additional ingress proxy hops from the right side of the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header to trust when determining the origin client's IP address. The default is zero if this option is not specified. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for` for more information.
uint32 xff_num_trusted_hops = 19;- Specified by:
getXffNumTrustedHopsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The xffNumTrustedHops.
-
getOriginalIpDetectionExtensionsList
public List<TypedExtensionConfig> getOriginalIpDetectionExtensionsList()
The configuration for the original IP detection extensions. When configured the extensions will be called along with the request headers and information about the downstream connection, such as the directly connected address. Each extension will then use these parameters to decide the request's effective remote address. If an extension fails to detect the original IP address and isn't configured to reject the request, the HCM will try the remaining extensions until one succeeds or rejects the request. If the request isn't rejected nor any extension succeeds, the HCM will fallback to using the remote address. .. WARNING:: Extensions cannot be used in conjunction with :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` nor :ref:`xff_num_trusted_hops <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`. [#extension-category: envoy.http.original_ip_detection]repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;- Specified by:
getOriginalIpDetectionExtensionsListin interfaceHttpConnectionManagerOrBuilder
-
getOriginalIpDetectionExtensionsOrBuilderList
public List<? extends TypedExtensionConfigOrBuilder> getOriginalIpDetectionExtensionsOrBuilderList()
The configuration for the original IP detection extensions. When configured the extensions will be called along with the request headers and information about the downstream connection, such as the directly connected address. Each extension will then use these parameters to decide the request's effective remote address. If an extension fails to detect the original IP address and isn't configured to reject the request, the HCM will try the remaining extensions until one succeeds or rejects the request. If the request isn't rejected nor any extension succeeds, the HCM will fallback to using the remote address. .. WARNING:: Extensions cannot be used in conjunction with :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` nor :ref:`xff_num_trusted_hops <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`. [#extension-category: envoy.http.original_ip_detection]repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;- Specified by:
getOriginalIpDetectionExtensionsOrBuilderListin interfaceHttpConnectionManagerOrBuilder
-
getOriginalIpDetectionExtensionsCount
public int getOriginalIpDetectionExtensionsCount()
The configuration for the original IP detection extensions. When configured the extensions will be called along with the request headers and information about the downstream connection, such as the directly connected address. Each extension will then use these parameters to decide the request's effective remote address. If an extension fails to detect the original IP address and isn't configured to reject the request, the HCM will try the remaining extensions until one succeeds or rejects the request. If the request isn't rejected nor any extension succeeds, the HCM will fallback to using the remote address. .. WARNING:: Extensions cannot be used in conjunction with :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` nor :ref:`xff_num_trusted_hops <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`. [#extension-category: envoy.http.original_ip_detection]repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;- Specified by:
getOriginalIpDetectionExtensionsCountin interfaceHttpConnectionManagerOrBuilder
-
getOriginalIpDetectionExtensions
public TypedExtensionConfig getOriginalIpDetectionExtensions(int index)
The configuration for the original IP detection extensions. When configured the extensions will be called along with the request headers and information about the downstream connection, such as the directly connected address. Each extension will then use these parameters to decide the request's effective remote address. If an extension fails to detect the original IP address and isn't configured to reject the request, the HCM will try the remaining extensions until one succeeds or rejects the request. If the request isn't rejected nor any extension succeeds, the HCM will fallback to using the remote address. .. WARNING:: Extensions cannot be used in conjunction with :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` nor :ref:`xff_num_trusted_hops <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`. [#extension-category: envoy.http.original_ip_detection]repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;- Specified by:
getOriginalIpDetectionExtensionsin interfaceHttpConnectionManagerOrBuilder
-
getOriginalIpDetectionExtensionsOrBuilder
public TypedExtensionConfigOrBuilder getOriginalIpDetectionExtensionsOrBuilder(int index)
The configuration for the original IP detection extensions. When configured the extensions will be called along with the request headers and information about the downstream connection, such as the directly connected address. Each extension will then use these parameters to decide the request's effective remote address. If an extension fails to detect the original IP address and isn't configured to reject the request, the HCM will try the remaining extensions until one succeeds or rejects the request. If the request isn't rejected nor any extension succeeds, the HCM will fallback to using the remote address. .. WARNING:: Extensions cannot be used in conjunction with :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` nor :ref:`xff_num_trusted_hops <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`. [#extension-category: envoy.http.original_ip_detection]repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;- Specified by:
getOriginalIpDetectionExtensionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasInternalAddressConfig
public boolean hasInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;- Specified by:
hasInternalAddressConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the internalAddressConfig field is set.
-
getInternalAddressConfig
public HttpConnectionManager.InternalAddressConfig getInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;- Specified by:
getInternalAddressConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- The internalAddressConfig.
-
getInternalAddressConfigOrBuilder
public HttpConnectionManager.InternalAddressConfigOrBuilder getInternalAddressConfigOrBuilder()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;- Specified by:
getInternalAddressConfigOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getSkipXffAppend
public boolean getSkipXffAppend()
If set, Envoy will not append the remote address to the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. This may be used in conjunction with HTTP filters that explicitly manipulate XFF after the HTTP connection manager has mutated the request headers. While :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` will also suppress XFF addition, it has consequences for logging and other Envoy uses of the remote address, so ``skip_xff_append`` should be used when only an elision of XFF addition is intended.
bool skip_xff_append = 21;- Specified by:
getSkipXffAppendin interfaceHttpConnectionManagerOrBuilder- Returns:
- The skipXffAppend.
-
getVia
public String getVia()
Via header value to append to request and response headers. If this is empty, no via header will be appended.
string via = 22 [(.validate.rules) = { ... }- Specified by:
getViain interfaceHttpConnectionManagerOrBuilder- Returns:
- The via.
-
getViaBytes
public com.google.protobuf.ByteString getViaBytes()
Via header value to append to request and response headers. If this is empty, no via header will be appended.
string via = 22 [(.validate.rules) = { ... }- Specified by:
getViaBytesin interfaceHttpConnectionManagerOrBuilder- Returns:
- The bytes for via.
-
hasGenerateRequestId
public boolean hasGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;- Specified by:
hasGenerateRequestIdin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the generateRequestId field is set.
-
getGenerateRequestId
public com.google.protobuf.BoolValue getGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;- Specified by:
getGenerateRequestIdin interfaceHttpConnectionManagerOrBuilder- Returns:
- The generateRequestId.
-
getGenerateRequestIdOrBuilder
public com.google.protobuf.BoolValueOrBuilder getGenerateRequestIdOrBuilder()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;- Specified by:
getGenerateRequestIdOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getPreserveExternalRequestId
public boolean getPreserveExternalRequestId()
Whether the connection manager will keep the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if passed for a request that is edge (Edge request is the request from external clients to front Envoy) and not reset it, which is the current Envoy behaviour. This defaults to false.
bool preserve_external_request_id = 32;- Specified by:
getPreserveExternalRequestIdin interfaceHttpConnectionManagerOrBuilder- Returns:
- The preserveExternalRequestId.
-
getAlwaysSetRequestIdInResponse
public boolean getAlwaysSetRequestIdInResponse()
If set, Envoy will always set :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header in response. If this is false or not set, the request ID is returned in responses only if tracing is forced using :ref:`x-envoy-force-trace <config_http_conn_man_headers_x-envoy-force-trace>` header.
bool always_set_request_id_in_response = 37;- Specified by:
getAlwaysSetRequestIdInResponsein interfaceHttpConnectionManagerOrBuilder- Returns:
- The alwaysSetRequestIdInResponse.
-
getForwardClientCertDetailsValue
public int getForwardClientCertDetailsValue()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }- Specified by:
getForwardClientCertDetailsValuein interfaceHttpConnectionManagerOrBuilder- Returns:
- The enum numeric value on the wire for forwardClientCertDetails.
-
getForwardClientCertDetails
public HttpConnectionManager.ForwardClientCertDetails getForwardClientCertDetails()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }- Specified by:
getForwardClientCertDetailsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The forwardClientCertDetails.
-
hasSetCurrentClientCertDetails
public boolean hasSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and ``By`` is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;- Specified by:
hasSetCurrentClientCertDetailsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the setCurrentClientCertDetails field is set.
-
getSetCurrentClientCertDetails
public HttpConnectionManager.SetCurrentClientCertDetails getSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and ``By`` is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;- Specified by:
getSetCurrentClientCertDetailsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The setCurrentClientCertDetails.
-
getSetCurrentClientCertDetailsOrBuilder
public HttpConnectionManager.SetCurrentClientCertDetailsOrBuilder getSetCurrentClientCertDetailsOrBuilder()
This field is valid only when :ref:`forward_client_cert_details <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and ``By`` is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;- Specified by:
getSetCurrentClientCertDetailsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getProxy100Continue
public boolean getProxy100Continue()
If proxy_100_continue is true, Envoy will proxy incoming "Expect: 100-continue" headers upstream, and forward "100 Continue" responses downstream. If this is false or not set, Envoy will instead strip the "Expect: 100-continue" header, and send a "100 Continue" response itself.
bool proxy_100_continue = 18;- Specified by:
getProxy100Continuein interfaceHttpConnectionManagerOrBuilder- Returns:
- The proxy100Continue.
-
getRepresentIpv4RemoteAddressAsIpv4MappedIpv6
public boolean getRepresentIpv4RemoteAddressAsIpv4MappedIpv6()
If :ref:`use_remote_address <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` is true and represent_ipv4_remote_address_as_ipv4_mapped_ipv6 is true and the remote address is an IPv4 address, the address will be mapped to IPv6 before it is appended to ``x-forwarded-for``. This is useful for testing compatibility of upstream services that parse the header value. For example, 50.0.0.1 is represented as ::FFFF:50.0.0.1. See `IPv4-Mapped IPv6 Addresses <https://tools.ietf.org/html/rfc4291#section-2.5.5.2>`_ for details. This will also affect the :ref:`config_http_conn_man_headers_x-envoy-external-address` header. See :ref:`http_connection_manager.represent_ipv4_remote_address_as_ipv4_mapped_ipv6 <config_http_conn_man_runtime_represent_ipv4_remote_address_as_ipv4_mapped_ipv6>` for runtime control. [#not-implemented-hide:]
bool represent_ipv4_remote_address_as_ipv4_mapped_ipv6 = 20;- Specified by:
getRepresentIpv4RemoteAddressAsIpv4MappedIpv6in interfaceHttpConnectionManagerOrBuilder- Returns:
- The representIpv4RemoteAddressAsIpv4MappedIpv6.
-
getUpgradeConfigsList
public List<HttpConnectionManager.UpgradeConfig> getUpgradeConfigsList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;- Specified by:
getUpgradeConfigsListin interfaceHttpConnectionManagerOrBuilder
-
getUpgradeConfigsOrBuilderList
public List<? extends HttpConnectionManager.UpgradeConfigOrBuilder> getUpgradeConfigsOrBuilderList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;- Specified by:
getUpgradeConfigsOrBuilderListin interfaceHttpConnectionManagerOrBuilder
-
getUpgradeConfigsCount
public int getUpgradeConfigsCount()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;- Specified by:
getUpgradeConfigsCountin interfaceHttpConnectionManagerOrBuilder
-
getUpgradeConfigs
public HttpConnectionManager.UpgradeConfig getUpgradeConfigs(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;- Specified by:
getUpgradeConfigsin interfaceHttpConnectionManagerOrBuilder
-
getUpgradeConfigsOrBuilder
public HttpConnectionManager.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;- Specified by:
getUpgradeConfigsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasNormalizePath
public boolean hasNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream ``:path`` header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_ [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
.google.protobuf.BoolValue normalize_path = 30;- Specified by:
hasNormalizePathin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the normalizePath field is set.
-
getNormalizePath
public com.google.protobuf.BoolValue getNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream ``:path`` header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_ [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
.google.protobuf.BoolValue normalize_path = 30;- Specified by:
getNormalizePathin interfaceHttpConnectionManagerOrBuilder- Returns:
- The normalizePath.
-
getNormalizePathOrBuilder
public com.google.protobuf.BoolValueOrBuilder getNormalizePathOrBuilder()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream ``:path`` header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_ [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
.google.protobuf.BoolValue normalize_path = 30;- Specified by:
getNormalizePathOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getMergeSlashes
public boolean getMergeSlashes()
Determines if adjacent slashes in the path are merged into one before any processing of requests by HTTP filters or routing. This affects the upstream ``:path`` header as well. Without setting this option, incoming requests with path ``//dir///file`` will not match against route with ``prefix`` match set to ``/dir``. Defaults to ``false``. Note that slash merging is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
bool merge_slashes = 33;- Specified by:
getMergeSlashesin interfaceHttpConnectionManagerOrBuilder- Returns:
- The mergeSlashes.
-
getPathWithEscapedSlashesActionValue
public int getPathWithEscapedSlashesActionValue()
Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c). The default value can be overridden by the :ref:`http_connection_manager.path_with_escaped_slashes_action<config_http_conn_man_runtime_path_with_escaped_slashes_action>` runtime variable. The :ref:`http_connection_manager.path_with_escaped_slashes_action_sampling<config_http_conn_man_runtime_path_with_escaped_slashes_action_enabled>` runtime variable can be used to apply the action to a portion of all requests. [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 45;- Specified by:
getPathWithEscapedSlashesActionValuein interfaceHttpConnectionManagerOrBuilder- Returns:
- The enum numeric value on the wire for pathWithEscapedSlashesAction.
-
getPathWithEscapedSlashesAction
public HttpConnectionManager.PathWithEscapedSlashesAction getPathWithEscapedSlashesAction()
Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c). The default value can be overridden by the :ref:`http_connection_manager.path_with_escaped_slashes_action<config_http_conn_man_runtime_path_with_escaped_slashes_action>` runtime variable. The :ref:`http_connection_manager.path_with_escaped_slashes_action_sampling<config_http_conn_man_runtime_path_with_escaped_slashes_action_enabled>` runtime variable can be used to apply the action to a portion of all requests. [#comment:TODO: This field is ignored when the :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>` is present.]
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 45;- Specified by:
getPathWithEscapedSlashesActionin interfaceHttpConnectionManagerOrBuilder- Returns:
- The pathWithEscapedSlashesAction.
-
hasRequestIdExtension
public boolean hasRequestIdExtension()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If empty, the :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>` default extension is used with default parameters. See the documentation for that extension for details on what it does. Customizing the configuration for the default extension can be achieved by configuring it explicitly here. For example, to disable trace reason packing, the following configuration can be used: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension typed_config: "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig pack_trace_reason: false [#extension-category: envoy.request_id].envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;- Specified by:
hasRequestIdExtensionin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the requestIdExtension field is set.
-
getRequestIdExtension
public RequestIDExtension getRequestIdExtension()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If empty, the :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>` default extension is used with default parameters. See the documentation for that extension for details on what it does. Customizing the configuration for the default extension can be achieved by configuring it explicitly here. For example, to disable trace reason packing, the following configuration can be used: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension typed_config: "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig pack_trace_reason: false [#extension-category: envoy.request_id].envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;- Specified by:
getRequestIdExtensionin interfaceHttpConnectionManagerOrBuilder- Returns:
- The requestIdExtension.
-
getRequestIdExtensionOrBuilder
public RequestIDExtensionOrBuilder getRequestIdExtensionOrBuilder()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If empty, the :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>` default extension is used with default parameters. See the documentation for that extension for details on what it does. Customizing the configuration for the default extension can be achieved by configuring it explicitly here. For example, to disable trace reason packing, the following configuration can be used: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension typed_config: "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig pack_trace_reason: false [#extension-category: envoy.request_id].envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;- Specified by:
getRequestIdExtensionOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasLocalReplyConfig
public boolean hasLocalReplyConfig()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;- Specified by:
hasLocalReplyConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the localReplyConfig field is set.
-
getLocalReplyConfig
public LocalReplyConfig getLocalReplyConfig()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;- Specified by:
getLocalReplyConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- The localReplyConfig.
-
getLocalReplyConfigOrBuilder
public LocalReplyConfigOrBuilder getLocalReplyConfigOrBuilder()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;- Specified by:
getLocalReplyConfigOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getStripMatchingHostPort
public boolean getStripMatchingHostPort()
Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing. The port would be removed only if it is equal to the :ref:`listener's<envoy_v3_api_field_config.listener.v3.Listener.address>` local port. This affects the upstream host header unless the method is CONNECT in which case if no filter adds a port the original port will be restored before headers are sent upstream. Without setting this option, incoming requests with host ``example:443`` will not match against route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
bool strip_matching_host_port = 39 [(.udpa.annotations.field_migrate) = { ... }- Specified by:
getStripMatchingHostPortin interfaceHttpConnectionManagerOrBuilder- Returns:
- The stripMatchingHostPort.
-
hasStripAnyHostPort
public boolean hasStripAnyHostPort()
Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing. This affects the upstream host header unless the method is CONNECT in which case if no filter adds a port the original port will be restored before headers are sent upstream. Without setting this option, incoming requests with host ``example:443`` will not match against route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
bool strip_any_host_port = 42;- Specified by:
hasStripAnyHostPortin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the stripAnyHostPort field is set.
-
getStripAnyHostPort
public boolean getStripAnyHostPort()
Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing. This affects the upstream host header unless the method is CONNECT in which case if no filter adds a port the original port will be restored before headers are sent upstream. Without setting this option, incoming requests with host ``example:443`` will not match against route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
bool strip_any_host_port = 42;- Specified by:
getStripAnyHostPortin interfaceHttpConnectionManagerOrBuilder- Returns:
- The stripAnyHostPort.
-
hasStreamErrorOnInvalidHttpMessage
public boolean hasStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;- Specified by:
hasStreamErrorOnInvalidHttpMessagein interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the streamErrorOnInvalidHttpMessage field is set.
-
getStreamErrorOnInvalidHttpMessage
public com.google.protobuf.BoolValue getStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;- Specified by:
getStreamErrorOnInvalidHttpMessagein interfaceHttpConnectionManagerOrBuilder- Returns:
- The streamErrorOnInvalidHttpMessage.
-
getStreamErrorOnInvalidHttpMessageOrBuilder
public com.google.protobuf.BoolValueOrBuilder getStreamErrorOnInvalidHttpMessageOrBuilder()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;- Specified by:
getStreamErrorOnInvalidHttpMessageOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasPathNormalizationOptions
public boolean hasPathNormalizationOptions()
[#not-implemented-hide:] Path normalization configuration. This includes configurations for transformations (e.g. RFC 3986 normalization or merge adjacent slashes) and the policy to apply them. The policy determines whether transformations affect the forwarded ``:path`` header. RFC 3986 path normalization is enabled by default and the default policy is that the normalized header will be forwarded. See :ref:`PathNormalizationOptions <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>` for details.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;- Specified by:
hasPathNormalizationOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the pathNormalizationOptions field is set.
-
getPathNormalizationOptions
public HttpConnectionManager.PathNormalizationOptions getPathNormalizationOptions()
[#not-implemented-hide:] Path normalization configuration. This includes configurations for transformations (e.g. RFC 3986 normalization or merge adjacent slashes) and the policy to apply them. The policy determines whether transformations affect the forwarded ``:path`` header. RFC 3986 path normalization is enabled by default and the default policy is that the normalized header will be forwarded. See :ref:`PathNormalizationOptions <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>` for details.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;- Specified by:
getPathNormalizationOptionsin interfaceHttpConnectionManagerOrBuilder- Returns:
- The pathNormalizationOptions.
-
getPathNormalizationOptionsOrBuilder
public HttpConnectionManager.PathNormalizationOptionsOrBuilder getPathNormalizationOptionsOrBuilder()
[#not-implemented-hide:] Path normalization configuration. This includes configurations for transformations (e.g. RFC 3986 normalization or merge adjacent slashes) and the policy to apply them. The policy determines whether transformations affect the forwarded ``:path`` header. RFC 3986 path normalization is enabled by default and the default policy is that the normalized header will be forwarded. See :ref:`PathNormalizationOptions <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>` for details.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;- Specified by:
getPathNormalizationOptionsOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
getStripTrailingHostDot
public boolean getStripTrailingHostDot()
Determines if trailing dot of the host should be removed from host/authority header before any processing of request by HTTP filters or routing. This affects the upstream host header. Without setting this option, incoming requests with host ``example.com.`` will not match against route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example.com``. Defaults to ``false``. When the incoming request contains a host/authority header that includes a port number, setting this option will strip a trailing dot, if present, from the host section, leaving the port as is (e.g. host value ``example.com.:443`` will be updated to ``example.com:443``).
bool strip_trailing_host_dot = 47;- Specified by:
getStripTrailingHostDotin interfaceHttpConnectionManagerOrBuilder- Returns:
- The stripTrailingHostDot.
-
hasProxyStatusConfig
public boolean hasProxyStatusConfig()
Proxy-Status HTTP response header configuration. If this config is set, the Proxy-Status HTTP response header field is populated. By default, it is not.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;- Specified by:
hasProxyStatusConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the proxyStatusConfig field is set.
-
getProxyStatusConfig
public HttpConnectionManager.ProxyStatusConfig getProxyStatusConfig()
Proxy-Status HTTP response header configuration. If this config is set, the Proxy-Status HTTP response header field is populated. By default, it is not.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;- Specified by:
getProxyStatusConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- The proxyStatusConfig.
-
getProxyStatusConfigOrBuilder
public HttpConnectionManager.ProxyStatusConfigOrBuilder getProxyStatusConfigOrBuilder()
Proxy-Status HTTP response header configuration. If this config is set, the Proxy-Status HTTP response header field is populated. By default, it is not.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;- Specified by:
getProxyStatusConfigOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
hasTypedHeaderValidationConfig
public boolean hasTypedHeaderValidationConfig()
Configuration options for Header Validation (UHV). UHV is an extensible mechanism for checking validity of HTTP requests as well as providing normalization for request attributes, such as URI path. If the typed_header_validation_config is present it overrides the following options: ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action`` ``http_protocol_options.allow_chunked_length``. The default UHV checks the following: #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_ #. Syntax of HTTP/1 request target URI and response status #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_ #. Syntax of HTTP/2 pseudo headers #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_ #. Syntax of HTTP/3 pseudo headers #. Syntax of ``Content-Length`` and ``Transfer-Encoding`` #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_ without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_ [#not-implemented-hide:] [#extension-category: envoy.http.header_validators].envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;- Specified by:
hasTypedHeaderValidationConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- Whether the typedHeaderValidationConfig field is set.
-
getTypedHeaderValidationConfig
public TypedExtensionConfig getTypedHeaderValidationConfig()
Configuration options for Header Validation (UHV). UHV is an extensible mechanism for checking validity of HTTP requests as well as providing normalization for request attributes, such as URI path. If the typed_header_validation_config is present it overrides the following options: ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action`` ``http_protocol_options.allow_chunked_length``. The default UHV checks the following: #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_ #. Syntax of HTTP/1 request target URI and response status #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_ #. Syntax of HTTP/2 pseudo headers #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_ #. Syntax of HTTP/3 pseudo headers #. Syntax of ``Content-Length`` and ``Transfer-Encoding`` #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_ without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_ [#not-implemented-hide:] [#extension-category: envoy.http.header_validators].envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;- Specified by:
getTypedHeaderValidationConfigin interfaceHttpConnectionManagerOrBuilder- Returns:
- The typedHeaderValidationConfig.
-
getTypedHeaderValidationConfigOrBuilder
public TypedExtensionConfigOrBuilder getTypedHeaderValidationConfigOrBuilder()
Configuration options for Header Validation (UHV). UHV is an extensible mechanism for checking validity of HTTP requests as well as providing normalization for request attributes, such as URI path. If the typed_header_validation_config is present it overrides the following options: ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action`` ``http_protocol_options.allow_chunked_length``. The default UHV checks the following: #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_ #. Syntax of HTTP/1 request target URI and response status #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_ #. Syntax of HTTP/2 pseudo headers #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_ #. Syntax of HTTP/3 pseudo headers #. Syntax of ``Content-Length`` and ``Transfer-Encoding`` #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_ without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_ [#not-implemented-hide:] [#extension-category: envoy.http.header_validators].envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;- Specified by:
getTypedHeaderValidationConfigOrBuilderin interfaceHttpConnectionManagerOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static HttpConnectionManager parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HttpConnectionManager parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static HttpConnectionManager parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static HttpConnectionManager parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static HttpConnectionManager parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static HttpConnectionManager parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static HttpConnectionManager parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public HttpConnectionManager.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static HttpConnectionManager.Builder newBuilder()
-
newBuilder
public static HttpConnectionManager.Builder newBuilder(HttpConnectionManager prototype)
-
toBuilder
public HttpConnectionManager.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected HttpConnectionManager.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static HttpConnectionManager getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<HttpConnectionManager> parser()
-
getParserForType
public com.google.protobuf.Parser<HttpConnectionManager> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public HttpConnectionManager getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-