const std::string Json::Schema::HTTP_CONN_NETWORK_FILTER_SCHEMA()

in source/common/json/config_schemas.cc [250:359]


const std::string Json::Schema::HTTP_CONN_NETWORK_FILTER_SCHEMA(R"EOF(
  {
    "$schema": "http://json-schema.org/schema#",
    "definitions" : {
      "tracing" : {
        "type" : "object",
        "properties" : {
          "operation_name" : {
            "type" : "string",
            "enum": ["ingress", "egress"]
          },
          "request_headers_for_tags": {
            "type" : "array",
            "uniqueItems": true,
            "items" : {"type" : "string"}
          }
        },
        "required" : ["operation_name"],
        "additionalProperties" : false
      },
      "filters" : {
        "type" : "object",
        "properties" : {
          "name" : {"type": "string"},
          "config": {"type" : "object"}
        },
        "required": ["name", "config"],
        "additionalProperties" : false
      }
    },
    "type" : "object",
    "properties" : {
      "codec_type" : {
        "type" : "string",
        "enum" : ["http1", "http2", "auto"]
      },
      "stat_prefix" : {"type" : "string"},
      "rds" : {"type": "object"},
      "route_config" : {"type": "object"},
      "filters" : {
        "type" : "array",
        "minItems" : 1,
        "properties" : {"$ref" : "#/definitions/filters"}
      },
      "add_user_agent" : {"type" : "boolean"},
      "tracing" : {"$ref" : "#/definitions/tracing"},
      "http1_settings": {
        "type": "object",
        "properties": {
          "allow_absolute_url": {
            "type": "boolean"
          },
          "allow_connect": {
            "type": "boolean"
          }
        }
      },
      "http2_settings" : {
        "type" : "object",
        "properties" : {
          "hpack_table_size" : {
            "type": "integer",
            "minimum": 0,
            "maximum" : 4294967295
          },
          "max_concurrent_streams" : {
            "type": "integer",
            "minimum": 1,
            "maximum" : 2147483647
          },
          "initial_stream_window_size" : {
            "type": "integer",
            "minimum": 65535,
            "maximum" : 2147483647
          },
          "initial_connection_window_size" : {
            "type": "integer",
            "minimum": 65535,
            "maximum" : 2147483647
          }
        }
      },
      "server_name" : {"type" : "string"},
      "idle_timeout_s" : {"type" : "integer"},
      "drain_timeout_ms" : {"type" : "integer"},
      "access_log" : { "type": "array" },
      "use_remote_address" : {"type" : "boolean"},
      "forward_client_cert" : {
          "type" : "string",
          "enum" : [
            "forward_only",
            "append_forward",
            "sanitize",
            "sanitize_set",
            "always_forward_only"
          ]
      },
      "set_current_client_cert_details" : {
          "type" : "array",
          "uniqueItems": true,
          "items" : {
              "type" : "string",
              "enum" : ["Subject", "SAN"]
          }
      },
      "generate_request_id" : {"type" : "boolean"}
    },
    "required" : ["codec_type", "stat_prefix", "filters"],
    "additionalProperties" : false
  }