grpc 0.15.0 → 1.0.0.pre1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +127 -159
  3. data/etc/roots.pem +784 -509
  4. data/include/grpc/grpc_posix.h +8 -0
  5. data/include/grpc/impl/codegen/byte_buffer.h +5 -4
  6. data/include/grpc/impl/codegen/grpc_types.h +2 -0
  7. data/include/grpc/impl/codegen/port_platform.h +2 -1
  8. data/include/grpc/module.modulemap +15 -0
  9. data/src/core/ext/census/grpc_filter.c +3 -0
  10. data/src/core/ext/client_config/channel_connectivity.c +4 -3
  11. data/src/core/ext/client_config/client_channel.c +6 -0
  12. data/src/core/ext/client_config/subchannel.c +2 -0
  13. data/src/core/ext/client_config/subchannel_call_holder.c +2 -5
  14. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.c +2 -1
  15. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.c +2 -1
  16. data/src/core/ext/transport/chttp2/transport/chttp2_transport.c +171 -104
  17. data/src/core/ext/transport/chttp2/transport/internal.h +5 -3
  18. data/src/core/ext/transport/chttp2/transport/parsing.c +4 -3
  19. data/src/core/ext/transport/chttp2/transport/status_conversion.c +8 -2
  20. data/src/core/ext/transport/chttp2/transport/status_conversion.h +1 -1
  21. data/src/core/lib/channel/channel_stack.c +12 -1
  22. data/src/core/lib/channel/channel_stack.h +5 -0
  23. data/src/core/lib/channel/http_client_filter.c +7 -1
  24. data/src/core/lib/debug/trace.c +6 -2
  25. data/src/core/lib/iomgr/error.c +62 -19
  26. data/src/core/lib/iomgr/error.h +10 -6
  27. data/src/core/lib/iomgr/ev_epoll_linux.c +1872 -0
  28. data/src/core/lib/{surface/surface_trace.h → iomgr/ev_epoll_linux.h} +11 -12
  29. data/src/core/lib/iomgr/ev_posix.c +9 -6
  30. data/src/core/lib/iomgr/ev_posix.h +3 -0
  31. data/src/core/lib/iomgr/network_status_tracker.c +121 -0
  32. data/{include/grpc/grpc_zookeeper.h → src/core/lib/iomgr/network_status_tracker.h} +8 -26
  33. data/src/core/lib/iomgr/socket_utils_common_posix.c +22 -0
  34. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  35. data/src/core/lib/iomgr/tcp_posix.c +6 -2
  36. data/src/core/lib/iomgr/tcp_server.h +3 -0
  37. data/src/core/lib/iomgr/tcp_server_posix.c +114 -16
  38. data/src/core/lib/iomgr/tcp_server_windows.c +1 -0
  39. data/src/core/lib/iomgr/tcp_windows.c +5 -0
  40. data/src/core/lib/iomgr/udp_server.c +28 -16
  41. data/src/core/lib/iomgr/wakeup_fd_eventfd.c +4 -2
  42. data/src/core/lib/profiling/basic_timers.c +4 -4
  43. data/src/core/lib/security/credentials/composite/composite_credentials.c +4 -3
  44. data/src/core/lib/security/credentials/credentials.c +1 -1
  45. data/src/core/lib/security/credentials/credentials.h +4 -5
  46. data/src/core/lib/security/credentials/fake/fake_credentials.c +2 -2
  47. data/src/core/lib/security/credentials/iam/iam_credentials.c +1 -1
  48. data/src/core/lib/security/credentials/jwt/jwt_credentials.c +7 -6
  49. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.c +6 -4
  50. data/src/core/lib/security/credentials/plugin/plugin_credentials.c +4 -3
  51. data/src/core/lib/security/transport/client_auth_filter.c +10 -7
  52. data/src/core/lib/surface/byte_buffer_reader.c +6 -4
  53. data/src/core/lib/surface/call.c +64 -51
  54. data/src/core/lib/surface/call.h +0 -1
  55. data/src/core/lib/surface/channel.c +10 -8
  56. data/src/core/lib/surface/completion_queue.c +26 -12
  57. data/src/core/lib/surface/completion_queue.h +4 -0
  58. data/src/core/lib/surface/init.c +6 -1
  59. data/src/core/lib/surface/version.c +1 -1
  60. data/src/core/lib/transport/transport.c +62 -29
  61. data/src/core/lib/transport/transport.h +8 -5
  62. data/src/core/lib/transport/transport_op_string.c +14 -3
  63. data/src/ruby/ext/grpc/rb_byte_buffer.c +4 -1
  64. data/src/ruby/ext/grpc/rb_call.c +87 -54
  65. data/src/ruby/ext/grpc/rb_call.h +1 -1
  66. data/src/ruby/ext/grpc/rb_call_credentials.c +1 -30
  67. data/src/ruby/ext/grpc/rb_channel.c +25 -50
  68. data/src/ruby/ext/grpc/rb_channel_credentials.c +1 -31
  69. data/src/ruby/ext/grpc/rb_completion_queue.c +15 -134
  70. data/src/ruby/ext/grpc/rb_completion_queue.h +3 -7
  71. data/src/ruby/ext/grpc/rb_grpc.c +2 -4
  72. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +2 -0
  73. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +4 -1
  74. data/src/ruby/ext/grpc/rb_server.c +81 -133
  75. data/src/ruby/ext/grpc/rb_server_credentials.c +4 -33
  76. data/src/ruby/lib/grpc/generic/active_call.rb +40 -55
  77. data/src/ruby/lib/grpc/generic/bidi_call.rb +21 -23
  78. data/src/ruby/lib/grpc/generic/client_stub.rb +20 -15
  79. data/src/ruby/lib/grpc/generic/rpc_server.rb +15 -37
  80. data/src/ruby/lib/grpc/generic/service.rb +1 -1
  81. data/src/ruby/lib/grpc/version.rb +1 -1
  82. data/src/ruby/pb/test/client.rb +25 -7
  83. data/src/ruby/pb/test/server.rb +7 -5
  84. data/src/ruby/spec/call_spec.rb +1 -2
  85. data/src/ruby/spec/channel_spec.rb +2 -3
  86. data/src/ruby/spec/client_server_spec.rb +74 -59
  87. data/src/ruby/spec/generic/active_call_spec.rb +66 -86
  88. data/src/ruby/spec/generic/client_stub_spec.rb +27 -48
  89. data/src/ruby/spec/generic/rpc_server_spec.rb +4 -34
  90. data/src/ruby/spec/pb/health/checker_spec.rb +0 -2
  91. data/src/ruby/spec/server_spec.rb +20 -24
  92. metadata +9 -8
  93. data/src/ruby/spec/completion_queue_spec.rb +0 -42
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3c78b37e003dfa044620aa633453f4f3bb20958c
4
- data.tar.gz: 019c6f50ed2a5ac19230270ce2ab90a087680469
3
+ metadata.gz: dafe9d26f247ae4dba67525b7432a4479d07c350
4
+ data.tar.gz: 6e45adc85ba75b19cf779e90e382de957e92fb68
5
5
  SHA512:
