grpc 1.7.3 → 1.8.0

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 (616) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +2106 -2116
  3. data/include/grpc/census.h +1 -432
  4. data/include/grpc/compression.h +9 -9
  5. data/include/grpc/grpc.h +115 -98
  6. data/include/grpc/grpc_cronet.h +3 -3
  7. data/include/grpc/grpc_posix.h +4 -4
  8. data/include/grpc/grpc_security.h +160 -88
  9. data/include/grpc/grpc_security_constants.h +7 -0
  10. data/include/grpc/impl/codegen/atm.h +9 -1
  11. data/include/grpc/impl/codegen/atm_gcc_atomic.h +13 -4
  12. data/include/grpc/impl/codegen/atm_gcc_sync.h +6 -5
  13. data/include/grpc/impl/codegen/atm_windows.h +23 -22
  14. data/include/grpc/impl/codegen/byte_buffer.h +14 -14
  15. data/include/grpc/impl/codegen/byte_buffer_reader.h +2 -2
  16. data/include/grpc/impl/codegen/connectivity_state.h +0 -2
  17. data/include/grpc/impl/codegen/grpc_types.h +32 -28
  18. data/include/grpc/impl/codegen/port_platform.h +48 -0
  19. data/include/grpc/impl/codegen/slice.h +10 -10
  20. data/include/grpc/impl/codegen/sync_generic.h +9 -3
  21. data/include/grpc/slice.h +16 -17
  22. data/include/grpc/slice_buffer.h +22 -22
  23. data/include/grpc/support/alloc.h +11 -11
  24. data/include/grpc/support/avl.h +28 -20
  25. data/include/grpc/support/cmdline.h +13 -13
  26. data/include/grpc/support/histogram.h +17 -17
  27. data/include/grpc/support/host_port.h +2 -2
  28. data/include/grpc/support/log.h +9 -9
  29. data/include/grpc/support/log_windows.h +1 -1
  30. data/include/grpc/support/string_util.h +2 -2
  31. data/include/grpc/support/subprocess.h +5 -5
  32. data/include/grpc/support/sync.h +43 -27
  33. data/include/grpc/support/thd.h +6 -6
  34. data/include/grpc/support/tls_gcc.h +1 -1
  35. data/include/grpc/support/tls_pthread.h +1 -1
  36. data/src/core/ext/census/{grpc_context.c → grpc_context.cc} +5 -8
  37. data/src/core/ext/filters/client_channel/backup_poller.cc +165 -0
  38. data/src/core/ext/{census/grpc_filter.h → filters/client_channel/backup_poller.h} +12 -7
  39. data/src/core/ext/filters/client_channel/{channel_connectivity.c → channel_connectivity.cc} +45 -42
  40. data/src/core/ext/filters/client_channel/{client_channel.c → client_channel.cc} +452 -417
  41. data/src/core/ext/filters/client_channel/client_channel.h +16 -8
  42. data/src/core/ext/filters/client_channel/{client_channel_factory.c → client_channel_factory.cc} +0 -0
  43. data/src/core/ext/filters/client_channel/client_channel_factory.h +29 -21
  44. data/src/core/ext/filters/client_channel/{client_channel_plugin.c → client_channel_plugin.cc} +15 -19
  45. data/src/core/ext/filters/client_channel/{connector.c → connector.cc} +0 -0
  46. data/src/core/ext/filters/client_channel/connector.h +29 -21
  47. data/src/core/ext/filters/client_channel/{http_connect_handshaker.c → http_connect_handshaker.cc} +10 -10
  48. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +8 -0
  49. data/src/core/ext/filters/client_channel/{http_proxy.c → http_proxy.cc} +14 -14
  50. data/src/core/ext/filters/client_channel/http_proxy.h +8 -0
  51. data/src/core/ext/filters/client_channel/{lb_policy.c → lb_policy.cc} +47 -48
  52. data/src/core/ext/filters/client_channel/lb_policy.h +76 -70
  53. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{client_load_reporting_filter.c → client_load_reporting_filter.cc} +28 -29
  54. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +9 -1
  55. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb.c → grpclb.cc} +554 -563
  56. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +9 -1
  57. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +17 -9
  58. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_channel_secure.c → grpclb_channel_secure.cc} +17 -17
  59. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_client_stats.c → grpclb_client_stats.cc} +3 -3
  60. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +9 -1
  61. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{load_balancer_api.c → load_balancer_api.cc} +64 -67
  62. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +20 -21
  63. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +599 -0
  64. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +695 -0
  65. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +270 -0
  66. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +153 -0
  67. data/src/core/ext/filters/client_channel/{lb_policy_factory.c → lb_policy_factory.cc} +10 -10
  68. data/src/core/ext/filters/client_channel/lb_policy_factory.h +48 -40
  69. data/src/core/ext/filters/client_channel/{lb_policy_registry.c → lb_policy_registry.cc} +9 -9
  70. data/src/core/ext/filters/client_channel/lb_policy_registry.h +11 -3
  71. data/src/core/ext/filters/client_channel/{parse_address.c → parse_address.cc} +24 -24
  72. data/src/core/ext/filters/client_channel/parse_address.h +14 -6
  73. data/src/core/ext/filters/client_channel/{proxy_mapper.c → proxy_mapper.cc} +0 -0
  74. data/src/core/ext/filters/client_channel/proxy_mapper.h +8 -0
  75. data/src/core/ext/filters/client_channel/{proxy_mapper_registry.c → proxy_mapper_registry.cc} +0 -0
  76. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +8 -0
  77. data/src/core/ext/filters/client_channel/{resolver.c → resolver.cc} +21 -23
  78. data/src/core/ext/filters/client_channel/resolver.h +33 -27
  79. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{dns_resolver_ares.c → dns_resolver_ares.cc} +133 -133
  80. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +18 -9
  81. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{grpc_ares_ev_driver_posix.c → grpc_ares_ev_driver_posix.cc} +58 -56
  82. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{grpc_ares_wrapper.c → grpc_ares_wrapper.cc} +118 -115
  83. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +23 -15
  84. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +60 -0
  85. data/src/core/ext/filters/client_channel/resolver/dns/native/{dns_resolver.c → dns_resolver.cc} +100 -94
  86. data/src/core/ext/filters/client_channel/resolver/fake/{fake_resolver.c → fake_resolver.cc} +14 -14
  87. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +9 -1
  88. data/src/core/ext/filters/client_channel/resolver/sockaddr/{sockaddr_resolver.c → sockaddr_resolver.cc} +60 -60
  89. data/src/core/ext/filters/client_channel/{resolver_factory.c → resolver_factory.cc} +2 -2
  90. data/src/core/ext/filters/client_channel/resolver_factory.h +27 -19
  91. data/src/core/ext/filters/client_channel/{resolver_registry.c → resolver_registry.cc} +35 -35
  92. data/src/core/ext/filters/client_channel/resolver_registry.h +18 -10
  93. data/src/core/ext/filters/client_channel/{retry_throttle.c → retry_throttle.cc} +10 -10
  94. data/src/core/ext/filters/client_channel/retry_throttle.h +8 -0
  95. data/src/core/ext/filters/client_channel/{subchannel.c → subchannel.cc} +210 -213
  96. data/src/core/ext/filters/client_channel/subchannel.h +68 -60
  97. data/src/core/ext/filters/client_channel/{subchannel_index.c → subchannel_index.cc} +52 -52
  98. data/src/core/ext/filters/client_channel/subchannel_index.h +22 -14
  99. data/src/core/ext/filters/client_channel/{uri_parser.c → uri_parser.cc} +29 -27
  100. data/src/core/ext/filters/client_channel/uri_parser.h +18 -10
  101. data/src/core/ext/filters/deadline/{deadline_filter.c → deadline_filter.cc} +12 -15
  102. data/src/core/ext/filters/deadline/deadline_filter.h +11 -2
  103. data/src/core/ext/filters/http/client/{http_client_filter.c → http_client_filter.cc} +83 -83
  104. data/src/core/ext/filters/http/client/http_client_filter.h +8 -0
  105. data/src/core/ext/filters/http/{http_filters_plugin.c → http_filters_plugin.cc} +20 -21
  106. data/src/core/ext/filters/http/message_compress/{message_compress_filter.c → message_compress_filter.cc} +84 -83
  107. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +9 -1
  108. data/src/core/ext/filters/http/server/{http_server_filter.c → http_server_filter.cc} +80 -78
  109. data/src/core/ext/filters/http/server/http_server_filter.h +8 -0
  110. data/src/core/ext/filters/load_reporting/{server_load_reporting_filter.c → server_load_reporting_filter.cc} +29 -29
  111. data/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +9 -1
  112. data/src/core/ext/filters/load_reporting/{server_load_reporting_plugin.c → server_load_reporting_plugin.cc} +11 -11
  113. data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.h +13 -5
  114. data/src/core/ext/filters/max_age/{max_age_filter.c → max_age_filter.cc} +46 -56
  115. data/src/core/ext/filters/max_age/max_age_filter.h +8 -0
  116. data/src/core/ext/filters/message_size/{message_size_filter.c → message_size_filter.cc} +62 -40
  117. data/src/core/ext/filters/message_size/message_size_filter.h +8 -0
  118. data/src/core/ext/filters/workarounds/{workaround_cronet_compression_filter.c → workaround_cronet_compression_filter.cc} +11 -11
  119. data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +8 -0
  120. data/src/core/ext/filters/workarounds/{workaround_utils.c → workaround_utils.cc} +7 -7
  121. data/src/core/ext/filters/workarounds/workaround_utils.h +9 -1
  122. data/src/core/ext/transport/chttp2/alpn/{alpn.c → alpn.cc} +3 -3
  123. data/src/core/ext/transport/chttp2/alpn/alpn.h +10 -2
  124. data/src/core/ext/transport/chttp2/client/{chttp2_connector.c → chttp2_connector.cc} +49 -45
  125. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +8 -0
  126. data/src/core/ext/transport/chttp2/client/insecure/{channel_create.c → channel_create.cc} +28 -27
  127. data/src/core/ext/transport/chttp2/client/insecure/{channel_create_posix.c → channel_create_posix.cc} +14 -13
  128. data/src/core/ext/transport/chttp2/client/secure/{secure_channel_create.c → secure_channel_create.cc} +68 -66
  129. data/src/core/ext/transport/chttp2/server/{chttp2_server.c → chttp2_server.cc} +76 -77
  130. data/src/core/ext/transport/chttp2/server/chttp2_server.h +11 -3
  131. data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2.c → server_chttp2.cc} +3 -3
  132. data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2_posix.c → server_chttp2_posix.cc} +13 -12
  133. data/src/core/ext/transport/chttp2/server/secure/{server_secure_chttp2.c → server_secure_chttp2.cc} +12 -10
  134. data/src/core/ext/transport/chttp2/transport/{bin_decoder.c → bin_decoder.cc} +7 -7
  135. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +15 -7
  136. data/src/core/ext/transport/chttp2/transport/{bin_encoder.c → bin_encoder.cc} +11 -11
  137. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +8 -0
  138. data/src/core/ext/transport/chttp2/transport/{chttp2_plugin.c → chttp2_plugin.cc} +2 -9
  139. data/src/core/ext/transport/chttp2/transport/{chttp2_transport.c → chttp2_transport.cc} +778 -778
  140. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +14 -10
  141. data/src/core/ext/transport/chttp2/transport/flow_control.cc +385 -0
  142. data/src/core/ext/transport/chttp2/transport/flow_control.h +337 -0
  143. data/src/core/ext/transport/chttp2/transport/frame.h +8 -0
  144. data/src/core/ext/transport/chttp2/transport/{frame_data.c → frame_data.cc} +34 -34
  145. data/src/core/ext/transport/chttp2/transport/frame_data.h +25 -17
  146. data/src/core/ext/transport/chttp2/transport/{frame_goaway.c → frame_goaway.cc} +18 -18
  147. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +18 -10
  148. data/src/core/ext/transport/chttp2/transport/{frame_ping.c → frame_ping.cc} +18 -19
  149. data/src/core/ext/transport/chttp2/transport/frame_ping.h +12 -4
  150. data/src/core/ext/transport/chttp2/transport/{frame_rst_stream.c → frame_rst_stream.cc} +16 -16
  151. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +16 -8
  152. data/src/core/ext/transport/chttp2/transport/{frame_settings.c → frame_settings.cc} +23 -24
  153. data/src/core/ext/transport/chttp2/transport/frame_settings.h +17 -9
  154. data/src/core/ext/transport/chttp2/transport/{frame_window_update.c → frame_window_update.cc} +22 -24
  155. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +14 -6
  156. data/src/core/ext/transport/chttp2/transport/{hpack_encoder.c → hpack_encoder.cc} +206 -161
  157. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +23 -13
  158. data/src/core/ext/transport/chttp2/transport/{hpack_parser.c → hpack_parser.cc} +340 -334
  159. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +30 -22
  160. data/src/core/ext/transport/chttp2/transport/{hpack_table.c → hpack_table.cc} +25 -25
  161. data/src/core/ext/transport/chttp2/transport/hpack_table.h +19 -11
  162. data/src/core/ext/transport/chttp2/transport/{http2_settings.c → http2_settings.cc} +1 -1
  163. data/src/core/ext/transport/chttp2/transport/http2_settings.h +10 -2
  164. data/src/core/ext/transport/chttp2/transport/{huffsyms.c → huffsyms.cc} +0 -0
  165. data/src/core/ext/transport/chttp2/transport/huffsyms.h +8 -0
  166. data/src/core/ext/transport/chttp2/transport/{incoming_metadata.c → incoming_metadata.cc} +14 -13
  167. data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +18 -10
  168. data/src/core/ext/transport/chttp2/transport/internal.h +214 -340
  169. data/src/core/ext/transport/chttp2/transport/{parsing.c → parsing.cc} +152 -141
  170. data/src/core/ext/transport/chttp2/transport/{stream_lists.c → stream_lists.cc} +53 -53
  171. data/src/core/ext/transport/chttp2/transport/{stream_map.c → stream_map.cc} +35 -34
  172. data/src/core/ext/transport/chttp2/transport/stream_map.h +22 -14
  173. data/src/core/ext/transport/chttp2/transport/{varint.c → varint.cc} +0 -0
  174. data/src/core/ext/transport/chttp2/transport/varint.h +8 -0
  175. data/src/core/ext/transport/chttp2/transport/writing.cc +636 -0
  176. data/src/core/ext/transport/inproc/{inproc_plugin.c → inproc_plugin.cc} +5 -6
  177. data/src/core/ext/transport/inproc/{inproc_transport.c → inproc_transport.cc} +479 -544
  178. data/src/core/ext/transport/inproc/inproc_transport.h +4 -4
  179. data/src/core/lib/backoff/backoff.cc +80 -0
  180. data/src/core/lib/backoff/backoff.h +83 -0
  181. data/src/core/lib/channel/{channel_args.c → channel_args.cc} +92 -92
  182. data/src/core/lib/channel/channel_args.h +45 -37
  183. data/src/core/lib/channel/{channel_stack.c → channel_stack.cc} +67 -68
  184. data/src/core/lib/channel/channel_stack.h +76 -75
  185. data/src/core/lib/channel/{channel_stack_builder.c → channel_stack_builder.cc} +91 -91
  186. data/src/core/lib/channel/channel_stack_builder.h +45 -45
  187. data/src/core/lib/channel/{connected_channel.c → connected_channel.cc} +70 -70
  188. data/src/core/lib/channel/connected_channel.h +12 -4
  189. data/src/core/lib/channel/context.h +2 -2
  190. data/src/core/lib/channel/{handshaker.c → handshaker.cc} +7 -9
  191. data/src/core/lib/channel/handshaker.h +9 -1
  192. data/src/core/lib/channel/{handshaker_factory.c → handshaker_factory.cc} +7 -7
  193. data/src/core/lib/channel/handshaker_factory.h +18 -10
  194. data/src/core/lib/channel/{handshaker_registry.c → handshaker_registry.cc} +0 -0
  195. data/src/core/lib/channel/handshaker_registry.h +8 -0
  196. data/src/core/lib/compression/algorithm_metadata.h +8 -0
  197. data/src/core/lib/compression/{compression.c → compression.cc} +9 -9
  198. data/src/core/lib/compression/{message_compress.c → message_compress.cc} +0 -0
  199. data/src/core/lib/compression/message_compress.h +8 -0
  200. data/src/core/lib/compression/{stream_compression.c → stream_compression.cc} +12 -12
  201. data/src/core/lib/compression/stream_compression.h +27 -19
  202. data/src/core/lib/compression/{stream_compression_gzip.c → stream_compression_gzip.cc} +35 -36
  203. data/src/core/lib/compression/stream_compression_gzip.h +8 -0
  204. data/src/core/lib/compression/{stream_compression_identity.c → stream_compression_identity.cc} +19 -20
  205. data/src/core/lib/compression/stream_compression_identity.h +8 -0
  206. data/src/core/lib/debug/{stats.c → stats.cc} +19 -19
  207. data/src/core/lib/debug/stats.h +17 -9
  208. data/src/core/lib/debug/{stats_data.c → stats_data.cc} +45 -22
  209. data/src/core/lib/debug/stats_data.h +58 -19
  210. data/src/core/lib/debug/trace.cc +142 -0
  211. data/src/core/lib/debug/trace.h +74 -14
  212. data/src/core/lib/http/{format_request.c → format_request.cc} +10 -10
  213. data/src/core/lib/http/format_request.h +12 -4
  214. data/src/core/lib/http/{httpcli.c → httpcli.cc} +80 -80
  215. data/src/core/lib/http/httpcli.h +41 -33
  216. data/src/core/lib/http/{httpcli_security_connector.c → httpcli_security_connector.cc} +69 -55
  217. data/src/core/lib/http/{parser.c → parser.cc} +42 -42
  218. data/src/core/lib/http/parser.h +28 -20
  219. data/src/core/lib/{support → iomgr}/block_annotate.h +17 -8
  220. data/src/core/lib/iomgr/{call_combiner.c → call_combiner.cc} +29 -17
  221. data/src/core/lib/iomgr/call_combiner.h +9 -1
  222. data/src/core/lib/iomgr/closure.h +220 -62
  223. data/src/core/lib/iomgr/{combiner.c → combiner.cc} +63 -62
  224. data/src/core/lib/iomgr/combiner.h +16 -8
  225. data/src/core/lib/iomgr/{endpoint.c → endpoint.cc} +6 -0
  226. data/src/core/lib/iomgr/endpoint.h +47 -32
  227. data/src/core/lib/iomgr/endpoint_pair.h +12 -4
  228. data/src/core/lib/iomgr/{endpoint_pair_posix.c → endpoint_pair_posix.cc} +3 -3
  229. data/src/core/lib/iomgr/{endpoint_pair_uv.c → endpoint_pair_uv.cc} +2 -2
  230. data/src/core/lib/iomgr/{endpoint_pair_windows.c → endpoint_pair_windows.cc} +6 -6
  231. data/src/core/lib/iomgr/{error.c → error.cc} +125 -124
  232. data/src/core/lib/iomgr/error.h +32 -27
  233. data/src/core/lib/iomgr/error_internal.h +11 -2
  234. data/src/core/lib/iomgr/{ev_epoll1_linux.c → ev_epoll1_linux.cc} +214 -215
  235. data/src/core/lib/iomgr/ev_epoll1_linux.h +9 -1
  236. data/src/core/lib/iomgr/ev_epollex_linux.cc +1488 -0
  237. data/src/core/lib/iomgr/ev_epollex_linux.h +9 -1
  238. data/src/core/lib/iomgr/{ev_epollsig_linux.c → ev_epollsig_linux.cc} +304 -305
  239. data/src/core/lib/iomgr/ev_epollsig_linux.h +12 -4
  240. data/src/core/lib/iomgr/{ev_poll_posix.c → ev_poll_posix.cc} +272 -283
  241. data/src/core/lib/iomgr/ev_poll_posix.h +10 -2
  242. data/src/core/lib/iomgr/ev_posix.cc +288 -0
  243. data/src/core/lib/iomgr/ev_posix.h +75 -67
  244. data/src/core/lib/iomgr/{ev_windows.c → ev_windows.cc} +2 -2
  245. data/src/core/lib/iomgr/exec_ctx.cc +177 -0
  246. data/src/core/lib/iomgr/exec_ctx.h +35 -13
  247. data/src/core/lib/iomgr/{executor.c → executor.cc} +34 -35
  248. data/src/core/lib/iomgr/executor.h +12 -4
  249. data/src/core/lib/iomgr/{fork_posix.c → fork_posix.cc} +0 -0
  250. data/src/core/lib/iomgr/{fork_windows.c → fork_windows.cc} +0 -0
  251. data/src/core/lib/iomgr/gethostname.h +9 -1
  252. data/src/core/lib/iomgr/{gethostname_fallback.c → gethostname_fallback.cc} +2 -1
  253. data/src/core/lib/iomgr/{gethostname_host_name_max.c → gethostname_host_name_max.cc} +4 -3
  254. data/src/core/lib/iomgr/{gethostname_sysconf.c → gethostname_sysconf.cc} +3 -2
  255. data/src/core/lib/iomgr/{iocp_windows.c → iocp_windows.cc} +23 -25
  256. data/src/core/lib/iomgr/iocp_windows.h +17 -3
  257. data/src/core/lib/iomgr/{iomgr.c → iomgr.cc} +25 -19
  258. data/src/core/lib/iomgr/iomgr.h +11 -3
  259. data/src/core/lib/iomgr/iomgr_internal.h +13 -5
  260. data/src/core/lib/iomgr/{iomgr_posix.c → iomgr_posix.cc} +0 -1
  261. data/src/core/lib/iomgr/{iomgr_uv.c → iomgr_uv.cc} +1 -1
  262. data/src/core/lib/iomgr/iomgr_uv.h +8 -0
  263. data/src/core/lib/iomgr/{iomgr_windows.c → iomgr_windows.cc} +0 -0
  264. data/src/core/lib/iomgr/{is_epollexclusive_available.c → is_epollexclusive_available.cc} +1 -1
  265. data/src/core/lib/iomgr/is_epollexclusive_available.h +8 -0
  266. data/src/core/lib/iomgr/{load_file.c → load_file.cc} +12 -12
  267. data/src/core/lib/iomgr/load_file.h +2 -2
  268. data/src/core/lib/iomgr/{lockfree_event.c → lockfree_event.cc} +76 -68
  269. data/src/core/lib/iomgr/lockfree_event.h +30 -11
  270. data/src/core/lib/iomgr/{network_status_tracker.c → network_status_tracker.cc} +3 -2
  271. data/src/core/lib/iomgr/network_status_tracker.h +2 -2
  272. data/src/core/lib/iomgr/{polling_entity.c → polling_entity.cc} +18 -18
  273. data/src/core/lib/iomgr/polling_entity.h +21 -13
  274. data/src/core/lib/iomgr/pollset.h +17 -11
  275. data/src/core/lib/iomgr/pollset_set.h +23 -15
  276. data/src/core/lib/iomgr/{pollset_set_uv.c → pollset_set_uv.cc} +0 -0
  277. data/src/core/lib/iomgr/{pollset_set_windows.c → pollset_set_windows.cc} +0 -0
  278. data/src/core/lib/iomgr/{pollset_uv.c → pollset_uv.cc} +31 -29
  279. data/src/core/lib/iomgr/pollset_uv.h +8 -0
  280. data/src/core/lib/iomgr/{pollset_windows.c → pollset_windows.cc} +24 -24
  281. data/src/core/lib/iomgr/pollset_windows.h +17 -4
  282. data/src/core/lib/iomgr/port.h +10 -0
  283. data/src/core/lib/iomgr/resolve_address.h +18 -10
  284. data/src/core/lib/iomgr/{resolve_address_posix.c → resolve_address_posix.cc} +40 -40
  285. data/src/core/lib/iomgr/{resolve_address_uv.c → resolve_address_uv.cc} +61 -56
  286. data/src/core/lib/iomgr/{resolve_address_windows.c → resolve_address_windows.cc} +36 -34
  287. data/src/core/lib/iomgr/{resource_quota.c → resource_quota.cc} +209 -180
  288. data/src/core/lib/iomgr/resource_quota.h +45 -37
  289. data/src/core/lib/iomgr/{sockaddr_utils.c → sockaddr_utils.cc} +61 -61
  290. data/src/core/lib/iomgr/sockaddr_utils.h +23 -15
  291. data/src/core/lib/iomgr/sockaddr_windows.h +6 -0
  292. data/src/core/lib/iomgr/{socket_factory_posix.c → socket_factory_posix.cc} +20 -20
  293. data/src/core/lib/iomgr/socket_factory_posix.h +15 -15
  294. data/src/core/lib/iomgr/{socket_mutator.c → socket_mutator.cc} +18 -18
  295. data/src/core/lib/iomgr/socket_mutator.h +11 -11
  296. data/src/core/lib/iomgr/socket_utils.h +9 -1
  297. data/src/core/lib/iomgr/{socket_utils_common_posix.c → socket_utils_common_posix.cc} +28 -28
  298. data/src/core/lib/iomgr/{socket_utils_linux.c → socket_utils_linux.cc} +3 -3
  299. data/src/core/lib/iomgr/{socket_utils_posix.c → socket_utils_posix.cc} +3 -3
  300. data/src/core/lib/iomgr/socket_utils_posix.h +26 -18
  301. data/src/core/lib/iomgr/{socket_utils_uv.c → socket_utils_uv.cc} +1 -1
  302. data/src/core/lib/iomgr/{socket_utils_windows.c → socket_utils_windows.cc} +2 -2
  303. data/src/core/lib/iomgr/{socket_windows.c → socket_windows.cc} +18 -18
  304. data/src/core/lib/iomgr/socket_windows.h +26 -13
  305. data/src/core/lib/iomgr/tcp_client.h +14 -6
  306. data/src/core/lib/iomgr/{tcp_client_posix.c → tcp_client_posix.cc} +69 -70
  307. data/src/core/lib/iomgr/tcp_client_posix.h +11 -3
  308. data/src/core/lib/iomgr/{tcp_client_uv.c → tcp_client_uv.cc} +47 -48
  309. data/src/core/lib/iomgr/{tcp_client_windows.c → tcp_client_windows.cc} +46 -44
  310. data/src/core/lib/iomgr/{tcp_posix.c → tcp_posix.cc} +198 -175
  311. data/src/core/lib/iomgr/tcp_posix.h +15 -7
  312. data/src/core/lib/iomgr/tcp_server.h +31 -23
  313. data/src/core/lib/iomgr/{tcp_server_posix.c → tcp_server_posix.cc} +78 -77
  314. data/src/core/lib/iomgr/tcp_server_utils_posix.h +27 -19
  315. data/src/core/lib/iomgr/{tcp_server_utils_posix_common.c → tcp_server_utils_posix_common.cc} +27 -27
  316. data/src/core/lib/iomgr/{tcp_server_utils_posix_ifaddrs.c → tcp_server_utils_posix_ifaddrs.cc} +25 -25
  317. data/src/core/lib/iomgr/{tcp_server_utils_posix_noifaddrs.c → tcp_server_utils_posix_noifaddrs.cc} +2 -2
  318. data/src/core/lib/iomgr/{tcp_server_uv.c → tcp_server_uv.cc} +133 -105
  319. data/src/core/lib/iomgr/{tcp_server_windows.c → tcp_server_windows.cc} +81 -77
  320. data/src/core/lib/iomgr/tcp_uv.cc +420 -0
  321. data/src/core/lib/iomgr/tcp_uv.h +18 -4
  322. data/src/core/lib/iomgr/{tcp_windows.c → tcp_windows.cc} +90 -79
  323. data/src/core/lib/iomgr/tcp_windows.h +17 -4
  324. data/src/core/lib/iomgr/{time_averaged_stats.c → time_averaged_stats.cc} +0 -0
  325. data/src/core/lib/iomgr/time_averaged_stats.h +8 -0
  326. data/src/core/lib/iomgr/timer.h +16 -9
  327. data/src/core/lib/iomgr/{timer_generic.c → timer_generic.cc} +130 -171
  328. data/src/core/lib/iomgr/timer_generic.h +4 -4
  329. data/src/core/lib/iomgr/{timer_heap.c → timer_heap.cc} +20 -21
  330. data/src/core/lib/iomgr/timer_heap.h +16 -8
  331. data/src/core/lib/iomgr/{timer_manager.c → timer_manager.cc} +54 -52
  332. data/src/core/lib/iomgr/timer_manager.h +8 -0
  333. data/src/core/lib/iomgr/{timer_uv.c → timer_uv.cc} +22 -24
  334. data/src/core/lib/iomgr/timer_uv.h +2 -2
  335. data/src/core/lib/iomgr/{udp_server.c → udp_server.cc} +75 -75
  336. data/src/core/lib/iomgr/udp_server.h +25 -17
  337. data/src/core/lib/iomgr/{unix_sockets_posix.c → unix_sockets_posix.cc} +22 -21
  338. data/src/core/lib/iomgr/unix_sockets_posix.h +14 -6
  339. data/src/core/lib/iomgr/{unix_sockets_posix_noop.c → unix_sockets_posix_noop.cc} +5 -5
  340. data/src/core/lib/iomgr/{wakeup_fd_cv.c → wakeup_fd_cv.cc} +2 -2
  341. data/src/core/lib/iomgr/wakeup_fd_cv.h +10 -0
  342. data/src/core/lib/iomgr/{wakeup_fd_eventfd.c → wakeup_fd_eventfd.cc} +0 -0
  343. data/src/core/lib/iomgr/{wakeup_fd_nospecial.c → wakeup_fd_nospecial.cc} +0 -0
  344. data/src/core/lib/iomgr/{wakeup_fd_pipe.c → wakeup_fd_pipe.cc} +1 -0
  345. data/src/core/lib/iomgr/wakeup_fd_pipe.h +9 -1
  346. data/src/core/lib/iomgr/{wakeup_fd_posix.c → wakeup_fd_posix.cc} +6 -7
  347. data/src/core/lib/iomgr/wakeup_fd_posix.h +8 -0
  348. data/src/core/lib/json/{json.c → json.cc} +0 -0
  349. data/src/core/lib/json/json.h +8 -0
  350. data/src/core/lib/json/{json_reader.c → json_reader.cc} +18 -18
  351. data/src/core/lib/json/json_reader.h +26 -18
  352. data/src/core/lib/json/{json_string.c → json_string.cc} +57 -57
  353. data/src/core/lib/json/{json_writer.c → json_writer.cc} +20 -20
  354. data/src/core/lib/json/json_writer.h +23 -15
  355. data/src/core/lib/profiling/{basic_timers.c → basic_timers.cc} +34 -34
  356. data/src/core/lib/profiling/{stap_timers.c → stap_timers.cc} +5 -5
  357. data/src/core/lib/profiling/timers.h +6 -6
  358. data/src/core/lib/security/context/{security_context.c → security_context.cc} +98 -95
  359. data/src/core/lib/security/context/security_context.h +27 -29
  360. data/src/core/lib/security/credentials/composite/{composite_credentials.c → composite_credentials.cc} +79 -73
  361. data/src/core/lib/security/credentials/composite/composite_credentials.h +17 -9
  362. data/src/core/lib/security/credentials/{credentials.c → credentials.cc} +97 -92
  363. data/src/core/lib/security/credentials/credentials.h +83 -75
  364. data/src/core/lib/security/credentials/{credentials_metadata.c → credentials_metadata.cc} +7 -6
  365. data/src/core/lib/security/credentials/fake/{fake_credentials.c → fake_credentials.cc} +39 -36
  366. data/src/core/lib/security/credentials/fake/fake_credentials.h +13 -5
  367. data/src/core/lib/security/credentials/google_default/{credentials_generic.c → credentials_generic.cc} +5 -5
  368. data/src/core/lib/security/credentials/google_default/{google_default_credentials.c → google_default_credentials.cc} +55 -55
  369. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +9 -1
  370. data/src/core/lib/security/credentials/iam/{iam_credentials.c → iam_credentials.cc} +19 -18
  371. data/src/core/lib/security/credentials/jwt/{json_token.c → json_token.cc} +80 -75
  372. data/src/core/lib/security/credentials/jwt/json_token.h +23 -15
  373. data/src/core/lib/security/credentials/jwt/{jwt_credentials.c → jwt_credentials.cc} +45 -41
  374. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +11 -3
  375. data/src/core/lib/security/credentials/jwt/{jwt_verifier.c → jwt_verifier.cc} +262 -252
  376. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +38 -30
  377. data/src/core/lib/security/credentials/oauth2/{oauth2_credentials.c → oauth2_credentials.cc} +138 -141
  378. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +30 -22
  379. data/src/core/lib/security/credentials/plugin/{plugin_credentials.c → plugin_credentials.cc} +52 -53
  380. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +7 -7
  381. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +344 -0
  382. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +27 -0
  383. data/src/core/lib/security/transport/auth_filters.h +16 -0
  384. data/src/core/lib/security/transport/{client_auth_filter.c → client_auth_filter.cc} +127 -115
  385. data/src/core/lib/security/transport/{lb_targets_info.c → lb_targets_info.cc} +16 -13
  386. data/src/core/lib/security/transport/lb_targets_info.h +11 -3
  387. data/src/core/lib/security/transport/{secure_endpoint.c → secure_endpoint.cc} +84 -76
  388. data/src/core/lib/security/transport/secure_endpoint.h +13 -5
  389. data/src/core/lib/security/transport/security_connector.cc +1121 -0
  390. data/src/core/lib/security/transport/security_connector.h +97 -79
  391. data/src/core/lib/security/transport/{security_handshaker.c → security_handshaker.cc} +139 -132
  392. data/src/core/lib/security/transport/security_handshaker.h +11 -3
  393. data/src/core/lib/security/transport/{server_auth_filter.c → server_auth_filter.cc} +68 -68
  394. data/src/core/lib/security/transport/{tsi_error.c → tsi_error.cc} +1 -1
  395. data/src/core/lib/security/transport/tsi_error.h +9 -1
  396. data/src/core/lib/security/util/{json_util.c → json_util.cc} +11 -11
  397. data/src/core/lib/security/util/json_util.h +12 -4
  398. data/src/core/lib/slice/{b64.c → b64.cc} +15 -15
  399. data/src/core/lib/slice/b64.h +12 -4
  400. data/src/core/lib/slice/{percent_encoding.c → percent_encoding.cc} +15 -15
  401. data/src/core/lib/slice/percent_encoding.h +11 -3
  402. data/src/core/lib/slice/{slice.c → slice.cc} +64 -64
  403. data/src/core/lib/slice/{slice_buffer.c → slice_buffer.cc} +38 -38
  404. data/src/core/lib/slice/{slice_hash_table.c → slice_hash_table.cc} +7 -7
  405. data/src/core/lib/slice/slice_hash_table.h +19 -11
  406. data/src/core/lib/slice/{slice_intern.c → slice_intern.cc} +35 -34
  407. data/src/core/lib/slice/slice_internal.h +17 -6
  408. data/src/core/lib/slice/{slice_string_helpers.c → slice_string_helpers.cc} +9 -9
  409. data/src/core/lib/slice/slice_string_helpers.h +3 -3
  410. data/src/core/lib/support/abstract.h +29 -0
  411. data/src/core/lib/support/{alloc.c → alloc.cc} +22 -22
  412. data/src/core/lib/support/{arena.c → arena.cc} +12 -12
  413. data/src/core/lib/support/arena.h +11 -3
  414. data/src/core/lib/support/{atm.c → atm.cc} +1 -1
  415. data/src/core/lib/support/{avl.c → avl.cc} +71 -70
  416. data/src/core/lib/support/{cmdline.c → cmdline.cc} +62 -62
  417. data/src/core/lib/support/{cpu_iphone.c → cpu_iphone.cc} +2 -0
  418. data/src/core/lib/support/{cpu_linux.c → cpu_linux.cc} +10 -0
  419. data/src/core/lib/support/{cpu_posix.c → cpu_posix.cc} +27 -4
  420. data/src/core/lib/support/{cpu_windows.c → cpu_windows.cc} +1 -0
  421. data/src/core/lib/support/env.h +3 -3
  422. data/src/core/lib/support/{env_linux.c → env_linux.cc} +11 -11
  423. data/src/core/lib/support/{env_posix.c → env_posix.cc} +4 -4
  424. data/src/core/lib/support/{env_windows.c → env_windows.cc} +5 -5
  425. data/src/core/lib/support/{fork.c → fork.cc} +2 -2
  426. data/src/core/lib/support/{histogram.c → histogram.cc} +25 -26
  427. data/src/core/lib/support/{host_port.c → host_port.cc} +16 -16
  428. data/src/core/lib/support/{log.c → log.cc} +8 -8
  429. data/src/core/lib/support/{log_android.c → log_android.cc} +7 -7
  430. data/src/core/lib/support/{log_linux.c → log_linux.cc} +8 -8
  431. data/src/core/lib/support/{log_posix.c → log_posix.cc} +9 -10
  432. data/src/core/lib/support/{log_windows.c → log_windows.cc} +7 -7
  433. data/src/core/lib/support/manual_constructor.h +211 -0
  434. data/src/core/lib/support/memory.h +41 -0
  435. data/src/core/lib/support/mpscq.cc +114 -0
  436. data/src/core/lib/support/mpscq.h +45 -7
  437. data/src/core/lib/support/{murmur_hash.c → murmur_hash.cc} +9 -12
  438. data/src/core/lib/support/murmur_hash.h +9 -1
  439. data/src/core/lib/support/spinlock.h +8 -1
  440. data/src/core/lib/support/{string.c → string.cc} +56 -55
  441. data/src/core/lib/support/string.h +21 -21
  442. data/src/core/lib/support/{string_posix.c → string_posix.cc} +5 -4
  443. data/src/core/lib/support/{string_util_windows.c → string_util_windows.cc} +9 -6
  444. data/src/core/lib/support/{string_windows.c → string_windows.cc} +3 -2
  445. data/src/core/lib/support/string_windows.h +8 -0
  446. data/src/core/lib/support/{subprocess_posix.c → subprocess_posix.cc} +13 -13
  447. data/src/core/lib/support/{subprocess_windows.c → subprocess_windows.cc} +9 -9
  448. data/src/core/lib/support/{sync.c → sync.cc} +22 -22
  449. data/src/core/lib/support/{sync_posix.c → sync_posix.cc} +6 -2
  450. data/src/core/lib/support/{sync_windows.c → sync_windows.cc} +14 -14
  451. data/src/core/lib/support/{thd.c → thd.cc} +0 -0
  452. data/src/core/lib/support/{thd_posix.c → thd_posix.cc} +10 -10
  453. data/src/core/lib/support/{thd_windows.c → thd_windows.cc} +10 -10
  454. data/src/core/lib/support/{time.c → time.cc} +0 -0
  455. data/src/core/lib/support/{time_posix.c → time_posix.cc} +5 -6
  456. data/src/core/lib/support/{time_precise.c → time_precise.cc} +6 -4
  457. data/src/core/lib/support/time_precise.h +9 -1
  458. data/src/core/lib/support/{time_windows.c → time_windows.cc} +2 -3
  459. data/src/core/lib/support/{tls_pthread.c → tls_pthread.cc} +2 -2
  460. data/src/core/lib/support/tmpfile.h +1 -1
  461. data/src/core/lib/support/{tmpfile_msys.c → tmpfile_msys.cc} +2 -2
  462. data/src/core/lib/support/{tmpfile_posix.c → tmpfile_posix.cc} +7 -7
  463. data/src/core/lib/support/{tmpfile_windows.c → tmpfile_windows.cc} +2 -2
  464. data/src/core/lib/support/{wrap_memcpy.c → wrap_memcpy.cc} +4 -2
  465. data/src/core/lib/surface/{alarm.c → alarm.cc} +32 -31
  466. data/src/core/lib/surface/alarm_internal.h +10 -2
  467. data/src/core/lib/surface/{api_trace.c → api_trace.cc} +1 -1
  468. data/src/core/lib/surface/api_trace.h +2 -2
  469. data/src/core/lib/surface/{byte_buffer.c → byte_buffer.cc} +13 -13
  470. data/src/core/lib/surface/{byte_buffer_reader.c → byte_buffer_reader.cc} +9 -9
  471. data/src/core/lib/surface/{call.c → call.cc} +379 -372
  472. data/src/core/lib/surface/call.h +37 -38
  473. data/src/core/lib/surface/{call_details.c → call_details.cc} +0 -0
  474. data/src/core/lib/surface/{call_log_batch.c → call_log_batch.cc} +13 -11
  475. data/src/core/lib/surface/call_test_only.h +5 -5
  476. data/src/core/lib/surface/{channel.c → channel.cc} +94 -95
  477. data/src/core/lib/surface/channel.h +29 -21
  478. data/src/core/lib/surface/{channel_init.c → channel_init.cc} +13 -13
  479. data/src/core/lib/surface/channel_init.h +6 -6
  480. data/src/core/lib/surface/{channel_ping.c → channel_ping.cc} +12 -12
  481. data/src/core/lib/surface/{channel_stack_type.c → channel_stack_type.cc} +1 -1
  482. data/src/core/lib/surface/channel_stack_type.h +9 -1
  483. data/src/core/lib/surface/{completion_queue.c → completion_queue.cc} +416 -379
  484. data/src/core/lib/surface/completion_queue.h +29 -29
  485. data/src/core/lib/surface/{completion_queue_factory.c → completion_queue_factory.cc} +1 -1
  486. data/src/core/lib/surface/completion_queue_factory.h +8 -0
  487. data/src/core/lib/surface/{event_string.c → event_string.cc} +9 -9
  488. data/src/core/lib/surface/event_string.h +9 -1
  489. data/src/core/lib/surface/{init.c → init.cc} +16 -39
  490. data/src/core/lib/surface/init.h +8 -0
  491. data/src/core/lib/surface/{init_secure.c → init_secure.cc} +12 -25
  492. data/src/core/lib/surface/lame_client.cc +38 -40
  493. data/src/core/lib/surface/lame_client.h +8 -0
  494. data/src/core/lib/surface/{metadata_array.c → metadata_array.cc} +0 -0
  495. data/src/core/lib/surface/{server.c → server.cc} +340 -404
  496. data/src/core/lib/surface/server.h +22 -14
  497. data/src/core/lib/surface/{validate_metadata.c → validate_metadata.cc} +10 -9
  498. data/src/core/lib/surface/validate_metadata.h +10 -2
  499. data/src/core/lib/surface/{version.c → version.cc} +2 -2
  500. data/src/core/lib/transport/bdp_estimator.cc +84 -0
  501. data/src/core/lib/transport/bdp_estimator.h +67 -42
  502. data/src/core/lib/transport/{byte_stream.c → byte_stream.cc} +51 -51
  503. data/src/core/lib/transport/byte_stream.h +41 -33
  504. data/src/core/lib/transport/{connectivity_state.c → connectivity_state.cc} +36 -40
  505. data/src/core/lib/transport/connectivity_state.h +29 -21
  506. data/src/core/lib/transport/{error_utils.c → error_utils.cc} +26 -22
  507. data/src/core/lib/transport/error_utils.h +18 -6
  508. data/src/core/lib/transport/{metadata.c → metadata.cc} +92 -88
  509. data/src/core/lib/transport/metadata.h +22 -20
  510. data/src/core/lib/transport/{metadata_batch.c → metadata_batch.cc} +78 -79
  511. data/src/core/lib/transport/metadata_batch.h +46 -45
  512. data/src/core/lib/transport/pid_controller.cc +48 -0
  513. data/src/core/lib/transport/pid_controller.h +84 -32
  514. data/src/core/lib/transport/{service_config.c → service_config.cc} +66 -48
  515. data/src/core/lib/transport/service_config.h +11 -2
  516. data/src/core/lib/transport/{static_metadata.c → static_metadata.cc} +2 -2
  517. data/src/core/lib/transport/static_metadata.h +30 -23
  518. data/src/core/lib/transport/{status_conversion.c → status_conversion.cc} +4 -3
  519. data/src/core/lib/transport/status_conversion.h +12 -2
  520. data/src/core/lib/transport/{timeout_encoding.c → timeout_encoding.cc} +28 -61
  521. data/src/core/lib/transport/timeout_encoding.h +11 -2
  522. data/src/core/lib/transport/{transport.c → transport.cc} +79 -79
  523. data/src/core/lib/transport/transport.h +78 -80
  524. data/src/core/lib/transport/transport_impl.h +27 -19
  525. data/src/core/lib/transport/{transport_op_string.c → transport_op_string.cc} +32 -30
  526. data/src/core/plugin_registry/{grpc_plugin_registry.c → grpc_plugin_registry.cc} +34 -38
  527. data/src/core/tsi/{fake_transport_security.c → fake_transport_security.cc} +141 -132
  528. data/src/core/tsi/fake_transport_security.h +5 -5
  529. data/src/core/tsi/{gts_transport_security.c → gts_transport_security.cc} +4 -4
  530. data/src/core/tsi/gts_transport_security.h +11 -3
  531. data/src/core/tsi/{ssl_transport_security.c → ssl_transport_security.cc} +309 -300
  532. data/src/core/tsi/ssl_transport_security.h +25 -25
  533. data/src/core/tsi/ssl_types.h +8 -0
  534. data/src/core/tsi/{transport_security.c → transport_security.cc} +94 -87
  535. data/src/core/tsi/transport_security.h +55 -55
  536. data/src/core/tsi/{transport_security_adapter.c → transport_security_adapter.cc} +58 -55
  537. data/src/core/tsi/transport_security_adapter.h +2 -2
  538. data/src/core/tsi/{transport_security_grpc.c → transport_security_grpc.cc} +21 -21
  539. data/src/core/tsi/transport_security_grpc.h +19 -19
  540. data/src/core/tsi/transport_security_interface.h +41 -41
  541. data/src/ruby/ext/grpc/extconf.rb +4 -2
  542. data/src/ruby/ext/grpc/rb_byte_buffer.c +5 -5
  543. data/src/ruby/ext/grpc/rb_byte_buffer.h +2 -2
  544. data/src/ruby/ext/grpc/rb_call.c +41 -42
  545. data/src/ruby/ext/grpc/rb_call.h +6 -6
  546. data/src/ruby/ext/grpc/rb_call_credentials.c +30 -30
  547. data/src/ruby/ext/grpc/rb_channel.c +87 -87
  548. data/src/ruby/ext/grpc/rb_channel_credentials.c +23 -23
  549. data/src/ruby/ext/grpc/rb_completion_queue.c +11 -11
  550. data/src/ruby/ext/grpc/rb_completion_queue.h +3 -3
  551. data/src/ruby/ext/grpc/rb_compression_options.c +20 -20
  552. data/src/ruby/ext/grpc/rb_event_thread.c +14 -14
  553. data/src/ruby/ext/grpc/rb_event_thread.h +1 -1
  554. data/src/ruby/ext/grpc/rb_grpc.c +8 -8
  555. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +16 -58
  556. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +242 -306
  557. data/src/ruby/ext/grpc/rb_server.c +23 -23
  558. data/src/ruby/ext/grpc/rb_server_credentials.c +13 -13
  559. data/src/ruby/lib/grpc/generic/rpc_server.rb +25 -12
  560. data/src/ruby/lib/grpc/version.rb +1 -1
  561. data/src/ruby/pb/grpc/health/checker.rb +14 -0
  562. data/src/ruby/spec/pb/health/checker_spec.rb +29 -0
  563. data/third_party/cares/config_freebsd/ares_config.h +502 -0
  564. data/third_party/cares/config_openbsd/ares_config.h +502 -0
  565. metadata +302 -328
  566. data/src/core/ext/census/aggregation.h +0 -51
  567. data/src/core/ext/census/base_resources.c +0 -56
  568. data/src/core/ext/census/base_resources.h +0 -24
  569. data/src/core/ext/census/census_interface.h +0 -61
  570. data/src/core/ext/census/census_rpc_stats.h +0 -86
  571. data/src/core/ext/census/context.c +0 -496
  572. data/src/core/ext/census/gen/census.pb.c +0 -161
  573. data/src/core/ext/census/gen/census.pb.h +0 -280
  574. data/src/core/ext/census/gen/trace_context.pb.c +0 -39
  575. data/src/core/ext/census/gen/trace_context.pb.h +0 -78
  576. data/src/core/ext/census/grpc_filter.c +0 -196
  577. data/src/core/ext/census/grpc_plugin.c +0 -70
  578. data/src/core/ext/census/initialize.c +0 -51
  579. data/src/core/ext/census/intrusive_hash_map.c +0 -305
  580. data/src/core/ext/census/intrusive_hash_map.h +0 -152
  581. data/src/core/ext/census/intrusive_hash_map_internal.h +0 -48
  582. data/src/core/ext/census/mlog.c +0 -586
  583. data/src/core/ext/census/mlog.h +0 -80
  584. data/src/core/ext/census/operation.c +0 -48
  585. data/src/core/ext/census/placeholders.c +0 -49
  586. data/src/core/ext/census/resource.c +0 -303
  587. data/src/core/ext/census/resource.h +0 -48
  588. data/src/core/ext/census/rpc_metric_id.h +0 -36
  589. data/src/core/ext/census/trace_context.c +0 -71
  590. data/src/core/ext/census/trace_context.h +0 -56
  591. data/src/core/ext/census/trace_label.h +0 -46
  592. data/src/core/ext/census/trace_propagation.h +0 -48
  593. data/src/core/ext/census/trace_status.h +0 -30
  594. data/src/core/ext/census/trace_string.h +0 -35
  595. data/src/core/ext/census/tracing.c +0 -55
  596. data/src/core/ext/census/tracing.h +0 -109
  597. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.c +0 -714
  598. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.c +0 -924
  599. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.c +0 -60
  600. data/src/core/ext/transport/chttp2/transport/flow_control.c +0 -502
  601. data/src/core/ext/transport/chttp2/transport/writing.c +0 -534
  602. data/src/core/lib/debug/trace.c +0 -146
  603. data/src/core/lib/iomgr/closure.c +0 -219
  604. data/src/core/lib/iomgr/ev_epollex_linux.c +0 -1461
  605. data/src/core/lib/iomgr/ev_posix.c +0 -266
  606. data/src/core/lib/iomgr/exec_ctx.c +0 -113
  607. data/src/core/lib/iomgr/tcp_uv.c +0 -381
  608. data/src/core/lib/security/credentials/ssl/ssl_credentials.c +0 -194
  609. data/src/core/lib/security/transport/security_connector.c +0 -914
  610. data/src/core/lib/support/backoff.c +0 -72
  611. data/src/core/lib/support/backoff.h +0 -56
  612. data/src/core/lib/support/mpscq.c +0 -79
  613. data/src/core/lib/support/stack_lockfree.c +0 -137
  614. data/src/core/lib/support/stack_lockfree.h +0 -38
  615. data/src/core/lib/transport/bdp_estimator.c +0 -110
  616. data/src/core/lib/transport/pid_controller.c +0 -63
