Interface Http1ProtocolOptionsOrBuilder
-
- All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
- All Known Implementing Classes:
Http1ProtocolOptions
,Http1ProtocolOptions.Builder
public interface Http1ProtocolOptionsOrBuilder extends com.google.protobuf.MessageOrBuilder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
getAcceptHttp10()
Handle incoming HTTP/1.0 and HTTP 0.9 requests.com.google.protobuf.BoolValue
getAllowAbsoluteUrl()
Handle HTTP requests with absolute URLs in the requests.com.google.protobuf.BoolValueOrBuilder
getAllowAbsoluteUrlOrBuilder()
Handle HTTP requests with absolute URLs in the requests.boolean
getAllowChunkedLength()
Allows Envoy to process requests/responses with both ``Content-Length`` and ``Transfer-Encoding`` headers set.boolean
getAllowCustomMethods()
[#not-implemented-hide:] Hiding so that field can be removed.java.lang.String
getDefaultHostForHttp10()
A default host for HTTP/1.0 requests.com.google.protobuf.ByteString
getDefaultHostForHttp10Bytes()
A default host for HTTP/1.0 requests.boolean
getEnableTrailers()
Enables trailers for HTTP/1.Http1ProtocolOptions.HeaderKeyFormat
getHeaderKeyFormat()
Describes how the keys for response headers should be formatted.Http1ProtocolOptions.HeaderKeyFormatOrBuilder
getHeaderKeyFormatOrBuilder()
Describes how the keys for response headers should be formatted.com.google.protobuf.BoolValue
getOverrideStreamErrorOnInvalidHttpMessage()
Allows invalid HTTP messaging.com.google.protobuf.BoolValueOrBuilder
getOverrideStreamErrorOnInvalidHttpMessageOrBuilder()
Allows invalid HTTP messaging.boolean
getSendFullyQualifiedUrl()
Allows sending fully qualified URLs when proxying the first line of the response.com.google.protobuf.BoolValue
getUseBalsaParser()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out.com.google.protobuf.BoolValueOrBuilder
getUseBalsaParserOrBuilder()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out.boolean
hasAllowAbsoluteUrl()
Handle HTTP requests with absolute URLs in the requests.boolean
hasHeaderKeyFormat()
Describes how the keys for response headers should be formatted.boolean
hasOverrideStreamErrorOnInvalidHttpMessage()
Allows invalid HTTP messaging.boolean
hasUseBalsaParser()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out.-
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
-
-
-
Method Detail
-
hasAllowAbsoluteUrl
boolean hasAllowAbsoluteUrl()
Handle HTTP requests with absolute URLs in the requests. These requests are generally sent by clients to forward/explicit proxies. This allows clients to configure envoy as their HTTP proxy. In Unix, for example, this is typically done by setting the ``http_proxy`` environment variable.
.google.protobuf.BoolValue allow_absolute_url = 1;
- Returns:
- Whether the allowAbsoluteUrl field is set.
-
getAllowAbsoluteUrl
com.google.protobuf.BoolValue getAllowAbsoluteUrl()
Handle HTTP requests with absolute URLs in the requests. These requests are generally sent by clients to forward/explicit proxies. This allows clients to configure envoy as their HTTP proxy. In Unix, for example, this is typically done by setting the ``http_proxy`` environment variable.
.google.protobuf.BoolValue allow_absolute_url = 1;
- Returns:
- The allowAbsoluteUrl.
-
getAllowAbsoluteUrlOrBuilder
com.google.protobuf.BoolValueOrBuilder getAllowAbsoluteUrlOrBuilder()
Handle HTTP requests with absolute URLs in the requests. These requests are generally sent by clients to forward/explicit proxies. This allows clients to configure envoy as their HTTP proxy. In Unix, for example, this is typically done by setting the ``http_proxy`` environment variable.
.google.protobuf.BoolValue allow_absolute_url = 1;
-
getAcceptHttp10
boolean getAcceptHttp10()
Handle incoming HTTP/1.0 and HTTP 0.9 requests. This is off by default, and not fully standards compliant. There is support for pre-HTTP/1.1 style connect logic, dechunking, and handling lack of client host iff ``default_host_for_http_10`` is configured.
bool accept_http_10 = 2;
- Returns:
- The acceptHttp10.
-
getDefaultHostForHttp10
java.lang.String getDefaultHostForHttp10()
A default host for HTTP/1.0 requests. This is highly suggested if ``accept_http_10`` is true as Envoy does not otherwise support HTTP/1.0 without a Host header. This is a no-op if ``accept_http_10`` is not true.
string default_host_for_http_10 = 3;
- Returns:
- The defaultHostForHttp10.
-
getDefaultHostForHttp10Bytes
com.google.protobuf.ByteString getDefaultHostForHttp10Bytes()
A default host for HTTP/1.0 requests. This is highly suggested if ``accept_http_10`` is true as Envoy does not otherwise support HTTP/1.0 without a Host header. This is a no-op if ``accept_http_10`` is not true.
string default_host_for_http_10 = 3;
- Returns:
- The bytes for defaultHostForHttp10.
-
hasHeaderKeyFormat
boolean hasHeaderKeyFormat()
Describes how the keys for response headers should be formatted. By default, all header keys are lower cased.
.envoy.config.core.v3.Http1ProtocolOptions.HeaderKeyFormat header_key_format = 4;
- Returns:
- Whether the headerKeyFormat field is set.
-
getHeaderKeyFormat
Http1ProtocolOptions.HeaderKeyFormat getHeaderKeyFormat()
Describes how the keys for response headers should be formatted. By default, all header keys are lower cased.
.envoy.config.core.v3.Http1ProtocolOptions.HeaderKeyFormat header_key_format = 4;
- Returns:
- The headerKeyFormat.
-
getHeaderKeyFormatOrBuilder
Http1ProtocolOptions.HeaderKeyFormatOrBuilder getHeaderKeyFormatOrBuilder()
Describes how the keys for response headers should be formatted. By default, all header keys are lower cased.
.envoy.config.core.v3.Http1ProtocolOptions.HeaderKeyFormat header_key_format = 4;
-
getEnableTrailers
boolean getEnableTrailers()
Enables trailers for HTTP/1. By default the HTTP/1 codec drops proxied trailers. .. attention:: Note that this only happens when Envoy is chunk encoding which occurs when: - The request is HTTP/1.1. - Is neither a HEAD only request nor a HTTP Upgrade. - Not a response to a HEAD request. - The content length header is not present.
bool enable_trailers = 5;
- Returns:
- The enableTrailers.
-
getAllowChunkedLength
boolean getAllowChunkedLength()
Allows Envoy to process requests/responses with both ``Content-Length`` and ``Transfer-Encoding`` headers set. By default such messages are rejected, but if option is enabled - Envoy will remove Content-Length header and process message. See `RFC7230, sec. 3.3.3 <https://tools.ietf.org/html/rfc7230#section-3.3.3>`_ for details. .. attention:: Enabling this option might lead to request smuggling vulnerability, especially if traffic is proxied via multiple layers of proxies. [#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 allow_chunked_length = 6;
- Returns:
- The allowChunkedLength.
-
hasOverrideStreamErrorOnInvalidHttpMessage
boolean hasOverrideStreamErrorOnInvalidHttpMessage()
Allows invalid HTTP messaging. When this option is false, then Envoy will terminate HTTP/1.1 connections upon receiving an invalid HTTP message. However, when this option is true, then Envoy will leave the HTTP/1.1 connection open where possible. If set, this overrides any HCM :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_error_on_invalid_http_message>`.
.google.protobuf.BoolValue override_stream_error_on_invalid_http_message = 7;
- Returns:
- Whether the overrideStreamErrorOnInvalidHttpMessage field is set.
-
getOverrideStreamErrorOnInvalidHttpMessage
com.google.protobuf.BoolValue getOverrideStreamErrorOnInvalidHttpMessage()
Allows invalid HTTP messaging. When this option is false, then Envoy will terminate HTTP/1.1 connections upon receiving an invalid HTTP message. However, when this option is true, then Envoy will leave the HTTP/1.1 connection open where possible. If set, this overrides any HCM :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_error_on_invalid_http_message>`.
.google.protobuf.BoolValue override_stream_error_on_invalid_http_message = 7;
- Returns:
- The overrideStreamErrorOnInvalidHttpMessage.
-
getOverrideStreamErrorOnInvalidHttpMessageOrBuilder
com.google.protobuf.BoolValueOrBuilder getOverrideStreamErrorOnInvalidHttpMessageOrBuilder()
Allows invalid HTTP messaging. When this option is false, then Envoy will terminate HTTP/1.1 connections upon receiving an invalid HTTP message. However, when this option is true, then Envoy will leave the HTTP/1.1 connection open where possible. If set, this overrides any HCM :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_error_on_invalid_http_message>`.
.google.protobuf.BoolValue override_stream_error_on_invalid_http_message = 7;
-
getSendFullyQualifiedUrl
boolean getSendFullyQualifiedUrl()
Allows sending fully qualified URLs when proxying the first line of the response. By default, Envoy will only send the path components in the first line. If this is true, Envoy will create a fully qualified URI composing scheme (inferred if not present), host (from the host/:authority header) and path (from first line or :path header).
bool send_fully_qualified_url = 8;
- Returns:
- The sendFullyQualifiedUrl.
-
hasUseBalsaParser
boolean hasUseBalsaParser()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out. If set, force HTTP/1 parser: BalsaParser if true, http-parser if false. If unset, HTTP/1 parser is selected based on envoy.reloadable_features.http1_use_balsa_parser. See issue #21245.
.google.protobuf.BoolValue use_balsa_parser = 9 [(.xds.annotations.v3.field_status) = { ... }
- Returns:
- Whether the useBalsaParser field is set.
-
getUseBalsaParser
com.google.protobuf.BoolValue getUseBalsaParser()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out. If set, force HTTP/1 parser: BalsaParser if true, http-parser if false. If unset, HTTP/1 parser is selected based on envoy.reloadable_features.http1_use_balsa_parser. See issue #21245.
.google.protobuf.BoolValue use_balsa_parser = 9 [(.xds.annotations.v3.field_status) = { ... }
- Returns:
- The useBalsaParser.
-
getUseBalsaParserOrBuilder
com.google.protobuf.BoolValueOrBuilder getUseBalsaParserOrBuilder()
[#not-implemented-hide:] Hiding so that field can be removed after BalsaParser is rolled out. If set, force HTTP/1 parser: BalsaParser if true, http-parser if false. If unset, HTTP/1 parser is selected based on envoy.reloadable_features.http1_use_balsa_parser. See issue #21245.
.google.protobuf.BoolValue use_balsa_parser = 9 [(.xds.annotations.v3.field_status) = { ... }
-
getAllowCustomMethods
boolean getAllowCustomMethods()
[#not-implemented-hide:] Hiding so that field can be removed. If true, and BalsaParser is used (either `use_balsa_parser` above is true, or `envoy.reloadable_features.http1_use_balsa_parser` is true and `use_balsa_parser` is unset), then every non-empty method with only valid characters is accepted. Otherwise, methods not on the hard-coded list are rejected. Once UHV is enabled, this field should be removed, and BalsaParser should allow any method. UHV validates the method, rejecting empty string or invalid characters, and provides :ref:`restrict_http_methods <envoy_v3_api_field_extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.restrict_http_methods>` to reject custom methods.
bool allow_custom_methods = 10 [(.xds.annotations.v3.field_status) = { ... }
- Returns:
- The allowCustomMethods.
-
-