6
- metadata.gz: f10f675ac6b9f7a398683949381b3f4b24913196c599570f1e0ae590c8abb334f00e8f1142a17cbbb0d9279b3f33ca71bb375260c69e1b7a9b5fffd62c5cbb9a
7
- data.tar.gz: b7adb0ccfd48a19cc6303172666b754a83b35991c67ff437c16bc835f65abf462424b7e519fd4e4e0a997f3f9d71c4915ce03fbe0b0d9a76e3ebf05d9ab755dd
6
+ metadata.gz: d5f94005a7d94d36dd7ad43d413df81f180fabc024e8243490dbce8b575af1cff06e41635b40f96fe8596cca15f25f274a774b548ad54229fd18090c533fbce7
7
+ data.tar.gz: b5f3e0697da658123d989a1aa0ec1c117d4cf9f38851f912ea41ebc28dd1256c09ce1f975b4b33b66fd758ad705487435be125db5a905e43c54994d7f8cf2a63
data/Makefile CHANGED
@@ -200,6 +200,7 @@ LD_tsan = clang
200
200
  LDXX_tsan = clang++
201
201
  CPPFLAGS_tsan = -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
202
202
  LDFLAGS_tsan = -fsanitize=thread
203
+ DEFINES_tsan = GRPC_TSAN
203
204
  DEFINES_tsan += GRPC_TEST_SLOWDOWN_BUILD_FACTOR=5
204
205
 
205
206
  VALID_CONFIG_stapprof = 1
@@ -414,7 +415,7 @@ E = @echo
414
415
  Q = @
415
416
  endif
416
417
 
417
- VERSION = 0.15.0
418
+ VERSION = 1.0.0-pre1
418
419
 
419
420
  CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
420
421
  CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
@@ -447,7 +448,7 @@ PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/in
447
448
  ifeq ($(SYSTEM),MINGW32)
448
449
  SHARED_EXT = dll
449
450
  SHARED_PREFIX =
450
- SHARED_VERSION = -0
451
+ SHARED_VERSION = -1
451
452
  else ifeq ($(SYSTEM),Darwin)
452
453
  SHARED_EXT = dylib
453
454
  SHARED_PREFIX = lib
@@ -491,7 +492,6 @@ PROTOC_CHECK_CMD = which protoc > /dev/null
491
492
  PROTOC_CHECK_VERSION_CMD = protoc --version | grep -q libprotoc.3
492
493
  DTRACE_CHECK_CMD = which dtrace > /dev/null
493
494
  SYSTEMTAP_HEADERS_CHECK_CMD = $(CC) $(CPPFLAGS) $(CFLAGS) -o $(TMPOUT) test/build/systemtap.c $(LDFLAGS)
494
- ZOOKEEPER_CHECK_CMD = $(CC) $(CPPFLAGS) $(CFLAGS) -o $(TMPOUT) test/build/zookeeper.c $(LDFLAGS) -lzookeeper_mt
495
495
 
496
496
  ifndef REQUIRE_CUSTOM_LIBRARIES_$(CONFIG)
497
497
  HAS_SYSTEM_PERFTOOLS ?= $(shell $(PERFTOOLS_CHECK_CMD) 2> /dev/null && echo true || echo false)
@@ -559,8 +559,6 @@ ifeq ($(HAS_SYSTEMTAP),true)
559
559
  CACHE_MK += HAS_SYSTEMTAP = true,
560
560
  endif
561
561
 
562
- HAS_ZOOKEEPER = $(shell $(ZOOKEEPER_CHECK_CMD) 2> /dev/null && echo true || echo false)
563
-
564
562
  # Note that for testing purposes, one can do:
565
563
  # make HAS_EMBEDDED_OPENSSL_ALPN=false
566
564
  # to emulate the fact we do not have OpenSSL in the third_party folder.
@@ -704,14 +702,6 @@ PC_LIBS_PRIVATE = $(PC_LIBS_GRPC)
704
702
  PC_LIB = -lgrpc
705
703
  GRPC_UNSECURE_PC_FILE := $(PC_TEMPLATE)
706
704
 
707
- # grpc_zookeeper .pc file
708
- PC_NAME = gRPC zookeeper
709
- PC_DESCRIPTION = gRPC's zookeeper plugin
710
- PC_CFLAGS =
711
- PC_REQUIRES_PRIVATE =
712
- PC_LIBS_PRIVATE = -lzookeeper_mt
713
- GRPC_ZOOKEEPER_PC_FILE := $(PC_TEMPLATE)
714
-
715
705
  PROTOBUF_PKG_CONFIG = false
716
706
 
717
707
  PC_REQUIRES_GRPCXX =
@@ -889,6 +879,7 @@ algorithm_test: $(BINDIR)/$(CONFIG)/algorithm_test
889
879
  alloc_test: $(BINDIR)/$(CONFIG)/alloc_test
890
880
  alpn_test: $(BINDIR)/$(CONFIG)/alpn_test
891
881
  api_fuzzer: $(BINDIR)/$(CONFIG)/api_fuzzer
882
+ bad_server_response_test: $(BINDIR)/$(CONFIG)/bad_server_response_test
892
883
  bin_decoder_test: $(BINDIR)/$(CONFIG)/bin_decoder_test
893
884
  bin_encoder_test: $(BINDIR)/$(CONFIG)/bin_encoder_test
894
885
  census_context_test: $(BINDIR)/$(CONFIG)/census_context_test
@@ -904,6 +895,7 @@ dns_resolver_connectivity_test: $(BINDIR)/$(CONFIG)/dns_resolver_connectivity_te
904
895
  dns_resolver_test: $(BINDIR)/$(CONFIG)/dns_resolver_test
905
896
  dualstack_socket_test: $(BINDIR)/$(CONFIG)/dualstack_socket_test
906
897
  endpoint_pair_test: $(BINDIR)/$(CONFIG)/endpoint_pair_test
898
+ ev_epoll_linux_test: $(BINDIR)/$(CONFIG)/ev_epoll_linux_test
907
899
  fd_conservation_posix_test: $(BINDIR)/$(CONFIG)/fd_conservation_posix_test
908
900
  fd_posix_test: $(BINDIR)/$(CONFIG)/fd_posix_test
909
901
  fling_client: $(BINDIR)/$(CONFIG)/fling_client
@@ -993,7 +985,6 @@ time_averaged_stats_test: $(BINDIR)/$(CONFIG)/time_averaged_stats_test
993
985
  timeout_encoding_test: $(BINDIR)/$(CONFIG)/timeout_encoding_test