@@ -24,6 +24,10 @@
24
24
  #include "src/core/lib/debug/trace.h"
25
25
  #include "src/core/lib/iomgr/exec_ctx.h"
26
26
 
27
+ #ifdef __cplusplus
28
+ extern "C" {
29
+ #endif
30
+
27
31
  /** \file Tracks resource usage against a pool.
28
32
 
29
33
  The current implementation tracks only memory usage, but in the future
@@ -61,60 +65,60 @@
61
65
  maintain lists of users (which users arrange to leave before they are
62
66
  destroyed) */
63
67
 
64
- extern grpc_tracer_flag grpc_resource_quota_trace;
68
+ extern grpc_core::TraceFlag grpc_resource_quota_trace;
65
69
 
66
- grpc_resource_quota *grpc_resource_quota_ref_internal(
67
- grpc_resource_quota *resource_quota);
68
- void grpc_resource_quota_unref_internal(grpc_exec_ctx *exec_ctx,
69
- grpc_resource_quota *resource_quota);
70
- grpc_resource_quota *grpc_resource_quota_from_channel_args(
71
- const grpc_channel_args *channel_args);
70
+ grpc_resource_quota* grpc_resource_quota_ref_internal(
71
+ grpc_resource_quota* resource_quota);
72
+ void grpc_resource_quota_unref_internal(grpc_exec_ctx* exec_ctx,
73
+ grpc_resource_quota* resource_quota);
74
+ grpc_resource_quota* grpc_resource_quota_from_channel_args(
75
+ const grpc_channel_args* channel_args);
72
76
 
73
77
  /* Return a number indicating current memory pressure:
74
78
  0.0 ==> no memory usage
75
79
  1.0 ==> maximum memory usage */
76
80
  double grpc_resource_quota_get_memory_pressure(
77
- grpc_resource_quota *resource_quota);
81
+ grpc_resource_quota* resource_quota);
78
82
 
