grpc 1.51.0 → 1.52.0.pre2

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 (886) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +91 -23
  3. data/include/grpc/byte_buffer.h +76 -1
  4. data/include/grpc/byte_buffer_reader.h +19 -1
  5. data/include/grpc/compression.h +2 -2
  6. data/include/grpc/event_engine/event_engine.h +17 -3
  7. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -1
  8. data/include/grpc/event_engine/internal/slice_cast.h +67 -0
  9. data/include/grpc/event_engine/memory_allocator.h +1 -1
  10. data/include/grpc/event_engine/slice.h +24 -4
  11. data/include/grpc/event_engine/slice_buffer.h +14 -2
  12. data/include/grpc/fork.h +25 -1
  13. data/include/grpc/grpc.h +3 -3
  14. data/include/grpc/grpc_posix.h +1 -1
  15. data/include/grpc/impl/codegen/atm.h +3 -71
  16. data/include/grpc/impl/codegen/atm_gcc_atomic.h +3 -58
  17. data/include/grpc/impl/codegen/atm_gcc_sync.h +3 -59
  18. data/include/grpc/impl/codegen/atm_windows.h +3 -106
  19. data/include/grpc/impl/codegen/byte_buffer.h +4 -78
  20. data/include/grpc/impl/codegen/byte_buffer_reader.h +4 -19
  21. data/include/grpc/impl/codegen/compression_types.h +3 -82
  22. data/include/grpc/impl/codegen/connectivity_state.h +3 -20
  23. data/include/grpc/impl/codegen/fork.h +4 -25
  24. data/include/grpc/impl/codegen/gpr_types.h +2 -34
  25. data/include/grpc/impl/codegen/grpc_types.h +3 -787
  26. data/include/grpc/impl/codegen/log.h +3 -86
  27. data/include/grpc/impl/codegen/port_platform.h +3 -755
  28. data/include/grpc/impl/codegen/propagation_bits.h +3 -28
  29. data/include/grpc/impl/codegen/slice.h +3 -106
  30. data/include/grpc/impl/codegen/status.h +4 -131
  31. data/include/grpc/impl/codegen/sync.h +3 -42
  32. data/include/grpc/impl/codegen/sync_abseil.h +3 -12
  33. data/include/grpc/impl/codegen/sync_custom.h +3 -14
  34. data/include/grpc/impl/codegen/sync_generic.h +3 -25
  35. data/include/grpc/impl/codegen/sync_posix.h +3 -28
  36. data/include/grpc/impl/codegen/sync_windows.h +3 -16
  37. data/include/grpc/impl/compression_types.h +109 -0
  38. data/include/grpc/impl/connectivity_state.h +47 -0
  39. data/include/grpc/impl/grpc_types.h +824 -0
  40. data/include/grpc/impl/propagation_bits.h +54 -0
  41. data/include/grpc/impl/slice_type.h +112 -0
  42. data/include/grpc/load_reporting.h +1 -1
  43. data/include/grpc/module.modulemap +5 -1
  44. data/include/grpc/slice.h +1 -1
  45. data/include/grpc/status.h +131 -1
  46. data/include/grpc/support/atm.h +70 -1
  47. data/include/grpc/support/atm_gcc_atomic.h +59 -1
  48. data/include/grpc/support/atm_gcc_sync.h +58 -1
  49. data/include/grpc/support/atm_windows.h +105 -1
  50. data/include/grpc/support/log.h +87 -1
  51. data/include/grpc/support/log_windows.h +1 -1
  52. data/include/grpc/support/port_platform.h +767 -1
  53. data/include/grpc/support/string_util.h +1 -1
  54. data/include/grpc/support/sync.h +35 -2
  55. data/include/grpc/support/sync_abseil.h +11 -1
  56. data/include/grpc/support/sync_custom.h +13 -1
  57. data/include/grpc/support/sync_generic.h +24 -1
  58. data/include/grpc/support/sync_posix.h +27 -1
  59. data/include/grpc/support/sync_windows.h +15 -1
  60. data/include/grpc/support/time.h +25 -2
  61. data/src/core/ext/filters/census/grpc_context.cc +17 -18
  62. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +9 -9
  63. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +1 -1
  64. data/src/core/ext/filters/channel_idle/idle_filter_state.h +1 -1
  65. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -0
  66. data/src/core/ext/filters/client_channel/backup_poller.cc +21 -21
  67. data/src/core/ext/filters/client_channel/backup_poller.h +21 -21
  68. data/src/core/ext/filters/client_channel/channel_connectivity.cc +45 -24
  69. data/src/core/ext/filters/client_channel/client_channel.cc +40 -31
  70. data/src/core/ext/filters/client_channel/client_channel.h +7 -6
  71. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +17 -17
  72. data/src/core/ext/filters/client_channel/client_channel_channelz.h +19 -19
  73. data/src/core/ext/filters/client_channel/client_channel_factory.cc +17 -17
  74. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +17 -17
  75. data/src/core/ext/filters/client_channel/config_selector.h +16 -20
  76. data/src/core/ext/filters/client_channel/dynamic_filters.cc +8 -8
  77. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +18 -18
  78. data/src/core/ext/filters/client_channel/health/health_check_client.cc +1 -1
  79. data/src/core/ext/filters/client_channel/http_proxy.cc +39 -39
  80. data/src/core/ext/filters/client_channel/http_proxy.h +18 -18
  81. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +39 -0
  82. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +17 -17
  83. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +2 -2
  84. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +1 -2
  85. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +58 -130
  86. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +37 -21
  87. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +102 -116
  88. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +24 -25
  89. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +2 -4
  90. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +17 -17
  91. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +18 -19
  92. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +18 -19
  93. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +18 -19
  94. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +5 -5
  95. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +173 -196
  96. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +10 -19
  97. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +66 -97
  98. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +14 -13
  99. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +1 -1
  100. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +98 -84
  101. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +10 -8
  102. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +30 -16
  103. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +21 -35
  104. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +45 -39
  105. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +11 -23
  106. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -49
  107. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +31 -21
  108. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +651 -0
  109. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +60 -0
  110. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +4 -4
  111. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +18 -18
  112. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +0 -1
  113. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +3 -3
  114. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +40 -41
  115. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +21 -21
  116. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +60 -59
  117. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +67 -66
  118. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +50 -51
  119. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +18 -18
  120. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +18 -18
  121. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +18 -19
  122. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +1 -1
  123. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +1 -1
  124. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +0 -1
  125. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +44 -33
  126. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +8 -10
  127. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +59 -73
  128. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +1 -1
  129. data/src/core/ext/filters/client_channel/retry_filter.cc +1 -1
  130. data/src/core/ext/filters/client_channel/retry_service_config.cc +1 -1
  131. data/src/core/ext/filters/client_channel/retry_throttle.cc +19 -21
  132. data/src/core/ext/filters/client_channel/retry_throttle.h +18 -18
  133. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +1 -1
  134. data/src/core/ext/filters/client_channel/subchannel.cc +139 -155
  135. data/src/core/ext/filters/client_channel/subchannel.h +15 -38
  136. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +18 -18
  137. data/src/core/ext/filters/deadline/deadline_filter.cc +21 -3
  138. data/src/core/ext/filters/deadline/deadline_filter.h +1 -1
  139. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +2 -1
  140. data/src/core/ext/filters/http/client/http_client_filter.cc +20 -21
  141. data/src/core/ext/filters/http/client/http_client_filter.h +17 -17
  142. data/src/core/ext/filters/http/client_authority_filter.cc +18 -18
  143. data/src/core/ext/filters/http/client_authority_filter.h +18 -18
  144. data/src/core/ext/filters/http/http_filters_plugin.cc +35 -51
  145. data/src/core/ext/filters/http/message_compress/compression_filter.cc +315 -0
  146. data/src/core/ext/filters/http/message_compress/compression_filter.h +132 -0
  147. data/src/core/ext/filters/http/server/http_server_filter.cc +18 -18
  148. data/src/core/ext/filters/http/server/http_server_filter.h +18 -18
  149. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -6
  150. data/src/core/ext/filters/message_size/message_size_filter.h +1 -1
  151. data/src/core/ext/filters/server_config_selector/server_config_selector.h +6 -8
  152. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +3 -4
  153. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +229 -0
  154. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +66 -0
  155. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +82 -0
  156. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +93 -0
  157. data/src/core/ext/transport/chttp2/alpn/alpn.cc +18 -18
  158. data/src/core/ext/transport/chttp2/alpn/alpn.h +22 -22
  159. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +54 -44
  160. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +28 -22
  161. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +24 -25
  162. data/src/core/ext/transport/chttp2/server/chttp2_server.h +18 -18
  163. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +17 -17
  164. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +30 -30
  165. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +29 -29
  166. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +27 -27
  167. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +66 -35
  168. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +18 -19
  169. data/src/core/ext/transport/chttp2/transport/context_list.cc +19 -19
  170. data/src/core/ext/transport/chttp2/transport/context_list.h +25 -25
  171. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +0 -36
  172. data/src/core/ext/transport/chttp2/transport/decode_huff.h +35 -82
  173. data/src/core/ext/transport/chttp2/transport/flow_control.cc +75 -38
  174. data/src/core/ext/transport/chttp2/transport/flow_control.h +56 -31
  175. data/src/core/ext/transport/chttp2/transport/frame.h +19 -19
  176. data/src/core/ext/transport/chttp2/transport/frame_data.cc +17 -17
  177. data/src/core/ext/transport/chttp2/transport/frame_data.h +22 -22
  178. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +23 -23
  179. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +18 -18
  180. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +21 -21
  181. data/src/core/ext/transport/chttp2/transport/frame_ping.h +19 -19
  182. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +18 -18
  183. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +18 -18
  184. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +19 -19
  185. data/src/core/ext/transport/chttp2/transport/frame_settings.h +20 -20
  186. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +17 -17
  187. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +18 -18
  188. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +129 -176
  189. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +39 -58
  190. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +69 -111
  191. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +20 -20
  192. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +19 -20
  193. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +18 -18
  194. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -19
  195. data/src/core/ext/transport/chttp2/transport/http2_settings.h +36 -34
  196. data/src/core/ext/transport/chttp2/transport/http_trace.cc +19 -0
  197. data/src/core/ext/transport/chttp2/transport/http_trace.h +24 -0
  198. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +20 -20
  199. data/src/core/ext/transport/chttp2/transport/huffsyms.h +19 -19
  200. data/src/core/ext/transport/chttp2/transport/internal.h +170 -163
  201. data/src/core/ext/transport/chttp2/transport/parsing.cc +96 -28
  202. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +19 -19
  203. data/src/core/ext/transport/chttp2/transport/stream_map.cc +23 -23
  204. data/src/core/ext/transport/chttp2/transport/stream_map.h +31 -31
  205. data/src/core/ext/transport/chttp2/transport/varint.cc +17 -17
  206. data/src/core/ext/transport/chttp2/transport/varint.h +24 -24
  207. data/src/core/ext/transport/chttp2/transport/writing.cc +45 -41
  208. data/src/core/ext/transport/inproc/inproc_plugin.cc +17 -17
  209. data/src/core/ext/transport/inproc/inproc_transport.cc +25 -25
  210. data/src/core/ext/transport/inproc/inproc_transport.h +19 -19
  211. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +62 -0
  212. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +179 -0
  213. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +46 -0
  214. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +98 -0
  215. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +47 -0
  216. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +107 -0
  217. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +3 -2
  218. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +9 -0
  219. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +0 -1
  220. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +46 -0
  221. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +98 -0
  222. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +62 -0
  223. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +174 -0
  224. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +36 -0
  225. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +74 -0
  226. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +65 -0
  227. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +191 -0
  228. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +127 -0
  229. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +474 -0
  230. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +67 -0
  231. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +214 -0
  232. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +64 -0
  233. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +208 -0
  234. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +0 -1
  235. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +60 -0
  236. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  237. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +50 -0
  238. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  239. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +45 -0
  240. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +35 -0
  241. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +43 -0
  242. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  243. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +51 -0
  244. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  245. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +36 -0
  246. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  247. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +55 -0
  248. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  249. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +9 -9
  250. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +71 -0
  251. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +60 -0
  252. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +60 -0
  253. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +40 -0
  254. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +36 -0
  255. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +45 -0
  256. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +4 -7
  257. data/src/core/ext/xds/xds_api.cc +5 -27
  258. data/src/core/ext/xds/xds_api.h +2 -1
  259. data/src/core/ext/xds/xds_certificate_provider.h +1 -1
  260. data/src/core/ext/xds/xds_channel_args.h +1 -1
  261. data/src/core/ext/xds/xds_channel_stack_modifier.h +2 -2
  262. data/src/core/ext/xds/xds_client.cc +14 -6
  263. data/src/core/ext/xds/xds_client.h +6 -3
  264. data/src/core/ext/xds/xds_client_grpc.cc +26 -0
  265. data/src/core/ext/xds/xds_client_grpc.h +1 -1
  266. data/src/core/ext/xds/xds_client_stats.cc +17 -17
  267. data/src/core/ext/xds/xds_client_stats.h +18 -18
  268. data/src/core/ext/xds/xds_cluster.cc +94 -46
  269. data/src/core/ext/xds/xds_cluster.h +44 -23
  270. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +30 -50
  271. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +14 -9
  272. data/src/core/ext/xds/xds_common_types.cc +4 -3
  273. data/src/core/ext/xds/xds_endpoint.cc +8 -2
  274. data/src/core/ext/xds/xds_health_status.cc +80 -0
  275. data/src/core/ext/xds/xds_health_status.h +82 -0
  276. data/src/core/ext/xds/xds_http_fault_filter.cc +7 -6
  277. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  278. data/src/core/ext/xds/xds_http_filters.cc +11 -6
  279. data/src/core/ext/xds/xds_http_filters.h +5 -5
  280. data/src/core/ext/xds/xds_http_rbac_filter.cc +7 -6
  281. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  282. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +218 -0
  283. data/src/core/ext/xds/xds_http_stateful_session_filter.h +58 -0
  284. data/src/core/ext/xds/xds_lb_policy_registry.cc +0 -4
  285. data/src/core/ext/xds/xds_listener.cc +14 -28
  286. data/src/core/ext/xds/xds_listener.h +2 -0
  287. data/src/core/ext/xds/xds_resource_type_impl.h +8 -6
  288. data/src/core/ext/xds/xds_route_config.cc +501 -529
  289. data/src/core/ext/xds/xds_route_config.h +29 -18
  290. data/src/core/ext/xds/xds_server_config_fetcher.cc +12 -24
  291. data/src/core/ext/xds/xds_transport_grpc.cc +2 -2
  292. data/src/core/ext/xds/xds_transport_grpc.h +1 -1
  293. data/src/core/lib/address_utils/parse_address.cc +19 -19
  294. data/src/core/lib/address_utils/parse_address.h +32 -32
  295. data/src/core/lib/address_utils/sockaddr_utils.cc +29 -28
  296. data/src/core/lib/address_utils/sockaddr_utils.h +33 -33
  297. data/src/core/lib/avl/avl.h +4 -4
  298. data/src/core/lib/backoff/backoff.cc +17 -17
  299. data/src/core/lib/backoff/backoff.h +18 -18
  300. data/src/core/lib/channel/call_tracer.h +10 -1
  301. data/src/core/lib/channel/channel_args.cc +19 -20
  302. data/src/core/lib/channel/channel_args.h +43 -42
  303. data/src/core/lib/channel/channel_args_preconditioning.h +1 -1
  304. data/src/core/lib/channel/channel_stack.cc +39 -38
  305. data/src/core/lib/channel/channel_stack.h +127 -127
  306. data/src/core/lib/channel/channel_stack_builder.cc +17 -17
  307. data/src/core/lib/channel/channel_stack_builder_impl.cc +18 -18
  308. data/src/core/lib/channel/channel_trace.cc +17 -17
  309. data/src/core/lib/channel/channel_trace.h +19 -19
  310. data/src/core/lib/channel/channelz.cc +17 -18
  311. data/src/core/lib/channel/channelz.h +26 -26
  312. data/src/core/lib/channel/channelz_registry.cc +17 -17
  313. data/src/core/lib/channel/channelz_registry.h +18 -18
  314. data/src/core/lib/channel/connected_channel.cc +43 -34
  315. data/src/core/lib/channel/connected_channel.h +18 -18
  316. data/src/core/lib/channel/context.h +18 -18
  317. data/src/core/lib/channel/promise_based_filter.cc +191 -68
  318. data/src/core/lib/channel/promise_based_filter.h +10 -1
  319. data/src/core/lib/channel/status_util.cc +35 -17
  320. data/src/core/lib/channel/status_util.h +26 -19
  321. data/src/core/lib/compression/compression.cc +19 -19
  322. data/src/core/lib/compression/compression_internal.cc +41 -48
  323. data/src/core/lib/compression/compression_internal.h +22 -22
  324. data/src/core/lib/compression/message_compress.cc +21 -21
  325. data/src/core/lib/compression/message_compress.h +25 -25
  326. data/src/core/lib/config/core_configuration.h +1 -1
  327. data/src/core/lib/debug/stats.cc +17 -17
  328. data/src/core/lib/debug/stats.h +17 -17
  329. data/src/core/lib/debug/trace.cc +18 -18
  330. data/src/core/lib/debug/trace.h +19 -19
  331. data/src/core/lib/event_engine/executor/executor.h +1 -1
  332. data/src/core/lib/event_engine/forkable.h +1 -1
  333. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +27 -31
  334. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +2 -2
  335. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +36 -37
  336. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +3 -3
  337. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -3
  338. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +2 -2
  339. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -2
  340. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +2 -2
  341. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +46 -46
  342. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +10 -12
  343. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -2
  344. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +79 -41
  345. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +11 -9
  346. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +33 -40
  347. data/src/core/lib/event_engine/posix_engine/posix_engine.h +14 -14
  348. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +2 -2
  349. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +236 -0
  350. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +228 -0
  351. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +380 -0
  352. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +91 -0
  353. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +55 -283
  354. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +4 -49
  355. data/src/core/lib/event_engine/posix_engine/timer.cc +49 -49
  356. data/src/core/lib/event_engine/posix_engine/timer.h +87 -87
  357. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +27 -27
  358. data/src/core/lib/event_engine/posix_engine/timer_heap.h +21 -21
  359. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +19 -20
  360. data/src/core/lib/event_engine/posix_engine/timer_manager.h +20 -20
  361. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +39 -8
  362. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +46 -40
  363. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +8 -7
  364. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +2 -2
  365. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +6 -7
  366. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +2 -2
  367. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +28 -28
  368. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +4 -4
  369. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +3 -3
  370. data/src/core/lib/event_engine/socket_notifier.h +1 -1
  371. data/src/core/lib/event_engine/tcp_socket_utils.cc +373 -0
  372. data/src/core/lib/event_engine/tcp_socket_utils.h +85 -0
  373. data/src/core/lib/event_engine/thread_pool.cc +19 -18
  374. data/src/core/lib/event_engine/thread_pool.h +17 -17
  375. data/src/core/lib/event_engine/time_util.h +1 -1
  376. data/src/core/lib/event_engine/windows/iocp.cc +13 -12
  377. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  378. data/src/core/lib/event_engine/windows/win_socket.cc +2 -2
  379. data/src/core/lib/event_engine/windows/windows_engine.cc +8 -8
  380. data/src/core/lib/event_engine/windows/windows_engine.h +1 -1
  381. data/src/core/lib/experiments/experiments.cc +5 -16
  382. data/src/core/lib/experiments/experiments.h +7 -12
  383. data/src/core/lib/gpr/alloc.cc +19 -17
  384. data/src/core/lib/gpr/alloc.h +18 -18
  385. data/src/core/lib/gpr/atm.cc +17 -17
  386. data/src/core/lib/gpr/cpu_iphone.cc +24 -24
  387. data/src/core/lib/gpr/cpu_linux.cc +22 -21
  388. data/src/core/lib/gpr/cpu_posix.cc +23 -22
  389. data/src/core/lib/gpr/cpu_windows.cc +20 -18
  390. data/src/core/lib/gpr/log.cc +27 -19
  391. data/src/core/lib/gpr/log_android.cc +22 -20
  392. data/src/core/lib/gpr/log_linux.cc +21 -20
  393. data/src/core/lib/gpr/log_posix.cc +20 -19
  394. data/src/core/lib/gpr/log_windows.cc +25 -24
  395. data/src/core/lib/gpr/spinlock.h +18 -18
  396. data/src/core/lib/gpr/string.cc +25 -24
  397. data/src/core/lib/gpr/string.h +57 -57
  398. data/src/core/lib/gpr/string_posix.cc +24 -24
  399. data/src/core/lib/gpr/string_util_windows.cc +22 -22
  400. data/src/core/lib/gpr/string_windows.cc +24 -24
  401. data/src/core/lib/gpr/sync.cc +25 -25
  402. data/src/core/lib/gpr/sync_abseil.cc +22 -20
  403. data/src/core/lib/gpr/sync_posix.cc +23 -21
  404. data/src/core/lib/gpr/sync_windows.cc +29 -27
  405. data/src/core/lib/gpr/time.cc +23 -21
  406. data/src/core/lib/gpr/time_posix.cc +35 -30
  407. data/src/core/lib/gpr/time_precise.cc +22 -22
  408. data/src/core/lib/gpr/time_precise.h +18 -19
  409. data/src/core/lib/gpr/time_windows.cc +25 -22
  410. data/src/core/lib/gpr/tmpfile.h +22 -22
  411. data/src/core/lib/gpr/tmpfile_msys.cc +21 -20
  412. data/src/core/lib/gpr/tmpfile_posix.cc +19 -18
  413. data/src/core/lib/gpr/tmpfile_windows.cc +23 -22
  414. data/src/core/lib/gpr/useful.h +40 -27
  415. data/src/core/lib/gpr/wrap_memcpy.cc +23 -23
  416. data/src/core/lib/gprpp/atomic_utils.h +18 -18
  417. data/src/core/lib/gprpp/bitset.h +24 -0
  418. data/src/core/{ext/filters/http/message_compress/message_decompress_filter.h → lib/gprpp/crash.cc} +15 -14
  419. data/src/core/lib/gprpp/crash.h +34 -0
  420. data/src/core/lib/gprpp/debug_location.h +18 -18
  421. data/src/core/lib/gprpp/dual_ref_counted.h +1 -1
  422. data/src/core/lib/gprpp/env.h +20 -20
  423. data/src/core/lib/gprpp/env_linux.cc +21 -21
  424. data/src/core/lib/gprpp/env_posix.cc +18 -18
  425. data/src/core/lib/gprpp/env_windows.cc +18 -18
  426. data/src/core/lib/gprpp/examine_stack.cc +17 -17
  427. data/src/core/lib/gprpp/examine_stack.h +18 -18
  428. data/src/core/lib/gprpp/fork.cc +21 -22
  429. data/src/core/lib/gprpp/fork.h +22 -22
  430. data/src/core/lib/gprpp/global_config.h +18 -18
  431. data/src/core/lib/gprpp/global_config_custom.h +18 -18
  432. data/src/core/lib/gprpp/global_config_env.cc +17 -17
  433. data/src/core/lib/gprpp/global_config_env.h +23 -23
  434. data/src/core/lib/gprpp/global_config_generic.h +18 -18
  435. data/src/core/lib/gprpp/host_port.cc +26 -26
  436. data/src/core/lib/gprpp/host_port.h +29 -28
  437. data/src/core/lib/gprpp/manual_constructor.h +18 -17
  438. data/src/core/lib/gprpp/memory.h +18 -18
  439. data/src/core/lib/gprpp/mpscq.cc +17 -17
  440. data/src/core/lib/gprpp/mpscq.h +18 -18
  441. data/src/core/lib/gprpp/no_destruct.h +1 -0
  442. data/src/core/lib/gprpp/orphanable.h +18 -18
  443. data/src/core/lib/gprpp/ref_counted.h +18 -18
  444. data/src/core/lib/gprpp/ref_counted_ptr.h +19 -18
  445. data/src/core/lib/gprpp/stat_windows.cc +1 -0
  446. data/src/core/lib/gprpp/status_helper.cc +4 -3
  447. data/src/core/lib/gprpp/sync.h +20 -20
  448. data/src/core/lib/gprpp/table.h +1 -0
  449. data/src/core/lib/gprpp/thd.h +19 -19
  450. data/src/core/lib/gprpp/thd_posix.cc +30 -31
  451. data/src/core/lib/gprpp/thd_windows.cc +25 -24
  452. data/src/core/lib/gprpp/time.cc +13 -7
  453. data/src/core/lib/gprpp/time.h +0 -1
  454. data/src/core/lib/gprpp/time_averaged_stats.cc +20 -20
  455. data/src/core/lib/gprpp/time_averaged_stats.h +48 -48
  456. data/src/core/lib/gprpp/time_util.h +1 -1
  457. data/src/core/lib/gprpp/unique_type_name.h +18 -18
  458. data/src/core/lib/handshaker/proxy_mapper.h +18 -18
  459. data/src/core/lib/handshaker/proxy_mapper_registry.cc +17 -17
  460. data/src/core/lib/handshaker/proxy_mapper_registry.h +18 -18
  461. data/src/core/lib/http/format_request.cc +18 -18
  462. data/src/core/lib/http/format_request.h +18 -18
  463. data/src/core/lib/http/httpcli.cc +17 -17
  464. data/src/core/lib/http/httpcli.h +20 -21
  465. data/src/core/lib/http/httpcli_security_connector.cc +18 -19
  466. data/src/core/lib/http/parser.cc +22 -22
  467. data/src/core/lib/http/parser.h +32 -32
  468. data/src/core/lib/iomgr/block_annotate.h +21 -21
  469. data/src/core/lib/iomgr/buffer_list.cc +52 -21
  470. data/src/core/lib/iomgr/buffer_list.h +63 -57
  471. data/src/core/lib/iomgr/call_combiner.cc +18 -17
  472. data/src/core/lib/iomgr/call_combiner.h +18 -18
  473. data/src/core/lib/iomgr/cfstream_handle.cc +20 -20
  474. data/src/core/lib/iomgr/cfstream_handle.h +22 -22
  475. data/src/core/lib/iomgr/closure.h +42 -41
  476. data/src/core/lib/iomgr/combiner.cc +18 -17
  477. data/src/core/lib/iomgr/combiner.h +18 -18
  478. data/src/core/lib/iomgr/dualstack_socket_posix.cc +21 -21
  479. data/src/core/lib/iomgr/dynamic_annotations.h +20 -20
  480. data/src/core/lib/iomgr/endpoint.cc +17 -17
  481. data/src/core/lib/iomgr/endpoint.h +46 -46
  482. data/src/core/lib/iomgr/endpoint_cfstream.cc +18 -18
  483. data/src/core/lib/iomgr/endpoint_cfstream.h +27 -27
  484. data/src/core/lib/iomgr/endpoint_pair.h +18 -18
  485. data/src/core/lib/iomgr/endpoint_pair_posix.cc +18 -17
  486. data/src/core/lib/iomgr/endpoint_pair_windows.cc +18 -17
  487. data/src/core/lib/iomgr/error.cc +22 -19
  488. data/src/core/lib/iomgr/error.h +20 -21
  489. data/src/core/lib/iomgr/error_cfstream.cc +18 -18
  490. data/src/core/lib/iomgr/error_cfstream.h +19 -19
  491. data/src/core/lib/iomgr/ev_apple.cc +17 -17
  492. data/src/core/lib/iomgr/ev_apple.h +17 -17
  493. data/src/core/lib/iomgr/ev_epoll1_linux.cc +182 -170
  494. data/src/core/lib/iomgr/ev_epoll1_linux.h +18 -18
  495. data/src/core/lib/iomgr/ev_poll_posix.cc +185 -174
  496. data/src/core/lib/iomgr/ev_poll_posix.h +18 -18
  497. data/src/core/lib/iomgr/ev_posix.cc +36 -28
  498. data/src/core/lib/iomgr/ev_posix.h +85 -81
  499. data/src/core/lib/iomgr/ev_windows.cc +18 -18
  500. data/src/core/lib/iomgr/exec_ctx.cc +31 -30
  501. data/src/core/lib/iomgr/exec_ctx.h +139 -138
  502. data/src/core/lib/iomgr/executor.cc +20 -19
  503. data/src/core/lib/iomgr/executor.h +24 -24
  504. data/src/core/lib/iomgr/fork_posix.cc +24 -22
  505. data/src/core/lib/iomgr/fork_windows.cc +21 -21
  506. data/src/core/lib/iomgr/gethostname.h +18 -18
  507. data/src/core/lib/iomgr/gethostname_fallback.cc +17 -17
  508. data/src/core/lib/iomgr/gethostname_host_name_max.cc +17 -17
  509. data/src/core/lib/iomgr/gethostname_sysconf.cc +17 -17
  510. data/src/core/lib/iomgr/grpc_if_nametoindex.h +20 -20
  511. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +20 -19
  512. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +20 -19
  513. data/src/core/lib/iomgr/internal_errqueue.cc +1 -1
  514. data/src/core/lib/iomgr/internal_errqueue.h +80 -80
  515. data/src/core/lib/iomgr/iocp_windows.cc +21 -21
  516. data/src/core/lib/iomgr/iocp_windows.h +18 -18
  517. data/src/core/lib/iomgr/iomgr.cc +19 -18
  518. data/src/core/lib/iomgr/iomgr.h +32 -32
  519. data/src/core/lib/iomgr/iomgr_internal.cc +17 -17
  520. data/src/core/lib/iomgr/iomgr_internal.h +25 -25
  521. data/src/core/lib/iomgr/iomgr_posix.cc +18 -18
  522. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +18 -18
  523. data/src/core/lib/iomgr/iomgr_windows.cc +22 -21
  524. data/src/core/lib/iomgr/load_file.cc +19 -18
  525. data/src/core/lib/iomgr/load_file.h +20 -20
  526. data/src/core/lib/iomgr/lockfree_event.cc +104 -104
  527. data/src/core/lib/iomgr/lockfree_event.h +19 -19
  528. data/src/core/lib/iomgr/nameser.h +84 -84
  529. data/src/core/lib/iomgr/polling_entity.cc +25 -21
  530. data/src/core/lib/iomgr/polling_entity.h +27 -27
  531. data/src/core/lib/iomgr/pollset.cc +17 -17
  532. data/src/core/lib/iomgr/pollset.h +51 -51
  533. data/src/core/lib/iomgr/pollset_set.cc +17 -17
  534. data/src/core/lib/iomgr/pollset_set.h +22 -22
  535. data/src/core/lib/iomgr/pollset_set_windows.cc +18 -18
  536. data/src/core/lib/iomgr/pollset_set_windows.h +18 -18
  537. data/src/core/lib/iomgr/pollset_windows.cc +26 -25
  538. data/src/core/lib/iomgr/pollset_windows.h +22 -22
  539. data/src/core/lib/iomgr/port.h +29 -29
  540. data/src/core/lib/iomgr/python_util.h +18 -18
  541. data/src/core/lib/iomgr/resolve_address.cc +18 -17
  542. data/src/core/lib/iomgr/resolve_address.h +18 -18
  543. data/src/core/lib/iomgr/resolve_address_impl.h +1 -1
  544. data/src/core/lib/iomgr/resolve_address_posix.cc +21 -20
  545. data/src/core/lib/iomgr/resolve_address_windows.cc +4 -3
  546. data/src/core/lib/iomgr/resolved_address.h +1 -1
  547. data/src/core/lib/iomgr/sockaddr.h +21 -21
  548. data/src/core/lib/iomgr/sockaddr_posix.h +18 -18
  549. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +18 -17
  550. data/src/core/lib/iomgr/sockaddr_windows.h +18 -18
  551. data/src/core/lib/iomgr/socket_factory_posix.cc +18 -18
  552. data/src/core/lib/iomgr/socket_factory_posix.h +30 -30
  553. data/src/core/lib/iomgr/socket_mutator.cc +19 -18
  554. data/src/core/lib/iomgr/socket_mutator.h +37 -37
  555. data/src/core/lib/iomgr/socket_utils.h +24 -24
  556. data/src/core/lib/iomgr/socket_utils_common_posix.cc +38 -37
  557. data/src/core/lib/iomgr/socket_utils_linux.cc +18 -17
  558. data/src/core/lib/iomgr/socket_utils_posix.cc +21 -20
  559. data/src/core/lib/iomgr/socket_utils_posix.h +76 -76
  560. data/src/core/lib/iomgr/socket_utils_windows.cc +20 -19
  561. data/src/core/lib/iomgr/socket_windows.cc +35 -34
  562. data/src/core/lib/iomgr/socket_windows.h +56 -56
  563. data/src/core/lib/iomgr/systemd_utils.cc +116 -0
  564. data/src/core/lib/iomgr/systemd_utils.h +33 -0
  565. data/src/core/lib/iomgr/tcp_client.cc +17 -17
  566. data/src/core/lib/iomgr/tcp_client.h +26 -26
  567. data/src/core/lib/iomgr/tcp_client_cfstream.cc +19 -18
  568. data/src/core/lib/iomgr/tcp_client_posix.cc +39 -38
  569. data/src/core/lib/iomgr/tcp_client_posix.h +43 -43
  570. data/src/core/lib/iomgr/tcp_client_windows.cc +28 -27
  571. data/src/core/lib/iomgr/tcp_posix.cc +136 -134
  572. data/src/core/lib/iomgr/tcp_posix.h +27 -27
  573. data/src/core/lib/iomgr/tcp_server.cc +30 -22
  574. data/src/core/lib/iomgr/tcp_server.h +68 -62
  575. data/src/core/lib/iomgr/tcp_server_posix.cc +91 -61
  576. data/src/core/lib/iomgr/tcp_server_utils_posix.h +54 -51
  577. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +72 -34
  578. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +28 -27
  579. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +18 -18
  580. data/src/core/lib/iomgr/tcp_server_windows.cc +71 -75
  581. data/src/core/lib/iomgr/tcp_windows.cc +83 -60
  582. data/src/core/lib/iomgr/tcp_windows.h +29 -29
  583. data/src/core/lib/iomgr/timer.cc +17 -17
  584. data/src/core/lib/iomgr/timer.h +65 -65
  585. data/src/core/lib/iomgr/timer_generic.cc +106 -107
  586. data/src/core/lib/iomgr/timer_generic.h +19 -19
  587. data/src/core/lib/iomgr/timer_heap.cc +25 -25
  588. data/src/core/lib/iomgr/timer_heap.h +19 -19
  589. data/src/core/lib/iomgr/timer_manager.cc +30 -29
  590. data/src/core/lib/iomgr/timer_manager.h +25 -25
  591. data/src/core/lib/iomgr/unix_sockets_posix.cc +18 -17
  592. data/src/core/lib/iomgr/unix_sockets_posix.h +18 -18
  593. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +19 -17
  594. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +19 -18
  595. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +23 -23
  596. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +19 -18
  597. data/src/core/lib/iomgr/wakeup_fd_pipe.h +18 -18
  598. data/src/core/lib/iomgr/wakeup_fd_posix.cc +18 -18
  599. data/src/core/lib/iomgr/wakeup_fd_posix.h +50 -50
  600. data/src/core/lib/json/json_object_loader.cc +10 -0
  601. data/src/core/lib/json/json_object_loader.h +15 -1
  602. data/src/core/lib/json/json_reader.cc +28 -28
  603. data/src/core/lib/json/json_writer.cc +56 -56
  604. data/src/core/lib/load_balancing/lb_policy.cc +17 -17
  605. data/src/core/lib/load_balancing/lb_policy.h +3 -4
  606. data/src/core/lib/load_balancing/subchannel_interface.h +1 -1
  607. data/src/core/lib/matchers/matchers.cc +3 -1
  608. data/src/core/lib/matchers/matchers.h +1 -1
  609. data/src/core/lib/promise/activity.h +20 -12
  610. data/src/core/lib/promise/arena_promise.h +2 -1
  611. data/src/core/lib/promise/context.h +1 -0
  612. data/src/core/lib/promise/detail/promise_factory.h +1 -0
  613. data/src/core/lib/promise/detail/switch.h +18 -18
  614. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +18 -12
  615. data/src/core/lib/promise/for_each.h +68 -42
  616. data/src/core/lib/promise/latch.h +13 -19
  617. data/src/core/lib/promise/map.h +1 -0
  618. data/src/core/lib/promise/map_pipe.h +1 -0
  619. data/src/core/lib/promise/poll.h +6 -0
  620. data/src/core/lib/promise/seq.h +1 -0
  621. data/src/core/lib/promise/try_concurrently.h +1 -0
  622. data/src/core/lib/promise/try_seq.h +1 -0
  623. data/src/core/lib/resolver/resolver.cc +17 -17
  624. data/src/core/lib/resolver/server_address.cc +17 -17
  625. data/src/core/lib/resolver/server_address.h +18 -18
  626. data/src/core/lib/resource_quota/api.h +1 -1
  627. data/src/core/lib/resource_quota/arena.cc +17 -17
  628. data/src/core/lib/resource_quota/arena.h +18 -18
  629. data/src/core/lib/resource_quota/memory_quota.cc +139 -43
  630. data/src/core/lib/resource_quota/memory_quota.h +85 -23
  631. data/src/core/lib/resource_quota/resource_quota.h +1 -1
  632. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  633. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +0 -1
  634. data/src/core/lib/security/authorization/rbac_policy.h +1 -1
  635. data/src/core/lib/security/context/security_context.cc +22 -23
  636. data/src/core/lib/security/context/security_context.h +30 -30
  637. data/src/core/lib/security/credentials/alts/alts_credentials.cc +17 -17
  638. data/src/core/lib/security/credentials/alts/alts_credentials.h +50 -50
  639. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +19 -19
  640. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +41 -41
  641. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +17 -17
  642. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +18 -17
  643. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +18 -17
  644. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +19 -19
  645. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +18 -18
  646. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +36 -37
  647. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +18 -18
  648. data/src/core/lib/security/credentials/call_creds_util.h +1 -1
  649. data/src/core/lib/security/credentials/composite/composite_credentials.cc +21 -21
  650. data/src/core/lib/security/credentials/composite/composite_credentials.h +20 -21
  651. data/src/core/lib/security/credentials/credentials.cc +19 -18
  652. data/src/core/lib/security/credentials/credentials.h +34 -33
  653. data/src/core/lib/security/credentials/fake/fake_credentials.cc +19 -19
  654. data/src/core/lib/security/credentials/fake/fake_credentials.h +34 -35
  655. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +17 -17
  656. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +48 -49
  657. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +18 -19
  658. data/src/core/lib/security/credentials/iam/iam_credentials.cc +17 -17
  659. data/src/core/lib/security/credentials/iam/iam_credentials.h +18 -18
  660. data/src/core/lib/security/credentials/jwt/json_token.cc +23 -23
  661. data/src/core/lib/security/credentials/jwt/json_token.h +32 -32
  662. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +17 -17
  663. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +18 -19
  664. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +70 -70
  665. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +43 -43
  666. data/src/core/lib/security/credentials/local/local_credentials.cc +17 -17
  667. data/src/core/lib/security/credentials/local/local_credentials.h +20 -20
  668. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +28 -29
  669. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +19 -19
  670. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +18 -18
  671. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +19 -19
  672. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +19 -20
  673. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +18 -18
  674. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +1 -1
  675. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +1 -2
  676. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +18 -18
  677. data/src/core/lib/security/credentials/tls/tls_credentials.cc +18 -19
  678. data/src/core/lib/security/credentials/tls/tls_credentials.h +18 -18
  679. data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -2
  680. data/src/core/lib/security/credentials/xds/xds_credentials.h +1 -1
  681. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +26 -27
  682. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +41 -42
  683. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +24 -26
  684. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +20 -21
  685. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +1 -2
  686. data/src/core/lib/security/security_connector/load_system_roots.h +18 -18
  687. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +18 -18
  688. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +18 -18
  689. data/src/core/lib/security/security_connector/load_system_roots_supported.h +19 -20
  690. data/src/core/lib/security/security_connector/local/local_security_connector.cc +23 -23
  691. data/src/core/lib/security/security_connector/local/local_security_connector.h +40 -41
  692. data/src/core/lib/security/security_connector/security_connector.cc +17 -17
  693. data/src/core/lib/security/security_connector/security_connector.h +32 -33
  694. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +25 -25
  695. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +38 -39
  696. data/src/core/lib/security/security_connector/ssl_utils.cc +32 -32
  697. data/src/core/lib/security/security_connector/ssl_utils.h +31 -31
  698. data/src/core/lib/security/security_connector/ssl_utils_config.cc +22 -22
  699. data/src/core/lib/security/security_connector/ssl_utils_config.h +18 -19
  700. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +21 -21
  701. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +17 -17
  702. data/src/core/lib/security/transport/auth_filters.h +18 -18
  703. data/src/core/lib/security/transport/client_auth_filter.cc +20 -20
  704. data/src/core/lib/security/transport/secure_endpoint.cc +28 -28
  705. data/src/core/lib/security/transport/secure_endpoint.h +22 -22
  706. data/src/core/lib/security/transport/security_handshaker.cc +17 -17
  707. data/src/core/lib/security/transport/security_handshaker.h +19 -19
  708. data/src/core/lib/security/transport/server_auth_filter.cc +22 -23
  709. data/src/core/lib/security/transport/tsi_error.cc +17 -17
  710. data/src/core/lib/security/transport/tsi_error.h +18 -18
  711. data/src/core/lib/security/util/json_util.cc +17 -17
  712. data/src/core/lib/security/util/json_util.h +18 -18
  713. data/src/core/lib/service_config/service_config.h +1 -1
  714. data/src/core/lib/service_config/service_config_call_data.h +7 -1
  715. data/src/core/lib/slice/b64.cc +24 -24
  716. data/src/core/lib/slice/b64.h +29 -29
  717. data/src/core/lib/slice/percent_encoding.cc +17 -17
  718. data/src/core/lib/slice/percent_encoding.h +24 -24
  719. data/src/core/lib/slice/slice.cc +37 -37
  720. data/src/core/lib/slice/slice.h +38 -5
  721. data/src/core/lib/slice/slice_buffer.cc +50 -45
  722. data/src/core/lib/slice/slice_buffer.h +27 -2
  723. data/src/core/lib/slice/slice_internal.h +18 -18
  724. data/src/core/lib/slice/slice_string_helpers.cc +17 -17
  725. data/src/core/lib/slice/slice_string_helpers.h +19 -19
  726. data/src/core/lib/surface/api_trace.cc +17 -17
  727. data/src/core/lib/surface/api_trace.h +22 -22
  728. data/src/core/lib/surface/byte_buffer.cc +19 -19
  729. data/src/core/lib/surface/byte_buffer_reader.cc +19 -19
  730. data/src/core/lib/surface/call.cc +163 -104
  731. data/src/core/lib/surface/call.h +42 -39
  732. data/src/core/lib/surface/call_details.cc +17 -18
  733. data/src/core/lib/surface/call_log_batch.cc +18 -18
  734. data/src/core/lib/surface/call_test_only.h +30 -30
  735. data/src/core/lib/surface/call_trace.cc +5 -5
  736. data/src/core/lib/surface/channel.cc +18 -18
  737. data/src/core/lib/surface/channel.h +31 -31
  738. data/src/core/lib/surface/channel_init.cc +17 -17
  739. data/src/core/lib/surface/channel_init.h +18 -18
  740. data/src/core/lib/surface/channel_ping.cc +18 -18
  741. data/src/core/lib/surface/channel_stack_type.cc +17 -17
  742. data/src/core/lib/surface/channel_stack_type.h +18 -18
  743. data/src/core/lib/surface/completion_queue.cc +136 -140
  744. data/src/core/lib/surface/completion_queue.h +32 -32
  745. data/src/core/lib/surface/completion_queue_factory.cc +28 -28
  746. data/src/core/lib/surface/completion_queue_factory.h +20 -20
  747. data/src/core/lib/surface/event_string.cc +17 -17
  748. data/src/core/lib/surface/event_string.h +20 -20
  749. data/src/core/lib/surface/init.cc +21 -19
  750. data/src/core/lib/surface/init.h +18 -18
  751. data/src/core/lib/surface/init_internally.cc +1 -0
  752. data/src/core/lib/surface/init_internally.h +1 -0
  753. data/src/core/lib/surface/lame_client.cc +18 -18
  754. data/src/core/lib/surface/lame_client.h +19 -19
  755. data/src/core/lib/surface/metadata_array.cc +17 -18
  756. data/src/core/lib/surface/server.cc +15 -15
  757. data/src/core/lib/surface/server.h +2 -3
  758. data/src/core/lib/surface/validate_metadata.cc +17 -17
  759. data/src/core/lib/surface/validate_metadata.h +18 -18
  760. data/src/core/lib/surface/version.cc +21 -21
  761. data/src/core/lib/transport/bdp_estimator.cc +17 -17
  762. data/src/core/lib/transport/bdp_estimator.h +18 -19
  763. data/src/core/lib/transport/connectivity_state.cc +17 -17
  764. data/src/core/lib/transport/connectivity_state.h +19 -19
  765. data/src/core/lib/transport/error_utils.cc +17 -17
  766. data/src/core/lib/transport/error_utils.h +18 -18
  767. data/src/core/lib/transport/handshaker.cc +37 -34
  768. data/src/core/lib/transport/handshaker.h +42 -37
  769. data/src/core/lib/transport/handshaker_factory.h +18 -18
  770. data/src/core/lib/transport/handshaker_registry.cc +17 -17
  771. data/src/core/lib/transport/handshaker_registry.h +18 -18
  772. data/src/core/lib/transport/http2_errors.h +20 -20
  773. data/src/core/lib/transport/http_connect_handshaker.cc +17 -17
  774. data/src/core/lib/transport/http_connect_handshaker.h +18 -18
  775. data/src/core/lib/transport/metadata_batch.cc +4 -1
  776. data/src/core/lib/transport/metadata_batch.h +30 -20
  777. data/src/core/lib/transport/parsed_metadata.h +1 -0
  778. data/src/core/lib/transport/pid_controller.cc +20 -20
  779. data/src/core/lib/transport/pid_controller.h +24 -24
  780. data/src/core/lib/transport/status_conversion.cc +22 -22
  781. data/src/core/lib/transport/status_conversion.h +20 -20
  782. data/src/core/lib/transport/tcp_connect_handshaker.h +1 -1
  783. data/src/core/lib/transport/timeout_encoding.cc +22 -22
  784. data/src/core/lib/transport/timeout_encoding.h +18 -18
  785. data/src/core/lib/transport/transport.cc +25 -24
  786. data/src/core/lib/transport/transport.h +134 -132
  787. data/src/core/lib/transport/transport_impl.h +41 -41
  788. data/src/core/lib/transport/transport_op_string.cc +19 -19
  789. data/src/core/plugin_registry/grpc_plugin_registry.cc +21 -19
  790. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +5 -0
  791. data/src/core/tsi/alts/crypt/aes_gcm.cc +20 -20
  792. data/src/core/tsi/alts/crypt/gsec.cc +26 -26
  793. data/src/core/tsi/alts/crypt/gsec.h +334 -334
  794. data/src/core/tsi/alts/frame_protector/alts_counter.cc +23 -23
  795. data/src/core/tsi/alts/frame_protector/alts_counter.h +66 -66
  796. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +19 -19
  797. data/src/core/tsi/alts/frame_protector/alts_crypter.h +206 -206
  798. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +72 -71
  799. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +38 -38
  800. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +18 -18
  801. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +80 -81
  802. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +22 -22
  803. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +22 -22
  804. data/src/core/tsi/alts/frame_protector/frame_handler.cc +26 -25
  805. data/src/core/tsi/alts/frame_protector/frame_handler.h +166 -166
  806. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +68 -67
  807. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +99 -99
  808. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +18 -17
  809. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +41 -42
  810. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +29 -28
  811. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +58 -58
  812. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +20 -20
  813. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +19 -19
  814. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +36 -36
  815. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +19 -19
  816. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +102 -101
  817. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +38 -37
  818. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +38 -39
  819. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +31 -30
  820. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +33 -34
  821. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +65 -66
  822. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +31 -30
  823. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +53 -54
  824. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +54 -53
  825. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +138 -139
  826. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +53 -52
  827. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +41 -42
  828. data/src/core/tsi/fake_transport_security.cc +77 -76
  829. data/src/core/tsi/fake_transport_security.h +30 -30
  830. data/src/core/tsi/local_transport_security.cc +34 -33
  831. data/src/core/tsi/local_transport_security.h +31 -31
  832. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +1 -0
  833. data/src/core/tsi/ssl/session_cache/ssl_session.h +18 -18
  834. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +18 -18
  835. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +18 -17
  836. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +19 -19
  837. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +19 -18
  838. data/src/core/tsi/ssl_transport_security.cc +139 -323
  839. data/src/core/tsi/ssl_transport_security.h +201 -200
  840. data/src/core/tsi/ssl_transport_security_utils.cc +250 -0
  841. data/src/core/tsi/ssl_transport_security_utils.h +147 -0
  842. data/src/core/tsi/ssl_types.h +25 -25
  843. data/src/core/tsi/transport_security.cc +26 -26
  844. data/src/core/tsi/transport_security.h +45 -45
  845. data/src/core/tsi/transport_security_grpc.cc +20 -20
  846. data/src/core/tsi/transport_security_grpc.h +39 -39
  847. data/src/core/tsi/transport_security_interface.h +330 -330
  848. data/src/ruby/ext/grpc/{ext-export-truffleruby.clang → ext-export-truffleruby-with-ruby-abi-version.clang} +0 -0
  849. data/src/ruby/ext/grpc/{ext-export-truffleruby.gcc → ext-export-truffleruby-with-ruby-abi-version.gcc} +0 -0
  850. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.clang +2 -0
  851. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.gcc +7 -0
  852. data/src/ruby/ext/grpc/ext-export.clang +0 -1
  853. data/src/ruby/ext/grpc/ext-export.gcc +1 -2
  854. data/src/ruby/ext/grpc/extconf.rb +47 -2
  855. data/src/ruby/ext/grpc/rb_call.c +1 -0
  856. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  857. data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
  858. data/src/ruby/ext/grpc/rb_compression_options.c +1 -1
  859. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  860. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +38 -36
  861. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +59 -56
  862. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  863. data/src/ruby/lib/grpc/version.rb +1 -1
  864. data/src/ruby/spec/client_server_spec.rb +20 -8
  865. data/third_party/re2/re2/bitstate.cc +3 -3
  866. data/third_party/re2/re2/dfa.cc +13 -13
  867. data/third_party/re2/re2/nfa.cc +4 -4
  868. data/third_party/re2/re2/onepass.cc +2 -2
  869. data/third_party/re2/re2/prefilter_tree.cc +27 -59
  870. data/third_party/re2/re2/prefilter_tree.h +3 -2
  871. data/third_party/re2/re2/prog.cc +11 -2
  872. data/third_party/re2/re2/prog.h +17 -5
  873. data/third_party/re2/re2/re2.cc +6 -11
  874. data/third_party/re2/re2/re2.h +1 -1
  875. data/third_party/re2/re2/regexp.cc +1 -2
  876. data/third_party/re2/re2/stringpiece.h +10 -7
  877. data/third_party/re2/re2/unicode_casefold.cc +25 -11
  878. data/third_party/re2/re2/unicode_groups.cc +319 -151
  879. data/third_party/re2/re2/walker-inl.h +3 -2
  880. data/third_party/re2/util/mutex.h +4 -4
  881. metadata +95 -26
  882. data/include/grpc/impl/codegen/gpr_slice.h +0 -71
  883. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +0 -332
  884. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -52
  885. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +0 -322
  886. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +0 -62