994
986
  timer_heap_test: $(BINDIR)/$(CONFIG)/timer_heap_test
995
987
  timer_list_test: $(BINDIR)/$(CONFIG)/timer_list_test
996
- timers_test: $(BINDIR)/$(CONFIG)/timers_test
997
988
  transport_connectivity_state_test: $(BINDIR)/$(CONFIG)/transport_connectivity_state_test
998
989
  transport_metadata_test: $(BINDIR)/$(CONFIG)/transport_metadata_test
999
990
  transport_security_test: $(BINDIR)/$(CONFIG)/transport_security_test
@@ -1150,7 +1141,6 @@ run_dep_checks:
1150
1141
  $(PERFTOOLS_CHECK_CMD) || true
1151
1142
  $(PROTOBUF_CHECK_CMD) || true
1152
1143
  $(PROTOC_CHECK_VERSION_CMD) || true
1153
- $(ZOOKEEPER_CHECK_CMD) || true
1154
1144
 
1155
1145
  third_party/protobuf/configure:
1156
1146
  $(E) "[AUTOGEN] Preparing protobuf"
@@ -1169,29 +1159,16 @@ $(LIBDIR)/$(CONFIG)/protobuf/libprotobuf.a: third_party/protobuf/configure
1169
1159
 
1170
1160
  static: static_c static_cxx
1171
1161
 
1172
- static_c: pc_c pc_c_unsecure cache.mk pc_c_zookeeper $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgrpc_cronet.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a static_zookeeper_libs
1173
-
1162
+ static_c: pc_c pc_c_unsecure cache.mk $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgrpc_cronet.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a
1174
1163
 
1175
1164
  static_cxx: pc_cxx pc_cxx_unsecure cache.mk $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a
1176
1165
 
1177
1166
  shared: shared_c shared_cxx
1178
1167
 
1179
- shared_c: pc_c pc_c_unsecure cache.mk pc_c_zookeeper $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) shared_zookeeper_libs
1180
-
1168
+ shared_c: pc_c pc_c_unsecure cache.mk $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT)
1181
1169
  shared_cxx: pc_cxx pc_cxx_unsecure cache.mk $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT)
1182
1170
 
1183
1171
  shared_csharp: shared_c $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT)
1184
- ifeq ($(HAS_ZOOKEEPER),true)
1185
- static_zookeeper_libs:
1186
- shared_zookeeper_libs:
1187
- else
1188
-
1189
- static_zookeeper_libs:
1190
-
1191
- shared_zookeeper_libs:
1192
-
1193
- endif
1194
-
1195
1172
  grpc_csharp_ext: shared_csharp
1196
1173
 
1197
1174
  plugins: $(PROTOC_PLUGINS)
@@ -1203,12 +1180,6 @@ pc_c: $(LIBDIR)/$(CONFIG)/pkgconfig/grpc.pc
1203
1180
 
1204
1181
  pc_c_unsecure: $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_unsecure.pc
1205
1182
 
1206
- ifeq ($(HAS_ZOOKEEPER),true)
1207
- pc_c_zookeeper: $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_zookeeper.pc
1208
- else
1209
- pc_c_zookeeper:
1210
- endif
1211
-
1212
1183
  pc_cxx: $(LIBDIR)/$(CONFIG)/pkgconfig/grpc++.pc
1213
1184
 
1214
1185
  pc_cxx_unsecure: $(LIBDIR)/$(CONFIG)/pkgconfig/grpc++_unsecure.pc
