From 578a73949bec96072a1e565e2dbaa85e4764fe5d Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:13:38 +0200 Subject: [PATCH 1/9] initial implementation of forward_downstream_api filter --- src/envoy/BUILD | 1 + src/envoy/tcp/forward_downstream_sni/BUILD | 53 +++++++++++ .../tcp/forward_downstream_sni/config.cc | 59 ++++++++++++ src/envoy/tcp/forward_downstream_sni/config.h | 43 +++++++++ .../forward_downstream_sni.cc | 41 ++++++++ .../forward_downstream_sni.h | 46 +++++++++ .../forward_downstream_sni_test.cc | 93 +++++++++++++++++++ 7 files changed, 336 insertions(+) create mode 100644 src/envoy/tcp/forward_downstream_sni/BUILD create mode 100644 src/envoy/tcp/forward_downstream_sni/config.cc create mode 100644 src/envoy/tcp/forward_downstream_sni/config.h create mode 100644 src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc create mode 100644 src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h create mode 100644 src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc diff --git a/src/envoy/BUILD b/src/envoy/BUILD index 61b354a13df..9fbe1c5229a 100644 --- a/src/envoy/BUILD +++ b/src/envoy/BUILD @@ -30,6 +30,7 @@ envoy_cc_binary( "//src/envoy/http/mixer:filter_lib", "//src/envoy/tcp/mixer:filter_lib", "//src/envoy/tcp/tcp_cluster_rewrite:config_lib", + "//src/envoy/tcp/forward_downstream_sni:config_lib", "@envoy//source/exe:envoy_main_entry_lib", ], ) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD new file mode 100644 index 00000000000..6f23174e503 --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -0,0 +1,53 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +load( + "@envoy//bazel:envoy_build_system.bzl", + "envoy_cc_library", +) + +envoy_cc_library( + name = "forward_downstream_sni_lib", + srcs = ["forward_downstream_sni.cc"], + hdrs = ["forward_downstream_sni.h"], + repository = "@envoy", + visibility = ["//visibility:public"], + deps = [ + "@envoy//source/exe:envoy_common_lib", + ], +) + +envoy_cc_test( + name = "forward_downstream_sni_test", + srcs = ["forward_downstream_sni_test.cc"], + repository = "@envoy", + deps = [ + ":forward_downstream_sni_lib", + ":config_lib", + "@envoy//test/mocks/network:network_mocks", + "@envoy//test/mocks/server:server_mocks", + "@envoy//test/mocks/stream_info:stream_info_mocks", + ], +) + +envoy_cc_test( + name = "config_test", + srcs = ["config_test.cc"], + repository = "@envoy", + deps = [ + ":config_lib", + "@envoy//test/mocks/server:server_mocks", + ], +) \ No newline at end of file diff --git a/src/envoy/tcp/forward_downstream_sni/config.cc b/src/envoy/tcp/forward_downstream_sni/config.cc new file mode 100644 index 00000000000..6b62e1a3a35 --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/config.cc @@ -0,0 +1,59 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "src/envoy/tcp/forward_downstream_sni/config.h" + +#include "envoy/registry/registry.h" +#include "envoy/server/filter_config.h" + +#include "src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h" + +namespace Envoy { +namespace Tcp { +namespace ForwardDownstreamSni { + +Network::FilterFactoryCb +ForwardDownstreamSniNetworkFilterConfigFactory::createFilterFactory( + const Json::Object&, Server::Configuration::FactoryContext&) { + // Only used in v1 filters. + NOT_IMPLEMENTED_GCOVR_EXCL_LINE; +} + +Network::FilterFactoryCb +ForwardDownstreamSniNetworkFilterConfigFactory::createFilterFactoryFromProto( + const Protobuf::Message&, Server::Configuration::FactoryContext&) { + return [](Network::FilterManager& filter_manager) -> void { + filter_manager.addReadFilter( + std::make_shared()); + }; +} + +ProtobufTypes::MessagePtr +ForwardDownstreamSniNetworkFilterConfigFactory::createEmptyConfigProto() { + return std::make_unique(); +} + +/** + * Static registration for the forward_original_sni filter. @see + * RegisterFactory. + */ +static Registry::RegisterFactory< + ForwardDownstreamSniNetworkFilterConfigFactory, + Server::Configuration::NamedNetworkFilterConfigFactory> + registered_; + +} // namespace ForwardDownstreamSni +} // namespace Tcp +} // namespace Envoy diff --git a/src/envoy/tcp/forward_downstream_sni/config.h b/src/envoy/tcp/forward_downstream_sni/config.h new file mode 100644 index 00000000000..06b6419f4ec --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/config.h @@ -0,0 +1,43 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include "envoy/server/filter_config.h" + +namespace Envoy { +namespace Tcp { +namespace ForwardDownstreamSni { + +/** + * Config registration for the forward_downstream_sni filter. @see + * NamedNetworkFilterConfigFactory. + */ +class ForwardDownstreamSniNetworkFilterConfigFactory + : public Server::Configuration::NamedNetworkFilterConfigFactory { + public: + // NamedNetworkFilterConfigFactory + Network::FilterFactoryCb createFilterFactory( + const Json::Object&, Server::Configuration::FactoryContext&) override; + Network::FilterFactoryCb createFilterFactoryFromProto( + const Protobuf::Message&, + Server::Configuration::FactoryContext&) override; + ProtobufTypes::MessagePtr createEmptyConfigProto() override; + std::string name() override { return "forward_downstream_sni"; } +}; + +} // namespace ForwardDownstreamSni +} // namespace Tcp +} // namespace Envoy diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc new file mode 100644 index 00000000000..568efad1174 --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc @@ -0,0 +1,41 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "envoy/network/connection.h" + +#include "common/network/upstream_server_name.h" +#include "src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h" + +namespace Envoy { +namespace Tcp { +namespace ForwardDownstreamSni { + +using ::Envoy::StreamInfo::UpstreamServerName; + +Network::FilterStatus ForwardDownstreamSniFilter::onNewConnection() { + absl::string_view sni = read_callbacks_->connection().requestedServerName(); + + if (!sni.empty()) { + read_callbacks_->connection().streamInfo().filterState().setData( + UpstreamServerName::key(), std::make_unique(sni), + StreamInfo::FilterState::StateType::ReadOnly); + } + + return Network::FilterStatus::Continue; +} + +} // namespace ForwardDownstreamSni +} // namespace Tcp +} // namespace Envoy diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h new file mode 100644 index 00000000000..fed2e4ed73a --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h @@ -0,0 +1,46 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include "envoy/network/filter.h" + +namespace Envoy { +namespace Extensions { +namespace ForwardDownstreamSni { + +/** + * Implementation of the forward_downstream_sni filter that sets the original + * requested server name from the SNI field in the TLS connection. + */ +class ForwardDownstreamSniFilter : public Network::ReadFilter { + public: + // Network::ReadFilter + Network::FilterStatus onData(Buffer::Instance&, bool) override { + return Network::FilterStatus::Continue; + } + Network::FilterStatus onNewConnection() override; + void initializeReadFilterCallbacks( + Network::ReadFilterCallbacks& callbacks) override { + read_callbacks_ = &callbacks; + } + + private: + Network::ReadFilterCallbacks* read_callbacks_{}; +}; + +} // namespace ForwardDownstreamSni +} // namespace Extensions +} // namespace Envoy diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc new file mode 100644 index 00000000000..ec7aad199ee --- /dev/null +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc @@ -0,0 +1,93 @@ +/* Copyright 2018 Istio Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "test/mocks/network/mocks.h" +#include "test/mocks/server/mocks.h" +#include "test/mocks/stream_info/mocks.h" + +#include "gmock/gmock.h" +#include "gtest/gtest.h" + +#include "common/network/upstream_server_name.h" + +#include "src/envoy/tcp/forward_downstream_sni/config.h" +#include "src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h" + +using testing::_; +using testing::Matcher; +using testing::NiceMock; +using testing::Return; +using testing::ReturnRef; + +namespace Envoy { +namespace Tcp { +namespace ForwardDownstreamSni { + +using ::Envoy::StreamInfo::UpstreamServerName; + +// Test that a ForwardDownstreamSni filter config works. +TEST(ForwardDownstreamSni, ConfigTest) { + NiceMock context; + ForwardDownstreamSniNetworkFilterConfigFactory factory; + + Network::FilterFactoryCb cb = factory.createFilterFactoryFromProto( + *factory.createEmptyConfigProto(), context); + Network::MockConnection connection; + EXPECT_CALL(connection, addReadFilter(_)); + cb(connection); +} + +// Test that forward requested server name is set if SNI is available +TEST(ForwardDownstreamSni, SetUpstreamServerNameOnlyIfSniIsPresent) { + NiceMock filter_callbacks; + + NiceMock stream_info; + ON_CALL(filter_callbacks.connection_, streamInfo()) + .WillByDefault(ReturnRef(stream_info)); + ON_CALL(Const(filter_callbacks.connection_), streamInfo()) + .WillByDefault(ReturnRef(stream_info)); + + ForwardDownstreamSniFilter filter; + filter.initializeReadFilterCallbacks(filter_callbacks); + + // no sni + { + ON_CALL(filter_callbacks.connection_, requestedServerName()) + .WillByDefault(Return(EMPTY_STRING)); + filter.onNewConnection(); + + EXPECT_FALSE(stream_info.filterState().hasData( + UpstreamServerName::key())); + } + + // with sni + { + ON_CALL(filter_callbacks.connection_, requestedServerName()) + .WillByDefault(Return("www.example.com")); + filter.onNewConnection(); + + EXPECT_TRUE(stream_info.filterState().hasData( + UpstreamServerName::key())); + + auto forward_requested_server_name = + stream_info.filterState().getDataReadOnly( + UpstreamServerName::key()); + EXPECT_EQ(forward_requested_server_name.value(), "www.example.com"); + } +} + +} // namespace ForwardDownstreamSni +} // namespace Tcp +} // namespace Envoy From 301776a0f706a106377198d1c0470df0530072f2 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:43:46 +0200 Subject: [PATCH 2/9] fix the license message in BUILD (sh comments) --- src/envoy/tcp/forward_downstream_sni/BUILD | 30 ++++++++++++---------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index 6f23174e503..1af15c6be84 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -1,17 +1,19 @@ -/* Copyright 2018 Istio Authors. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +# Copyright 2018 Istio Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +################################################################################ +# load( "@envoy//bazel:envoy_build_system.bzl", From 63282edda57d46272d2621a00b7ab09f7c6c6519 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:51:26 +0200 Subject: [PATCH 3/9] add missing dependencies --- src/envoy/tcp/forward_downstream_sni/BUILD | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index 1af15c6be84..adc1973168e 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -17,7 +17,9 @@ load( "@envoy//bazel:envoy_build_system.bzl", + "envoy_cc_binary", "envoy_cc_library", + "envoy_cc_test", ) envoy_cc_library( From 0476473fca60ae9c88b0a2c96c8f1470fa7846a3 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:51:59 +0200 Subject: [PATCH 4/9] add definition of config_lib to BUILD --- src/envoy/tcp/forward_downstream_sni/BUILD | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index adc1973168e..a5b7822d47e 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -22,6 +22,17 @@ load( "envoy_cc_test", ) +envoy_cc_library( + name = "config_lib", + srcs = ["config.cc"], + hdrs = ["config.h"], + repository = "@envoy", + visibility = ["//visibility:public"], + deps = [ + ":forward_downstream_sni_lib", + "@envoy//source/exe:envoy_common_lib", + ], +) envoy_cc_library( name = "forward_downstream_sni_lib", srcs = ["forward_downstream_sni.cc"], From 1511b181c681a92b957724b922bfaab52fb0fd45 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:52:25 +0200 Subject: [PATCH 5/9] remove public visibility from forward_downstream_sni_lib --- src/envoy/tcp/forward_downstream_sni/BUILD | 1 - 1 file changed, 1 deletion(-) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index a5b7822d47e..db5169d3d51 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -38,7 +38,6 @@ envoy_cc_library( srcs = ["forward_downstream_sni.cc"], hdrs = ["forward_downstream_sni.h"], repository = "@envoy", - visibility = ["//visibility:public"], deps = [ "@envoy//source/exe:envoy_common_lib", ], From dc8a7e3dd957c44a9d4719ff6793c1ba07664c5e Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 15:53:35 +0200 Subject: [PATCH 6/9] remove envoy_cc_binary dependency --- src/envoy/tcp/forward_downstream_sni/BUILD | 1 - 1 file changed, 1 deletion(-) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index db5169d3d51..da776a4a1ee 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -17,7 +17,6 @@ load( "@envoy//bazel:envoy_build_system.bzl", - "envoy_cc_binary", "envoy_cc_library", "envoy_cc_test", ) From c11f4f19353ce6fefcd78f255abbfbde0704f4dc Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 16:01:24 +0200 Subject: [PATCH 7/9] StreamInfo::UpstreamServerName -> Network::UpstreamServerName --- src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc | 2 +- .../tcp/forward_downstream_sni/forward_downstream_sni_test.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc index 568efad1174..bb10ffc998f 100644 --- a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.cc @@ -22,7 +22,7 @@ namespace Envoy { namespace Tcp { namespace ForwardDownstreamSni { -using ::Envoy::StreamInfo::UpstreamServerName; +using ::Envoy::Network::UpstreamServerName; Network::FilterStatus ForwardDownstreamSniFilter::onNewConnection() { absl::string_view sni = read_callbacks_->connection().requestedServerName(); diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc index ec7aad199ee..21c74160a44 100644 --- a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni_test.cc @@ -35,7 +35,7 @@ namespace Envoy { namespace Tcp { namespace ForwardDownstreamSni { -using ::Envoy::StreamInfo::UpstreamServerName; +using ::Envoy::Network::UpstreamServerName; // Test that a ForwardDownstreamSni filter config works. TEST(ForwardDownstreamSni, ConfigTest) { From 506acb5fcd9aeb893caa7ce96ae345ed850503e6 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 16:03:44 +0200 Subject: [PATCH 8/9] fix namespace (Extensions -> Tcp) --- src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h index fed2e4ed73a..25132713867 100644 --- a/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h +++ b/src/envoy/tcp/forward_downstream_sni/forward_downstream_sni.h @@ -18,7 +18,7 @@ #include "envoy/network/filter.h" namespace Envoy { -namespace Extensions { +namespace Tcp { namespace ForwardDownstreamSni { /** @@ -42,5 +42,5 @@ class ForwardDownstreamSniFilter : public Network::ReadFilter { }; } // namespace ForwardDownstreamSni -} // namespace Extensions +} // namespace Tcp } // namespace Envoy From 8cc7bc0e14f2f2d03f5bf027f266b4ce04c51ed6 Mon Sep 17 00:00:00 2001 From: Vadim Eisenberg Date: Wed, 28 Nov 2018 16:15:18 +0200 Subject: [PATCH 9/9] remove config_test --- src/envoy/tcp/forward_downstream_sni/BUILD | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/envoy/tcp/forward_downstream_sni/BUILD b/src/envoy/tcp/forward_downstream_sni/BUILD index da776a4a1ee..f2bcacbc0dc 100644 --- a/src/envoy/tcp/forward_downstream_sni/BUILD +++ b/src/envoy/tcp/forward_downstream_sni/BUILD @@ -54,13 +54,3 @@ envoy_cc_test( "@envoy//test/mocks/stream_info:stream_info_mocks", ], ) - -envoy_cc_test( - name = "config_test", - srcs = ["config_test.cc"], - repository = "@envoy", - deps = [ - ":config_lib", - "@envoy//test/mocks/server:server_mocks", - ], -) \ No newline at end of file