79
- size_t grpc_resource_quota_peek_size(grpc_resource_quota *resource_quota);
83
+ size_t grpc_resource_quota_peek_size(grpc_resource_quota* resource_quota);
80
84
 
81
85
  typedef struct grpc_resource_user grpc_resource_user;
82
86
 
83
- grpc_resource_user *grpc_resource_user_create(
84
- grpc_resource_quota *resource_quota, const char *name);
87
+ grpc_resource_user* grpc_resource_user_create(
88
+ grpc_resource_quota* resource_quota, const char* name);
85
89
 
86
90
  /* Returns a borrowed reference to the underlying resource quota for this
87
91
  resource user. */
88
- grpc_resource_quota *grpc_resource_user_quota(
89
- grpc_resource_user *resource_user);
92
+ grpc_resource_quota* grpc_resource_user_quota(
93
+ grpc_resource_user* resource_user);
90
94
 
91
- void grpc_resource_user_ref(grpc_resource_user *resource_user);
92
- void grpc_resource_user_unref(grpc_exec_ctx *exec_ctx,
93
- grpc_resource_user *resource_user);
94
- void grpc_resource_user_shutdown(grpc_exec_ctx *exec_ctx,
95
- grpc_resource_user *resource_user);
95
+ void grpc_resource_user_ref(grpc_resource_user* resource_user);
96
+ void grpc_resource_user_unref(grpc_exec_ctx* exec_ctx,
97
+ grpc_resource_user* resource_user);
98
+ void grpc_resource_user_shutdown(grpc_exec_ctx* exec_ctx,
99
+ grpc_resource_user* resource_user);
96
100
 