@@ -1220,20 +1191,14 @@ privatelibs_cxx: $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a $(LIBDIR)/$(CONFIG
1220
1191
  endif
1221
1192
 
1222
1193
 
1223
- ifeq ($(HAS_ZOOKEEPER),true)
1224
- privatelibs_zookeeper:
1225
- else
1226
- privatelibs_zookeeper:
1227
- endif
1228
-
1229
-
1230
- buildtests: buildtests_c buildtests_cxx buildtests_zookeeper
1194
+ buildtests: buildtests_c buildtests_cxx
1231
1195
 
1232
1196
  buildtests_c: privatelibs_c \
1233
1197
  $(BINDIR)/$(CONFIG)/alarm_test \
1234
1198
  $(BINDIR)/$(CONFIG)/algorithm_test \
1235
1199
  $(BINDIR)/$(CONFIG)/alloc_test \
1236
1200
  $(BINDIR)/$(CONFIG)/alpn_test \
1201
+ $(BINDIR)/$(CONFIG)/bad_server_response_test \
1237
1202
  $(BINDIR)/$(CONFIG)/bin_decoder_test \
1238
1203
  $(BINDIR)/$(CONFIG)/bin_encoder_test \
1239
1204
  $(BINDIR)/$(CONFIG)/census_context_test \
@@ -1248,6 +1213,7 @@ buildtests_c: privatelibs_c \
1248
1213
  $(BINDIR)/$(CONFIG)/dns_resolver_test \
1249
1214
  $(BINDIR)/$(CONFIG)/dualstack_socket_test \
1250
1215
  $(BINDIR)/$(CONFIG)/endpoint_pair_test \
1216
+ $(BINDIR)/$(CONFIG)/ev_epoll_linux_test \
1251
1217
  $(BINDIR)/$(CONFIG)/fd_conservation_posix_test \
1252
1218
  $(BINDIR)/$(CONFIG)/fd_posix_test \
1253
1219
  $(BINDIR)/$(CONFIG)/fling_client \
@@ -1279,6 +1245,7 @@ buildtests_c: privatelibs_c \
1279
1245
  $(BINDIR)/$(CONFIG)/grpc_channel_stack_test \
1280
1246
  $(BINDIR)/$(CONFIG)/grpc_completion_queue_test \
1281
1247
  $(BINDIR)/$(CONFIG)/grpc_credentials_test \
1248
+ $(BINDIR)/$(CONFIG)/grpc_fetch_oauth2 \
1282
1249
  $(BINDIR)/$(CONFIG)/grpc_invalid_channel_args_test \
1283
1250
  $(BINDIR)/$(CONFIG)/grpc_json_token_test \
1284
1251
  $(BINDIR)/$(CONFIG)/grpc_jwt_verifier_test \
@@ -1323,7 +1290,6 @@ buildtests_c: privatelibs_c \
1323
1290
  $(BINDIR)/$(CONFIG)/timeout_encoding_test \
1324
1291
  $(BINDIR)/$(CONFIG)/timer_heap_test \
1325
1292
  $(BINDIR)/$(CONFIG)/timer_list_test \
1326
- $(BINDIR)/$(CONFIG)/timers_test \
1327
1293
  $(BINDIR)/$(CONFIG)/transport_connectivity_state_test \
1328
1294
  $(BINDIR)/$(CONFIG)/transport_metadata_test \
1329
1295
  $(BINDIR)/$(CONFIG)/transport_security_test \
@@ -1387,7 +1353,7 @@ buildtests_c: privatelibs_c \
1387
1353
 
1388
1354
 
1389
1355
  ifeq ($(EMBED_OPENSSL),true)
1390
- buildtests_cxx: buildtests_zookeeper privatelibs_cxx \
1356
+ buildtests_cxx: privatelibs_cxx \
1391
1357
  $(BINDIR)/$(CONFIG)/alarm_cpp_test \
1392
1358
  $(BINDIR)/$(CONFIG)/async_end2end_test \
1393
1359
  $(BINDIR)/$(CONFIG)/auth_property_iterator_test \
@@ -1471,7 +1437,7 @@ buildtests_cxx: buildtests_zookeeper privatelibs_cxx \
1471
1437
  $(BINDIR)/$(CONFIG)/boringssl_ssl_test \
1472
1438
 
1473
1439
  else
1474
- buildtests_cxx: buildtests_zookeeper privatelibs_cxx \
1440
+ buildtests_cxx: privatelibs_cxx \
1475
1441
  $(BINDIR)/$(CONFIG)/alarm_cpp_test \
1476
1442
  $(BINDIR)/$(CONFIG)/async_end2end_test \
1477
1443
  $(BINDIR)/$(CONFIG)/auth_property_iterator_test \
@@ -1519,17 +1485,9 @@ buildtests_cxx: buildtests_zookeeper privatelibs_cxx \
1519
1485
  endif
1520
1486
 
1521
1487
 
1522
- ifeq ($(HAS_ZOOKEEPER),true)
1523
- buildtests_zookeeper: privatelibs_zookeeper \
1524
-
1525
- else
1526
- buildtests_zookeeper:
1527
- endif
1528
-
1529
-
1530
- test: test_c test_cxx test_zookeeper
1488
+ test: test_c test_cxx
1531
1489
 
1532
- flaky_test: flaky_test_c flaky_test_cxx flaky_test_zookeeper
1490
+ flaky_test: flaky_test_c flaky_test_cxx
1533
1491
 
1534
1492
  test_c: buildtests_c
1535
1493
  $(E) "[RUN] Testing alarm_test"
@@ -1540,6 +1498,8 @@ test_c: buildtests_c
1540
1498
  $(Q) $(BINDIR)/$(CONFIG)/alloc_test || ( echo test alloc_test failed ; exit 1 )
1541
1499
  $(E) "[RUN] Testing alpn_test"
1542
1500
  $(Q) $(BINDIR)/$(CONFIG)/alpn_test || ( echo test alpn_test failed ; exit 1 )
1501
+ $(E) "[RUN] Testing bad_server_response_test"
1502
+ $(Q) $(BINDIR)/$(CONFIG)/bad_server_response_test || ( echo test bad_server_response_test failed ; exit 1 )
1543
1503
  $(E) "[RUN] Testing bin_decoder_test"
1544
1504
  $(Q) $(BINDIR)/$(CONFIG)/bin_decoder_test || ( echo test bin_decoder_test failed ; exit 1 )
1545
1505
  $(E) "[RUN] Testing bin_encoder_test"
@@ -1568,6 +1528,8 @@ test_c: buildtests_c
1568
1528
  $(Q) $(BINDIR)/$(CONFIG)/dualstack_socket_test || ( echo test dualstack_socket_test failed ; exit 1 )
1569
1529
  $(E) "[RUN] Testing endpoint_pair_test"
1570
1530
  $(Q) $(BINDIR)/$(CONFIG)/endpoint_pair_test || ( echo test endpoint_pair_test failed ; exit 1 )
1531
+ $(E) "[RUN] Testing ev_epoll_linux_test"
1532
+ $(Q) $(BINDIR)/$(CONFIG)/ev_epoll_linux_test || ( echo test ev_epoll_linux_test failed ; exit 1 )
1571
1533
  $(E) "[RUN] Testing fd_conservation_posix_test"
1572
1534
  $(Q) $(BINDIR)/$(CONFIG)/fd_conservation_posix_test || ( echo test fd_conservation_posix_test failed ; exit 1 )
1573
1535
  $(E) "[RUN] Testing fd_posix_test"
@@ -1702,8 +1664,6 @@ test_c: buildtests_c
1702
1664
  $(Q) $(BINDIR)/$(CONFIG)/timer_heap_test || ( echo test timer_heap_test failed ; exit 1 )
1703
1665
  $(E) "[RUN] Testing timer_list_test"
1704
1666
  $(Q) $(BINDIR)/$(CONFIG)/timer_list_test || ( echo test timer_list_test failed ; exit 1 )
1705
- $(E) "[RUN] Testing timers_test"
1706
- $(Q) $(BINDIR)/$(CONFIG)/timers_test || ( echo test timers_test failed ; exit 1 )
1707
1667
  $(E) "[RUN] Testing transport_connectivity_state_test"
1708
1668
  $(Q) $(BINDIR)/$(CONFIG)/transport_connectivity_state_test || ( echo test transport_connectivity_state_test failed ; exit 1 )
1709
1669
  $(E) "[RUN] Testing transport_metadata_test"
@@ -1751,7 +1711,7 @@ flaky_test_c: buildtests_c
1751
1711
  $(Q) $(BINDIR)/$(CONFIG)/mlog_test || ( echo test mlog_test failed ; exit 1 )
1752
1712
 
1753
1713
 
1754
- test_cxx: test_zookeeper buildtests_cxx
1714
+ test_cxx: buildtests_cxx
1755
1715
  $(E) "[RUN] Testing alarm_cpp_test"
1756
1716
  $(Q) $(BINDIR)/$(CONFIG)/alarm_cpp_test || ( echo test alarm_cpp_test failed ; exit 1 )
1757
1717
  $(E) "[RUN] Testing async_end2end_test"
@@ -1817,18 +1777,6 @@ test_cxx: test_zookeeper buildtests_cxx
1817
1777
  flaky_test_cxx: buildtests_cxx
1818
1778
 
1819
1779
 
1820
- ifeq ($(HAS_ZOOKEEPER),true)
1821
- test_zookeeper: buildtests_zookeeper
1822
-
1823
-
1824
- flaky_test_zookeeper: buildtests_zookeeper
1825
-
1826
- else
1827
- test_zookeeper:
1828
- flaky_test_zookeeper:
1829
- endif
1830
-
1831
-
1832
1780
  test_python: static_c
1833
1781
  $(E) "[RUN] Testing python code"
1834
1782
  $(Q) tools/run_tests/run_tests.py -lpython -c$(CONFIG)
@@ -1837,7 +1785,7 @@ test_python: static_c
1837
1785
  tools: tools_c tools_cxx
1838
1786
 
1839
1787
 
1840
- tools_c: privatelibs_c $(BINDIR)/$(CONFIG)/gen_hpack_tables $(BINDIR)/$(CONFIG)/gen_legal_metadata_characters $(BINDIR)/$(CONFIG)/grpc_create_jwt $(BINDIR)/$(CONFIG)/grpc_fetch_oauth2 $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token $(BINDIR)/$(CONFIG)/grpc_verify_jwt
1788
+ tools_c: privatelibs_c $(BINDIR)/$(CONFIG)/gen_hpack_tables $(BINDIR)/$(CONFIG)/gen_legal_metadata_characters $(BINDIR)/$(CONFIG)/grpc_create_jwt $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token $(BINDIR)/$(CONFIG)/grpc_verify_jwt
1841
1789
 
1842
1790
  tools_cxx: privatelibs_cxx
1843
1791
 
@@ -1866,8 +1814,6 @@ ifeq ($(CONFIG),opt)
1866
1814
  $(Q) $(STRIP) $(LIBDIR)/$(CONFIG)/libgrpc_cronet.a
1867
1815
  $(E) "[STRIP] Stripping libgrpc_unsecure.a"
1868
1816
  $(Q) $(STRIP) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a
1869
- ifeq ($(HAS_ZOOKEEPER),true)
1870
- endif
1871
1817
  endif
1872
1818
 
1873
1819
  strip-static_cxx: static_cxx
@@ -1890,8 +1836,6 @@ ifeq ($(CONFIG),opt)
1890
1836
  $(Q) $(STRIP) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT)
