aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--BUILD21
-rw-r--r--Makefile10
-rw-r--r--binding.gyp4
-rw-r--r--build.yaml24
-rw-r--r--config.m47
-rw-r--r--gRPC.podspec8
-rwxr-xr-xgrpc.gemspec6
-rw-r--r--package.json6
-rw-r--r--package.xml6
-rw-r--r--src/core/ext/resolver/dns/native/README.md2
-rw-r--r--src/core/ext/resolver/dns/native/dns_resolver.c (renamed from src/core/lib/client_config/resolvers/dns_resolver.c)15
-rw-r--r--src/core/ext/resolver/sockaddr/README.md1
-rw-r--r--src/core/ext/resolver/sockaddr/sockaddr_resolver.c (renamed from src/core/lib/client_config/resolvers/sockaddr_resolver.c)23
-rw-r--r--src/core/ext/resolver/zookeeper/README.md1
-rw-r--r--src/core/ext/resolver/zookeeper/zookeeper_resolver.c (renamed from src/core/lib/client_config/resolvers/zookeeper_resolver.c)22
-rw-r--r--src/core/lib/client_config/resolver_registry.c22
-rw-r--r--src/core/lib/client_config/resolver_registry.h4
-rw-r--r--src/core/lib/client_config/resolvers/dns_resolver.h42
-rw-r--r--src/core/lib/client_config/resolvers/sockaddr_resolver.h50
-rw-r--r--src/core/lib/client_config/resolvers/zookeeper_resolver.h42
-rw-r--r--src/core/lib/surface/init.c8
-rw-r--r--src/core/plugin_registry/grpc_plugin_registry.c8
-rw-r--r--src/core/plugin_registry/grpc_unsecure_plugin_registry.c8
-rw-r--r--src/python/grpcio/grpc_core_dependencies.py4
-rw-r--r--test/core/client_config/resolvers/dns_resolver_connectivity_test.c5
-rw-r--r--test/core/client_config/resolvers/dns_resolver_test.c8
-rw-r--r--test/core/client_config/resolvers/sockaddr_resolver_test.c10
-rw-r--r--tools/doxygen/Doxyfile.core.internal6
-rw-r--r--tools/run_tests/sources_and_headers.json22
-rw-r--r--vsprojects/vcxproj/grpc/grpc.vcxproj10
-rw-r--r--vsprojects/vcxproj/grpc/grpc.vcxproj.filters33
-rw-r--r--vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj10
-rw-r--r--vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj.filters33
33 files changed, 182 insertions, 299 deletions
diff --git a/BUILD b/BUILD
index 048b1e6d3d..fbe69f3a6d 100644
--- a/BUILD
+++ b/BUILD
@@ -207,8 +207,6 @@ cc_library(
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
@@ -305,6 +303,8 @@ cc_library(
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/client/secure/secure_channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
@@ -349,8 +349,6 @@ cc_library(
"src/core/lib/client_config/resolver.c",
"src/core/lib/client_config/resolver_factory.c",
"src/core/lib/client_config/resolver_registry.c",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel_factory.c",
"src/core/lib/client_config/subchannel_index.c",
@@ -572,8 +570,6 @@ cc_library(
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
@@ -656,6 +652,8 @@ cc_library(
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
"src/core/ext/transport/chttp2/transport/alpn.c",
@@ -698,8 +696,6 @@ cc_library(
"src/core/lib/client_config/resolver.c",
"src/core/lib/client_config/resolver_factory.c",
"src/core/lib/client_config/resolver_registry.c",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel_factory.c",
"src/core/lib/client_config/subchannel_index.c",
@@ -815,8 +811,7 @@ cc_library(
cc_library(
name = "grpc_zookeeper",
srcs = [
- "src/core/lib/client_config/resolvers/zookeeper_resolver.h",
- "src/core/lib/client_config/resolvers/zookeeper_resolver.c",
+ "src/core/ext/resolver/zookeeper/zookeeper_resolver.c",
],
hdrs = [
"include/grpc/grpc_zookeeper.h",
@@ -1362,6 +1357,8 @@ objc_library(
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/client/secure/secure_channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
@@ -1406,8 +1403,6 @@ objc_library(
"src/core/lib/client_config/resolver.c",
"src/core/lib/client_config/resolver_factory.c",
"src/core/lib/client_config/resolver_registry.c",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel_factory.c",
"src/core/lib/client_config/subchannel_index.c",
@@ -1571,8 +1566,6 @@ objc_library(
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
diff --git a/Makefile b/Makefile
index a2cecb9133..4bb7dc8a16 100644
--- a/Makefile
+++ b/Makefile
@@ -2451,6 +2451,8 @@ LIBGRPC_SRC = \
src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c \
src/core/ext/lb_policy/pick_first/pick_first.c \
src/core/ext/lb_policy/round_robin/round_robin.c \
+ src/core/ext/resolver/dns/native/dns_resolver.c \
+ src/core/ext/resolver/sockaddr/sockaddr_resolver.c \
src/core/ext/transport/chttp2/client/insecure/channel_create.c \
src/core/ext/transport/chttp2/client/secure/secure_channel_create.c \
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c \
@@ -2495,8 +2497,6 @@ LIBGRPC_SRC = \
src/core/lib/client_config/resolver.c \
src/core/lib/client_config/resolver_factory.c \
src/core/lib/client_config/resolver_registry.c \
- src/core/lib/client_config/resolvers/dns_resolver.c \
- src/core/lib/client_config/resolvers/sockaddr_resolver.c \
src/core/lib/client_config/subchannel.c \
src/core/lib/client_config/subchannel_factory.c \
src/core/lib/client_config/subchannel_index.c \
@@ -2810,6 +2810,8 @@ LIBGRPC_UNSECURE_SRC = \
src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c \
src/core/ext/lb_policy/pick_first/pick_first.c \
src/core/ext/lb_policy/round_robin/round_robin.c \
+ src/core/ext/resolver/dns/native/dns_resolver.c \
+ src/core/ext/resolver/sockaddr/sockaddr_resolver.c \
src/core/ext/transport/chttp2/client/insecure/channel_create.c \
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c \
src/core/ext/transport/chttp2/transport/alpn.c \
@@ -2852,8 +2854,6 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/client_config/resolver.c \
src/core/lib/client_config/resolver_factory.c \
src/core/lib/client_config/resolver_registry.c \
- src/core/lib/client_config/resolvers/dns_resolver.c \
- src/core/lib/client_config/resolvers/sockaddr_resolver.c \
src/core/lib/client_config/subchannel.c \
src/core/lib/client_config/subchannel_factory.c \
src/core/lib/client_config/subchannel_index.c \
@@ -2992,7 +2992,7 @@ endif
LIBGRPC_ZOOKEEPER_SRC = \
- src/core/lib/client_config/resolvers/zookeeper_resolver.c \
+ src/core/ext/resolver/zookeeper/zookeeper_resolver.c \
PUBLIC_HEADERS_C += \
include/grpc/grpc_zookeeper.h \
diff --git a/binding.gyp b/binding.gyp
index 95cb640d90..8b987fefa8 100644
--- a/binding.gyp
+++ b/binding.gyp
@@ -571,6 +571,8 @@
'src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c',
'src/core/ext/lb_policy/pick_first/pick_first.c',
'src/core/ext/lb_policy/round_robin/round_robin.c',
+ 'src/core/ext/resolver/dns/native/dns_resolver.c',
+ 'src/core/ext/resolver/sockaddr/sockaddr_resolver.c',
'src/core/ext/transport/chttp2/client/insecure/channel_create.c',
'src/core/ext/transport/chttp2/client/secure/secure_channel_create.c',
'src/core/ext/transport/chttp2/server/insecure/server_chttp2.c',
@@ -615,8 +617,6 @@
'src/core/lib/client_config/resolver.c',
'src/core/lib/client_config/resolver_factory.c',
'src/core/lib/client_config/resolver_registry.c',
- 'src/core/lib/client_config/resolvers/dns_resolver.c',
- 'src/core/lib/client_config/resolvers/sockaddr_resolver.c',
'src/core/lib/client_config/subchannel.c',
'src/core/lib/client_config/subchannel_factory.c',
'src/core/lib/client_config/subchannel_index.c',
diff --git a/build.yaml b/build.yaml
index 5966283ce6..0a71cf715d 100644
--- a/build.yaml
+++ b/build.yaml
@@ -273,8 +273,6 @@ filegroups:
- src/core/lib/client_config/resolver.h
- src/core/lib/client_config/resolver_factory.h
- src/core/lib/client_config/resolver_registry.h
- - src/core/lib/client_config/resolvers/dns_resolver.h
- - src/core/lib/client_config/resolvers/sockaddr_resolver.h
- src/core/lib/client_config/subchannel.h
- src/core/lib/client_config/subchannel_factory.h
- src/core/lib/client_config/subchannel_index.h
@@ -364,8 +362,6 @@ filegroups:
- src/core/lib/client_config/resolver.c
- src/core/lib/client_config/resolver_factory.c
- src/core/lib/client_config/resolver_registry.c
- - src/core/lib/client_config/resolvers/dns_resolver.c
- - src/core/lib/client_config/resolvers/sockaddr_resolver.c
- src/core/lib/client_config/subchannel.c
- src/core/lib/client_config/subchannel_factory.c
- src/core/lib/client_config/subchannel_index.c
@@ -475,6 +471,18 @@ filegroups:
plugin: grpc_lb_policy_round_robin
uses:
- grpc_base
+- name: grpc_resolver_dns_native
+ src:
+ - src/core/ext/resolver/dns/native/dns_resolver.c
+ plugin: grpc_resolver_dns_native
+ uses:
+ - grpc_base
+- name: grpc_resolver_sockaddr
+ src:
+ - src/core/ext/resolver/sockaddr/sockaddr_resolver.c
+ plugin: grpc_resolver_sockaddr
+ uses:
+ - grpc_base
- name: grpc_secure
headers:
- src/core/lib/security/auth_filters.h
@@ -651,6 +659,8 @@ libs:
- grpc_lb_policy_grpclb
- grpc_lb_policy_pick_first
- grpc_lb_policy_round_robin
+ - grpc_resolver_dns_native
+ - grpc_resolver_sockaddr
- grpc_secure
- grpc_codegen
- census
@@ -735,6 +745,8 @@ libs:
- grpc_base
- grpc_transport_chttp2_server_insecure
- grpc_transport_chttp2_client_insecure
+ - grpc_resolver_dns_native
+ - grpc_resolver_sockaddr
- grpc_lb_policy_grpclb
- grpc_lb_policy_pick_first
- grpc_lb_policy_round_robin
@@ -749,10 +761,8 @@ libs:
language: c
public_headers:
- include/grpc/grpc_zookeeper.h
- headers:
- - src/core/lib/client_config/resolvers/zookeeper_resolver.h
src:
- - src/core/lib/client_config/resolvers/zookeeper_resolver.c
+ - src/core/ext/resolver/zookeeper/zookeeper_resolver.c
deps:
- gpr
- grpc
diff --git a/config.m4 b/config.m4
index f70234dc42..9abd8cebb8 100644
--- a/config.m4
+++ b/config.m4
@@ -93,6 +93,8 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c \
src/core/ext/lb_policy/pick_first/pick_first.c \
src/core/ext/lb_policy/round_robin/round_robin.c \
+ src/core/ext/resolver/dns/native/dns_resolver.c \
+ src/core/ext/resolver/sockaddr/sockaddr_resolver.c \
src/core/ext/transport/chttp2/client/insecure/channel_create.c \
src/core/ext/transport/chttp2/client/secure/secure_channel_create.c \
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c \
@@ -137,8 +139,6 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/client_config/resolver.c \
src/core/lib/client_config/resolver_factory.c \
src/core/lib/client_config/resolver_registry.c \
- src/core/lib/client_config/resolvers/dns_resolver.c \
- src/core/lib/client_config/resolvers/sockaddr_resolver.c \
src/core/lib/client_config/subchannel.c \
src/core/lib/client_config/subchannel_factory.c \
src/core/lib/client_config/subchannel_index.c \
@@ -549,6 +549,8 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/lb_policy/pick_first)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/lb_policy/round_robin)
+ PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/resolver/dns/native)
+ PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/resolver/sockaddr)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/client/insecure)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/client/secure)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/server/insecure)
@@ -556,7 +558,6 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/transport)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/channel)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/client_config)
- PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/client_config/resolvers)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/compression)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/debug)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/http)
diff --git a/gRPC.podspec b/gRPC.podspec
index a5479c0651..7e0e44f3dd 100644
--- a/gRPC.podspec
+++ b/gRPC.podspec
@@ -209,8 +209,6 @@ Pod::Spec.new do |s|
'src/core/lib/client_config/resolver.h',
'src/core/lib/client_config/resolver_factory.h',
'src/core/lib/client_config/resolver_registry.h',
- 'src/core/lib/client_config/resolvers/dns_resolver.h',
- 'src/core/lib/client_config/resolvers/sockaddr_resolver.h',
'src/core/lib/client_config/subchannel.h',
'src/core/lib/client_config/subchannel_factory.h',
'src/core/lib/client_config/subchannel_index.h',
@@ -324,6 +322,8 @@ Pod::Spec.new do |s|
'src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c',
'src/core/ext/lb_policy/pick_first/pick_first.c',
'src/core/ext/lb_policy/round_robin/round_robin.c',
+ 'src/core/ext/resolver/dns/native/dns_resolver.c',
+ 'src/core/ext/resolver/sockaddr/sockaddr_resolver.c',
'src/core/ext/transport/chttp2/client/insecure/channel_create.c',
'src/core/ext/transport/chttp2/client/secure/secure_channel_create.c',
'src/core/ext/transport/chttp2/server/insecure/server_chttp2.c',
@@ -368,8 +368,6 @@ Pod::Spec.new do |s|
'src/core/lib/client_config/resolver.c',
'src/core/lib/client_config/resolver_factory.c',
'src/core/lib/client_config/resolver_registry.c',
- 'src/core/lib/client_config/resolvers/dns_resolver.c',
- 'src/core/lib/client_config/resolvers/sockaddr_resolver.c',
'src/core/lib/client_config/subchannel.c',
'src/core/lib/client_config/subchannel_factory.c',
'src/core/lib/client_config/subchannel_index.c',
@@ -534,8 +532,6 @@ Pod::Spec.new do |s|
'src/core/lib/client_config/resolver.h',
'src/core/lib/client_config/resolver_factory.h',
'src/core/lib/client_config/resolver_registry.h',
- 'src/core/lib/client_config/resolvers/dns_resolver.h',
- 'src/core/lib/client_config/resolvers/sockaddr_resolver.h',
'src/core/lib/client_config/subchannel.h',
'src/core/lib/client_config/subchannel_factory.h',
'src/core/lib/client_config/subchannel_index.h',
diff --git a/grpc.gemspec b/grpc.gemspec
index 94ad95ec47..d1e7ad2b31 100755
--- a/grpc.gemspec
+++ b/grpc.gemspec
@@ -205,8 +205,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/client_config/resolver.h )
s.files += %w( src/core/lib/client_config/resolver_factory.h )
s.files += %w( src/core/lib/client_config/resolver_registry.h )
- s.files += %w( src/core/lib/client_config/resolvers/dns_resolver.h )
- s.files += %w( src/core/lib/client_config/resolvers/sockaddr_resolver.h )
s.files += %w( src/core/lib/client_config/subchannel.h )
s.files += %w( src/core/lib/client_config/subchannel_factory.h )
s.files += %w( src/core/lib/client_config/subchannel_index.h )
@@ -307,6 +305,8 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c )
s.files += %w( src/core/ext/lb_policy/pick_first/pick_first.c )
s.files += %w( src/core/ext/lb_policy/round_robin/round_robin.c )
+ s.files += %w( src/core/ext/resolver/dns/native/dns_resolver.c )
+ s.files += %w( src/core/ext/resolver/sockaddr/sockaddr_resolver.c )
s.files += %w( src/core/ext/transport/chttp2/client/insecure/channel_create.c )
s.files += %w( src/core/ext/transport/chttp2/client/secure/secure_channel_create.c )
s.files += %w( src/core/ext/transport/chttp2/server/insecure/server_chttp2.c )
@@ -351,8 +351,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/client_config/resolver.c )
s.files += %w( src/core/lib/client_config/resolver_factory.c )
s.files += %w( src/core/lib/client_config/resolver_registry.c )
- s.files += %w( src/core/lib/client_config/resolvers/dns_resolver.c )
- s.files += %w( src/core/lib/client_config/resolvers/sockaddr_resolver.c )
s.files += %w( src/core/lib/client_config/subchannel.c )
s.files += %w( src/core/lib/client_config/subchannel_factory.c )
s.files += %w( src/core/lib/client_config/subchannel_index.c )
diff --git a/package.json b/package.json
index 6650b45562..24a5aa0cd5 100644
--- a/package.json
+++ b/package.json
@@ -148,8 +148,6 @@
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
@@ -250,6 +248,8 @@
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/client/secure/secure_channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
@@ -294,8 +294,6 @@
"src/core/lib/client_config/resolver.c",
"src/core/lib/client_config/resolver_factory.c",
"src/core/lib/client_config/resolver_registry.c",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel_factory.c",
"src/core/lib/client_config/subchannel_index.c",
diff --git a/package.xml b/package.xml
index bdb98d39db..0bb34d9487 100644
--- a/package.xml
+++ b/package.xml
@@ -209,8 +209,6 @@
<file baseinstalldir="/" name="src/core/lib/client_config/resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/resolver_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/resolver_registry.h" role="src" />
- <file baseinstalldir="/" name="src/core/lib/client_config/resolvers/dns_resolver.h" role="src" />
- <file baseinstalldir="/" name="src/core/lib/client_config/resolvers/sockaddr_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel_index.h" role="src" />
@@ -311,6 +309,8 @@
<file baseinstalldir="/" name="src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/lb_policy/pick_first/pick_first.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/lb_policy/round_robin/round_robin.c" role="src" />
+ <file baseinstalldir="/" name="src/core/ext/resolver/dns/native/dns_resolver.c" role="src" />
+ <file baseinstalldir="/" name="src/core/ext/resolver/sockaddr/sockaddr_resolver.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/insecure/channel_create.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/secure/secure_channel_create.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/server/insecure/server_chttp2.c" role="src" />
@@ -355,8 +355,6 @@
<file baseinstalldir="/" name="src/core/lib/client_config/resolver.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/resolver_factory.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/resolver_registry.c" role="src" />
- <file baseinstalldir="/" name="src/core/lib/client_config/resolvers/dns_resolver.c" role="src" />
- <file baseinstalldir="/" name="src/core/lib/client_config/resolvers/sockaddr_resolver.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel_factory.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/client_config/subchannel_index.c" role="src" />
diff --git a/src/core/ext/resolver/dns/native/README.md b/src/core/ext/resolver/dns/native/README.md
new file mode 100644
index 0000000000..695de47b9f
--- /dev/null
+++ b/src/core/ext/resolver/dns/native/README.md
@@ -0,0 +1,2 @@
+dns: scheme name resolution, using getaddrbyname
+(or other OS specific implementation)
diff --git a/src/core/lib/client_config/resolvers/dns_resolver.c b/src/core/ext/resolver/dns/native/dns_resolver.c
index ad586aa7e4..70d8a3fe2d 100644
--- a/src/core/lib/client_config/resolvers/dns_resolver.c
+++ b/src/core/ext/resolver/dns/native/dns_resolver.c
@@ -31,8 +31,6 @@
*
*/
-#include "src/core/lib/client_config/resolvers/dns_resolver.h"
-
#include <string.h>
#include <grpc/support/alloc.h>
@@ -40,6 +38,7 @@
#include <grpc/support/string_util.h>
#include "src/core/lib/client_config/lb_policy_registry.h"
+#include "src/core/lib/client_config/resolver_registry.h"
#include "src/core/lib/iomgr/resolve_address.h"
#include "src/core/lib/iomgr/timer.h"
#include "src/core/lib/support/backoff.h"
@@ -277,8 +276,8 @@ static grpc_resolver *dns_factory_create_resolver(
return dns_create(args, "https", "pick_first");
}
-char *dns_factory_get_default_host_name(grpc_resolver_factory *factory,
- grpc_uri *uri) {
+static char *dns_factory_get_default_host_name(grpc_resolver_factory *factory,
+ grpc_uri *uri) {
const char *path = uri->path;
if (path[0] == '/') ++path;
return gpr_strdup(path);
@@ -289,6 +288,12 @@ static const grpc_resolver_factory_vtable dns_factory_vtable = {
dns_factory_get_default_host_name, "dns"};
static grpc_resolver_factory dns_resolver_factory = {&dns_factory_vtable};
-grpc_resolver_factory *grpc_dns_resolver_factory_create() {
+static grpc_resolver_factory *dns_resolver_factory_create() {
return &dns_resolver_factory;
}
+
+void grpc_resolver_dns_native_init(void) {
+ grpc_register_resolver_type(dns_resolver_factory_create());
+}
+
+void grpc_resolver_dns_native_shutdown(void) {}
diff --git a/src/core/ext/resolver/sockaddr/README.md b/src/core/ext/resolver/sockaddr/README.md
new file mode 100644
index 0000000000..e307ba88f5
--- /dev/null
+++ b/src/core/ext/resolver/sockaddr/README.md
@@ -0,0 +1 @@
+Support for resolving ipv4:, ipv6:, unix: schemes
diff --git a/src/core/lib/client_config/resolvers/sockaddr_resolver.c b/src/core/ext/resolver/sockaddr/sockaddr_resolver.c
index 0e2656d033..69595ca3db 100644
--- a/src/core/lib/client_config/resolvers/sockaddr_resolver.c
+++ b/src/core/ext/resolver/sockaddr/sockaddr_resolver.c
@@ -33,8 +33,6 @@
#include <grpc/support/port_platform.h>
-#include "src/core/lib/client_config/resolvers/sockaddr_resolver.h"
-
#include <stdio.h>
#include <string.h>
@@ -43,6 +41,7 @@
#include <grpc/support/string_util.h>
#include "src/core/lib/client_config/lb_policy_registry.h"
+#include "src/core/lib/client_config/resolver_registry.h"
#include "src/core/lib/iomgr/resolve_address.h"
#include "src/core/lib/iomgr/unix_sockets_posix.h"
#include "src/core/lib/support/string.h"
@@ -343,12 +342,20 @@ static void sockaddr_factory_unref(grpc_resolver_factory *factory) {}
name##_factory_create_resolver, prefix##name##_get_default_authority, \
#name}; \
static grpc_resolver_factory name##_resolver_factory = { \
- &name##_factory_vtable}; \
- grpc_resolver_factory *grpc_##name##_resolver_factory_create() { \
- return &name##_resolver_factory; \
- }
+ &name##_factory_vtable}
#ifdef GPR_HAVE_UNIX_SOCKET
-DECL_FACTORY(unix, grpc_)
+DECL_FACTORY(unix, grpc_);
#endif
-DECL_FACTORY(ipv4, ) DECL_FACTORY(ipv6, )
+DECL_FACTORY(ipv4, );
+DECL_FACTORY(ipv6, );
+
+void grpc_resolver_sockaddr_init(void) {
+ grpc_register_resolver_type(&ipv4_resolver_factory);
+ grpc_register_resolver_type(&ipv6_resolver_factory);
+#ifdef GPR_HAVE_UNIX_SOCKET
+ grpc_register_resolver_type(&unix_resolver_factory);
+#endif
+}
+
+void grpc_resolver_sockaddr_shutdown(void) {}
diff --git a/src/core/ext/resolver/zookeeper/README.md b/src/core/ext/resolver/zookeeper/README.md
new file mode 100644
index 0000000000..ce6f39683b
--- /dev/null
+++ b/src/core/ext/resolver/zookeeper/README.md
@@ -0,0 +1 @@
+Zookeeper based name resolver: WIP
diff --git a/src/core/lib/client_config/resolvers/zookeeper_resolver.c b/src/core/ext/resolver/zookeeper/zookeeper_resolver.c
index a66c9925f0..5acb0940c6 100644
--- a/src/core/lib/client_config/resolvers/zookeeper_resolver.c
+++ b/src/core/ext/resolver/zookeeper/zookeeper_resolver.c
@@ -31,8 +31,6 @@
*
*/
-#include "src/core/lib/client_config/resolvers/zookeeper_resolver.h"
-
#include <string.h>
#include <grpc/support/alloc.h>
@@ -474,15 +472,6 @@ static grpc_resolver *zookeeper_create(grpc_resolver_args *args,
return &r->base;
}
-static void zookeeper_plugin_init() {
- grpc_register_resolver_type(grpc_zookeeper_resolver_factory_create());
-}
-
-void grpc_zookeeper_register() {
- GRPC_API_TRACE("grpc_zookeeper_register(void)", 0, ());
- grpc_register_plugin(zookeeper_plugin_init, NULL);
-}
-
/*
* FACTORY
*/
@@ -509,6 +498,15 @@ static const grpc_resolver_factory_vtable zookeeper_factory_vtable = {
static grpc_resolver_factory zookeeper_resolver_factory = {
&zookeeper_factory_vtable};
-grpc_resolver_factory *grpc_zookeeper_resolver_factory_create() {
+static grpc_resolver_factory *zookeeper_resolver_factory_create() {
return &zookeeper_resolver_factory;
}
+
+static void zookeeper_plugin_init() {
+ grpc_register_resolver_type(zookeeper_resolver_factory_create());
+}
+
+void grpc_zookeeper_register() {
+ GRPC_API_TRACE("grpc_zookeeper_register(void)", 0, ());
+ grpc_register_plugin(zookeeper_plugin_init, NULL);
+}
diff --git a/src/core/lib/client_config/resolver_registry.c b/src/core/lib/client_config/resolver_registry.c
index e8432d165a..5f3db273b5 100644
--- a/src/core/lib/client_config/resolver_registry.c
+++ b/src/core/lib/client_config/resolver_registry.c
@@ -70,14 +70,11 @@ void grpc_register_resolver_type(grpc_resolver_factory *factory) {
g_all_of_the_resolvers[g_number_of_resolvers++] = factory;
}
-static grpc_resolver_factory *lookup_factory(grpc_uri *uri) {
+static grpc_resolver_factory *lookup_factory(const char *name) {
int i;
- /* handling NULL uri's here simplifies grpc_resolver_create */
- if (!uri) return NULL;
-
for (i = 0; i < g_number_of_resolvers; i++) {
- if (0 == strcmp(uri->scheme, g_all_of_the_resolvers[i]->vtable->scheme)) {
+ if (0 == strcmp(name, g_all_of_the_resolvers[i]->vtable->scheme)) {
return g_all_of_the_resolvers[i];
}
}
@@ -85,6 +82,17 @@ static grpc_resolver_factory *lookup_factory(grpc_uri *uri) {
return NULL;
}
+grpc_resolver_factory *grpc_resolver_factory_lookup(const char *name) {
+ grpc_resolver_factory *f = lookup_factory(name);
+ if (f) grpc_resolver_factory_ref(f);
+ return f;
+}
+
+static grpc_resolver_factory *lookup_factory_by_uri(grpc_uri *uri) {
+ if (!uri) return NULL;
+ return lookup_factory(uri->scheme);
+}
+
static grpc_resolver_factory *resolve_factory(const char *target,
grpc_uri **uri) {
char *tmp;
@@ -92,13 +100,13 @@ static grpc_resolver_factory *resolve_factory(const char *target,
GPR_ASSERT(uri != NULL);
*uri = grpc_uri_parse(target, 1);
- factory = lookup_factory(*uri);
+ factory = lookup_factory_by_uri(*uri);
if (factory == NULL) {
if (g_default_resolver_prefix != NULL) {
grpc_uri_destroy(*uri);
gpr_asprintf(&tmp, "%s%s", g_default_resolver_prefix, target);
*uri = grpc_uri_parse(tmp, 1);
- factory = lookup_factory(*uri);
+ factory = lookup_factory_by_uri(*uri);
if (factory == NULL) {
grpc_uri_destroy(grpc_uri_parse(target, 0));
grpc_uri_destroy(grpc_uri_parse(tmp, 0));
diff --git a/src/core/lib/client_config/resolver_registry.h b/src/core/lib/client_config/resolver_registry.h
index 330cb7f544..36c4f2fe03 100644
--- a/src/core/lib/client_config/resolver_registry.h
+++ b/src/core/lib/client_config/resolver_registry.h
@@ -58,6 +58,10 @@ void grpc_register_resolver_type(grpc_resolver_factory *factory);
grpc_resolver *grpc_resolver_create(
const char *target, grpc_subchannel_factory *subchannel_factory);
+/** Find a resolver factory given a name and return an (owned-by-the-caller)
+ * reference to it */
+grpc_resolver_factory *grpc_resolver_factory_lookup(const char *name);
+
/** Given a target, return a (freshly allocated with gpr_malloc) string
representing the default authority to pass from a client. */
char *grpc_get_default_authority(const char *target);
diff --git a/src/core/lib/client_config/resolvers/dns_resolver.h b/src/core/lib/client_config/resolvers/dns_resolver.h
deleted file mode 100644
index de41961ea9..0000000000
--- a/src/core/lib/client_config/resolvers/dns_resolver.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- *
- * Copyright 2015, Google Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#ifndef GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H
-#define GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H
-
-#include "src/core/lib/client_config/resolver_factory.h"
-
-/** Create a dns resolver factory */
-grpc_resolver_factory *grpc_dns_resolver_factory_create(void);
-
-#endif /* GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H */
diff --git a/src/core/lib/client_config/resolvers/sockaddr_resolver.h b/src/core/lib/client_config/resolvers/sockaddr_resolver.h
deleted file mode 100644
index a8b208176c..0000000000
--- a/src/core/lib/client_config/resolvers/sockaddr_resolver.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- *
- * Copyright 2015, Google Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#ifndef GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_SOCKADDR_RESOLVER_H
-#define GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_SOCKADDR_RESOLVER_H
-
-#include <grpc/support/port_platform.h>
-
-#include "src/core/lib/client_config/resolver_factory.h"
-
-grpc_resolver_factory *grpc_ipv4_resolver_factory_create(void);
-
-grpc_resolver_factory *grpc_ipv6_resolver_factory_create(void);
-
-#ifdef GPR_POSIX_SOCKET
-/** Create a unix resolver factory */
-grpc_resolver_factory *grpc_unix_resolver_factory_create(void);
-#endif
-
-#endif /* GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_SOCKADDR_RESOLVER_H */
diff --git a/src/core/lib/client_config/resolvers/zookeeper_resolver.h b/src/core/lib/client_config/resolvers/zookeeper_resolver.h
deleted file mode 100644
index a067bd0bdb..0000000000
--- a/src/core/lib/client_config/resolvers/zookeeper_resolver.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- *
- * Copyright 2015, Google Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#ifndef GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_ZOOKEEPER_RESOLVER_H
-#define GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_ZOOKEEPER_RESOLVER_H
-
-#include "src/core/lib/client_config/resolver_factory.h"
-
-/** Create a zookeeper resolver factory */
-grpc_resolver_factory *grpc_zookeeper_resolver_factory_create(void);
-
-#endif /* GRPC_CORE_LIB_CLIENT_CONFIG_RESOLVERS_ZOOKEEPER_RESOLVER_H */
diff --git a/src/core/lib/surface/init.c b/src/core/lib/surface/init.c
index 5ef9681180..aca4ce9d07 100644
--- a/src/core/lib/surface/init.c
+++ b/src/core/lib/surface/init.c
@@ -48,8 +48,6 @@
#include "src/core/lib/channel/http_server_filter.h"
#include "src/core/lib/client_config/lb_policy_registry.h"
#include "src/core/lib/client_config/resolver_registry.h"
-#include "src/core/lib/client_config/resolvers/dns_resolver.h"
-#include "src/core/lib/client_config/resolvers/sockaddr_resolver.h"
#include "src/core/lib/client_config/subchannel.h"
#include "src/core/lib/client_config/subchannel_index.h"
#include "src/core/lib/debug/trace.h"
@@ -165,12 +163,6 @@ void grpc_init(void) {
grpc_channel_init_init();
grpc_lb_policy_registry_init();
grpc_resolver_registry_init(GRPC_DEFAULT_NAME_PREFIX);
- grpc_register_resolver_type(grpc_dns_resolver_factory_create());
- grpc_register_resolver_type(grpc_ipv4_resolver_factory_create());
- grpc_register_resolver_type(grpc_ipv6_resolver_factory_create());
-#ifdef GPR_HAVE_UNIX_SOCKET
- grpc_register_resolver_type(grpc_unix_resolver_factory_create());
-#endif
grpc_register_tracer("api", &grpc_api_trace);
grpc_register_tracer("channel", &grpc_trace_channel);
grpc_register_tracer("http", &grpc_http_trace);
diff --git a/src/core/plugin_registry/grpc_plugin_registry.c b/src/core/plugin_registry/grpc_plugin_registry.c
index 422d3c92b8..79df85516e 100644
--- a/src/core/plugin_registry/grpc_plugin_registry.c
+++ b/src/core/plugin_registry/grpc_plugin_registry.c
@@ -37,6 +37,10 @@ extern void grpc_lb_policy_pick_first_init(void);
extern void grpc_lb_policy_pick_first_shutdown(void);
extern void grpc_lb_policy_round_robin_init(void);
extern void grpc_lb_policy_round_robin_shutdown(void);
+extern void grpc_resolver_dns_native_init(void);
+extern void grpc_resolver_dns_native_shutdown(void);
+extern void grpc_resolver_sockaddr_init(void);
+extern void grpc_resolver_sockaddr_shutdown(void);
extern void census_grpc_plugin_init(void);
extern void census_grpc_plugin_shutdown(void);
@@ -45,6 +49,10 @@ void grpc_register_built_in_plugins(void) {
grpc_lb_policy_pick_first_shutdown);
grpc_register_plugin(grpc_lb_policy_round_robin_init,
grpc_lb_policy_round_robin_shutdown);
+ grpc_register_plugin(grpc_resolver_dns_native_init,
+ grpc_resolver_dns_native_shutdown);
+ grpc_register_plugin(grpc_resolver_sockaddr_init,
+ grpc_resolver_sockaddr_shutdown);
grpc_register_plugin(census_grpc_plugin_init,
census_grpc_plugin_shutdown);
}
diff --git a/src/core/plugin_registry/grpc_unsecure_plugin_registry.c b/src/core/plugin_registry/grpc_unsecure_plugin_registry.c
index 422d3c92b8..b3786c927d 100644
--- a/src/core/plugin_registry/grpc_unsecure_plugin_registry.c
+++ b/src/core/plugin_registry/grpc_unsecure_plugin_registry.c
@@ -33,6 +33,10 @@
#include <grpc/grpc.h>
+extern void grpc_resolver_dns_native_init(void);
+extern void grpc_resolver_dns_native_shutdown(void);
+extern void grpc_resolver_sockaddr_init(void);
+extern void grpc_resolver_sockaddr_shutdown(void);
extern void grpc_lb_policy_pick_first_init(void);
extern void grpc_lb_policy_pick_first_shutdown(void);
extern void grpc_lb_policy_round_robin_init(void);
@@ -41,6 +45,10 @@ extern void census_grpc_plugin_init(void);
extern void census_grpc_plugin_shutdown(void);
void grpc_register_built_in_plugins(void) {
+ grpc_register_plugin(grpc_resolver_dns_native_init,
+ grpc_resolver_dns_native_shutdown);
+ grpc_register_plugin(grpc_resolver_sockaddr_init,
+ grpc_resolver_sockaddr_shutdown);
grpc_register_plugin(grpc_lb_policy_pick_first_init,
grpc_lb_policy_pick_first_shutdown);
grpc_register_plugin(grpc_lb_policy_round_robin_init,
diff --git a/src/python/grpcio/grpc_core_dependencies.py b/src/python/grpcio/grpc_core_dependencies.py
index 09f230eecc..875ff49d30 100644
--- a/src/python/grpcio/grpc_core_dependencies.py
+++ b/src/python/grpcio/grpc_core_dependencies.py
@@ -87,6 +87,8 @@ CORE_SOURCE_FILES = [
'src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c',
'src/core/ext/lb_policy/pick_first/pick_first.c',
'src/core/ext/lb_policy/round_robin/round_robin.c',
+ 'src/core/ext/resolver/dns/native/dns_resolver.c',
+ 'src/core/ext/resolver/sockaddr/sockaddr_resolver.c',
'src/core/ext/transport/chttp2/client/insecure/channel_create.c',
'src/core/ext/transport/chttp2/client/secure/secure_channel_create.c',
'src/core/ext/transport/chttp2/server/insecure/server_chttp2.c',
@@ -131,8 +133,6 @@ CORE_SOURCE_FILES = [
'src/core/lib/client_config/resolver.c',
'src/core/lib/client_config/resolver_factory.c',
'src/core/lib/client_config/resolver_registry.c',
- 'src/core/lib/client_config/resolvers/dns_resolver.c',
- 'src/core/lib/client_config/resolvers/sockaddr_resolver.c',
'src/core/lib/client_config/subchannel.c',
'src/core/lib/client_config/subchannel_factory.c',
'src/core/lib/client_config/subchannel_index.c',
diff --git a/test/core/client_config/resolvers/dns_resolver_connectivity_test.c b/test/core/client_config/resolvers/dns_resolver_connectivity_test.c
index c791ad4e57..b7c3b78fe1 100644
--- a/test/core/client_config/resolvers/dns_resolver_connectivity_test.c
+++ b/test/core/client_config/resolvers/dns_resolver_connectivity_test.c
@@ -31,13 +31,12 @@
*
*/
-#include "src/core/lib/client_config/resolvers/dns_resolver.h"
-
#include <string.h>
#include <grpc/grpc.h>
#include <grpc/support/alloc.h>
+#include "src/core/lib/client_config/resolver_registry.h"
#include "src/core/lib/iomgr/resolve_address.h"
#include "src/core/lib/iomgr/timer.h"
#include "test/core/util/test_config.h"
@@ -79,7 +78,7 @@ static grpc_resolved_addresses *my_resolve_address(const char *name,
}
static grpc_resolver *create_resolver(const char *name) {
- grpc_resolver_factory *factory = grpc_dns_resolver_factory_create();
+ grpc_resolver_factory *factory = grpc_resolver_factory_lookup("dns");
grpc_uri *uri = grpc_uri_parse(name, 0);
GPR_ASSERT(uri);
grpc_resolver_args args;
diff --git a/test/core/client_config/resolvers/dns_resolver_test.c b/test/core/client_config/resolvers/dns_resolver_test.c
index 043b882184..0e8a3b13dd 100644
--- a/test/core/client_config/resolvers/dns_resolver_test.c
+++ b/test/core/client_config/resolvers/dns_resolver_test.c
@@ -31,13 +31,11 @@
*
*/
-#include "src/core/lib/client_config/resolvers/dns_resolver.h"
-
#include <string.h>
#include <grpc/support/log.h>
-#include "src/core/lib/client_config/resolver.h"
+#include "src/core/lib/client_config/resolver_registry.h"
#include "test/core/util/test_config.h"
static void subchannel_factory_ref(grpc_subchannel_factory *scv) {}
@@ -92,8 +90,9 @@ static void test_fails(grpc_resolver_factory *factory, const char *string) {
int main(int argc, char **argv) {
grpc_resolver_factory *dns;
grpc_test_init(argc, argv);
+ grpc_init();
- dns = grpc_dns_resolver_factory_create();
+ dns = grpc_resolver_factory_lookup("dns");
test_succeeds(dns, "dns:10.2.1.1");
test_succeeds(dns, "dns:10.2.1.1:1234");
@@ -101,6 +100,7 @@ int main(int argc, char **argv) {
test_fails(dns, "ipv4://8.8.8.8/8.8.8.8:8888");
grpc_resolver_factory_unref(dns);
+ grpc_shutdown();
return 0;
}
diff --git a/test/core/client_config/resolvers/sockaddr_resolver_test.c b/test/core/client_config/resolvers/sockaddr_resolver_test.c
index 77044fb310..b2c4c63b79 100644
--- a/test/core/client_config/resolvers/sockaddr_resolver_test.c
+++ b/test/core/client_config/resolvers/sockaddr_resolver_test.c
@@ -31,13 +31,11 @@
*
*/
-#include "src/core/lib/client_config/resolvers/sockaddr_resolver.h"
-
#include <string.h>
#include <grpc/support/log.h>
-#include "src/core/lib/client_config/resolver.h"
+#include "src/core/lib/client_config/resolver_registry.h"
#include "test/core/util/test_config.h"
static void subchannel_factory_ref(grpc_subchannel_factory *scv) {}
@@ -92,9 +90,10 @@ static void test_fails(grpc_resolver_factory *factory, const char *string) {
int main(int argc, char **argv) {
grpc_resolver_factory *ipv4, *ipv6;
grpc_test_init(argc, argv);
+ grpc_init();
- ipv4 = grpc_ipv4_resolver_factory_create();
- ipv6 = grpc_ipv6_resolver_factory_create();
+ ipv4 = grpc_resolver_factory_lookup("ipv4");
+ ipv6 = grpc_resolver_factory_lookup("ipv6");
test_fails(ipv4, "ipv4:10.2.1.1");
test_succeeds(ipv4, "ipv4:10.2.1.1:1234");
@@ -112,6 +111,7 @@ int main(int argc, char **argv) {
grpc_resolver_factory_unref(ipv4);
grpc_resolver_factory_unref(ipv6);
+ grpc_shutdown();
return 0;
}
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index a9996c2873..c07048578a 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -821,8 +821,6 @@ src/core/lib/client_config/lb_policy_registry.h \
src/core/lib/client_config/resolver.h \
src/core/lib/client_config/resolver_factory.h \
src/core/lib/client_config/resolver_registry.h \
-src/core/lib/client_config/resolvers/dns_resolver.h \
-src/core/lib/client_config/resolvers/sockaddr_resolver.h \
src/core/lib/client_config/subchannel.h \
src/core/lib/client_config/subchannel_factory.h \
src/core/lib/client_config/subchannel_index.h \
@@ -923,6 +921,8 @@ src/core/ext/lb_policy/grpclb/load_balancer_api.c \
src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.c \
src/core/ext/lb_policy/pick_first/pick_first.c \
src/core/ext/lb_policy/round_robin/round_robin.c \
+src/core/ext/resolver/dns/native/dns_resolver.c \
+src/core/ext/resolver/sockaddr/sockaddr_resolver.c \
src/core/ext/transport/chttp2/client/insecure/channel_create.c \
src/core/ext/transport/chttp2/client/secure/secure_channel_create.c \
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c \
@@ -967,8 +967,6 @@ src/core/lib/client_config/lb_policy_registry.c \
src/core/lib/client_config/resolver.c \
src/core/lib/client_config/resolver_factory.c \
src/core/lib/client_config/resolver_registry.c \
-src/core/lib/client_config/resolvers/dns_resolver.c \
-src/core/lib/client_config/resolvers/sockaddr_resolver.c \
src/core/lib/client_config/subchannel.c \
src/core/lib/client_config/subchannel_factory.c \
src/core/lib/client_config/subchannel_index.c \
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index f6a9519023..bc1e34b744 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -4049,8 +4049,6 @@
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
@@ -4176,6 +4174,8 @@
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.h",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/client/secure/secure_channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
@@ -4260,10 +4260,6 @@
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.c",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.c",
@@ -4667,8 +4663,6 @@
"src/core/lib/client_config/resolver.h",
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.h",
"src/core/lib/client_config/subchannel_index.h",
@@ -4779,6 +4773,8 @@
"src/core/ext/lb_policy/grpclb/proto/grpc/lb/v0/load_balancer.pb.h",
"src/core/ext/lb_policy/pick_first/pick_first.c",
"src/core/ext/lb_policy/round_robin/round_robin.c",
+ "src/core/ext/resolver/dns/native/dns_resolver.c",
+ "src/core/ext/resolver/sockaddr/sockaddr_resolver.c",
"src/core/ext/transport/chttp2/client/insecure/channel_create.c",
"src/core/ext/transport/chttp2/server/insecure/server_chttp2.c",
"src/core/ext/transport/chttp2/transport/alpn.c",
@@ -4861,10 +4857,6 @@
"src/core/lib/client_config/resolver_factory.h",
"src/core/lib/client_config/resolver_registry.c",
"src/core/lib/client_config/resolver_registry.h",
- "src/core/lib/client_config/resolvers/dns_resolver.c",
- "src/core/lib/client_config/resolvers/dns_resolver.h",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.c",
- "src/core/lib/client_config/resolvers/sockaddr_resolver.h",
"src/core/lib/client_config/subchannel.c",
"src/core/lib/client_config/subchannel.h",
"src/core/lib/client_config/subchannel_factory.c",
@@ -5026,15 +5018,13 @@
"grpc"
],
"headers": [
- "include/grpc/grpc_zookeeper.h",
- "src/core/lib/client_config/resolvers/zookeeper_resolver.h"
+ "include/grpc/grpc_zookeeper.h"
],
"language": "c",
"name": "grpc_zookeeper",
"src": [
"include/grpc/grpc_zookeeper.h",
- "src/core/lib/client_config/resolvers/zookeeper_resolver.c",
- "src/core/lib/client_config/resolvers/zookeeper_resolver.h"
+ "src/core/ext/resolver/zookeeper/zookeeper_resolver.c"
],
"third_party": false,
"type": "lib"
diff --git a/vsprojects/vcxproj/grpc/grpc.vcxproj b/vsprojects/vcxproj/grpc/grpc.vcxproj
index 09d3f1fd58..f54c8c643d 100644
--- a/vsprojects/vcxproj/grpc/grpc.vcxproj
+++ b/vsprojects/vcxproj/grpc/grpc.vcxproj
@@ -330,8 +330,6 @@
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_factory.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.h" />
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.h" />
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_factory.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_index.h" />
@@ -447,6 +445,10 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\lb_policy\round_robin\round_robin.c">
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\dns\native\dns_resolver.c">
+ </ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\sockaddr\sockaddr_resolver.c">
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\client\insecure\channel_create.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\client\secure\secure_channel_create.c">
@@ -535,10 +537,6 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.c">
</ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.c">
- </ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.c">
- </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_factory.c">
diff --git a/vsprojects/vcxproj/grpc/grpc.vcxproj.filters b/vsprojects/vcxproj/grpc/grpc.vcxproj.filters
index a8ec347a1c..c00b928571 100644
--- a/vsprojects/vcxproj/grpc/grpc.vcxproj.filters
+++ b/vsprojects/vcxproj/grpc/grpc.vcxproj.filters
@@ -40,6 +40,12 @@
<ClCompile Include="$(SolutionDir)\..\src\core\ext\lb_policy\round_robin\round_robin.c">
<Filter>src\core\ext\lb_policy\round_robin</Filter>
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\dns\native\dns_resolver.c">
+ <Filter>src\core\ext\resolver\dns\native</Filter>
+ </ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\sockaddr\sockaddr_resolver.c">
+ <Filter>src\core\ext\resolver\sockaddr</Filter>
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\client\insecure\channel_create.c">
<Filter>src\core\ext\transport\chttp2\client\insecure</Filter>
</ClCompile>
@@ -172,12 +178,6 @@
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.c">
<Filter>src\core\lib\client_config</Filter>
</ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.c">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.c">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.c">
<Filter>src\core\lib\client_config</Filter>
</ClCompile>
@@ -674,12 +674,6 @@
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.h">
<Filter>src\core\lib\client_config</Filter>
</ClInclude>
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.h">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClInclude>
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.h">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClInclude>
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.h">
<Filter>src\core\lib\client_config</Filter>
</ClInclude>
@@ -992,6 +986,18 @@
<Filter Include="src\core\ext\lb_policy\round_robin">
<UniqueIdentifier>{2472d352-cf94-f317-646e-72b769cea846}</UniqueIdentifier>
</Filter>
+ <Filter Include="src\core\ext\resolver">
+ <UniqueIdentifier>{6bfa6808-9dcb-8990-deed-5cf58a149dda}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\dns">
+ <UniqueIdentifier>{e8fe6413-ab8c-48d5-2c7b-aa79e3db4ab2}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\dns\native">
+ <UniqueIdentifier>{94e34be0-29d2-1731-3c1e-617ec4986acb}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\sockaddr">
+ <UniqueIdentifier>{98c1ccc2-2c91-a3d2-6040-a2e15993d51a}</UniqueIdentifier>
+ </Filter>
<Filter Include="src\core\ext\transport">
<UniqueIdentifier>{e3abfd0a-064e-0f2f-c8e8-7c5a7e98142a}</UniqueIdentifier>
</Filter>
@@ -1028,9 +1034,6 @@
<Filter Include="src\core\lib\client_config">
<UniqueIdentifier>{2f3260de-be57-d18d-6882-61d115baa159}</UniqueIdentifier>
</Filter>
- <Filter Include="src\core\lib\client_config\resolvers">
- <UniqueIdentifier>{b9d8db6c-2c68-1c90-fe5e-37da90f47ae6}</UniqueIdentifier>
- </Filter>
<Filter Include="src\core\lib\compression">
<UniqueIdentifier>{dadf7fe9-3f15-d431-e4f6-f987b090536c}</UniqueIdentifier>
</Filter>
diff --git a/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj b/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj
index 7646a3cc00..ec8624fb34 100644
--- a/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj
+++ b/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj
@@ -320,8 +320,6 @@
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_factory.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.h" />
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.h" />
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_factory.h" />
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_index.h" />
@@ -423,6 +421,10 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\lb_policy\round_robin\round_robin.c">
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\dns\native\dns_resolver.c">
+ </ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\sockaddr\sockaddr_resolver.c">
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\client\insecure\channel_create.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\server\insecure\server_chttp2.c">
@@ -507,10 +509,6 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.c">
</ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.c">
- </ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.c">
- </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel_factory.c">
diff --git a/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj.filters b/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj.filters
index 519308bd3e..95b76b33de 100644
--- a/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj.filters
+++ b/vsprojects/vcxproj/grpc_unsecure/grpc_unsecure.vcxproj.filters
@@ -40,6 +40,12 @@
<ClCompile Include="$(SolutionDir)\..\src\core\ext\lb_policy\round_robin\round_robin.c">
<Filter>src\core\ext\lb_policy\round_robin</Filter>
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\dns\native\dns_resolver.c">
+ <Filter>src\core\ext\resolver\dns\native</Filter>
+ </ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\ext\resolver\sockaddr\sockaddr_resolver.c">
+ <Filter>src\core\ext\resolver\sockaddr</Filter>
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\ext\transport\chttp2\client\insecure\channel_create.c">
<Filter>src\core\ext\transport\chttp2\client\insecure</Filter>
</ClCompile>
@@ -166,12 +172,6 @@
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.c">
<Filter>src\core\lib\client_config</Filter>
</ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.c">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClCompile>
- <ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.c">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.c">
<Filter>src\core\lib\client_config</Filter>
</ClCompile>
@@ -611,12 +611,6 @@
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolver_registry.h">
<Filter>src\core\lib\client_config</Filter>
</ClInclude>
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\dns_resolver.h">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClInclude>
- <ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\resolvers\sockaddr_resolver.h">
- <Filter>src\core\lib\client_config\resolvers</Filter>
- </ClInclude>
<ClInclude Include="$(SolutionDir)\..\src\core\lib\client_config\subchannel.h">
<Filter>src\core\lib\client_config</Filter>
</ClInclude>
@@ -887,6 +881,18 @@
<Filter Include="src\core\ext\lb_policy\round_robin">
<UniqueIdentifier>{e5fc1091-5d60-404f-775b-686ef4b3266f}</UniqueIdentifier>
</Filter>
+ <Filter Include="src\core\ext\resolver">
+ <UniqueIdentifier>{88c78e27-267a-95df-07c5-50e5fbc2f40c}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\dns">
+ <UniqueIdentifier>{2e0a9b4f-6394-7c0e-6e5a-0f8b3ee29b41}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\dns\native">
+ <UniqueIdentifier>{3d5398c8-928b-9096-8eb7-f8c40ee68c4d}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\core\ext\resolver\sockaddr">
+ <UniqueIdentifier>{71686ed0-fbf9-02a4-d65a-a73f7dc4e2be}</UniqueIdentifier>
+ </Filter>
<Filter Include="src\core\ext\transport">
<UniqueIdentifier>{967c89fe-c97c-27e2-aac0-9ba5854cb5fa}</UniqueIdentifier>
</Filter>
@@ -917,9 +923,6 @@
<Filter Include="src\core\lib\client_config">
<UniqueIdentifier>{29ca2974-89e4-1a74-3e4d-0d63e2f77566}</UniqueIdentifier>
</Filter>
- <Filter Include="src\core\lib\client_config\resolvers">
- <UniqueIdentifier>{2d959ef9-9703-dc92-a56f-9fe136dadfb9}</UniqueIdentifier>
- </Filter>
<Filter Include="src\core\lib\compression">
<UniqueIdentifier>{b88002e9-185e-4e64-49f5-2d8989ce87f6}</UniqueIdentifier>
</Filter>