97
101
  /* Allocate from the resource user (and its quota).
98
102
  If optional_on_done is NULL, then allocate immediately. This may push the
99
103
  quota over-limit, at which point reclamation will kick in.
100
104
  If optional_on_done is non-NULL, it will be scheduled when the allocation has
101
105
  been granted by the quota. */
102
- void grpc_resource_user_alloc(grpc_exec_ctx *exec_ctx,
103
- grpc_resource_user *resource_user, size_t size,
104
- grpc_closure *optional_on_done);
106
+ void grpc_resource_user_alloc(grpc_exec_ctx* exec_ctx,
107
+ grpc_resource_user* resource_user, size_t size,
108
+ grpc_closure* optional_on_done);
105
109
  /* Release memory back to the quota */
106
- void grpc_resource_user_free(grpc_exec_ctx *exec_ctx,
107
- grpc_resource_user *resource_user, size_t size);
110
+ void grpc_resource_user_free(grpc_exec_ctx* exec_ctx,
111
+ grpc_resource_user* resource_user, size_t size);
108
112
  /* Post a memory reclaimer to the resource user. Only one benign and one
109
113
  destructive reclaimer can be posted at once. When executed, the reclaimer
110
114
  MUST call grpc_resource_user_finish_reclamation before it completes, to
111
115
  return control to the resource quota. */