1891
1837
  $(E) "[STRIP] Stripping $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT)"
1892
1838
  $(Q) $(STRIP) $(LIBDIR)/$(CONFIG)/$(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT)
1893
- ifeq ($(HAS_ZOOKEEPER),true)
1894
- endif
1895
1839
  endif
1896
1840
 
1897
1841
  strip-shared_cxx: shared_cxx
@@ -1924,11 +1868,6 @@ $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_unsecure.pc:
1924
1868
  $(Q) mkdir -p $(@D)
1925
1869
  $(Q) echo "$(GRPC_UNSECURE_PC_FILE)" | tr , '\n' >$@
1926
1870
 
1927
- $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_zookeeper.pc:
1928
- $(E) "[MAKE] Generating $@"
1929
- $(Q) mkdir -p $(@D)
1930
- $(Q) echo "$(GRPC_ZOOKEEPER_PC_FILE)" | tr , '\n' >$@
1931
-
1932
1871
  $(LIBDIR)/$(CONFIG)/pkgconfig/grpc++.pc:
1933
1872
  $(E) "[MAKE] Generating $@"
1934
1873
  $(Q) mkdir -p $(@D)
@@ -2204,8 +2143,6 @@ install-static_c: static_c strip-static_c install-pkg-config_c
2204
2143
  $(E) "[INSTALL] Installing libgrpc_unsecure.a"
2205
2144
  $(Q) $(INSTALL) -d $(prefix)/lib
2206
2145
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(prefix)/lib/libgrpc_unsecure.a
2207
- ifeq ($(HAS_ZOOKEEPER),true)
2208
- endif
2209
2146
 
2210
2147
  install-static_cxx: static_cxx strip-static_cxx install-pkg-config_cxx
2211
2148
  $(E) "[INSTALL] Installing libgrpc++.a"
@@ -2227,7 +2164,7 @@ install-shared_c: shared_c strip-shared_c install-pkg-config_c
2227
2164
  ifeq ($(SYSTEM),MINGW32)
2228
2165
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgpr-imp.a $(prefix)/lib/libgpr-imp.a
2229
2166
  else ifneq ($(SYSTEM),Darwin)
2230
- $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgpr.so.0
2167
+ $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgpr.so.1
2231
2168
  $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgpr.so
2232
2169
  endif
2233
2170
  $(E) "[INSTALL] Installing $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT)"
@@ -2236,7 +2173,7 @@ endif
2236
2173
  ifeq ($(SYSTEM),MINGW32)
2237
2174
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc-imp.a $(prefix)/lib/libgrpc-imp.a
2238
2175
  else ifneq ($(SYSTEM),Darwin)
2239
- $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc.so.0
2176
+ $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc.so.1
2240
2177
  $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc.so
2241
2178
  endif
2242
2179
  $(E) "[INSTALL] Installing $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT)"
@@ -2245,7 +2182,7 @@ endif
2245
2182
  ifeq ($(SYSTEM),MINGW32)
2246
2183
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc_cronet-imp.a $(prefix)/lib/libgrpc_cronet-imp.a
2247
2184
  else ifneq ($(SYSTEM),Darwin)
2248
- $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_cronet.so.0
2185
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_cronet.so.1
2249
2186
  $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_cronet.so
2250
2187
  endif
2251
2188
  $(E) "[INSTALL] Installing $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT)"
@@ -2254,11 +2191,9 @@ endif
2254
2191
  ifeq ($(SYSTEM),MINGW32)
2255
2192
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure-imp.a $(prefix)/lib/libgrpc_unsecure-imp.a
2256
2193
  else ifneq ($(SYSTEM),Darwin)
2257
- $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_unsecure.so.0
2194
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_unsecure.so.1
2258
2195
  $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_unsecure.so
2259
2196
  endif
2260
- ifeq ($(HAS_ZOOKEEPER),true)
2261
- endif
2262
2197
  ifneq ($(SYSTEM),MINGW32)
2263
2198
  ifneq ($(SYSTEM),Darwin)
2264
2199
  $(Q) ldconfig || true
@@ -2273,7 +2208,7 @@ install-shared_cxx: shared_cxx strip-shared_cxx install-shared_c install-pkg-con
2273
2208
  ifeq ($(SYSTEM),MINGW32)
2274
2209
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc++-imp.a $(prefix)/lib/libgrpc++-imp.a
2275
2210
  else ifneq ($(SYSTEM),Darwin)
2276
- $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++.so.0
2211
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++.so.1
2277
2212
  $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++.so
2278
2213
  endif
2279
2214
  $(E) "[INSTALL] Installing $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT)"
@@ -2282,7 +2217,7 @@ endif
2282
2217
  ifeq ($(SYSTEM),MINGW32)
2283
2218
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection-imp.a $(prefix)/lib/libgrpc++_reflection-imp.a
2284
2219
  else ifneq ($(SYSTEM),Darwin)
2285
- $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_reflection.so.0
2220
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_reflection.so.1
2286
2221
  $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_reflection.so
2287
2222
  endif
2288
2223
  $(E) "[INSTALL] Installing $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT)"
@@ -2291,11 +2226,9 @@ endif
2291
2226
  ifeq ($(SYSTEM),MINGW32)
2292
2227
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure-imp.a $(prefix)/lib/libgrpc++_unsecure-imp.a
2293
2228
  else ifneq ($(SYSTEM),Darwin)