@@ -0,0 +1,174 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/domain.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef XDS_TYPE_MATCHER_V3_DOMAIN_PROTO_UPB_H_
10
+ #define XDS_TYPE_MATCHER_V3_DOMAIN_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct xds_type_matcher_v3_ServerNameMatcher;
24
+ struct xds_type_matcher_v3_ServerNameMatcher_DomainMatcher;
25
+ typedef struct xds_type_matcher_v3_ServerNameMatcher xds_type_matcher_v3_ServerNameMatcher;
26
+ typedef struct xds_type_matcher_v3_ServerNameMatcher_DomainMatcher xds_type_matcher_v3_ServerNameMatcher_DomainMatcher;
27
+ extern const upb_MiniTable xds_type_matcher_v3_ServerNameMatcher_msginit;
28
+ extern const upb_MiniTable xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit;
29
+ struct xds_type_matcher_v3_Matcher_OnMatch;
30
+ extern const upb_MiniTable xds_type_matcher_v3_Matcher_OnMatch_msginit;
31
+
32
+
33
+
34
+ /* xds.type.matcher.v3.ServerNameMatcher */
35
+
36
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher* xds_type_matcher_v3_ServerNameMatcher_new(upb_Arena* arena) {
37
+ return (xds_type_matcher_v3_ServerNameMatcher*)_upb_Message_New(&xds_type_matcher_v3_ServerNameMatcher_msginit, arena);
38
+ }
39
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher* xds_type_matcher_v3_ServerNameMatcher_parse(const char* buf, size_t size, upb_Arena* arena) {
40
+ xds_type_matcher_v3_ServerNameMatcher* ret = xds_type_matcher_v3_ServerNameMatcher_new(arena);
41
+ if (!ret) return NULL;
42
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_ServerNameMatcher_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
43
+ return NULL;
44
+ }
45
+ return ret;
46
+ }
47
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher* xds_type_matcher_v3_ServerNameMatcher_parse_ex(const char* buf, size_t size,
48
+ const upb_ExtensionRegistry* extreg,
49
+ int options, upb_Arena* arena) {
50
+ xds_type_matcher_v3_ServerNameMatcher* ret = xds_type_matcher_v3_ServerNameMatcher_new(arena);
51
+ if (!ret) return NULL;
52
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_ServerNameMatcher_msginit, extreg, options, arena) !=
53
+ kUpb_DecodeStatus_Ok) {
54
+ return NULL;
55
+ }
56
+ return ret;
57
+ }
58
+ UPB_INLINE char* xds_type_matcher_v3_ServerNameMatcher_serialize(const xds_type_matcher_v3_ServerNameMatcher* msg, upb_Arena* arena, size_t* len) {
59
+ char* ptr;
60
+ (void)upb_Encode(msg, &xds_type_matcher_v3_ServerNameMatcher_msginit, 0, arena, &ptr, len);
61
+ return ptr;
62
+ }
63
+ UPB_INLINE char* xds_type_matcher_v3_ServerNameMatcher_serialize_ex(const xds_type_matcher_v3_ServerNameMatcher* msg, int options,
64
+ upb_Arena* arena, size_t* len) {
65
+ char* ptr;
66
+ (void)upb_Encode(msg, &xds_type_matcher_v3_ServerNameMatcher_msginit, options, arena, &ptr, len);
67
+ return ptr;
68
+ }
69
+ UPB_INLINE bool xds_type_matcher_v3_ServerNameMatcher_has_domain_matchers(const xds_type_matcher_v3_ServerNameMatcher* msg) {
70
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
71
+ }
72
+ UPB_INLINE void xds_type_matcher_v3_ServerNameMatcher_clear_domain_matchers(const xds_type_matcher_v3_ServerNameMatcher* msg) {
73
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
74
+ }
75
+ UPB_INLINE const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* const* xds_type_matcher_v3_ServerNameMatcher_domain_matchers(const xds_type_matcher_v3_ServerNameMatcher* msg, size_t* len) {
76
+ return (const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
77
+ }
78
+
79
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher_DomainMatcher** xds_type_matcher_v3_ServerNameMatcher_mutable_domain_matchers(xds_type_matcher_v3_ServerNameMatcher* msg, size_t* len) {
80
+ return (xds_type_matcher_v3_ServerNameMatcher_DomainMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
81
+ }
82
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher_DomainMatcher** xds_type_matcher_v3_ServerNameMatcher_resize_domain_matchers(xds_type_matcher_v3_ServerNameMatcher* msg, size_t len, upb_Arena* arena) {
83
+ return (xds_type_matcher_v3_ServerNameMatcher_DomainMatcher**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
84
+ }
85
+ UPB_INLINE struct xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* xds_type_matcher_v3_ServerNameMatcher_add_domain_matchers(xds_type_matcher_v3_ServerNameMatcher* msg, upb_Arena* arena) {
86
+ struct xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* sub = (struct xds_type_matcher_v3_ServerNameMatcher_DomainMatcher*)_upb_Message_New(&xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, arena);
87
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
88
+ if (!ok) return NULL;
89
+ return sub;
90
+ }
91
+
92
+ /* xds.type.matcher.v3.ServerNameMatcher.DomainMatcher */
93
+
94
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_new(upb_Arena* arena) {
95
+ return (xds_type_matcher_v3_ServerNameMatcher_DomainMatcher*)_upb_Message_New(&xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, arena);
96
+ }
97
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_parse(const char* buf, size_t size, upb_Arena* arena) {
98
+ xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* ret = xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_new(arena);
99
+ if (!ret) return NULL;
100
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
101
+ return NULL;
102
+ }
103
+ return ret;
104
+ }
105
+ UPB_INLINE xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_parse_ex(const char* buf, size_t size,
106
+ const upb_ExtensionRegistry* extreg,
107
+ int options, upb_Arena* arena) {
108
+ xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* ret = xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_new(arena);
109
+ if (!ret) return NULL;
110
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, extreg, options, arena) !=
111
+ kUpb_DecodeStatus_Ok) {
112
+ return NULL;
113
+ }
114
+ return ret;
115
+ }
116
+ UPB_INLINE char* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_serialize(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, upb_Arena* arena, size_t* len) {
117
+ char* ptr;
118
+ (void)upb_Encode(msg, &xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, 0, arena, &ptr, len);
119
+ return ptr;
120
+ }
121
+ UPB_INLINE char* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_serialize_ex(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, int options,
122
+ upb_Arena* arena, size_t* len) {
123
+ char* ptr;
124
+ (void)upb_Encode(msg, &xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_msginit, options, arena, &ptr, len);
125
+ return ptr;
126
+ }
127
+ UPB_INLINE void xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_clear_domains(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg) {
128
+ _upb_array_detach(msg, UPB_SIZE(4, 8));
129
+ }
130
+ UPB_INLINE upb_StringView const* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_domains(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, size_t* len) {
131
+ return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len);
132
+ }
133
+ UPB_INLINE bool xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_has_on_match(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg) {
134
+ return _upb_hasbit(msg, 1);
135
+ }
136
+ UPB_INLINE void xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_clear_on_match(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg) {
137
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
138
+ }
139
+ UPB_INLINE const struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_on_match(const xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg) {
140
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct xds_type_matcher_v3_Matcher_OnMatch*);
141
+ }
142
+
143
+ UPB_INLINE upb_StringView* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_mutable_domains(xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, size_t* len) {
144
+ return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
145
+ }
146
+ UPB_INLINE upb_StringView* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_resize_domains(xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, size_t len, upb_Arena* arena) {
147
+ return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(4, 8), len, UPB_SIZE(3, 4), arena);
148
+ }
149
+ UPB_INLINE bool xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_add_domains(xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, upb_StringView val, upb_Arena* arena) {
150
+ return _upb_Array_Append_accessor2(msg, UPB_SIZE(4, 8), UPB_SIZE(3, 4), &val, arena);
151
+ }
152
+ UPB_INLINE void xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_set_on_match(xds_type_matcher_v3_ServerNameMatcher_DomainMatcher *msg, struct xds_type_matcher_v3_Matcher_OnMatch* value) {
153
+ _upb_sethas(msg, 1);
154
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct xds_type_matcher_v3_Matcher_OnMatch*) = value;
155
+ }
156
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_mutable_on_match(xds_type_matcher_v3_ServerNameMatcher_DomainMatcher* msg, upb_Arena* arena) {
157
+ struct xds_type_matcher_v3_Matcher_OnMatch* sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_on_match(msg);
158
+ if (sub == NULL) {
159
+ sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)_upb_Message_New(&xds_type_matcher_v3_Matcher_OnMatch_msginit, arena);
160
+ if (!sub) return NULL;
161
+ xds_type_matcher_v3_ServerNameMatcher_DomainMatcher_set_on_match(msg, sub);
162
+ }
163
+ return sub;
164
+ }
165
+
166
+ extern const upb_MiniTable_File xds_type_matcher_v3_domain_proto_upb_file_layout;
167
+
168
+ #ifdef __cplusplus
169
+ } /* extern "C" */
170
+ #endif
171
+
172
+ #include "upb/port_undef.inc"
173
+
174
+ #endif /* XDS_TYPE_MATCHER_V3_DOMAIN_PROTO_UPB_H_ */
@@ -0,0 +1,36 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/http_inputs.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #include <stddef.h>
10
+ #include "upb/msg_internal.h"
11
+ #include "xds/type/matcher/v3/http_inputs.upb.h"
12
+ #include "xds/annotations/v3/status.upb.h"
13
+
14
+ #include "upb/port_def.inc"
15
+
16
+ const upb_MiniTable xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit = {
17
+ NULL,
18
+ NULL,
19
+ UPB_SIZE(0, 0), 0, kUpb_ExtMode_NonExtendable, 0, 255, 0,
20
+ };
21
+
22
+ static const upb_MiniTable *messages_layout[1] = {
23
+ &xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit,
24
+ };
25
+
26
+ const upb_MiniTable_File xds_type_matcher_v3_http_inputs_proto_upb_file_layout = {
27
+ messages_layout,
28
+ NULL,
29
+ NULL,
30
+ 1,
31
+ 0,
32
+ 0,
33
+ };
34
+
35
+ #include "upb/port_undef.inc"
36
+
@@ -0,0 +1,74 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/http_inputs.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef XDS_TYPE_MATCHER_V3_HTTP_INPUTS_PROTO_UPB_H_
10
+ #define XDS_TYPE_MATCHER_V3_HTTP_INPUTS_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct xds_type_matcher_v3_HttpAttributesCelMatchInput;
24
+ typedef struct xds_type_matcher_v3_HttpAttributesCelMatchInput xds_type_matcher_v3_HttpAttributesCelMatchInput;
25
+ extern const upb_MiniTable xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit;
26
+
27
+
28
+
29
+ /* xds.type.matcher.v3.HttpAttributesCelMatchInput */
30
+
31
+ UPB_INLINE xds_type_matcher_v3_HttpAttributesCelMatchInput* xds_type_matcher_v3_HttpAttributesCelMatchInput_new(upb_Arena* arena) {
32
+ return (xds_type_matcher_v3_HttpAttributesCelMatchInput*)_upb_Message_New(&xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit, arena);
33
+ }
34
+ UPB_INLINE xds_type_matcher_v3_HttpAttributesCelMatchInput* xds_type_matcher_v3_HttpAttributesCelMatchInput_parse(const char* buf, size_t size, upb_Arena* arena) {
35
+ xds_type_matcher_v3_HttpAttributesCelMatchInput* ret = xds_type_matcher_v3_HttpAttributesCelMatchInput_new(arena);
36
+ if (!ret) return NULL;
37
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
38
+ return NULL;
39
+ }
40
+ return ret;
41
+ }
42
+ UPB_INLINE xds_type_matcher_v3_HttpAttributesCelMatchInput* xds_type_matcher_v3_HttpAttributesCelMatchInput_parse_ex(const char* buf, size_t size,
43
+ const upb_ExtensionRegistry* extreg,
44
+ int options, upb_Arena* arena) {
45
+ xds_type_matcher_v3_HttpAttributesCelMatchInput* ret = xds_type_matcher_v3_HttpAttributesCelMatchInput_new(arena);
46
+ if (!ret) return NULL;
47
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit, extreg, options, arena) !=
48
+ kUpb_DecodeStatus_Ok) {
49
+ return NULL;
50
+ }
51
+ return ret;
52
+ }
53
+ UPB_INLINE char* xds_type_matcher_v3_HttpAttributesCelMatchInput_serialize(const xds_type_matcher_v3_HttpAttributesCelMatchInput* msg, upb_Arena* arena, size_t* len) {
54
+ char* ptr;
55
+ (void)upb_Encode(msg, &xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit, 0, arena, &ptr, len);
56
+ return ptr;
57
+ }
58
+ UPB_INLINE char* xds_type_matcher_v3_HttpAttributesCelMatchInput_serialize_ex(const xds_type_matcher_v3_HttpAttributesCelMatchInput* msg, int options,
59
+ upb_Arena* arena, size_t* len) {
60
+ char* ptr;
61
+ (void)upb_Encode(msg, &xds_type_matcher_v3_HttpAttributesCelMatchInput_msginit, options, arena, &ptr, len);
62
+ return ptr;
63
+ }
64
+
65
+
66
+ extern const upb_MiniTable_File xds_type_matcher_v3_http_inputs_proto_upb_file_layout;
67
+
68
+ #ifdef __cplusplus
69
+ } /* extern "C" */
70
+ #endif
71
+
72
+ #include "upb/port_undef.inc"
73
+
74
+ #endif /* XDS_TYPE_MATCHER_V3_HTTP_INPUTS_PROTO_UPB_H_ */
@@ -0,0 +1,65 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/ip.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #include <stddef.h>
10
+ #include "upb/msg_internal.h"
11
+ #include "xds/type/matcher/v3/ip.upb.h"
12
+ #include "xds/annotations/v3/status.upb.h"
13
+ #include "xds/core/v3/cidr.upb.h"
14
+ #include "xds/type/matcher/v3/matcher.upb.h"
15
+ #include "validate/validate.upb.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ static const upb_MiniTable_Sub xds_type_matcher_v3_IPMatcher_submsgs[1] = {
20
+ {.submsg = &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit},
21
+ };
22
+
23
+ static const upb_MiniTable_Field xds_type_matcher_v3_IPMatcher__fields[1] = {
24
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
25
+ };
26
+
27
+ const upb_MiniTable xds_type_matcher_v3_IPMatcher_msginit = {
28
+ &xds_type_matcher_v3_IPMatcher_submsgs[0],
29
+ &xds_type_matcher_v3_IPMatcher__fields[0],
30
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
31
+ };
32
+
33
+ static const upb_MiniTable_Sub xds_type_matcher_v3_IPMatcher_IPRangeMatcher_submsgs[2] = {
34
+ {.submsg = &xds_core_v3_CidrRange_msginit},
35
+ {.submsg = &xds_type_matcher_v3_Matcher_OnMatch_msginit},
36
+ };
37
+
38
+ static const upb_MiniTable_Field xds_type_matcher_v3_IPMatcher_IPRangeMatcher__fields[3] = {
39
+ {1, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
40
+ {2, UPB_SIZE(8, 16), UPB_SIZE(1, 1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
41
+ {3, UPB_SIZE(1, 1), UPB_SIZE(0, 0), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
42
+ };
43
+
44
+ const upb_MiniTable xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit = {
45
+ &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_submsgs[0],
46
+ &xds_type_matcher_v3_IPMatcher_IPRangeMatcher__fields[0],
47
+ UPB_SIZE(16, 24), 3, kUpb_ExtMode_NonExtendable, 3, 255, 0,
48
+ };
49
+
50
+ static const upb_MiniTable *messages_layout[2] = {
51
+ &xds_type_matcher_v3_IPMatcher_msginit,
52
+ &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit,
53
+ };
54
+
55
+ const upb_MiniTable_File xds_type_matcher_v3_ip_proto_upb_file_layout = {
56
+ messages_layout,
57
+ NULL,
58
+ NULL,
59
+ 2,
60
+ 0,
61
+ 0,
62
+ };
63
+
64
+ #include "upb/port_undef.inc"
65
+
@@ -0,0 +1,191 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/ip.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef XDS_TYPE_MATCHER_V3_IP_PROTO_UPB_H_
10
+ #define XDS_TYPE_MATCHER_V3_IP_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct xds_type_matcher_v3_IPMatcher;
24
+ struct xds_type_matcher_v3_IPMatcher_IPRangeMatcher;
25
+ typedef struct xds_type_matcher_v3_IPMatcher xds_type_matcher_v3_IPMatcher;
26
+ typedef struct xds_type_matcher_v3_IPMatcher_IPRangeMatcher xds_type_matcher_v3_IPMatcher_IPRangeMatcher;
27
+ extern const upb_MiniTable xds_type_matcher_v3_IPMatcher_msginit;
28
+ extern const upb_MiniTable xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit;
29
+ struct xds_core_v3_CidrRange;
30
+ struct xds_type_matcher_v3_Matcher_OnMatch;
31
+ extern const upb_MiniTable xds_core_v3_CidrRange_msginit;
32
+ extern const upb_MiniTable xds_type_matcher_v3_Matcher_OnMatch_msginit;
33
+
34
+
35
+
36
+ /* xds.type.matcher.v3.IPMatcher */
37
+
38
+ UPB_INLINE xds_type_matcher_v3_IPMatcher* xds_type_matcher_v3_IPMatcher_new(upb_Arena* arena) {
39
+ return (xds_type_matcher_v3_IPMatcher*)_upb_Message_New(&xds_type_matcher_v3_IPMatcher_msginit, arena);
40
+ }
41
+ UPB_INLINE xds_type_matcher_v3_IPMatcher* xds_type_matcher_v3_IPMatcher_parse(const char* buf, size_t size, upb_Arena* arena) {
42
+ xds_type_matcher_v3_IPMatcher* ret = xds_type_matcher_v3_IPMatcher_new(arena);
43
+ if (!ret) return NULL;
44
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_IPMatcher_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
45
+ return NULL;
46
+ }
47
+ return ret;
48
+ }
49
+ UPB_INLINE xds_type_matcher_v3_IPMatcher* xds_type_matcher_v3_IPMatcher_parse_ex(const char* buf, size_t size,
50
+ const upb_ExtensionRegistry* extreg,
51
+ int options, upb_Arena* arena) {
52
+ xds_type_matcher_v3_IPMatcher* ret = xds_type_matcher_v3_IPMatcher_new(arena);
53
+ if (!ret) return NULL;
54
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_IPMatcher_msginit, extreg, options, arena) !=
55
+ kUpb_DecodeStatus_Ok) {
56
+ return NULL;
57
+ }
58
+ return ret;
59
+ }
60
+ UPB_INLINE char* xds_type_matcher_v3_IPMatcher_serialize(const xds_type_matcher_v3_IPMatcher* msg, upb_Arena* arena, size_t* len) {
61
+ char* ptr;
62
+ (void)upb_Encode(msg, &xds_type_matcher_v3_IPMatcher_msginit, 0, arena, &ptr, len);
63
+ return ptr;
64
+ }
65
+ UPB_INLINE char* xds_type_matcher_v3_IPMatcher_serialize_ex(const xds_type_matcher_v3_IPMatcher* msg, int options,
66
+ upb_Arena* arena, size_t* len) {
67
+ char* ptr;
68
+ (void)upb_Encode(msg, &xds_type_matcher_v3_IPMatcher_msginit, options, arena, &ptr, len);
69
+ return ptr;
70
+ }
71
+ UPB_INLINE bool xds_type_matcher_v3_IPMatcher_has_range_matchers(const xds_type_matcher_v3_IPMatcher* msg) {
72
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
73
+ }
74
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_clear_range_matchers(const xds_type_matcher_v3_IPMatcher* msg) {
75
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
76
+ }
77
+ UPB_INLINE const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* const* xds_type_matcher_v3_IPMatcher_range_matchers(const xds_type_matcher_v3_IPMatcher* msg, size_t* len) {
78
+ return (const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
79
+ }
80
+
81
+ UPB_INLINE xds_type_matcher_v3_IPMatcher_IPRangeMatcher** xds_type_matcher_v3_IPMatcher_mutable_range_matchers(xds_type_matcher_v3_IPMatcher* msg, size_t* len) {
82
+ return (xds_type_matcher_v3_IPMatcher_IPRangeMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
83
+ }
84
+ UPB_INLINE xds_type_matcher_v3_IPMatcher_IPRangeMatcher** xds_type_matcher_v3_IPMatcher_resize_range_matchers(xds_type_matcher_v3_IPMatcher* msg, size_t len, upb_Arena* arena) {
85
+ return (xds_type_matcher_v3_IPMatcher_IPRangeMatcher**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
86
+ }
87
+ UPB_INLINE struct xds_type_matcher_v3_IPMatcher_IPRangeMatcher* xds_type_matcher_v3_IPMatcher_add_range_matchers(xds_type_matcher_v3_IPMatcher* msg, upb_Arena* arena) {
88
+ struct xds_type_matcher_v3_IPMatcher_IPRangeMatcher* sub = (struct xds_type_matcher_v3_IPMatcher_IPRangeMatcher*)_upb_Message_New(&xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, arena);
89
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
90
+ if (!ok) return NULL;
91
+ return sub;
92
+ }
93
+
94
+ /* xds.type.matcher.v3.IPMatcher.IPRangeMatcher */
95
+
96
+ UPB_INLINE xds_type_matcher_v3_IPMatcher_IPRangeMatcher* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_new(upb_Arena* arena) {
97
+ return (xds_type_matcher_v3_IPMatcher_IPRangeMatcher*)_upb_Message_New(&xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, arena);
98
+ }
99
+ UPB_INLINE xds_type_matcher_v3_IPMatcher_IPRangeMatcher* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_parse(const char* buf, size_t size, upb_Arena* arena) {
100
+ xds_type_matcher_v3_IPMatcher_IPRangeMatcher* ret = xds_type_matcher_v3_IPMatcher_IPRangeMatcher_new(arena);
101
+ if (!ret) return NULL;
102
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
103
+ return NULL;
104
+ }
105
+ return ret;
106
+ }
107
+ UPB_INLINE xds_type_matcher_v3_IPMatcher_IPRangeMatcher* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_parse_ex(const char* buf, size_t size,
108
+ const upb_ExtensionRegistry* extreg,
109
+ int options, upb_Arena* arena) {
110
+ xds_type_matcher_v3_IPMatcher_IPRangeMatcher* ret = xds_type_matcher_v3_IPMatcher_IPRangeMatcher_new(arena);
111
+ if (!ret) return NULL;
112
+ if (upb_Decode(buf, size, ret, &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, extreg, options, arena) !=
113
+ kUpb_DecodeStatus_Ok) {
114
+ return NULL;
115
+ }
116
+ return ret;
117
+ }
118
+ UPB_INLINE char* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_serialize(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, upb_Arena* arena, size_t* len) {
119
+ char* ptr;
120
+ (void)upb_Encode(msg, &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, 0, arena, &ptr, len);
121
+ return ptr;
122
+ }
123
+ UPB_INLINE char* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_serialize_ex(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, int options,
124
+ upb_Arena* arena, size_t* len) {
125
+ char* ptr;
126
+ (void)upb_Encode(msg, &xds_type_matcher_v3_IPMatcher_IPRangeMatcher_msginit, options, arena, &ptr, len);
127
+ return ptr;
128
+ }
129
+ UPB_INLINE bool xds_type_matcher_v3_IPMatcher_IPRangeMatcher_has_ranges(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
130
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(4, 8));
131
+ }
132
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_IPRangeMatcher_clear_ranges(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
133
+ _upb_array_detach(msg, UPB_SIZE(4, 8));
134
+ }
135
+ UPB_INLINE const struct xds_core_v3_CidrRange* const* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_ranges(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, size_t* len) {
136
+ return (const struct xds_core_v3_CidrRange* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len);
137
+ }
138
+ UPB_INLINE bool xds_type_matcher_v3_IPMatcher_IPRangeMatcher_has_on_match(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
139
+ return _upb_hasbit(msg, 1);
140
+ }
141
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_IPRangeMatcher_clear_on_match(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
142
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
143
+ }
144
+ UPB_INLINE const struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_on_match(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
145
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct xds_type_matcher_v3_Matcher_OnMatch*);
146
+ }
147
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_IPRangeMatcher_clear_exclusive(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
148
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
149
+ }
150
+ UPB_INLINE bool xds_type_matcher_v3_IPMatcher_IPRangeMatcher_exclusive(const xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg) {
151
+ return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
152
+ }
153
+
154
+ UPB_INLINE struct xds_core_v3_CidrRange** xds_type_matcher_v3_IPMatcher_IPRangeMatcher_mutable_ranges(xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, size_t* len) {
155
+ return (struct xds_core_v3_CidrRange**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
156
+ }
157
+ UPB_INLINE struct xds_core_v3_CidrRange** xds_type_matcher_v3_IPMatcher_IPRangeMatcher_resize_ranges(xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, size_t len, upb_Arena* arena) {
158
+ return (struct xds_core_v3_CidrRange**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(4, 8), len, UPB_SIZE(2, 3), arena);
159
+ }
160
+ UPB_INLINE struct xds_core_v3_CidrRange* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_add_ranges(xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, upb_Arena* arena) {
161
+ struct xds_core_v3_CidrRange* sub = (struct xds_core_v3_CidrRange*)_upb_Message_New(&xds_core_v3_CidrRange_msginit, arena);
162
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(4, 8), UPB_SIZE(2, 3), &sub, arena);
163
+ if (!ok) return NULL;
164
+ return sub;
165
+ }
166
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_IPRangeMatcher_set_on_match(xds_type_matcher_v3_IPMatcher_IPRangeMatcher *msg, struct xds_type_matcher_v3_Matcher_OnMatch* value) {
167
+ _upb_sethas(msg, 1);
168
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct xds_type_matcher_v3_Matcher_OnMatch*) = value;
169
+ }
170
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_IPMatcher_IPRangeMatcher_mutable_on_match(xds_type_matcher_v3_IPMatcher_IPRangeMatcher* msg, upb_Arena* arena) {
171
+ struct xds_type_matcher_v3_Matcher_OnMatch* sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)xds_type_matcher_v3_IPMatcher_IPRangeMatcher_on_match(msg);
172
+ if (sub == NULL) {
173
+ sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)_upb_Message_New(&xds_type_matcher_v3_Matcher_OnMatch_msginit, arena);
174
+ if (!sub) return NULL;
175
+ xds_type_matcher_v3_IPMatcher_IPRangeMatcher_set_on_match(msg, sub);
176
+ }
177
+ return sub;
178
+ }
179
+ UPB_INLINE void xds_type_matcher_v3_IPMatcher_IPRangeMatcher_set_exclusive(xds_type_matcher_v3_IPMatcher_IPRangeMatcher *msg, bool value) {
180
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
181
+ }
182
+
183
+ extern const upb_MiniTable_File xds_type_matcher_v3_ip_proto_upb_file_layout;
184
+
185
+ #ifdef __cplusplus
186
+ } /* extern "C" */
187
+ #endif
188
+
189
+ #include "upb/port_undef.inc"
190
+
191
+ #endif /* XDS_TYPE_MATCHER_V3_IP_PROTO_UPB_H_ */
@@ -0,0 +1,127 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * xds/type/matcher/v3/range.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #include <stddef.h>
10
+ #include "upb/msg_internal.h"
11
+ #include "xds/type/matcher/v3/range.upb.h"
12
+ #include "xds/type/v3/range.upb.h"
13
+ #include "xds/type/matcher/v3/matcher.upb.h"
14
+ #include "validate/validate.upb.h"
15
+
16
+ #include "upb/port_def.inc"
17
+
18
+ static const upb_MiniTable_Sub xds_type_matcher_v3_Int64RangeMatcher_submsgs[1] = {
19
+ {.submsg = &xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher_msginit},
20
+ };
21
+
22
+ static const upb_MiniTable_Field xds_type_matcher_v3_Int64RangeMatcher__fields[1] = {
23
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
24
+ };
25
+
26
+ const upb_MiniTable xds_type_matcher_v3_Int64RangeMatcher_msginit = {
27
+ &xds_type_matcher_v3_Int64RangeMatcher_submsgs[0],
28
+ &xds_type_matcher_v3_Int64RangeMatcher__fields[0],
29
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
30
+ };
31
+
32
+ static const upb_MiniTable_Sub xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher_submsgs[2] = {
33
+ {.submsg = &xds_type_v3_Int64Range_msginit},
34
+ {.submsg = &xds_type_matcher_v3_Matcher_OnMatch_msginit},
35
+ };
36
+
37
+ static const upb_MiniTable_Field xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher__fields[2] = {
38
+ {1, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
39
+ {2, UPB_SIZE(8, 16), UPB_SIZE(1, 1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
40
+ };
41
+
42
+ const upb_MiniTable xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher_msginit = {
43
+ &xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher_submsgs[0],
44
+ &xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher__fields[0],
45
+ UPB_SIZE(16, 24), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
46
+ };
47
+
48
+ static const upb_MiniTable_Sub xds_type_matcher_v3_Int32RangeMatcher_submsgs[1] = {
49
+ {.submsg = &xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher_msginit},
50
+ };
51
+
52
+ static const upb_MiniTable_Field xds_type_matcher_v3_Int32RangeMatcher__fields[1] = {
53
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
54
+ };
55
+
56
+ const upb_MiniTable xds_type_matcher_v3_Int32RangeMatcher_msginit = {
57
+ &xds_type_matcher_v3_Int32RangeMatcher_submsgs[0],
58
+ &xds_type_matcher_v3_Int32RangeMatcher__fields[0],
59
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
60
+ };
61
+
62
+ static const upb_MiniTable_Sub xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher_submsgs[2] = {
63
+ {.submsg = &xds_type_v3_Int32Range_msginit},
64
+ {.submsg = &xds_type_matcher_v3_Matcher_OnMatch_msginit},
65
+ };
66
+
67
+ static const upb_MiniTable_Field xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher__fields[2] = {
68
+ {1, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
69
+ {2, UPB_SIZE(8, 16), UPB_SIZE(1, 1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
70
+ };
71
+
72
+ const upb_MiniTable xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher_msginit = {
73
+ &xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher_submsgs[0],
74
+ &xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher__fields[0],
75
+ UPB_SIZE(16, 24), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
76
+ };
77
+
78
+ static const upb_MiniTable_Sub xds_type_matcher_v3_DoubleRangeMatcher_submsgs[1] = {
79
+ {.submsg = &xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher_msginit},
80
+ };
81
+
82
+ static const upb_MiniTable_Field xds_type_matcher_v3_DoubleRangeMatcher__fields[1] = {
83
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
84
+ };
85
+
86
+ const upb_MiniTable xds_type_matcher_v3_DoubleRangeMatcher_msginit = {
87
+ &xds_type_matcher_v3_DoubleRangeMatcher_submsgs[0],
88
+ &xds_type_matcher_v3_DoubleRangeMatcher__fields[0],
89
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
90
+ };
91
+
92
+ static const upb_MiniTable_Sub xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher_submsgs[2] = {
93
+ {.submsg = &xds_type_v3_DoubleRange_msginit},
94
+ {.submsg = &xds_type_matcher_v3_Matcher_OnMatch_msginit},
95
+ };
96
+
97
+ static const upb_MiniTable_Field xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher__fields[2] = {
98
+ {1, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
99
+ {2, UPB_SIZE(8, 16), UPB_SIZE(1, 1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
100
+ };
101
+
102
+ const upb_MiniTable xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher_msginit = {
103
+ &xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher_submsgs[0],
104
+ &xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher__fields[0],
105
+ UPB_SIZE(16, 24), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
106
+ };
107
+
108
+ static const upb_MiniTable *messages_layout[6] = {
109
+ &xds_type_matcher_v3_Int64RangeMatcher_msginit,
110
+ &xds_type_matcher_v3_Int64RangeMatcher_RangeMatcher_msginit,
111
+ &xds_type_matcher_v3_Int32RangeMatcher_msginit,
112
+ &xds_type_matcher_v3_Int32RangeMatcher_RangeMatcher_msginit,
113
+ &xds_type_matcher_v3_DoubleRangeMatcher_msginit,
114
+ &xds_type_matcher_v3_DoubleRangeMatcher_RangeMatcher_msginit,
115
+ };
116
+
117
+ const upb_MiniTable_File xds_type_matcher_v3_range_proto_upb_file_layout = {
118
+ messages_layout,
119
+ NULL,
120
+ NULL,
121
+ 6,
122
+ 0,
123
+ 0,
124
+ };
125
+
126
+ #include "upb/port_undef.inc"
127
+