112
- void grpc_resource_user_post_reclaimer(grpc_exec_ctx *exec_ctx,
113
- grpc_resource_user *resource_user,
114
- bool destructive, grpc_closure *closure);
116
+ void grpc_resource_user_post_reclaimer(grpc_exec_ctx* exec_ctx,
117
+ grpc_resource_user* resource_user,
118
+ bool destructive, grpc_closure* closure);
115
119
  /* Finish a reclamation step */
116
- void grpc_resource_user_finish_reclamation(grpc_exec_ctx *exec_ctx,
117
- grpc_resource_user *resource_user);
120
+ void grpc_resource_user_finish_reclamation(grpc_exec_ctx* exec_ctx,
121
+ grpc_resource_user* resource_user);
118
122
 
119
123
  /* Helper to allocate slices from a resource user */
120
124
  typedef struct grpc_resource_user_slice_allocator {
@@ -127,27 +131,31 @@ typedef struct grpc_resource_user_slice_allocator {
127
131
  /* Number of slices to allocate on the current request */
128
132
  size_t count;
129
133
  /* Destination for slices to allocate on the current request */
130
- grpc_slice_buffer *dest;
134
+ grpc_slice_buffer* dest;
131
135
  /* Parent resource user */
132
- grpc_resource_user *resource_user;
136
+ grpc_resource_user* resource_user;
133
137
  } grpc_resource_user_slice_allocator;
134
138
 
135
139
  /* Initialize a slice allocator.
136
140
  When an allocation is completed, calls \a cb with arg \p. */
137
141
  void grpc_resource_user_slice_allocator_init(
138
- grpc_resource_user_slice_allocator *slice_allocator,
139
- grpc_resource_user *resource_user, grpc_iomgr_cb_func cb, void *p);
142
+ grpc_resource_user_slice_allocator* slice_allocator,
143
+ grpc_resource_user* resource_user, grpc_iomgr_cb_func cb, void* p);
140
144
 