2294
- $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_unsecure.so.0
2229
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_unsecure.so.1
2295
2230
  $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc++_unsecure.so
2296
2231
  endif
2297
- ifeq ($(HAS_ZOOKEEPER),true)
2298
- endif
2299
2232
  ifneq ($(SYSTEM),MINGW32)
2300
2233
  ifneq ($(SYSTEM),Darwin)
2301
2234
  $(Q) ldconfig || true
@@ -2310,11 +2243,9 @@ install-shared_csharp: shared_csharp strip-shared_csharp
2310
2243
  ifeq ($(SYSTEM),MINGW32)
2311
2244
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext-imp.a $(prefix)/lib/libgrpc_csharp_ext-imp.a
2312
2245
  else ifneq ($(SYSTEM),Darwin)
2313
- $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_csharp_ext.so.0
2246
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_csharp_ext.so.1
2314
2247
  $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(prefix)/lib/libgrpc_csharp_ext.so
2315
2248
  endif
2316
- ifeq ($(HAS_ZOOKEEPER),true)
2317
- endif
2318
2249
  ifneq ($(SYSTEM),MINGW32)
2319
2250
  ifneq ($(SYSTEM),Darwin)
2320
2251
  $(Q) ldconfig || true
@@ -2341,14 +2272,11 @@ else
2341
2272
  $(Q) $(INSTALL) $(BINDIR)/$(CONFIG)/grpc_ruby_plugin $(prefix)/bin/grpc_ruby_plugin
2342
2273
  endif
2343
2274
 
2344
- install-pkg-config_c: pc_c pc_c_unsecure pc_c_zookeeper
2275
+ install-pkg-config_c: pc_c pc_c_unsecure
2345
2276
  $(E) "[INSTALL] Installing C pkg-config files"
2346
2277
  $(Q) $(INSTALL) -d $(prefix)/lib/pkgconfig
2347
2278
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/pkgconfig/grpc.pc $(prefix)/lib/pkgconfig/grpc.pc
2348
2279
  $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_unsecure.pc $(prefix)/lib/pkgconfig/grpc_unsecure.pc
2349
- ifeq ($(HAS_ZOOKEEPER),true)
2350
- $(Q) $(INSTALL) $(LIBDIR)/$(CONFIG)/pkgconfig/grpc_zookeeper.pc $(prefix)/lib/pkgconfig/grpc_zookeeper.pc
2351
- endif
2352
2280
 
2353
2281
  install-pkg-config_cxx: pc_cxx pc_cxx_unsecure
2354
2282
  $(E) "[INSTALL] Installing C++ pkg-config files"
@@ -2508,8 +2436,8 @@ $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).$(SHARED_EXT): $(LIBGPR_OBJS) $(ZLI
2508
2436
  ifeq ($(SYSTEM),Darwin)
2509
2437
  $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBGPR_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS)
2510
2438
  else
2511
- $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.0 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBGPR_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS)
2512
- $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).so.0
2439
+ $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.1 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBGPR_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS)
2440
+ $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).so.1
2513
2441
  $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION).so
2514
2442
  endif
2515
2443
  endif
@@ -2564,6 +2492,7 @@ LIBGRPC_SRC = \
2564
2492
  src/core/lib/iomgr/endpoint_pair_posix.c \
2565
2493
  src/core/lib/iomgr/endpoint_pair_windows.c \
2566
2494
  src/core/lib/iomgr/error.c \
2495
+ src/core/lib/iomgr/ev_epoll_linux.c \
2567
2496
  src/core/lib/iomgr/ev_poll_and_epoll_posix.c \
2568
2497
  src/core/lib/iomgr/ev_poll_posix.c \
2569
2498
  src/core/lib/iomgr/ev_posix.c \
@@ -2574,6 +2503,7 @@ LIBGRPC_SRC = \
2574
2503
  src/core/lib/iomgr/iomgr_posix.c \
2575
2504
  src/core/lib/iomgr/iomgr_windows.c \
2576
2505
  src/core/lib/iomgr/load_file.c \
2506
+ src/core/lib/iomgr/network_status_tracker.c \
2577
2507
  src/core/lib/iomgr/polling_entity.c \
2578
2508
  src/core/lib/iomgr/pollset_set_windows.c \
2579
2509
  src/core/lib/iomgr/pollset_windows.c \
@@ -2799,8 +2729,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC_OBJS) $(Z
2799
2729
  ifeq ($(SYSTEM),Darwin)
2800
2730
  $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
2801
2731
  else
2802
- $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
2803
- $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).so.0
2732
+ $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
2733
+ $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).so.1
2804
2734
  $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION).so
2805
2735
  endif
2806
2736
  endif
@@ -2834,6 +2764,7 @@ LIBGRPC_CRONET_SRC = \
2834
2764
  src/core/lib/iomgr/endpoint_pair_posix.c \
2835
2765
  src/core/lib/iomgr/endpoint_pair_windows.c \
2836
2766
  src/core/lib/iomgr/error.c \
2767
+ src/core/lib/iomgr/ev_epoll_linux.c \
2837
2768
  src/core/lib/iomgr/ev_poll_and_epoll_posix.c \
2838
2769
  src/core/lib/iomgr/ev_poll_posix.c \
2839
2770
  src/core/lib/iomgr/ev_posix.c \
@@ -2844,6 +2775,7 @@ LIBGRPC_CRONET_SRC = \
2844
2775
  src/core/lib/iomgr/iomgr_posix.c \
2845
2776
  src/core/lib/iomgr/iomgr_windows.c \
2846
2777
  src/core/lib/iomgr/load_file.c \
2778
+ src/core/lib/iomgr/network_status_tracker.c \
2847
2779
  src/core/lib/iomgr/polling_entity.c \
2848
2780
  src/core/lib/iomgr/pollset_set_windows.c \
2849
2781
  src/core/lib/iomgr/pollset_windows.c \
@@ -3046,8 +2978,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC_CRO
3046
2978
  ifeq ($(SYSTEM),Darwin)
3047
2979
  $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CRONET_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
3048
2980
  else
3049
- $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_cronet.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CRONET_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
3050
- $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).so.0
2981
+ $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_cronet.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CRONET_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS)
2982
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).so.1
3051
2983
  $(Q) ln -sf $(SHARED_PREFIX)grpc_cronet$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_cronet$(SHARED_VERSION).so
3052
2984
  endif
3053
2985
  endif
@@ -3173,6 +3105,7 @@ LIBGRPC_UNSECURE_SRC = \
3173
3105
  src/core/lib/iomgr/endpoint_pair_posix.c \
3174
3106
  src/core/lib/iomgr/endpoint_pair_windows.c \
3175
3107
  src/core/lib/iomgr/error.c \
