1
#pragma once
2

            
3
#include "envoy/http/header_validator_factory.h"
4
#include "envoy/registry/registry.h"
5

            
6
#include "source/common/protobuf/protobuf.h"
7

            
8
namespace Envoy {
9
namespace Extensions {
10
namespace Http {
11
namespace HeaderValidators {
12
namespace EnvoyDefault {
13

            
14
/**
15
 * Config registration for the custom header IP detection extension.
16
 * @see OriginalIPDetectionFactory.
17
 */
18
class HeaderValidatorFactoryConfig : public ::Envoy::Http::HeaderValidatorFactoryConfig {
19
public:
20
  ::Envoy::Http::HeaderValidatorFactoryPtr
21
  createFromProto(const Protobuf::Message& config,
22
                  Server::Configuration::ServerFactoryContext& server_context) override;
23

            
24
  ProtobufTypes::MessagePtr createEmptyConfigProto() override;
25

            
26
11189
  std::string name() const override { return "envoy.http.header_validators.envoy_default"; }
27
};
28

            
29
DECLARE_FACTORY(HeaderValidatorFactoryConfig);
30

            
31
} // namespace EnvoyDefault
32
} // namespace HeaderValidators
33
} // namespace Http
34
} // namespace Extensions
35
} // namespace Envoy