141
145
  /* Allocate \a count slices of length \a length into \a dest. Only one request
142
146
  can be outstanding at a time. */
143
147
  void grpc_resource_user_alloc_slices(
144
- grpc_exec_ctx *exec_ctx,
145
- grpc_resource_user_slice_allocator *slice_allocator, size_t length,
146
- size_t count, grpc_slice_buffer *dest);
148
+ grpc_exec_ctx* exec_ctx,
149
+ grpc_resource_user_slice_allocator* slice_allocator, size_t length,
150
+ size_t count, grpc_slice_buffer* dest);
147
151
 
148
152
  /* Allocate one slice of length \a size synchronously. */
149
- grpc_slice grpc_resource_user_slice_malloc(grpc_exec_ctx *exec_ctx,
150
- grpc_resource_user *resource_user,
153
+ grpc_slice grpc_resource_user_slice_malloc(grpc_exec_ctx* exec_ctx,
154
+ grpc_resource_user* resource_user,
151
155
  size_t size);
152
156
 
157
+ #ifdef __cplusplus
158
+ }
159
+ #endif
160
+
153
161
  #endif /* GRPC_CORE_LIB_IOMGR_RESOURCE_QUOTA_H */
@@ -19,6 +19,7 @@
19
19
  #include "src/core/lib/iomgr/sockaddr_utils.h"