3108
+ src/core/lib/iomgr/ev_epoll_linux.c \
3176
3109
  src/core/lib/iomgr/ev_poll_and_epoll_posix.c \
3177
3110
  src/core/lib/iomgr/ev_poll_posix.c \
3178
3111
  src/core/lib/iomgr/ev_posix.c \
@@ -3183,6 +3116,7 @@ LIBGRPC_UNSECURE_SRC = \
3183
3116
  src/core/lib/iomgr/iomgr_posix.c \
3184
3117
  src/core/lib/iomgr/iomgr_windows.c \
3185
3118
  src/core/lib/iomgr/load_file.c \
3119
+ src/core/lib/iomgr/network_status_tracker.c \
3186
3120
  src/core/lib/iomgr/polling_entity.c \
3187
3121
  src/core/lib/iomgr/pollset_set_windows.c \
3188
3122
  src/core/lib/iomgr/pollset_windows.c \
@@ -3365,8 +3299,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC_U
3365
3299
  ifeq ($(SYSTEM),Darwin)
3366
3300
  $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_UNSECURE_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
3367
3301
  else
3368
- $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_UNSECURE_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
3369
- $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).so.0
3302
+ $(Q) $(LD) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_UNSECURE_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
3303
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).so.1
3370
3304
  $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION).so
3371
3305
  endif
3372
3306
  endif
@@ -3635,8 +3569,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC++_OBJS)
3635
3569
  ifeq ($(SYSTEM),Darwin)
3636
3570
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc
3637
3571
  else
3638
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc
3639
- $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).so.0
3572
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc
3573
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).so.1
3640
3574
  $(Q) ln -sf $(SHARED_PREFIX)grpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION).so
3641
3575
  endif
3642
3576
  endif
@@ -3762,8 +3696,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).$(SHARED_EXT): $(LIBGR
3762
3696
  ifeq ($(SYSTEM),Darwin)
3763
3697
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_REFLECTION_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc++
3764
3698
  else
3765
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++_reflection.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_REFLECTION_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc++
3766
- $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).so.0
3699
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++_reflection.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_REFLECTION_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc++
3700
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).so.1
3767
3701
  $(Q) ln -sf $(SHARED_PREFIX)grpc++_reflection$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection$(SHARED_VERSION).so
3768
3702
  endif
3769
3703
  endif
@@ -4112,8 +4046,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC
4112
4046
  ifeq ($(SYSTEM),Darwin)
4113
4047
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_UNSECURE_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgpr -lgrpc_unsecure -lgrpc
4114
4048
  else
4115
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++_unsecure.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_UNSECURE_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgpr -lgrpc_unsecure -lgrpc
4116
- $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).so.0
4049
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc++_unsecure.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_UNSECURE_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgpr -lgrpc_unsecure -lgrpc
4050
+ $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).so.1
4117
4051
  $(Q) ln -sf $(SHARED_PREFIX)grpc++_unsecure$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure$(SHARED_VERSION).so
4118
4052
  endif
4119
4053
  endif
@@ -4542,8 +4476,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT): $(LIBGRPC
4542
4476
  ifeq ($(SYSTEM),Darwin)
4543
4477
  $(Q) $(LD) $(LDFLAGS) $(if $(subst Linux,,$(SYSTEM)),,-Wl$(comma)-wrap$(comma)memcpy) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CSHARP_EXT_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
4544
4478
  else
4545
- $(Q) $(LD) $(LDFLAGS) $(if $(subst Linux,,$(SYSTEM)),,-Wl$(comma)-wrap$(comma)memcpy) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.0 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CSHARP_EXT_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
4546
- $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).so.0
4479
+ $(Q) $(LD) $(LDFLAGS) $(if $(subst Linux,,$(SYSTEM)),,-Wl$(comma)-wrap$(comma)memcpy) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.1 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC_CSHARP_EXT_OBJS) $(LDLIBS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(ZLIB_MERGE_LIBS)
4480
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).so.1
4547
4481
  $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION).$(SHARED_EXT) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION).so
4548
4482
  endif
4549
4483
  endif
@@ -6376,6 +6310,7 @@ LIBEND2END_TESTS_SRC = \
6376
6310
  test/core/end2end/tests/max_concurrent_streams.c \
6377
6311
  test/core/end2end/tests/max_message_length.c \
6378
6312
  test/core/end2end/tests/negative_deadline.c \
6313
+ test/core/end2end/tests/network_status_change.c \
6379
6314
  test/core/end2end/tests/no_op.c \
6380
6315
  test/core/end2end/tests/payload.c \
6381
6316
  test/core/end2end/tests/ping.c \
@@ -6453,6 +6388,7 @@ LIBEND2END_NOSEC_TESTS_SRC = \
6453
6388
  test/core/end2end/tests/max_concurrent_streams.c \
6454
6389
  test/core/end2end/tests/max_message_length.c \
6455
6390
  test/core/end2end/tests/negative_deadline.c \
6391
+ test/core/end2end/tests/network_status_change.c \
6456
6392
  test/core/end2end/tests/no_op.c \
6457
6393
  test/core/end2end/tests/payload.c \
6458
6394
  test/core/end2end/tests/ping.c \
@@ -6655,6 +6591,38 @@ endif
6655
6591
  endif
6656
6592
 
6657
6593
 