20
20
 
21
21
  #include <errno.h>
22
+ #include <inttypes.h>
22
23
  #include <string.h>
23
24
 
24
25
  #include <grpc/support/alloc.h>
@@ -35,19 +36,19 @@
35
36
  static const uint8_t kV4MappedPrefix[] = {0, 0, 0, 0, 0, 0,
36
37
  0, 0, 0, 0, 0xff, 0xff};
37
38
 
38
- int grpc_sockaddr_is_v4mapped(const grpc_resolved_address *resolved_addr,
39
- grpc_resolved_address *resolved_addr4_out) {
39
+ int grpc_sockaddr_is_v4mapped(const grpc_resolved_address* resolved_addr,
40
+ grpc_resolved_address* resolved_addr4_out) {
40
41
  GPR_ASSERT(resolved_addr != resolved_addr4_out);
41
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
42
- struct sockaddr_in *addr4_out =
43
- resolved_addr4_out == NULL
44
- ? NULL
45
- : (struct sockaddr_in *)resolved_addr4_out->addr;
42
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
43
+ struct sockaddr_in* addr4_out =
44
+ resolved_addr4_out == nullptr
45
+ ? nullptr
46
+ : (struct sockaddr_in*)resolved_addr4_out->addr;
46
47
  if (addr->sa_family == AF_INET6) {
47
- const struct sockaddr_in6 *addr6 = (const struct sockaddr_in6 *)addr;
48
+ const struct sockaddr_in6* addr6 = (const struct sockaddr_in6*)addr;
48
49
  if (memcmp(addr6->sin6_addr.s6_addr, kV4MappedPrefix,
49
50
  sizeof(kV4MappedPrefix)) == 0) {
50
- if (resolved_addr4_out != NULL) {
51
+ if (resolved_addr4_out != nullptr) {
51
52
  /* Normalize ::ffff:0.0.0.0/96 to IPv4. */
52
53
  memset(resolved_addr4_out, 0, sizeof(*resolved_addr4_out));
53
54
  addr4_out->sin_family = AF_INET;
@@ -62,14 +63,14 @@ int grpc_sockaddr_is_v4mapped(const grpc_resolved_address *resolved_addr,
62
63
  return 0;
63
64
  }
64
65
 
65
- int grpc_sockaddr_to_v4mapped(const grpc_resolved_address *resolved_addr,
66
- grpc_resolved_address *resolved_addr6_out) {
66
+ int grpc_sockaddr_to_v4mapped(const grpc_resolved_address* resolved_addr,
67
+ grpc_resolved_address* resolved_addr6_out) {
67
68
  GPR_ASSERT(resolved_addr != resolved_addr6_out);
68
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
69
- struct sockaddr_in6 *addr6_out =
70
- (struct sockaddr_in6 *)resolved_addr6_out->addr;
69
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
70
+ struct sockaddr_in6* addr6_out =
71
+ (struct sockaddr_in6*)resolved_addr6_out->addr;
71
72
  if (addr->sa_family == AF_INET) {
72
- const struct sockaddr_in *addr4 = (const struct sockaddr_in *)addr;
73
+ const struct sockaddr_in* addr4 = (const struct sockaddr_in*)addr;
73
74
  memset(resolved_addr6_out, 0, sizeof(*resolved_addr6_out));
74
75
  addr6_out->sin6_family = AF_INET6;
75
76
  memcpy(&addr6_out->sin6_addr.s6_addr[0], kV4MappedPrefix, 12);
@@ -81,17 +82,17 @@ int grpc_sockaddr_to_v4mapped(const grpc_resolved_address *resolved_addr,
81
82
  return 0;
82
83
  }
83
84
 
84
- int grpc_sockaddr_is_wildcard(const grpc_resolved_address *resolved_addr,
85
- int *port_out) {
86
- const struct sockaddr *addr;
85
+ int grpc_sockaddr_is_wildcard(const grpc_resolved_address* resolved_addr,
86
+ int* port_out) {
87
+ const struct sockaddr* addr;
87
88
  grpc_resolved_address addr4_normalized;
88
89
  if (grpc_sockaddr_is_v4mapped(resolved_addr, &addr4_normalized)) {
89
90
  resolved_addr = &addr4_normalized;
90
91
  }
91
- addr = (const struct sockaddr *)resolved_addr->addr;
92
+ addr = (const struct sockaddr*)resolved_addr->addr;
92
93
  if (addr->sa_family == AF_INET) {
93
94
  /* Check for 0.0.0.0 */
94
- const struct sockaddr_in *addr4 = (const struct sockaddr_in *)addr;
95
+ const struct sockaddr_in* addr4 = (const struct sockaddr_in*)addr;
95
96
  if (addr4->sin_addr.s_addr != 0) {
96
97
  return 0;
97
98
  }
@@ -99,7 +100,7 @@ int grpc_sockaddr_is_wildcard(const grpc_resolved_address *resolved_addr,
99
100
  return 1;
100
101
  } else if (addr->sa_family == AF_INET6) {
101
102
  /* Check for :: */
102
- const struct sockaddr_in6 *addr6 = (const struct sockaddr_in6 *)addr;
103
+ const struct sockaddr_in6* addr6 = (const struct sockaddr_in6*)addr;
103
104
  int i;
104
105
  for (i = 0; i < 16; i++) {
105
106
  if (addr6->sin6_addr.s6_addr[i] != 0) {
@@ -113,15 +114,15 @@ int grpc_sockaddr_is_wildcard(const grpc_resolved_address *resolved_addr,
113
114
  }
114
115
  }
115
116
 
116
- void grpc_sockaddr_make_wildcards(int port, grpc_resolved_address *wild4_out,
117
- grpc_resolved_address *wild6_out) {
117
+ void grpc_sockaddr_make_wildcards(int port, grpc_resolved_address* wild4_out,
118
+ grpc_resolved_address* wild6_out) {
118
119
  grpc_sockaddr_make_wildcard4(port, wild4_out);
119
120
  grpc_sockaddr_make_wildcard6(port, wild6_out);
120
121
  }
121
122
 
122
123
  void grpc_sockaddr_make_wildcard4(int port,
123
- grpc_resolved_address *resolved_wild_out) {
124
- struct sockaddr_in *wild_out = (struct sockaddr_in *)resolved_wild_out->addr;
124
+ grpc_resolved_address* resolved_wild_out) {
125
+ struct sockaddr_in* wild_out = (struct sockaddr_in*)resolved_wild_out->addr;
125
126
  GPR_ASSERT(port >= 0 && port < 65536);
126
127
  memset(resolved_wild_out, 0, sizeof(*resolved_wild_out));
127
128
  wild_out->sin_family = AF_INET;
@@ -130,9 +131,8 @@ void grpc_sockaddr_make_wildcard4(int port,
130
131
  }
131
132
 
132
133
  void grpc_sockaddr_make_wildcard6(int port,
133
- grpc_resolved_address *resolved_wild_out) {
134
- struct sockaddr_in6 *wild_out =
135
- (struct sockaddr_in6 *)resolved_wild_out->addr;
134
+ grpc_resolved_address* resolved_wild_out) {
135
+ struct sockaddr_in6* wild_out = (struct sockaddr_in6*)resolved_wild_out->addr;
136
136
  GPR_ASSERT(port >= 0 && port < 65536);
137
137
  memset(resolved_wild_out, 0, sizeof(*resolved_wild_out));
138
138
  wild_out->sin6_family = AF_INET6;
@@ -140,37 +140,37 @@ void grpc_sockaddr_make_wildcard6(int port,
140
140
  resolved_wild_out->len = sizeof(struct sockaddr_in6);
141
141
  }
142
142
 
143
- int grpc_sockaddr_to_string(char **out,
144
- const grpc_resolved_address *resolved_addr,
143
+ int grpc_sockaddr_to_string(char** out,
144
+ const grpc_resolved_address* resolved_addr,
145
145
  int normalize) {
146
- const struct sockaddr *addr;
146
+ const struct sockaddr* addr;
147
147
  const int save_errno = errno;
148
148
  grpc_resolved_address addr_normalized;
149
149
  char ntop_buf[INET6_ADDRSTRLEN];
150
- const void *ip = NULL;
151
- int port;
150
+ const void* ip = nullptr;
151
+ int port = 0;
152
152
  uint32_t sin6_scope_id = 0;
153
153
  int ret;
154
154
 
155
- *out = NULL;
155
+ *out = nullptr;
156
156
  if (normalize && grpc_sockaddr_is_v4mapped(resolved_addr, &addr_normalized)) {
157
157
  resolved_addr = &addr_normalized;
158
158
  }
159
- addr = (const struct sockaddr *)resolved_addr->addr;
159
+ addr = (const struct sockaddr*)resolved_addr->addr;
160
160
  if (addr->sa_family == AF_INET) {
161
- const struct sockaddr_in *addr4 = (const struct sockaddr_in *)addr;
161
+ const struct sockaddr_in* addr4 = (const struct sockaddr_in*)addr;
162
162
  ip = &addr4->sin_addr;
163
163
  port = ntohs(addr4->sin_port);
164
164
  } else if (addr->sa_family == AF_INET6) {
165
- const struct sockaddr_in6 *addr6 = (const struct sockaddr_in6 *)addr;
165
+ const struct sockaddr_in6* addr6 = (const struct sockaddr_in6*)addr;
166
166
  ip = &addr6->sin6_addr;
167
167
  port = ntohs(addr6->sin6_port);
168
168
  sin6_scope_id = addr6->sin6_scope_id;
169
169
  }
170
- if (ip != NULL &&
171
- grpc_inet_ntop(addr->sa_family, ip, ntop_buf, sizeof(ntop_buf)) != NULL) {
170
+ if (ip != nullptr && grpc_inet_ntop(addr->sa_family, ip, ntop_buf,
171
+ sizeof(ntop_buf)) != nullptr) {
172
172
  if (sin6_scope_id != 0) {
173
- char *host_with_scope;
173
+ char* host_with_scope;
174
174
  /* Enclose sin6_scope_id with the format defined in RFC 6784 section 2. */
175
175
  gpr_asprintf(&host_with_scope, "%s%%25%" PRIu32, ntop_buf, sin6_scope_id);
176
176
  ret = gpr_join_host_port(out, host_with_scope, port);
@@ -186,29 +186,29 @@ int grpc_sockaddr_to_string(char **out,
186
186
  return ret;
187
187
  }
188
188
 
189
- char *grpc_sockaddr_to_uri(const grpc_resolved_address *resolved_addr) {
189
+ char* grpc_sockaddr_to_uri(const grpc_resolved_address* resolved_addr) {
190
190
  grpc_resolved_address addr_normalized;
191
191
  if (grpc_sockaddr_is_v4mapped(resolved_addr, &addr_normalized)) {
192
192
  resolved_addr = &addr_normalized;
193
193
  }
194
- const char *scheme = grpc_sockaddr_get_uri_scheme(resolved_addr);
195
- if (scheme == NULL || strcmp("unix", scheme) == 0) {
194
+ const char* scheme = grpc_sockaddr_get_uri_scheme(resolved_addr);
195
+ if (scheme == nullptr || strcmp("unix", scheme) == 0) {
196
196
  return grpc_sockaddr_to_uri_unix_if_possible(resolved_addr);
197
197
  }
198
- char *path = NULL;
199
- char *uri_str = NULL;
198
+ char* path = nullptr;
199
+ char* uri_str = nullptr;
200
200
  if (grpc_sockaddr_to_string(&path, resolved_addr,
201
201
  false /* suppress errors */) &&
202
- scheme != NULL) {
202
+ scheme != nullptr) {
203
203
  gpr_asprintf(&uri_str, "%s:%s", scheme, path);
204
204
  }
205
205
  gpr_free(path);
206
- return uri_str != NULL ? uri_str : NULL;
206
+ return uri_str != nullptr ? uri_str : nullptr;
207
207
  }
208
208
 
209
- const char *grpc_sockaddr_get_uri_scheme(
210
- const grpc_resolved_address *resolved_addr) {
211
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
209
+ const char* grpc_sockaddr_get_uri_scheme(
210
+ const grpc_resolved_address* resolved_addr) {
211
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
212
212
  switch (addr->sa_family) {
213
213
  case AF_INET:
214
214
  return "ipv4";
@@ -217,21 +217,21 @@ const char *grpc_sockaddr_get_uri_scheme(
217
217
  case AF_UNIX:
218
218
  return "unix";
219
219
  }
220
- return NULL;
220
+ return nullptr;
221
221
  }
222
222
 
223
- int grpc_sockaddr_get_family(const grpc_resolved_address *resolved_addr) {
224
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
223
+ int grpc_sockaddr_get_family(const grpc_resolved_address* resolved_addr) {
224
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
225
225
  return addr->sa_family;
226
226
  }
227
227
 
228
- int grpc_sockaddr_get_port(const grpc_resolved_address *resolved_addr) {
229
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
228
+ int grpc_sockaddr_get_port(const grpc_resolved_address* resolved_addr) {
229
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
230
230
  switch (addr->sa_family) {
231
231
  case AF_INET:
232
- return ntohs(((struct sockaddr_in *)addr)->sin_port);
232
+ return ntohs(((struct sockaddr_in*)addr)->sin_port);
233
233
  case AF_INET6:
234
- return ntohs(((struct sockaddr_in6 *)addr)->sin6_port);
234
+ return ntohs(((struct sockaddr_in6*)addr)->sin6_port);
235
235
  default:
236
236
  if (grpc_is_unix_socket(resolved_addr)) {
237
237
  return 1;
@@ -242,17 +242,17 @@ int grpc_sockaddr_get_port(const grpc_resolved_address *resolved_addr) {
242
242
  }
243
243
  }
244
244
 
245
- int grpc_sockaddr_set_port(const grpc_resolved_address *resolved_addr,
245
+ int grpc_sockaddr_set_port(const grpc_resolved_address* resolved_addr,
246
246
  int port) {
247
- const struct sockaddr *addr = (const struct sockaddr *)resolved_addr->addr;
247
+ const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
248
248
  switch (addr->sa_family) {
249
249
  case AF_INET:
250
250
  GPR_ASSERT(port >= 0 && port < 65536);
251
- ((struct sockaddr_in *)addr)->sin_port = htons((uint16_t)port);
251
+ ((struct sockaddr_in*)addr)->sin_port = htons((uint16_t)port);
252
252
  return 1;
253
253
  case AF_INET6:
254
254
  GPR_ASSERT(port >= 0 && port < 65536);
255
- ((struct sockaddr_in6 *)addr)->sin6_port = htons((uint16_t)port);
255
+ ((struct sockaddr_in6*)addr)->sin6_port = htons((uint16_t)port);
256
256
  return 1;
257
257
  default:
258
258
  gpr_log(GPR_ERROR, "Unknown socket family %d in grpc_sockaddr_set_port",
@@ -21,38 +21,42 @@
21
21
 
22
22
  #include "src/core/lib/iomgr/resolve_address.h"
23
23
 
24
+ #ifdef __cplusplus
25
+ extern "C" {
26
+ #endif
27
+
24
28
  /* Returns true if addr is an IPv4-mapped IPv6 address within the
25
29
  ::ffff:0.0.0.0/96 range, or false otherwise.
26
30
 
27
31
  If addr4_out is non-NULL, the inner IPv4 address will be copied here when
28
32
  returning true. */
29
- int grpc_sockaddr_is_v4mapped(const grpc_resolved_address *addr,
30
- grpc_resolved_address *addr4_out);
33
+ int grpc_sockaddr_is_v4mapped(const grpc_resolved_address* addr,
34
+ grpc_resolved_address* addr4_out);
31
35
 
32
36
  /* If addr is an AF_INET address, writes the corresponding ::ffff:0.0.0.0/96
33
37
  address to addr6_out and returns true. Otherwise returns false. */
34
- int grpc_sockaddr_to_v4mapped(const grpc_resolved_address *addr,
35
- grpc_resolved_address *addr6_out);
38
+ int grpc_sockaddr_to_v4mapped(const grpc_resolved_address* addr,
39
+ grpc_resolved_address* addr6_out);
36
40
 
37
41
  /* If addr is ::, 0.0.0.0, or ::ffff:0.0.0.0, writes the port number to
38
42
  *port_out (if not NULL) and returns true, otherwise returns false. */
39
- int grpc_sockaddr_is_wildcard(const grpc_resolved_address *addr, int *port_out);
43
+ int grpc_sockaddr_is_wildcard(const grpc_resolved_address* addr, int* port_out);
40
44
 
41
45
  /* Writes 0.0.0.0:port and [::]:port to separate sockaddrs. */
42
- void grpc_sockaddr_make_wildcards(int port, grpc_resolved_address *wild4_out,
43
- grpc_resolved_address *wild6_out);
46
+ void grpc_sockaddr_make_wildcards(int port, grpc_resolved_address* wild4_out,
47
+ grpc_resolved_address* wild6_out);
44
48
 
45
49
  /* Writes 0.0.0.0:port. */
46
- void grpc_sockaddr_make_wildcard4(int port, grpc_resolved_address *wild_out);
50
+ void grpc_sockaddr_make_wildcard4(int port, grpc_resolved_address* wild_out);
47
51
 
48
52
  /* Writes [::]:port. */
49
- void grpc_sockaddr_make_wildcard6(int port, grpc_resolved_address *wild_out);
53
+ void grpc_sockaddr_make_wildcard6(int port, grpc_resolved_address* wild_out);
50
54
 
51
55
  /* Return the IP port number of a sockaddr */
52
- int grpc_sockaddr_get_port(const grpc_resolved_address *addr);
56
+ int grpc_sockaddr_get_port(const grpc_resolved_address* addr);
53
57
 
54
58
  /* Set IP port number of a sockaddr */
55
- int grpc_sockaddr_set_port(const grpc_resolved_address *addr, int port);
59
+ int grpc_sockaddr_set_port(const grpc_resolved_address* addr, int port);
56
60
 
57
61
  /* Converts a sockaddr into a newly-allocated human-readable string.
58
62
 
@@ -66,15 +70,19 @@ int grpc_sockaddr_set_port(const grpc_resolved_address *addr, int port);
66
70
 
67
71
  In the unlikely event of an error, returns -1 and sets *out to NULL.
68
72
  The existing value of errno is always preserved. */
69
- int grpc_sockaddr_to_string(char **out, const grpc_resolved_address *addr,
73
+ int grpc_sockaddr_to_string(char** out, const grpc_resolved_address* addr,
70
74
  int normalize);
71
75
 
72
76
  /* Returns the URI string corresponding to \a addr */
73
- char *grpc_sockaddr_to_uri(const grpc_resolved_address *addr);
77
+ char* grpc_sockaddr_to_uri(const grpc_resolved_address* addr);
74
78
 
75
79
  /* Returns the URI scheme corresponding to \a addr */
76
- const char *grpc_sockaddr_get_uri_scheme(const grpc_resolved_address *addr);
80
+ const char* grpc_sockaddr_get_uri_scheme(const grpc_resolved_address* addr);
81
+
82
+ int grpc_sockaddr_get_family(const grpc_resolved_address* resolved_addr);
77
83
 
78
- int grpc_sockaddr_get_family(const grpc_resolved_address *resolved_addr);
84
+ #ifdef __cplusplus
85
+ }
86
+ #endif
79
87
 
80
88
  #endif /* GRPC_CORE_LIB_IOMGR_SOCKADDR_UTILS_H */