6594
+ BAD_SERVER_RESPONSE_TEST_SRC = \
6595
+ test/core/end2end/bad_server_response_test.c \
6596
+
6597
+ BAD_SERVER_RESPONSE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(BAD_SERVER_RESPONSE_TEST_SRC))))
6598
+ ifeq ($(NO_SECURE),true)
6599
+
6600
+ # You can't build secure targets if you don't have OpenSSL.
6601
+
6602
+ $(BINDIR)/$(CONFIG)/bad_server_response_test: openssl_dep_error
6603
+
6604
+ else
6605
+
6606
+
6607
+
6608
+ $(BINDIR)/$(CONFIG)/bad_server_response_test: $(BAD_SERVER_RESPONSE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libtest_tcp_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
6609
+ $(E) "[LD] Linking $@"
6610
+ $(Q) mkdir -p `dirname $@`
6611
+ $(Q) $(LD) $(LDFLAGS) $(BAD_SERVER_RESPONSE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libtest_tcp_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/bad_server_response_test
6612
+
6613
+ endif
6614
+
6615
+ $(OBJDIR)/$(CONFIG)/test/core/end2end/bad_server_response_test.o: $(LIBDIR)/$(CONFIG)/libtest_tcp_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
6616
+
6617
+ deps_bad_server_response_test: $(BAD_SERVER_RESPONSE_TEST_OBJS:.o=.dep)
6618
+
6619
+ ifneq ($(NO_SECURE),true)
6620
+ ifneq ($(NO_DEPS),true)
6621
+ -include $(BAD_SERVER_RESPONSE_TEST_OBJS:.o=.dep)
6622
+ endif
6623
+ endif
6624
+
6625
+
6658
6626
  BIN_DECODER_TEST_SRC = \
6659
6627
  test/core/transport/chttp2/bin_decoder_test.c \
6660
6628
 
@@ -7135,6 +7103,38 @@ endif
7135
7103
  endif
7136
7104
 
7137
7105
 
7106
+ EV_EPOLL_LINUX_TEST_SRC = \
7107
+ test/core/iomgr/ev_epoll_linux_test.c \
7108
+
7109
+ EV_EPOLL_LINUX_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(EV_EPOLL_LINUX_TEST_SRC))))
7110
+ ifeq ($(NO_SECURE),true)
7111
+
7112
+ # You can't build secure targets if you don't have OpenSSL.
7113
+
7114
+ $(BINDIR)/$(CONFIG)/ev_epoll_linux_test: openssl_dep_error
7115
+
7116
+ else
7117
+
7118
+
7119
+
7120
+ $(BINDIR)/$(CONFIG)/ev_epoll_linux_test: $(EV_EPOLL_LINUX_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
7121
+ $(E) "[LD] Linking $@"
7122
+ $(Q) mkdir -p `dirname $@`
7123
+ $(Q) $(LD) $(LDFLAGS) $(EV_EPOLL_LINUX_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/ev_epoll_linux_test
7124
+
7125
+ endif
7126
+
7127
+ $(OBJDIR)/$(CONFIG)/test/core/iomgr/ev_epoll_linux_test.o: $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
7128
+
7129
+ deps_ev_epoll_linux_test: $(EV_EPOLL_LINUX_TEST_OBJS:.o=.dep)
7130
+
7131
+ ifneq ($(NO_SECURE),true)
7132
+ ifneq ($(NO_DEPS),true)
7133
+ -include $(EV_EPOLL_LINUX_TEST_OBJS:.o=.dep)
7134
+ endif
7135
+ endif
7136
+
7137
+
7138
7138
  FD_CONSERVATION_POSIX_TEST_SRC = \
7139
7139
  test/core/iomgr/fd_conservation_posix_test.c \
7140
7140
 
@@ -8173,14 +8173,14 @@ else
8173
8173
 
8174
8174
 
8175
8175
 
8176
- $(BINDIR)/$(CONFIG)/grpc_create_jwt: $(GRPC_CREATE_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8176
+ $(BINDIR)/$(CONFIG)/grpc_create_jwt: $(GRPC_CREATE_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8177
8177
  $(E) "[LD] Linking $@"
8178
8178
  $(Q) mkdir -p `dirname $@`
8179
- $(Q) $(LD) $(LDFLAGS) $(GRPC_CREATE_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_create_jwt
8179
+ $(Q) $(LD) $(LDFLAGS) $(GRPC_CREATE_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_create_jwt
8180
8180
 
8181
8181
  endif
8182
8182
 
8183
- $(OBJDIR)/$(CONFIG)/test/core/security/create_jwt.o: $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8183
+ $(OBJDIR)/$(CONFIG)/test/core/security/create_jwt.o: $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8184
8184
 
8185
8185
  deps_grpc_create_jwt: $(GRPC_CREATE_JWT_OBJS:.o=.dep)
8186
8186
 
@@ -8365,14 +8365,14 @@ else
8365
8365
 
8366
8366
 
8367
8367
 
8368
- $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token: $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8368
+ $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token: $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8369
8369
  $(E) "[LD] Linking $@"
8370
8370
  $(Q) mkdir -p `dirname $@`
8371
- $(Q) $(LD) $(LDFLAGS) $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token
8371
+ $(Q) $(LD) $(LDFLAGS) $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token
8372
8372
 
8373
8373
  endif
8374
8374
 
8375
- $(OBJDIR)/$(CONFIG)/test/core/security/print_google_default_creds_token.o: $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8375
+ $(OBJDIR)/$(CONFIG)/test/core/security/print_google_default_creds_token.o: $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8376
8376
 
8377
8377
  deps_grpc_print_google_default_creds_token: $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS:.o=.dep)
8378
8378
 
@@ -8429,14 +8429,14 @@ else
8429
8429
 
8430
8430
 
8431
8431
 
8432
- $(BINDIR)/$(CONFIG)/grpc_verify_jwt: $(GRPC_VERIFY_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8432
+ $(BINDIR)/$(CONFIG)/grpc_verify_jwt: $(GRPC_VERIFY_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8433
8433
  $(E) "[LD] Linking $@"
8434
8434
  $(Q) mkdir -p `dirname $@`
8435
- $(Q) $(LD) $(LDFLAGS) $(GRPC_VERIFY_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_verify_jwt
8435
+ $(Q) $(LD) $(LDFLAGS) $(GRPC_VERIFY_JWT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_verify_jwt
8436
8436
 
8437
8437
  endif
8438
8438
 
8439
- $(OBJDIR)/$(CONFIG)/test/core/security/verify_jwt.o: $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
8439
+ $(OBJDIR)/$(CONFIG)/test/core/security/verify_jwt.o: $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
8440
8440
 
8441
8441
  deps_grpc_verify_jwt: $(GRPC_VERIFY_JWT_OBJS:.o=.dep)
8442
8442
 
@@ -9983,38 +9983,6 @@ endif
9983
9983
  endif
9984
9984
 
9985
9985
 
9986
- TIMERS_TEST_SRC = \
9987
- test/core/profiling/timers_test.c \
9988
-
9989
- TIMERS_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(TIMERS_TEST_SRC))))
9990
- ifeq ($(NO_SECURE),true)
9991
-
9992
- # You can't build secure targets if you don't have OpenSSL.
9993
-
9994
- $(BINDIR)/$(CONFIG)/timers_test: openssl_dep_error
9995
-
9996
- else
9997
-
9998
-
9999
-
10000
- $(BINDIR)/$(CONFIG)/timers_test: $(TIMERS_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
10001
- $(E) "[LD] Linking $@"
10002
- $(Q) mkdir -p `dirname $@`
10003
- $(Q) $(LD) $(LDFLAGS) $(TIMERS_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/timers_test
10004
-
10005
- endif
10006
-
10007
- $(OBJDIR)/$(CONFIG)/test/core/profiling/timers_test.o: $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
10008
-
10009
- deps_timers_test: $(TIMERS_TEST_OBJS:.o=.dep)
10010
-
10011
- ifneq ($(NO_SECURE),true)
10012
- ifneq ($(NO_DEPS),true)
10013
- -include $(TIMERS_TEST_OBJS:.o=.dep)
10014
- endif
10015
- endif
10016
-
10017
-
10018
9986
  TRANSPORT_CONNECTIVITY_STATE_TEST_SRC = \
10019
9987
  test/core/transport/connectivity_state_test.c \
10020
9988