grpc 1.30.2 → 1.32.0

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

Potentially problematic release.


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

Files changed (674) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +723 -15910
  3. data/include/grpc/grpc_security.h +31 -14
  4. data/include/grpc/grpc_security_constants.h +3 -0
  5. data/include/grpc/impl/codegen/README.md +22 -0
  6. data/include/grpc/impl/codegen/grpc_types.h +7 -5
  7. data/include/grpc/impl/codegen/port_platform.h +6 -33
  8. data/src/core/ext/filters/client_channel/backend_metric.cc +12 -9
  9. data/src/core/ext/filters/client_channel/backup_poller.cc +3 -2
  10. data/src/core/ext/filters/client_channel/client_channel.cc +470 -285
  11. data/src/core/ext/filters/client_channel/client_channel.h +1 -1
  12. data/src/core/ext/filters/client_channel/client_channel_channelz.h +0 -3
  13. data/src/core/ext/filters/client_channel/config_selector.cc +62 -0
  14. data/src/core/ext/filters/client_channel/config_selector.h +93 -0
  15. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +24 -2
  16. data/src/core/ext/filters/client_channel/health/health_check_client.cc +8 -1
  17. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +8 -8
  18. data/src/core/ext/filters/client_channel/http_proxy.cc +6 -4
  19. data/src/core/ext/filters/client_channel/lb_policy.h +4 -0
  20. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +6 -4
  21. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +59 -36
  22. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +0 -13
  23. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +0 -3
  24. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +1 -37
  25. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +19 -13
  26. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +29 -10
  27. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +5 -4
  28. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +4 -6
  29. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +23 -13
  30. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +18 -12
  31. data/src/core/ext/filters/client_channel/lb_policy/xds/eds.cc +22 -14
  32. data/src/core/ext/filters/client_channel/lb_policy/xds/lrs.cc +18 -9
  33. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc +385 -78
  34. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +4 -5
  35. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +5 -2
  36. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc +6 -5
  37. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc +8 -6
  38. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +9 -7
  39. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +7 -5
  40. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +36 -51
  41. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc +1 -1
  42. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  43. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +6 -2
  44. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +1 -1
  45. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +1 -1
  46. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +383 -31
  47. data/src/core/ext/filters/client_channel/resolver_registry.cc +13 -14
  48. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +6 -7
  49. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +0 -1
  50. data/src/core/ext/filters/client_channel/resolving_lb_policy.cc +38 -32
  51. data/src/core/ext/filters/client_channel/resolving_lb_policy.h +39 -20
  52. data/src/core/ext/filters/client_channel/server_address.cc +40 -7
  53. data/src/core/ext/filters/client_channel/server_address.h +42 -4
  54. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +142 -0
  55. data/src/core/ext/filters/client_channel/subchannel.cc +65 -24
  56. data/src/core/ext/filters/client_channel/subchannel.h +16 -4
  57. data/src/core/ext/filters/http/client/http_client_filter.cc +5 -5
  58. data/src/core/ext/filters/http/http_filters_plugin.cc +2 -1
  59. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +74 -33
  60. data/src/core/ext/filters/http/message_compress/message_decompress_filter.h +3 -1
  61. data/src/core/ext/filters/max_age/max_age_filter.cc +2 -1
  62. data/src/core/ext/filters/message_size/message_size_filter.cc +56 -80
  63. data/src/core/ext/filters/message_size/message_size_filter.h +6 -0
  64. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +87 -31
  65. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +18 -1
  66. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +10 -35
  67. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +378 -348
  68. data/src/core/ext/transport/chttp2/server/chttp2_server.h +7 -2
  69. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +3 -3
  70. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +10 -16
  71. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +9 -9
  72. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +256 -279
  73. data/src/core/ext/transport/chttp2/transport/flow_control.cc +23 -28
  74. data/src/core/ext/transport/chttp2/transport/flow_control.h +14 -16
  75. data/src/core/ext/transport/chttp2/transport/frame_data.cc +9 -12
  76. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +4 -6
  77. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +5 -6
  78. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +12 -13
  79. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +8 -9
  80. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +9 -12
  81. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +25 -29
  82. data/src/core/ext/transport/chttp2/transport/hpack_table.cc +13 -17
  83. data/src/core/ext/transport/chttp2/transport/internal.h +18 -1
  84. data/src/core/ext/transport/chttp2/transport/parsing.cc +34 -71
  85. data/src/core/ext/transport/chttp2/transport/writing.cc +15 -19
  86. data/src/core/ext/transport/inproc/inproc_transport.cc +47 -27
  87. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +0 -1
  88. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +3 -4
  89. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +224 -0
  90. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +700 -0
  91. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -0
  92. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +226 -0
  93. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +380 -0
  94. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1378 -0
  95. data/src/core/ext/upb-generated/envoy/{api/v2/cluster → config/cluster/v3}/filter.upb.c +8 -8
  96. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +69 -0
  97. data/src/core/ext/upb-generated/envoy/{api/v2/cluster → config/cluster/v3}/outlier_detection.upb.c +8 -8
  98. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +323 -0
  99. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +112 -0
  100. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +334 -0
  101. data/src/core/ext/upb-generated/envoy/{api/v2/core → config/core/v3}/backoff.upb.c +8 -8
  102. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +79 -0
  103. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +309 -0
  104. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +869 -0
  105. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +96 -0
  106. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +328 -0
  107. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +34 -0
  108. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +71 -0
  109. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +195 -0
  110. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +634 -0
  111. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +170 -0
  112. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +684 -0
  113. data/src/core/ext/upb-generated/envoy/{api/v2/core → config/core/v3}/http_uri.upb.c +8 -8
  114. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +80 -0
  115. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +152 -0
  116. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +536 -0
  117. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +28 -0
  118. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +58 -0
  119. data/src/core/ext/upb-generated/envoy/{api/v2/core → config/core/v3}/socket_option.upb.c +6 -6
  120. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +88 -0
  121. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +91 -0
  122. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +220 -0
  123. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +91 -0
  124. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +273 -0
  125. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +112 -0
  126. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +332 -0
  127. data/src/core/ext/upb-generated/envoy/config/listener/{v2 → v3}/api_listener.upb.c +8 -8
  128. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +65 -0
  129. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +108 -0
  130. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +401 -0
  131. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +138 -0
  132. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +490 -0
  133. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +41 -0
  134. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +94 -0
  135. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +174 -0
  136. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +599 -0
  137. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +63 -0
  138. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +204 -0
  139. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +773 -0
  140. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2855 -0
  141. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +59 -0
  142. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +135 -0
  143. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +50 -0
  144. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +108 -0
  145. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +312 -0
  146. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1125 -0
  147. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +20 -0
  148. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +34 -0
  149. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +111 -0
  150. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +401 -0
  151. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +72 -0
  152. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +198 -0
  153. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +105 -0
  154. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +388 -0
  155. data/src/core/ext/upb-generated/envoy/{api/v2 → service/cluster/v3}/cds.upb.c +5 -6
  156. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +49 -0
  157. data/src/core/ext/upb-generated/envoy/service/discovery/{v2 → v3}/ads.upb.c +5 -4
  158. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +49 -0
  159. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +129 -0
  160. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +386 -0
  161. data/src/core/ext/upb-generated/envoy/{api/v2 → service/endpoint/v3}/eds.upb.c +5 -6
  162. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +49 -0
  163. data/src/core/ext/upb-generated/envoy/{api/v2 → service/listener/v3}/lds.upb.c +5 -6
  164. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +49 -0
  165. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +55 -0
  166. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +136 -0
  167. data/src/core/ext/upb-generated/envoy/{api/v2 → service/route/v3}/rds.upb.c +5 -6
  168. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +49 -0
  169. data/src/core/ext/upb-generated/envoy/{api/v2 → service/route/v3}/srds.upb.c +5 -6
  170. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +49 -0
  171. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +47 -0
  172. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +114 -0
  173. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +35 -0
  174. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +77 -0
  175. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +34 -0
  176. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +71 -0
  177. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +64 -0
  178. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +145 -0
  179. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +53 -0
  180. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +127 -0
  181. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +63 -0
  182. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +188 -0
  183. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +88 -0
  184. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +258 -0
  185. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +90 -0
  186. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +250 -0
  187. data/src/core/ext/upb-generated/envoy/type/{http.upb.c → v3/http.upb.c} +2 -2
  188. data/src/core/ext/upb-generated/envoy/type/{http.upb.h → v3/http.upb.h} +8 -9
  189. data/src/core/ext/upb-generated/envoy/type/{percent.upb.c → v3/percent.upb.c} +9 -8
  190. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +86 -0
  191. data/src/core/ext/upb-generated/envoy/type/{range.upb.c → v3/range.upb.c} +12 -11
  192. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +111 -0
  193. data/src/core/ext/upb-generated/envoy/type/{semantic_version.upb.c → v3/semantic_version.upb.c} +6 -5
  194. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +61 -0
  195. data/src/core/ext/upb-generated/gogoproto/gogo.upb.h +0 -1
  196. data/src/core/ext/upb-generated/google/api/annotations.upb.h +0 -1
  197. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +234 -0
  198. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +759 -0
  199. data/src/core/ext/upb-generated/google/api/http.upb.h +29 -28
  200. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +5 -6
  201. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +39 -39
  202. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +412 -386
  203. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +5 -6
  204. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +1 -2
  205. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +1 -1
  206. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +34 -55
  207. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +5 -6
  208. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +27 -28
  209. data/src/core/ext/upb-generated/google/rpc/status.upb.h +8 -8
  210. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +1 -1
  211. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +32 -45
  212. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +4 -4
  213. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +157 -178
  214. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +14 -13
  215. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +6 -7
  216. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +59 -56
  217. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +11 -12
  218. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +0 -1
  219. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +5 -6
  220. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +27 -0
  221. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +53 -0
  222. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c +6 -6
  223. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h +41 -68
  224. data/src/core/ext/upb-generated/validate/validate.upb.c +11 -11
  225. data/src/core/ext/upb-generated/validate/validate.upb.h +537 -536
  226. data/src/core/ext/xds/xds_api.cc +2388 -0
  227. data/src/core/ext/{filters/client_channel/xds → xds}/xds_api.h +120 -40
  228. data/src/core/ext/{filters/client_channel/xds → xds}/xds_bootstrap.cc +56 -25
  229. data/src/core/ext/{filters/client_channel/xds → xds}/xds_bootstrap.h +8 -3
  230. data/src/core/ext/{filters/client_channel/xds → xds}/xds_channel.h +4 -4
  231. data/src/core/ext/{filters/client_channel/xds → xds}/xds_channel_args.h +3 -3
  232. data/src/core/ext/{filters/client_channel/xds → xds}/xds_channel_secure.cc +2 -5
  233. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client.cc +94 -347
  234. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client.h +12 -45
  235. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client_stats.cc +2 -2
  236. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client_stats.h +13 -13
  237. data/src/core/lib/channel/channel_trace.cc +2 -6
  238. data/src/core/lib/channel/channelz.cc +19 -30
  239. data/src/core/lib/channel/channelz.h +1 -1
  240. data/src/core/lib/channel/channelz_registry.cc +3 -1
  241. data/src/core/lib/gpr/log_linux.cc +6 -8
  242. data/src/core/lib/gpr/log_posix.cc +6 -8
  243. data/src/core/lib/gpr/string.cc +10 -9
  244. data/src/core/lib/gpr/string.h +4 -2
  245. data/src/core/lib/gpr/sync_posix.cc +2 -8
  246. data/src/core/lib/gprpp/global_config_env.cc +8 -6
  247. data/src/core/lib/http/httpcli.cc +13 -10
  248. data/src/core/lib/http/httpcli_security_connector.cc +5 -5
  249. data/src/core/lib/iomgr/cfstream_handle.cc +1 -0
  250. data/src/core/lib/iomgr/endpoint.cc +5 -1
  251. data/src/core/lib/iomgr/endpoint.h +7 -3
  252. data/src/core/lib/iomgr/endpoint_cfstream.cc +32 -11
  253. data/src/core/lib/iomgr/endpoint_pair_posix.cc +10 -10
  254. data/src/core/lib/iomgr/error_cfstream.cc +9 -8
  255. data/src/core/lib/iomgr/ev_epoll1_linux.cc +5 -6
  256. data/src/core/lib/iomgr/ev_epollex_linux.cc +15 -21
  257. data/src/core/lib/iomgr/ev_poll_posix.cc +6 -5
  258. data/src/core/lib/iomgr/is_epollexclusive_available.cc +14 -0
  259. data/src/core/{ext/filters/client_channel → lib/iomgr}/parse_address.cc +1 -1
  260. data/src/core/{ext/filters/client_channel → lib/iomgr}/parse_address.h +3 -3
  261. data/src/core/lib/iomgr/port.h +1 -21
  262. data/src/core/lib/iomgr/resolve_address_custom.cc +13 -18
  263. data/src/core/lib/iomgr/resolve_address_windows.cc +8 -8
  264. data/src/core/lib/iomgr/resource_quota.cc +34 -31
  265. data/src/core/lib/iomgr/sockaddr_utils.cc +9 -6
  266. data/src/core/lib/iomgr/sockaddr_utils.h +3 -2
  267. data/src/core/lib/iomgr/socket_utils_common_posix.cc +95 -55
  268. data/src/core/lib/iomgr/socket_windows.cc +4 -5
  269. data/src/core/lib/iomgr/tcp_client_cfstream.cc +9 -11
  270. data/src/core/lib/iomgr/tcp_client_custom.cc +6 -9
  271. data/src/core/lib/iomgr/tcp_client_posix.cc +27 -36
  272. data/src/core/lib/iomgr/tcp_client_windows.cc +9 -9
  273. data/src/core/lib/iomgr/tcp_custom.cc +33 -17
  274. data/src/core/lib/iomgr/tcp_custom.h +1 -1
  275. data/src/core/lib/iomgr/tcp_posix.cc +31 -13
  276. data/src/core/lib/iomgr/tcp_server.cc +3 -4
  277. data/src/core/lib/iomgr/tcp_server.h +7 -5
  278. data/src/core/lib/iomgr/tcp_server_custom.cc +6 -14
  279. data/src/core/lib/iomgr/tcp_server_posix.cc +34 -41
  280. data/src/core/lib/iomgr/tcp_server_utils_posix.h +3 -4
  281. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +5 -7
  282. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -9
  283. data/src/core/lib/iomgr/tcp_server_windows.cc +16 -16
  284. data/src/core/lib/iomgr/tcp_windows.cc +26 -10
  285. data/src/core/lib/iomgr/timer_generic.cc +13 -12
  286. data/src/core/lib/iomgr/udp_server.cc +24 -23
  287. data/src/core/lib/iomgr/udp_server.h +5 -2
  288. data/src/core/lib/iomgr/unix_sockets_posix.cc +9 -14
  289. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -1
  290. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +5 -2
  291. data/src/core/lib/json/json_reader.cc +20 -21
  292. data/src/core/lib/security/authorization/authorization_engine.cc +177 -0
  293. data/src/core/lib/security/authorization/authorization_engine.h +84 -0
  294. data/src/core/lib/security/authorization/evaluate_args.cc +153 -0
  295. data/src/core/lib/security/authorization/evaluate_args.h +59 -0
  296. data/src/core/lib/security/authorization/mock_cel/activation.h +57 -0
  297. data/src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h +42 -0
  298. data/src/core/lib/security/authorization/mock_cel/cel_expression.h +68 -0
  299. data/src/core/lib/security/authorization/mock_cel/cel_value.h +93 -0
  300. data/src/core/lib/security/authorization/mock_cel/evaluator_core.h +67 -0
  301. data/src/core/lib/security/authorization/mock_cel/flat_expr_builder.h +56 -0
  302. data/src/core/lib/security/authorization/mock_cel/statusor.h +50 -0
  303. data/src/core/lib/security/credentials/credentials.h +5 -3
  304. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +8 -6
  305. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +64 -43
  306. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +7 -4
  307. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +19 -28
  308. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -6
  309. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +20 -0
  310. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +10 -0
  311. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +10 -0
  312. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +11 -12
  313. data/src/core/lib/security/security_connector/security_connector.cc +2 -0
  314. data/src/core/lib/security/security_connector/security_connector.h +1 -1
  315. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +18 -11
  316. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +5 -0
  317. data/src/core/lib/security/security_connector/ssl_utils.cc +44 -23
  318. data/src/core/lib/security/security_connector/ssl_utils.h +6 -2
  319. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +27 -24
  320. data/src/core/lib/security/transport/client_auth_filter.cc +10 -9
  321. data/src/core/lib/security/transport/secure_endpoint.cc +7 -1
  322. data/src/core/lib/security/util/json_util.cc +12 -13
  323. data/src/core/lib/slice/slice.cc +38 -1
  324. data/src/core/lib/slice/slice_internal.h +1 -0
  325. data/src/core/lib/surface/call.cc +52 -53
  326. data/src/core/lib/surface/call.h +2 -1
  327. data/src/core/lib/surface/channel.cc +28 -20
  328. data/src/core/lib/surface/channel.h +12 -2
  329. data/src/core/lib/surface/completion_queue.cc +0 -5
  330. data/src/core/lib/surface/init.cc +1 -1
  331. data/src/core/lib/surface/server.cc +1102 -1347
  332. data/src/core/lib/surface/server.h +369 -71
  333. data/src/core/lib/surface/version.cc +2 -2
  334. data/src/core/lib/transport/authority_override.cc +38 -0
  335. data/src/core/lib/transport/authority_override.h +32 -0
  336. data/src/core/lib/transport/connectivity_state.cc +18 -13
  337. data/src/core/lib/transport/connectivity_state.h +18 -6
  338. data/src/core/lib/transport/error_utils.cc +13 -0
  339. data/src/core/lib/transport/error_utils.h +6 -0
  340. data/src/core/lib/transport/static_metadata.cc +295 -276
  341. data/src/core/lib/transport/static_metadata.h +80 -73
  342. data/src/core/lib/transport/transport.h +13 -0
  343. data/src/core/lib/uri/uri_parser.cc +30 -35
  344. data/src/core/lib/uri/uri_parser.h +3 -1
  345. data/src/core/plugin_registry/grpc_plugin_registry.cc +4 -0
  346. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +23 -13
  347. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +24 -0
  348. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -0
  349. data/src/core/tsi/ssl_transport_security.cc +102 -11
  350. data/src/core/tsi/ssl_transport_security.h +14 -2
  351. data/src/core/tsi/transport_security_interface.h +5 -0
  352. data/src/ruby/bin/math_services_pb.rb +4 -4
  353. data/src/ruby/ext/grpc/extconf.rb +5 -2
  354. data/src/ruby/ext/grpc/rb_call.c +3 -2
  355. data/src/ruby/ext/grpc/rb_call.h +4 -0
  356. data/src/ruby/ext/grpc/rb_call_credentials.c +54 -10
  357. data/src/ruby/ext/grpc/rb_channel_credentials.c +9 -0
  358. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +2 -2
  359. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +4 -4
  360. data/src/ruby/lib/grpc/generic/client_stub.rb +1 -1
  361. data/src/ruby/lib/grpc/generic/interceptors.rb +1 -1
  362. data/src/ruby/lib/grpc/version.rb +1 -1
  363. data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +2 -2
  364. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +5 -0
  365. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +28 -12
  366. data/src/ruby/spec/channel_credentials_spec.rb +10 -0
  367. data/src/ruby/spec/generic/active_call_spec.rb +19 -8
  368. data/src/ruby/spec/pb/codegen/grpc/testing/same_package_service_name.proto +27 -0
  369. data/src/ruby/spec/pb/codegen/grpc/testing/same_ruby_package_service_name.proto +29 -0
  370. data/src/ruby/spec/pb/codegen/package_option_spec.rb +20 -0
  371. data/src/ruby/spec/user_agent_spec.rb +74 -0
  372. data/third_party/abseil-cpp/absl/algorithm/container.h +1727 -0
  373. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +161 -0
  374. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.cc +93 -0
  375. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.h +130 -0
  376. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +620 -0
  377. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +126 -0
  378. data/third_party/abseil-cpp/absl/container/fixed_array.h +515 -0
  379. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +503 -0
  380. data/third_party/abseil-cpp/absl/container/internal/common.h +202 -0
  381. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +440 -0
  382. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +146 -0
  383. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +191 -0
  384. data/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
  385. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +269 -0
  386. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +297 -0
  387. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +30 -0
  388. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +49 -0
  389. data/third_party/abseil-cpp/absl/container/internal/layout.h +741 -0
  390. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +48 -0
  391. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1882 -0
  392. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +138 -0
  393. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
  394. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1895 -0
  395. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +71 -0
  396. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +382 -0
  397. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +134 -0
  398. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +192 -0
  399. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +125 -0
  400. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +70 -0
  401. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +99 -0
  402. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +248 -0
  403. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +24 -0
  404. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +85 -0
  405. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +346 -0
  406. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +128 -0
  407. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +194 -0
  408. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
  409. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +140 -0
  410. data/third_party/abseil-cpp/absl/debugging/stacktrace.h +231 -0
  411. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +25 -0
  412. data/third_party/abseil-cpp/absl/debugging/symbolize.h +99 -0
  413. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +1480 -0
  414. data/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
  415. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +81 -0
  416. data/third_party/abseil-cpp/absl/functional/function_ref.h +139 -0
  417. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +106 -0
  418. data/third_party/abseil-cpp/absl/hash/hash.h +324 -0
  419. data/third_party/abseil-cpp/absl/hash/internal/city.cc +346 -0
  420. data/third_party/abseil-cpp/absl/hash/internal/city.h +96 -0
  421. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +55 -0
  422. data/third_party/abseil-cpp/absl/hash/internal/hash.h +988 -0
  423. data/third_party/abseil-cpp/absl/status/status.cc +447 -0
  424. data/third_party/abseil-cpp/absl/status/status.h +428 -0
  425. data/third_party/abseil-cpp/absl/status/status_payload_printer.cc +43 -0
  426. data/third_party/abseil-cpp/absl/status/status_payload_printer.h +51 -0
  427. data/third_party/abseil-cpp/absl/strings/cord.cc +2019 -0
  428. data/third_party/abseil-cpp/absl/strings/cord.h +1121 -0
  429. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +151 -0
  430. data/third_party/abseil-cpp/absl/synchronization/barrier.cc +52 -0
  431. data/third_party/abseil-cpp/absl/synchronization/barrier.h +79 -0
  432. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +57 -0
  433. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +99 -0
  434. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +140 -0
  435. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +60 -0
  436. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +697 -0
  437. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +141 -0
  438. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +155 -0
  439. data/third_party/abseil-cpp/absl/synchronization/internal/mutex_nonprod.inc +261 -0
  440. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
  441. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +115 -0
  442. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +484 -0
  443. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +159 -0
  444. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +2728 -0
  445. data/third_party/abseil-cpp/absl/synchronization/mutex.h +1056 -0
  446. data/third_party/abseil-cpp/absl/synchronization/notification.cc +78 -0
  447. data/third_party/abseil-cpp/absl/synchronization/notification.h +123 -0
  448. data/third_party/abseil-cpp/absl/types/bad_variant_access.cc +64 -0
  449. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +82 -0
  450. data/third_party/abseil-cpp/absl/types/internal/variant.h +1646 -0
  451. data/third_party/abseil-cpp/absl/types/variant.h +861 -0
  452. data/third_party/boringssl-with-bazel/err_data.c +266 -254
  453. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +3 -3
  454. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +3 -3
  455. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +1 -1
  456. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +3 -3
  457. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +2 -2
  458. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +1 -1
  459. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +1 -1
  460. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +1 -1
  461. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +1 -1
  462. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +1 -1
  463. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +1 -1
  464. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +1 -0
  465. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +12 -52
  466. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -22
  467. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +159 -0
  468. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +17 -1
  469. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +11 -1
  470. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +2 -1
  471. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +13 -11
  472. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.c +24 -23
  473. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +20 -16
  474. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +2 -2
  475. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +3 -3
  476. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +62 -0
  477. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +456 -0
  478. data/third_party/boringssl-with-bazel/src/crypto/hpke/internal.h +192 -0
  479. data/third_party/boringssl-with-bazel/src/crypto/mem.c +29 -15
  480. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +7 -0
  481. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +36 -5
  482. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +0 -29
  483. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +116 -363
  484. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +7 -45
  485. data/third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c +4 -4
  486. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +8 -0
  487. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +4 -4
  488. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -67
  489. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +13 -6
  490. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +10 -0
  491. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +41 -0
  492. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +4 -1
  493. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +28 -9
  494. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +25 -0
  495. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +35 -13
  496. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -154
  497. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +20 -0
  498. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +28 -6
  499. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +5 -0
  500. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +74 -35
  501. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +16 -4
  502. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +52 -0
  503. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +22 -22
  504. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +2 -2
  505. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +69 -0
  506. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +72 -23
  507. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +2 -3
  508. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +1 -10
  509. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +800 -715
  510. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +3 -3
  511. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +9 -2
  512. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +2 -2
  513. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +9 -0
  514. data/third_party/boringssl-with-bazel/src/ssl/internal.h +21 -14
  515. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +7 -7
  516. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +3 -6
  517. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +38 -0
  518. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +4 -24
  519. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +5 -5
  520. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +45 -24
  521. data/third_party/boringssl-with-bazel/src/ssl/t1_lib.cc +34 -9
  522. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +31 -21
  523. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +17 -9
  524. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +5 -3
  525. data/third_party/re2/re2/bitmap256.h +117 -0
  526. data/third_party/re2/re2/bitstate.cc +385 -0
  527. data/third_party/re2/re2/compile.cc +1279 -0
  528. data/third_party/re2/re2/dfa.cc +2130 -0
  529. data/third_party/re2/re2/filtered_re2.cc +121 -0
  530. data/third_party/re2/re2/filtered_re2.h +109 -0
  531. data/third_party/re2/re2/mimics_pcre.cc +197 -0
  532. data/third_party/re2/re2/nfa.cc +713 -0
  533. data/third_party/re2/re2/onepass.cc +623 -0
  534. data/third_party/re2/re2/parse.cc +2464 -0
  535. data/third_party/re2/re2/perl_groups.cc +119 -0
  536. data/third_party/re2/re2/pod_array.h +55 -0
  537. data/third_party/re2/re2/prefilter.cc +710 -0
  538. data/third_party/re2/re2/prefilter.h +108 -0
  539. data/third_party/re2/re2/prefilter_tree.cc +407 -0
  540. data/third_party/re2/re2/prefilter_tree.h +139 -0
  541. data/third_party/re2/re2/prog.cc +988 -0
  542. data/third_party/re2/re2/prog.h +436 -0
  543. data/third_party/re2/re2/re2.cc +1362 -0
  544. data/third_party/re2/re2/re2.h +1002 -0
  545. data/third_party/re2/re2/regexp.cc +980 -0
  546. data/third_party/re2/re2/regexp.h +659 -0
  547. data/third_party/re2/re2/set.cc +154 -0
  548. data/third_party/re2/re2/set.h +80 -0
  549. data/third_party/re2/re2/simplify.cc +657 -0
  550. data/third_party/re2/re2/sparse_array.h +392 -0
  551. data/third_party/re2/re2/sparse_set.h +264 -0
  552. data/third_party/re2/re2/stringpiece.cc +65 -0
  553. data/third_party/re2/re2/stringpiece.h +210 -0
  554. data/third_party/re2/re2/tostring.cc +351 -0
  555. data/third_party/re2/re2/unicode_casefold.cc +582 -0
  556. data/third_party/re2/re2/unicode_casefold.h +78 -0
  557. data/third_party/re2/re2/unicode_groups.cc +6269 -0
  558. data/third_party/re2/re2/unicode_groups.h +67 -0
  559. data/third_party/re2/re2/walker-inl.h +246 -0
  560. data/third_party/re2/util/benchmark.h +156 -0
  561. data/third_party/re2/util/flags.h +26 -0
  562. data/third_party/re2/util/logging.h +109 -0
  563. data/third_party/re2/util/malloc_counter.h +19 -0
  564. data/third_party/re2/util/mix.h +41 -0
  565. data/third_party/re2/util/mutex.h +148 -0
  566. data/third_party/re2/util/pcre.cc +1025 -0
  567. data/third_party/re2/util/pcre.h +681 -0
  568. data/third_party/re2/util/rune.cc +260 -0
  569. data/third_party/re2/util/strutil.cc +149 -0
  570. data/third_party/re2/util/strutil.h +21 -0
  571. data/third_party/re2/util/test.h +50 -0
  572. data/third_party/re2/util/utf.h +44 -0
  573. data/third_party/re2/util/util.h +42 -0
  574. data/third_party/upb/upb/decode.c +517 -505
  575. data/third_party/upb/upb/encode.c +165 -123
  576. data/third_party/upb/upb/msg.c +130 -64
  577. data/third_party/upb/upb/msg.h +418 -14
  578. data/third_party/upb/upb/port_def.inc +35 -6
  579. data/third_party/upb/upb/port_undef.inc +8 -1
  580. data/third_party/upb/upb/table.c +53 -86
  581. data/third_party/upb/upb/table.int.h +11 -52
  582. data/third_party/upb/upb/upb.c +151 -125
  583. data/third_party/upb/upb/upb.h +91 -147
  584. data/third_party/upb/upb/upb.hpp +88 -0
  585. metadata +308 -148
  586. data/src/core/ext/filters/client_channel/xds/xds_api.cc +0 -1906
  587. data/src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c +0 -21
  588. data/src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h +0 -35
  589. data/src/core/ext/upb-generated/envoy/api/v2/auth/common.upb.c +0 -114
  590. data/src/core/ext/upb-generated/envoy/api/v2/auth/common.upb.h +0 -418
  591. data/src/core/ext/upb-generated/envoy/api/v2/auth/secret.upb.c +0 -72
  592. data/src/core/ext/upb-generated/envoy/api/v2/auth/secret.upb.h +0 -197
  593. data/src/core/ext/upb-generated/envoy/api/v2/auth/tls.upb.c +0 -105
  594. data/src/core/ext/upb-generated/envoy/api/v2/auth/tls.upb.h +0 -378
  595. data/src/core/ext/upb-generated/envoy/api/v2/cds.upb.h +0 -53
  596. data/src/core/ext/upb-generated/envoy/api/v2/cluster.upb.c +0 -403
  597. data/src/core/ext/upb-generated/envoy/api/v2/cluster.upb.h +0 -1447
  598. data/src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c +0 -74
  599. data/src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h +0 -218
  600. data/src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h +0 -69
  601. data/src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h +0 -305
  602. data/src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c +0 -112
  603. data/src/core/ext/upb-generated/envoy/api/v2/core/address.upb.h +0 -328
  604. data/src/core/ext/upb-generated/envoy/api/v2/core/backoff.upb.h +0 -78
  605. data/src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c +0 -313
  606. data/src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h +0 -897
  607. data/src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c +0 -96
  608. data/src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h +0 -322
  609. data/src/core/ext/upb-generated/envoy/api/v2/core/event_service_config.upb.c +0 -34
  610. data/src/core/ext/upb-generated/envoy/api/v2/core/event_service_config.upb.h +0 -72
  611. data/src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c +0 -197
  612. data/src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h +0 -642
  613. data/src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c +0 -172
  614. data/src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h +0 -673
  615. data/src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h +0 -80
  616. data/src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c +0 -152
  617. data/src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h +0 -518
  618. data/src/core/ext/upb-generated/envoy/api/v2/core/socket_option.upb.h +0 -89
  619. data/src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c +0 -129
  620. data/src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h +0 -392
  621. data/src/core/ext/upb-generated/envoy/api/v2/eds.upb.h +0 -53
  622. data/src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.c +0 -92
  623. data/src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.h +0 -240
  624. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.c +0 -18
  625. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.h +0 -33
  626. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.c +0 -91
  627. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.h +0 -266
  628. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.c +0 -112
  629. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.h +0 -324
  630. data/src/core/ext/upb-generated/envoy/api/v2/lds.upb.h +0 -53
  631. data/src/core/ext/upb-generated/envoy/api/v2/listener.upb.c +0 -109
  632. data/src/core/ext/upb-generated/envoy/api/v2/listener.upb.h +0 -399
  633. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.c +0 -18
  634. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.h +0 -33
  635. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.c +0 -145
  636. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.h +0 -527
  637. data/src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.c +0 -43
  638. data/src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.h +0 -112
  639. data/src/core/ext/upb-generated/envoy/api/v2/rds.upb.h +0 -53
  640. data/src/core/ext/upb-generated/envoy/api/v2/route.upb.c +0 -63
  641. data/src/core/ext/upb-generated/envoy/api/v2/route.upb.h +0 -199
  642. data/src/core/ext/upb-generated/envoy/api/v2/route/route.upb.c +0 -18
  643. data/src/core/ext/upb-generated/envoy/api/v2/route/route.upb.h +0 -33
  644. data/src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.c +0 -815
  645. data/src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.h +0 -3032
  646. data/src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.c +0 -59
  647. data/src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.h +0 -134
  648. data/src/core/ext/upb-generated/envoy/api/v2/srds.upb.h +0 -53
  649. data/src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.c +0 -228
  650. data/src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.h +0 -725
  651. data/src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.c +0 -316
  652. data/src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.h +0 -1132
  653. data/src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.h +0 -65
  654. data/src/core/ext/upb-generated/envoy/config/trace/v2/http_tracer.upb.c +0 -51
  655. data/src/core/ext/upb-generated/envoy/config/trace/v2/http_tracer.upb.h +0 -125
  656. data/src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.h +0 -50
  657. data/src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.c +0 -54
  658. data/src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.h +0 -134
  659. data/src/core/ext/upb-generated/envoy/type/matcher/regex.upb.c +0 -63
  660. data/src/core/ext/upb-generated/envoy/type/matcher/regex.upb.h +0 -144
  661. data/src/core/ext/upb-generated/envoy/type/matcher/string.upb.c +0 -53
  662. data/src/core/ext/upb-generated/envoy/type/matcher/string.upb.h +0 -133
  663. data/src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.c +0 -88
  664. data/src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.h +0 -258
  665. data/src/core/ext/upb-generated/envoy/type/percent.upb.h +0 -87
  666. data/src/core/ext/upb-generated/envoy/type/range.upb.h +0 -112
  667. data/src/core/ext/upb-generated/envoy/type/semantic_version.upb.h +0 -62
  668. data/src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.c +0 -89
  669. data/src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.h +0 -249
  670. data/src/core/lib/security/transport/target_authority_table.cc +0 -75
  671. data/src/core/lib/security/transport/target_authority_table.h +0 -40
  672. data/src/core/lib/slice/slice_hash_table.h +0 -199
  673. data/src/core/lib/slice/slice_weak_hash_table.h +0 -102
  674. data/third_party/upb/upb/generated_util.h +0 -105
@@ -0,0 +1,41 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/config/listener/v3/udp_listener_config.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.h"
11
+ #include "envoy/config/listener/v3/udp_listener_config.upb.h"
12
+ #include "google/protobuf/any.upb.h"
13
+ #include "google/protobuf/struct.upb.h"
14
+ #include "udpa/annotations/status.upb.h"
15
+ #include "udpa/annotations/versioning.upb.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ static const upb_msglayout *const envoy_config_listener_v3_UdpListenerConfig_submsgs[1] = {
20
+ &google_protobuf_Any_msginit,
21
+ };
22
+
23
+ static const upb_msglayout_field envoy_config_listener_v3_UdpListenerConfig__fields[2] = {
24
+ {1, UPB_SIZE(0, 0), 0, 0, 9, 1},
25
+ {3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
26
+ };
27
+
28
+ const upb_msglayout envoy_config_listener_v3_UdpListenerConfig_msginit = {
29
+ &envoy_config_listener_v3_UdpListenerConfig_submsgs[0],
30
+ &envoy_config_listener_v3_UdpListenerConfig__fields[0],
31
+ UPB_SIZE(16, 32), 2, false,
32
+ };
33
+
34
+ const upb_msglayout envoy_config_listener_v3_ActiveRawUdpListenerConfig_msginit = {
35
+ NULL,
36
+ NULL,
37
+ UPB_SIZE(0, 0), 0, false,
38
+ };
39
+
40
+ #include "upb/port_undef.inc"
41
+
@@ -0,0 +1,94 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/config/listener/v3/udp_listener_config.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef ENVOY_CONFIG_LISTENER_V3_UDP_LISTENER_CONFIG_PROTO_UPB_H_
10
+ #define ENVOY_CONFIG_LISTENER_V3_UDP_LISTENER_CONFIG_PROTO_UPB_H_
11
+
12
+ #include "upb/msg.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/encode.h"
15
+
16
+ #include "upb/port_def.inc"
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ struct envoy_config_listener_v3_UdpListenerConfig;
23
+ struct envoy_config_listener_v3_ActiveRawUdpListenerConfig;
24
+ typedef struct envoy_config_listener_v3_UdpListenerConfig envoy_config_listener_v3_UdpListenerConfig;
25
+ typedef struct envoy_config_listener_v3_ActiveRawUdpListenerConfig envoy_config_listener_v3_ActiveRawUdpListenerConfig;
26
+ extern const upb_msglayout envoy_config_listener_v3_UdpListenerConfig_msginit;
27
+ extern const upb_msglayout envoy_config_listener_v3_ActiveRawUdpListenerConfig_msginit;
28
+ struct google_protobuf_Any;
29
+ extern const upb_msglayout google_protobuf_Any_msginit;
30
+
31
+
32
+ /* envoy.config.listener.v3.UdpListenerConfig */
33
+
34
+ UPB_INLINE envoy_config_listener_v3_UdpListenerConfig *envoy_config_listener_v3_UdpListenerConfig_new(upb_arena *arena) {
35
+ return (envoy_config_listener_v3_UdpListenerConfig *)_upb_msg_new(&envoy_config_listener_v3_UdpListenerConfig_msginit, arena);
36
+ }
37
+ UPB_INLINE envoy_config_listener_v3_UdpListenerConfig *envoy_config_listener_v3_UdpListenerConfig_parse(const char *buf, size_t size,
38
+ upb_arena *arena) {
39
+ envoy_config_listener_v3_UdpListenerConfig *ret = envoy_config_listener_v3_UdpListenerConfig_new(arena);
40
+ return (ret && upb_decode(buf, size, ret, &envoy_config_listener_v3_UdpListenerConfig_msginit, arena)) ? ret : NULL;
41
+ }
42
+ UPB_INLINE char *envoy_config_listener_v3_UdpListenerConfig_serialize(const envoy_config_listener_v3_UdpListenerConfig *msg, upb_arena *arena, size_t *len) {
43
+ return upb_encode(msg, &envoy_config_listener_v3_UdpListenerConfig_msginit, arena, len);
44
+ }
45
+
46
+ typedef enum {
47
+ envoy_config_listener_v3_UdpListenerConfig_config_type_typed_config = 3,
48
+ envoy_config_listener_v3_UdpListenerConfig_config_type_NOT_SET = 0
49
+ } envoy_config_listener_v3_UdpListenerConfig_config_type_oneofcases;
50
+ UPB_INLINE envoy_config_listener_v3_UdpListenerConfig_config_type_oneofcases envoy_config_listener_v3_UdpListenerConfig_config_type_case(const envoy_config_listener_v3_UdpListenerConfig* msg) { return (envoy_config_listener_v3_UdpListenerConfig_config_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
51
+
52
+ UPB_INLINE upb_strview envoy_config_listener_v3_UdpListenerConfig_udp_listener_name(const envoy_config_listener_v3_UdpListenerConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
53
+ UPB_INLINE bool envoy_config_listener_v3_UdpListenerConfig_has_typed_config(const envoy_config_listener_v3_UdpListenerConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
54
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_listener_v3_UdpListenerConfig_typed_config(const envoy_config_listener_v3_UdpListenerConfig *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
55
+
56
+ UPB_INLINE void envoy_config_listener_v3_UdpListenerConfig_set_udp_listener_name(envoy_config_listener_v3_UdpListenerConfig *msg, upb_strview value) {
57
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
58
+ }
59
+ UPB_INLINE void envoy_config_listener_v3_UdpListenerConfig_set_typed_config(envoy_config_listener_v3_UdpListenerConfig *msg, struct google_protobuf_Any* value) {
60
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
61
+ }
62
+ UPB_INLINE struct google_protobuf_Any* envoy_config_listener_v3_UdpListenerConfig_mutable_typed_config(envoy_config_listener_v3_UdpListenerConfig *msg, upb_arena *arena) {
63
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_listener_v3_UdpListenerConfig_typed_config(msg);
64
+ if (sub == NULL) {
65
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
66
+ if (!sub) return NULL;
67
+ envoy_config_listener_v3_UdpListenerConfig_set_typed_config(msg, sub);
68
+ }
69
+ return sub;
70
+ }
71
+
72
+ /* envoy.config.listener.v3.ActiveRawUdpListenerConfig */
73
+
74
+ UPB_INLINE envoy_config_listener_v3_ActiveRawUdpListenerConfig *envoy_config_listener_v3_ActiveRawUdpListenerConfig_new(upb_arena *arena) {
75
+ return (envoy_config_listener_v3_ActiveRawUdpListenerConfig *)_upb_msg_new(&envoy_config_listener_v3_ActiveRawUdpListenerConfig_msginit, arena);
76
+ }
77
+ UPB_INLINE envoy_config_listener_v3_ActiveRawUdpListenerConfig *envoy_config_listener_v3_ActiveRawUdpListenerConfig_parse(const char *buf, size_t size,
78
+ upb_arena *arena) {
79
+ envoy_config_listener_v3_ActiveRawUdpListenerConfig *ret = envoy_config_listener_v3_ActiveRawUdpListenerConfig_new(arena);
80
+ return (ret && upb_decode(buf, size, ret, &envoy_config_listener_v3_ActiveRawUdpListenerConfig_msginit, arena)) ? ret : NULL;
81
+ }
82
+ UPB_INLINE char *envoy_config_listener_v3_ActiveRawUdpListenerConfig_serialize(const envoy_config_listener_v3_ActiveRawUdpListenerConfig *msg, upb_arena *arena, size_t *len) {
83
+ return upb_encode(msg, &envoy_config_listener_v3_ActiveRawUdpListenerConfig_msginit, arena, len);
84
+ }
85
+
86
+
87
+
88
+ #ifdef __cplusplus
89
+ } /* extern "C" */
90
+ #endif
91
+
92
+ #include "upb/port_undef.inc"
93
+
94
+ #endif /* ENVOY_CONFIG_LISTENER_V3_UDP_LISTENER_CONFIG_PROTO_UPB_H_ */
@@ -0,0 +1,174 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/config/rbac/v3/rbac.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.h"
11
+ #include "envoy/config/rbac/v3/rbac.upb.h"
12
+ #include "envoy/config/core/v3/address.upb.h"
13
+ #include "envoy/config/route/v3/route_components.upb.h"
14
+ #include "envoy/type/matcher/v3/metadata.upb.h"
15
+ #include "envoy/type/matcher/v3/path.upb.h"
16
+ #include "envoy/type/matcher/v3/string.upb.h"
17
+ #include "google/api/expr/v1alpha1/syntax.upb.h"
18
+ #include "udpa/annotations/status.upb.h"
19
+ #include "udpa/annotations/versioning.upb.h"
20
+ #include "validate/validate.upb.h"
21
+
22
+ #include "upb/port_def.inc"
23
+
24
+ static const upb_msglayout *const envoy_config_rbac_v3_RBAC_submsgs[1] = {
25
+ &envoy_config_rbac_v3_RBAC_PoliciesEntry_msginit,
26
+ };
27
+
28
+ static const upb_msglayout_field envoy_config_rbac_v3_RBAC__fields[2] = {
29
+ {1, UPB_SIZE(0, 0), 0, 0, 14, 1},
30
+ {2, UPB_SIZE(8, 8), 0, 0, 11, _UPB_LABEL_MAP},
31
+ };
32
+
33
+ const upb_msglayout envoy_config_rbac_v3_RBAC_msginit = {
34
+ &envoy_config_rbac_v3_RBAC_submsgs[0],
35
+ &envoy_config_rbac_v3_RBAC__fields[0],
36
+ UPB_SIZE(16, 16), 2, false,
37
+ };
38
+
39
+ static const upb_msglayout *const envoy_config_rbac_v3_RBAC_PoliciesEntry_submsgs[1] = {
40
+ &envoy_config_rbac_v3_Policy_msginit,
41
+ };
42
+
43
+ static const upb_msglayout_field envoy_config_rbac_v3_RBAC_PoliciesEntry__fields[2] = {
44
+ {1, UPB_SIZE(0, 0), 0, 0, 9, 1},
45
+ {2, UPB_SIZE(8, 16), 0, 0, 11, 1},
46
+ };
47
+
48
+ const upb_msglayout envoy_config_rbac_v3_RBAC_PoliciesEntry_msginit = {
49
+ &envoy_config_rbac_v3_RBAC_PoliciesEntry_submsgs[0],
50
+ &envoy_config_rbac_v3_RBAC_PoliciesEntry__fields[0],
51
+ UPB_SIZE(16, 32), 2, false,
52
+ };
53
+
54
+ static const upb_msglayout *const envoy_config_rbac_v3_Policy_submsgs[3] = {
55
+ &envoy_config_rbac_v3_Permission_msginit,
56
+ &envoy_config_rbac_v3_Principal_msginit,
57
+ &google_api_expr_v1alpha1_Expr_msginit,
58
+ };
59
+
60
+ static const upb_msglayout_field envoy_config_rbac_v3_Policy__fields[3] = {
61
+ {1, UPB_SIZE(4, 8), 0, 0, 11, 3},
62
+ {2, UPB_SIZE(8, 16), 0, 1, 11, 3},
63
+ {3, UPB_SIZE(0, 0), 0, 2, 11, 1},
64
+ };
65
+
66
+ const upb_msglayout envoy_config_rbac_v3_Policy_msginit = {
67
+ &envoy_config_rbac_v3_Policy_submsgs[0],
68
+ &envoy_config_rbac_v3_Policy__fields[0],
69
+ UPB_SIZE(12, 24), 3, false,
70
+ };
71
+
72
+ static const upb_msglayout *const envoy_config_rbac_v3_Permission_submsgs[8] = {
73
+ &envoy_config_core_v3_CidrRange_msginit,
74
+ &envoy_config_rbac_v3_Permission_msginit,
75
+ &envoy_config_rbac_v3_Permission_Set_msginit,
76
+ &envoy_config_route_v3_HeaderMatcher_msginit,
77
+ &envoy_type_matcher_v3_MetadataMatcher_msginit,
78
+ &envoy_type_matcher_v3_PathMatcher_msginit,
79
+ &envoy_type_matcher_v3_StringMatcher_msginit,
80
+ };
81
+
82
+ static const upb_msglayout_field envoy_config_rbac_v3_Permission__fields[10] = {
83
+ {1, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 2, 11, 1},
84
+ {2, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 2, 11, 1},
85
+ {3, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 8, 1},
86
+ {4, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 3, 11, 1},
87
+ {5, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
88
+ {6, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 13, 1},
89
+ {7, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 4, 11, 1},
90
+ {8, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 1, 11, 1},
91
+ {9, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 6, 11, 1},
92
+ {10, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 5, 11, 1},
93
+ };
94
+
95
+ const upb_msglayout envoy_config_rbac_v3_Permission_msginit = {
96
+ &envoy_config_rbac_v3_Permission_submsgs[0],
97
+ &envoy_config_rbac_v3_Permission__fields[0],
98
+ UPB_SIZE(8, 16), 10, false,
99
+ };
100
+
101
+ static const upb_msglayout *const envoy_config_rbac_v3_Permission_Set_submsgs[1] = {
102
+ &envoy_config_rbac_v3_Permission_msginit,
103
+ };
104
+
105
+ static const upb_msglayout_field envoy_config_rbac_v3_Permission_Set__fields[1] = {
106
+ {1, UPB_SIZE(0, 0), 0, 0, 11, 3},
107
+ };
108
+
109
+ const upb_msglayout envoy_config_rbac_v3_Permission_Set_msginit = {
110
+ &envoy_config_rbac_v3_Permission_Set_submsgs[0],
111
+ &envoy_config_rbac_v3_Permission_Set__fields[0],
112
+ UPB_SIZE(4, 8), 1, false,
113
+ };
114
+
115
+ static const upb_msglayout *const envoy_config_rbac_v3_Principal_submsgs[10] = {
116
+ &envoy_config_core_v3_CidrRange_msginit,
117
+ &envoy_config_rbac_v3_Principal_msginit,
118
+ &envoy_config_rbac_v3_Principal_Authenticated_msginit,
119
+ &envoy_config_rbac_v3_Principal_Set_msginit,
120
+ &envoy_config_route_v3_HeaderMatcher_msginit,
121
+ &envoy_type_matcher_v3_MetadataMatcher_msginit,
122
+ &envoy_type_matcher_v3_PathMatcher_msginit,
123
+ };
124
+
125
+ static const upb_msglayout_field envoy_config_rbac_v3_Principal__fields[11] = {
126
+ {1, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 3, 11, 1},
127
+ {2, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 3, 11, 1},
128
+ {3, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 8, 1},
129
+ {4, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 2, 11, 1},
130
+ {5, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
131
+ {6, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 4, 11, 1},
132
+ {7, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 5, 11, 1},
133
+ {8, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 1, 11, 1},
134
+ {9, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 6, 11, 1},
135
+ {10, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
136
+ {11, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
137
+ };
138
+
139
+ const upb_msglayout envoy_config_rbac_v3_Principal_msginit = {
140
+ &envoy_config_rbac_v3_Principal_submsgs[0],
141
+ &envoy_config_rbac_v3_Principal__fields[0],
142
+ UPB_SIZE(8, 16), 11, false,
143
+ };
144
+
145
+ static const upb_msglayout *const envoy_config_rbac_v3_Principal_Set_submsgs[1] = {
146
+ &envoy_config_rbac_v3_Principal_msginit,
147
+ };
148
+
149
+ static const upb_msglayout_field envoy_config_rbac_v3_Principal_Set__fields[1] = {
150
+ {1, UPB_SIZE(0, 0), 0, 0, 11, 3},
151
+ };
152
+
153
+ const upb_msglayout envoy_config_rbac_v3_Principal_Set_msginit = {
154
+ &envoy_config_rbac_v3_Principal_Set_submsgs[0],
155
+ &envoy_config_rbac_v3_Principal_Set__fields[0],
156
+ UPB_SIZE(4, 8), 1, false,
157
+ };
158
+
159
+ static const upb_msglayout *const envoy_config_rbac_v3_Principal_Authenticated_submsgs[1] = {
160
+ &envoy_type_matcher_v3_StringMatcher_msginit,
161
+ };
162
+
163
+ static const upb_msglayout_field envoy_config_rbac_v3_Principal_Authenticated__fields[1] = {
164
+ {2, UPB_SIZE(0, 0), 0, 0, 11, 1},
165
+ };
166
+
167
+ const upb_msglayout envoy_config_rbac_v3_Principal_Authenticated_msginit = {
168
+ &envoy_config_rbac_v3_Principal_Authenticated_submsgs[0],
169
+ &envoy_config_rbac_v3_Principal_Authenticated__fields[0],
170
+ UPB_SIZE(4, 8), 1, false,
171
+ };
172
+
173
+ #include "upb/port_undef.inc"
174
+
@@ -0,0 +1,599 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/config/rbac/v3/rbac.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef ENVOY_CONFIG_RBAC_V3_RBAC_PROTO_UPB_H_
10
+ #define ENVOY_CONFIG_RBAC_V3_RBAC_PROTO_UPB_H_
11
+
12
+ #include "upb/msg.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/encode.h"
15
+
16
+ #include "upb/port_def.inc"
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ struct envoy_config_rbac_v3_RBAC;
23
+ struct envoy_config_rbac_v3_RBAC_PoliciesEntry;
24
+ struct envoy_config_rbac_v3_Policy;
25
+ struct envoy_config_rbac_v3_Permission;
26
+ struct envoy_config_rbac_v3_Permission_Set;
27
+ struct envoy_config_rbac_v3_Principal;
28
+ struct envoy_config_rbac_v3_Principal_Set;
29
+ struct envoy_config_rbac_v3_Principal_Authenticated;
30
+ typedef struct envoy_config_rbac_v3_RBAC envoy_config_rbac_v3_RBAC;
31
+ typedef struct envoy_config_rbac_v3_RBAC_PoliciesEntry envoy_config_rbac_v3_RBAC_PoliciesEntry;
32
+ typedef struct envoy_config_rbac_v3_Policy envoy_config_rbac_v3_Policy;
33
+ typedef struct envoy_config_rbac_v3_Permission envoy_config_rbac_v3_Permission;
34
+ typedef struct envoy_config_rbac_v3_Permission_Set envoy_config_rbac_v3_Permission_Set;
35
+ typedef struct envoy_config_rbac_v3_Principal envoy_config_rbac_v3_Principal;
36
+ typedef struct envoy_config_rbac_v3_Principal_Set envoy_config_rbac_v3_Principal_Set;
37
+ typedef struct envoy_config_rbac_v3_Principal_Authenticated envoy_config_rbac_v3_Principal_Authenticated;
38
+ extern const upb_msglayout envoy_config_rbac_v3_RBAC_msginit;
39
+ extern const upb_msglayout envoy_config_rbac_v3_RBAC_PoliciesEntry_msginit;
40
+ extern const upb_msglayout envoy_config_rbac_v3_Policy_msginit;
41
+ extern const upb_msglayout envoy_config_rbac_v3_Permission_msginit;
42
+ extern const upb_msglayout envoy_config_rbac_v3_Permission_Set_msginit;
43
+ extern const upb_msglayout envoy_config_rbac_v3_Principal_msginit;
44
+ extern const upb_msglayout envoy_config_rbac_v3_Principal_Set_msginit;
45
+ extern const upb_msglayout envoy_config_rbac_v3_Principal_Authenticated_msginit;
46
+ struct envoy_config_core_v3_CidrRange;
47
+ struct envoy_config_route_v3_HeaderMatcher;
48
+ struct envoy_type_matcher_v3_MetadataMatcher;
49
+ struct envoy_type_matcher_v3_PathMatcher;
50
+ struct envoy_type_matcher_v3_StringMatcher;
51
+ struct google_api_expr_v1alpha1_Expr;
52
+ extern const upb_msglayout envoy_config_core_v3_CidrRange_msginit;
53
+ extern const upb_msglayout envoy_config_route_v3_HeaderMatcher_msginit;
54
+ extern const upb_msglayout envoy_type_matcher_v3_MetadataMatcher_msginit;
55
+ extern const upb_msglayout envoy_type_matcher_v3_PathMatcher_msginit;
56
+ extern const upb_msglayout envoy_type_matcher_v3_StringMatcher_msginit;
57
+ extern const upb_msglayout google_api_expr_v1alpha1_Expr_msginit;
58
+
59
+ typedef enum {
60
+ envoy_config_rbac_v3_RBAC_ALLOW = 0,
61
+ envoy_config_rbac_v3_RBAC_DENY = 1
62
+ } envoy_config_rbac_v3_RBAC_Action;
63
+
64
+
65
+ /* envoy.config.rbac.v3.RBAC */
66
+
67
+ UPB_INLINE envoy_config_rbac_v3_RBAC *envoy_config_rbac_v3_RBAC_new(upb_arena *arena) {
68
+ return (envoy_config_rbac_v3_RBAC *)_upb_msg_new(&envoy_config_rbac_v3_RBAC_msginit, arena);
69
+ }
70
+ UPB_INLINE envoy_config_rbac_v3_RBAC *envoy_config_rbac_v3_RBAC_parse(const char *buf, size_t size,
71
+ upb_arena *arena) {
72
+ envoy_config_rbac_v3_RBAC *ret = envoy_config_rbac_v3_RBAC_new(arena);
73
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_RBAC_msginit, arena)) ? ret : NULL;
74
+ }
75
+ UPB_INLINE char *envoy_config_rbac_v3_RBAC_serialize(const envoy_config_rbac_v3_RBAC *msg, upb_arena *arena, size_t *len) {
76
+ return upb_encode(msg, &envoy_config_rbac_v3_RBAC_msginit, arena, len);
77
+ }
78
+
79
+ UPB_INLINE int32_t envoy_config_rbac_v3_RBAC_action(const envoy_config_rbac_v3_RBAC *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
80
+ UPB_INLINE bool envoy_config_rbac_v3_RBAC_has_policies(const envoy_config_rbac_v3_RBAC *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 8)); }
81
+ UPB_INLINE size_t envoy_config_rbac_v3_RBAC_policies_size(const envoy_config_rbac_v3_RBAC *msg) {return _upb_msg_map_size(msg, UPB_SIZE(8, 8)); }
82
+ UPB_INLINE bool envoy_config_rbac_v3_RBAC_policies_get(const envoy_config_rbac_v3_RBAC *msg, upb_strview key, envoy_config_rbac_v3_Policy* *val) { return _upb_msg_map_get(msg, UPB_SIZE(8, 8), &key, 0, val, sizeof(*val)); }
83
+ UPB_INLINE const envoy_config_rbac_v3_RBAC_PoliciesEntry* envoy_config_rbac_v3_RBAC_policies_next(const envoy_config_rbac_v3_RBAC *msg, size_t* iter) { return (const envoy_config_rbac_v3_RBAC_PoliciesEntry*)_upb_msg_map_next(msg, UPB_SIZE(8, 8), iter); }
84
+
85
+ UPB_INLINE void envoy_config_rbac_v3_RBAC_set_action(envoy_config_rbac_v3_RBAC *msg, int32_t value) {
86
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
87
+ }
88
+ UPB_INLINE void envoy_config_rbac_v3_RBAC_policies_clear(envoy_config_rbac_v3_RBAC *msg) { _upb_msg_map_clear(msg, UPB_SIZE(8, 8)); }
89
+ UPB_INLINE bool envoy_config_rbac_v3_RBAC_policies_set(envoy_config_rbac_v3_RBAC *msg, upb_strview key, envoy_config_rbac_v3_Policy* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(8, 8), &key, 0, &val, sizeof(val), a); }
90
+ UPB_INLINE bool envoy_config_rbac_v3_RBAC_policies_delete(envoy_config_rbac_v3_RBAC *msg, upb_strview key) { return _upb_msg_map_delete(msg, UPB_SIZE(8, 8), &key, 0); }
91
+ UPB_INLINE envoy_config_rbac_v3_RBAC_PoliciesEntry* envoy_config_rbac_v3_RBAC_policies_nextmutable(envoy_config_rbac_v3_RBAC *msg, size_t* iter) { return (envoy_config_rbac_v3_RBAC_PoliciesEntry*)_upb_msg_map_next(msg, UPB_SIZE(8, 8), iter); }
92
+
93
+ /* envoy.config.rbac.v3.RBAC.PoliciesEntry */
94
+
95
+ UPB_INLINE upb_strview envoy_config_rbac_v3_RBAC_PoliciesEntry_key(const envoy_config_rbac_v3_RBAC_PoliciesEntry *msg) {
96
+ upb_strview ret;
97
+ _upb_msg_map_key(msg, &ret, 0);
98
+ return ret;
99
+ }
100
+ UPB_INLINE bool envoy_config_rbac_v3_RBAC_PoliciesEntry_has_value(const envoy_config_rbac_v3_RBAC_PoliciesEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
101
+ UPB_INLINE const envoy_config_rbac_v3_Policy* envoy_config_rbac_v3_RBAC_PoliciesEntry_value(const envoy_config_rbac_v3_RBAC_PoliciesEntry *msg) {
102
+ envoy_config_rbac_v3_Policy* ret;
103
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
104
+ return ret;
105
+ }
106
+
107
+ UPB_INLINE void envoy_config_rbac_v3_RBAC_PoliciesEntry_set_value(envoy_config_rbac_v3_RBAC_PoliciesEntry *msg, envoy_config_rbac_v3_Policy* value) {
108
+ _upb_msg_map_set_value(msg, &value, sizeof(envoy_config_rbac_v3_Policy*));
109
+ }
110
+
111
+ /* envoy.config.rbac.v3.Policy */
112
+
113
+ UPB_INLINE envoy_config_rbac_v3_Policy *envoy_config_rbac_v3_Policy_new(upb_arena *arena) {
114
+ return (envoy_config_rbac_v3_Policy *)_upb_msg_new(&envoy_config_rbac_v3_Policy_msginit, arena);
115
+ }
116
+ UPB_INLINE envoy_config_rbac_v3_Policy *envoy_config_rbac_v3_Policy_parse(const char *buf, size_t size,
117
+ upb_arena *arena) {
118
+ envoy_config_rbac_v3_Policy *ret = envoy_config_rbac_v3_Policy_new(arena);
119
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Policy_msginit, arena)) ? ret : NULL;
120
+ }
121
+ UPB_INLINE char *envoy_config_rbac_v3_Policy_serialize(const envoy_config_rbac_v3_Policy *msg, upb_arena *arena, size_t *len) {
122
+ return upb_encode(msg, &envoy_config_rbac_v3_Policy_msginit, arena, len);
123
+ }
124
+
125
+ UPB_INLINE bool envoy_config_rbac_v3_Policy_has_permissions(const envoy_config_rbac_v3_Policy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(4, 8)); }
126
+ UPB_INLINE const envoy_config_rbac_v3_Permission* const* envoy_config_rbac_v3_Policy_permissions(const envoy_config_rbac_v3_Policy *msg, size_t *len) { return (const envoy_config_rbac_v3_Permission* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len); }
127
+ UPB_INLINE bool envoy_config_rbac_v3_Policy_has_principals(const envoy_config_rbac_v3_Policy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
128
+ UPB_INLINE const envoy_config_rbac_v3_Principal* const* envoy_config_rbac_v3_Policy_principals(const envoy_config_rbac_v3_Policy *msg, size_t *len) { return (const envoy_config_rbac_v3_Principal* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
129
+ UPB_INLINE bool envoy_config_rbac_v3_Policy_has_condition(const envoy_config_rbac_v3_Policy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
130
+ UPB_INLINE const struct google_api_expr_v1alpha1_Expr* envoy_config_rbac_v3_Policy_condition(const envoy_config_rbac_v3_Policy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), const struct google_api_expr_v1alpha1_Expr*); }
131
+
132
+ UPB_INLINE envoy_config_rbac_v3_Permission** envoy_config_rbac_v3_Policy_mutable_permissions(envoy_config_rbac_v3_Policy *msg, size_t *len) {
133
+ return (envoy_config_rbac_v3_Permission**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
134
+ }
135
+ UPB_INLINE envoy_config_rbac_v3_Permission** envoy_config_rbac_v3_Policy_resize_permissions(envoy_config_rbac_v3_Policy *msg, size_t len, upb_arena *arena) {
136
+ return (envoy_config_rbac_v3_Permission**)_upb_array_resize_accessor(msg, UPB_SIZE(4, 8), len, UPB_TYPE_MESSAGE, arena);
137
+ }
138
+ UPB_INLINE struct envoy_config_rbac_v3_Permission* envoy_config_rbac_v3_Policy_add_permissions(envoy_config_rbac_v3_Policy *msg, upb_arena *arena) {
139
+ struct envoy_config_rbac_v3_Permission* sub = (struct envoy_config_rbac_v3_Permission*)_upb_msg_new(&envoy_config_rbac_v3_Permission_msginit, arena);
140
+ bool ok = _upb_array_append_accessor(
141
+ msg, UPB_SIZE(4, 8), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
142
+ if (!ok) return NULL;
143
+ return sub;
144
+ }
145
+ UPB_INLINE envoy_config_rbac_v3_Principal** envoy_config_rbac_v3_Policy_mutable_principals(envoy_config_rbac_v3_Policy *msg, size_t *len) {
146
+ return (envoy_config_rbac_v3_Principal**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
147
+ }
148
+ UPB_INLINE envoy_config_rbac_v3_Principal** envoy_config_rbac_v3_Policy_resize_principals(envoy_config_rbac_v3_Policy *msg, size_t len, upb_arena *arena) {
149
+ return (envoy_config_rbac_v3_Principal**)_upb_array_resize_accessor(msg, UPB_SIZE(8, 16), len, UPB_TYPE_MESSAGE, arena);
150
+ }
151
+ UPB_INLINE struct envoy_config_rbac_v3_Principal* envoy_config_rbac_v3_Policy_add_principals(envoy_config_rbac_v3_Policy *msg, upb_arena *arena) {
152
+ struct envoy_config_rbac_v3_Principal* sub = (struct envoy_config_rbac_v3_Principal*)_upb_msg_new(&envoy_config_rbac_v3_Principal_msginit, arena);
153
+ bool ok = _upb_array_append_accessor(
154
+ msg, UPB_SIZE(8, 16), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
155
+ if (!ok) return NULL;
156
+ return sub;
157
+ }
158
+ UPB_INLINE void envoy_config_rbac_v3_Policy_set_condition(envoy_config_rbac_v3_Policy *msg, struct google_api_expr_v1alpha1_Expr* value) {
159
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), struct google_api_expr_v1alpha1_Expr*) = value;
160
+ }
161
+ UPB_INLINE struct google_api_expr_v1alpha1_Expr* envoy_config_rbac_v3_Policy_mutable_condition(envoy_config_rbac_v3_Policy *msg, upb_arena *arena) {
162
+ struct google_api_expr_v1alpha1_Expr* sub = (struct google_api_expr_v1alpha1_Expr*)envoy_config_rbac_v3_Policy_condition(msg);
163
+ if (sub == NULL) {
164
+ sub = (struct google_api_expr_v1alpha1_Expr*)_upb_msg_new(&google_api_expr_v1alpha1_Expr_msginit, arena);
165
+ if (!sub) return NULL;
166
+ envoy_config_rbac_v3_Policy_set_condition(msg, sub);
167
+ }
168
+ return sub;
169
+ }
170
+
171
+ /* envoy.config.rbac.v3.Permission */
172
+
173
+ UPB_INLINE envoy_config_rbac_v3_Permission *envoy_config_rbac_v3_Permission_new(upb_arena *arena) {
174
+ return (envoy_config_rbac_v3_Permission *)_upb_msg_new(&envoy_config_rbac_v3_Permission_msginit, arena);
175
+ }
176
+ UPB_INLINE envoy_config_rbac_v3_Permission *envoy_config_rbac_v3_Permission_parse(const char *buf, size_t size,
177
+ upb_arena *arena) {
178
+ envoy_config_rbac_v3_Permission *ret = envoy_config_rbac_v3_Permission_new(arena);
179
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Permission_msginit, arena)) ? ret : NULL;
180
+ }
181
+ UPB_INLINE char *envoy_config_rbac_v3_Permission_serialize(const envoy_config_rbac_v3_Permission *msg, upb_arena *arena, size_t *len) {
182
+ return upb_encode(msg, &envoy_config_rbac_v3_Permission_msginit, arena, len);
183
+ }
184
+
185
+ typedef enum {
186
+ envoy_config_rbac_v3_Permission_rule_and_rules = 1,
187
+ envoy_config_rbac_v3_Permission_rule_or_rules = 2,
188
+ envoy_config_rbac_v3_Permission_rule_any = 3,
189
+ envoy_config_rbac_v3_Permission_rule_header = 4,
190
+ envoy_config_rbac_v3_Permission_rule_url_path = 10,
191
+ envoy_config_rbac_v3_Permission_rule_destination_ip = 5,
192
+ envoy_config_rbac_v3_Permission_rule_destination_port = 6,
193
+ envoy_config_rbac_v3_Permission_rule_metadata = 7,
194
+ envoy_config_rbac_v3_Permission_rule_not_rule = 8,
195
+ envoy_config_rbac_v3_Permission_rule_requested_server_name = 9,
196
+ envoy_config_rbac_v3_Permission_rule_NOT_SET = 0
197
+ } envoy_config_rbac_v3_Permission_rule_oneofcases;
198
+ UPB_INLINE envoy_config_rbac_v3_Permission_rule_oneofcases envoy_config_rbac_v3_Permission_rule_case(const envoy_config_rbac_v3_Permission* msg) { return (envoy_config_rbac_v3_Permission_rule_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
199
+
200
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_and_rules(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
201
+ UPB_INLINE const envoy_config_rbac_v3_Permission_Set* envoy_config_rbac_v3_Permission_and_rules(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Permission_Set*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
202
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_or_rules(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
203
+ UPB_INLINE const envoy_config_rbac_v3_Permission_Set* envoy_config_rbac_v3_Permission_or_rules(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Permission_Set*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
204
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_any(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
205
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_any(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, false); }
206
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_header(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 4; }
207
+ UPB_INLINE const struct envoy_config_route_v3_HeaderMatcher* envoy_config_rbac_v3_Permission_header(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_route_v3_HeaderMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 4, NULL); }
208
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_destination_ip(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 5; }
209
+ UPB_INLINE const struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Permission_destination_ip(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 5, NULL); }
210
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_destination_port(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 6; }
211
+ UPB_INLINE uint32_t envoy_config_rbac_v3_Permission_destination_port(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, uint32_t, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 6, 0); }
212
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_metadata(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 7; }
213
+ UPB_INLINE const struct envoy_type_matcher_v3_MetadataMatcher* envoy_config_rbac_v3_Permission_metadata(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_MetadataMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 7, NULL); }
214
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_not_rule(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 8; }
215
+ UPB_INLINE const envoy_config_rbac_v3_Permission* envoy_config_rbac_v3_Permission_not_rule(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Permission*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 8, NULL); }
216
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_requested_server_name(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 9; }
217
+ UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_config_rbac_v3_Permission_requested_server_name(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 9, NULL); }
218
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_has_url_path(const envoy_config_rbac_v3_Permission *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 10; }
219
+ UPB_INLINE const struct envoy_type_matcher_v3_PathMatcher* envoy_config_rbac_v3_Permission_url_path(const envoy_config_rbac_v3_Permission *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_PathMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 10, NULL); }
220
+
221
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_and_rules(envoy_config_rbac_v3_Permission *msg, envoy_config_rbac_v3_Permission_Set* value) {
222
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Permission_Set*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
223
+ }
224
+ UPB_INLINE struct envoy_config_rbac_v3_Permission_Set* envoy_config_rbac_v3_Permission_mutable_and_rules(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
225
+ struct envoy_config_rbac_v3_Permission_Set* sub = (struct envoy_config_rbac_v3_Permission_Set*)envoy_config_rbac_v3_Permission_and_rules(msg);
226
+ if (sub == NULL) {
227
+ sub = (struct envoy_config_rbac_v3_Permission_Set*)_upb_msg_new(&envoy_config_rbac_v3_Permission_Set_msginit, arena);
228
+ if (!sub) return NULL;
229
+ envoy_config_rbac_v3_Permission_set_and_rules(msg, sub);
230
+ }
231
+ return sub;
232
+ }
233
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_or_rules(envoy_config_rbac_v3_Permission *msg, envoy_config_rbac_v3_Permission_Set* value) {
234
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Permission_Set*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
235
+ }
236
+ UPB_INLINE struct envoy_config_rbac_v3_Permission_Set* envoy_config_rbac_v3_Permission_mutable_or_rules(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
237
+ struct envoy_config_rbac_v3_Permission_Set* sub = (struct envoy_config_rbac_v3_Permission_Set*)envoy_config_rbac_v3_Permission_or_rules(msg);
238
+ if (sub == NULL) {
239
+ sub = (struct envoy_config_rbac_v3_Permission_Set*)_upb_msg_new(&envoy_config_rbac_v3_Permission_Set_msginit, arena);
240
+ if (!sub) return NULL;
241
+ envoy_config_rbac_v3_Permission_set_or_rules(msg, sub);
242
+ }
243
+ return sub;
244
+ }
245
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_any(envoy_config_rbac_v3_Permission *msg, bool value) {
246
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
247
+ }
248
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_header(envoy_config_rbac_v3_Permission *msg, struct envoy_config_route_v3_HeaderMatcher* value) {
249
+ UPB_WRITE_ONEOF(msg, struct envoy_config_route_v3_HeaderMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 4);
250
+ }
251
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_rbac_v3_Permission_mutable_header(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
252
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)envoy_config_rbac_v3_Permission_header(msg);
253
+ if (sub == NULL) {
254
+ sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
255
+ if (!sub) return NULL;
256
+ envoy_config_rbac_v3_Permission_set_header(msg, sub);
257
+ }
258
+ return sub;
259
+ }
260
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_destination_ip(envoy_config_rbac_v3_Permission *msg, struct envoy_config_core_v3_CidrRange* value) {
261
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 5);
262
+ }
263
+ UPB_INLINE struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Permission_mutable_destination_ip(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
264
+ struct envoy_config_core_v3_CidrRange* sub = (struct envoy_config_core_v3_CidrRange*)envoy_config_rbac_v3_Permission_destination_ip(msg);
265
+ if (sub == NULL) {
266
+ sub = (struct envoy_config_core_v3_CidrRange*)_upb_msg_new(&envoy_config_core_v3_CidrRange_msginit, arena);
267
+ if (!sub) return NULL;
268
+ envoy_config_rbac_v3_Permission_set_destination_ip(msg, sub);
269
+ }
270
+ return sub;
271
+ }
272
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_destination_port(envoy_config_rbac_v3_Permission *msg, uint32_t value) {
273
+ UPB_WRITE_ONEOF(msg, uint32_t, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 6);
274
+ }
275
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_metadata(envoy_config_rbac_v3_Permission *msg, struct envoy_type_matcher_v3_MetadataMatcher* value) {
276
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_MetadataMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 7);
277
+ }
278
+ UPB_INLINE struct envoy_type_matcher_v3_MetadataMatcher* envoy_config_rbac_v3_Permission_mutable_metadata(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
279
+ struct envoy_type_matcher_v3_MetadataMatcher* sub = (struct envoy_type_matcher_v3_MetadataMatcher*)envoy_config_rbac_v3_Permission_metadata(msg);
280
+ if (sub == NULL) {
281
+ sub = (struct envoy_type_matcher_v3_MetadataMatcher*)_upb_msg_new(&envoy_type_matcher_v3_MetadataMatcher_msginit, arena);
282
+ if (!sub) return NULL;
283
+ envoy_config_rbac_v3_Permission_set_metadata(msg, sub);
284
+ }
285
+ return sub;
286
+ }
287
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_not_rule(envoy_config_rbac_v3_Permission *msg, envoy_config_rbac_v3_Permission* value) {
288
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Permission*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 8);
289
+ }
290
+ UPB_INLINE struct envoy_config_rbac_v3_Permission* envoy_config_rbac_v3_Permission_mutable_not_rule(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
291
+ struct envoy_config_rbac_v3_Permission* sub = (struct envoy_config_rbac_v3_Permission*)envoy_config_rbac_v3_Permission_not_rule(msg);
292
+ if (sub == NULL) {
293
+ sub = (struct envoy_config_rbac_v3_Permission*)_upb_msg_new(&envoy_config_rbac_v3_Permission_msginit, arena);
294
+ if (!sub) return NULL;
295
+ envoy_config_rbac_v3_Permission_set_not_rule(msg, sub);
296
+ }
297
+ return sub;
298
+ }
299
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_requested_server_name(envoy_config_rbac_v3_Permission *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
300
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 9);
301
+ }
302
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_rbac_v3_Permission_mutable_requested_server_name(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
303
+ struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_config_rbac_v3_Permission_requested_server_name(msg);
304
+ if (sub == NULL) {
305
+ sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
306
+ if (!sub) return NULL;
307
+ envoy_config_rbac_v3_Permission_set_requested_server_name(msg, sub);
308
+ }
309
+ return sub;
310
+ }
311
+ UPB_INLINE void envoy_config_rbac_v3_Permission_set_url_path(envoy_config_rbac_v3_Permission *msg, struct envoy_type_matcher_v3_PathMatcher* value) {
312
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_PathMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 10);
313
+ }
314
+ UPB_INLINE struct envoy_type_matcher_v3_PathMatcher* envoy_config_rbac_v3_Permission_mutable_url_path(envoy_config_rbac_v3_Permission *msg, upb_arena *arena) {
315
+ struct envoy_type_matcher_v3_PathMatcher* sub = (struct envoy_type_matcher_v3_PathMatcher*)envoy_config_rbac_v3_Permission_url_path(msg);
316
+ if (sub == NULL) {
317
+ sub = (struct envoy_type_matcher_v3_PathMatcher*)_upb_msg_new(&envoy_type_matcher_v3_PathMatcher_msginit, arena);
318
+ if (!sub) return NULL;
319
+ envoy_config_rbac_v3_Permission_set_url_path(msg, sub);
320
+ }
321
+ return sub;
322
+ }
323
+
324
+ /* envoy.config.rbac.v3.Permission.Set */
325
+
326
+ UPB_INLINE envoy_config_rbac_v3_Permission_Set *envoy_config_rbac_v3_Permission_Set_new(upb_arena *arena) {
327
+ return (envoy_config_rbac_v3_Permission_Set *)_upb_msg_new(&envoy_config_rbac_v3_Permission_Set_msginit, arena);
328
+ }
329
+ UPB_INLINE envoy_config_rbac_v3_Permission_Set *envoy_config_rbac_v3_Permission_Set_parse(const char *buf, size_t size,
330
+ upb_arena *arena) {
331
+ envoy_config_rbac_v3_Permission_Set *ret = envoy_config_rbac_v3_Permission_Set_new(arena);
332
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Permission_Set_msginit, arena)) ? ret : NULL;
333
+ }
334
+ UPB_INLINE char *envoy_config_rbac_v3_Permission_Set_serialize(const envoy_config_rbac_v3_Permission_Set *msg, upb_arena *arena, size_t *len) {
335
+ return upb_encode(msg, &envoy_config_rbac_v3_Permission_Set_msginit, arena, len);
336
+ }
337
+
338
+ UPB_INLINE bool envoy_config_rbac_v3_Permission_Set_has_rules(const envoy_config_rbac_v3_Permission_Set *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
339
+ UPB_INLINE const envoy_config_rbac_v3_Permission* const* envoy_config_rbac_v3_Permission_Set_rules(const envoy_config_rbac_v3_Permission_Set *msg, size_t *len) { return (const envoy_config_rbac_v3_Permission* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
340
+
341
+ UPB_INLINE envoy_config_rbac_v3_Permission** envoy_config_rbac_v3_Permission_Set_mutable_rules(envoy_config_rbac_v3_Permission_Set *msg, size_t *len) {
342
+ return (envoy_config_rbac_v3_Permission**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
343
+ }
344
+ UPB_INLINE envoy_config_rbac_v3_Permission** envoy_config_rbac_v3_Permission_Set_resize_rules(envoy_config_rbac_v3_Permission_Set *msg, size_t len, upb_arena *arena) {
345
+ return (envoy_config_rbac_v3_Permission**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_TYPE_MESSAGE, arena);
346
+ }
347
+ UPB_INLINE struct envoy_config_rbac_v3_Permission* envoy_config_rbac_v3_Permission_Set_add_rules(envoy_config_rbac_v3_Permission_Set *msg, upb_arena *arena) {
348
+ struct envoy_config_rbac_v3_Permission* sub = (struct envoy_config_rbac_v3_Permission*)_upb_msg_new(&envoy_config_rbac_v3_Permission_msginit, arena);
349
+ bool ok = _upb_array_append_accessor(
350
+ msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
351
+ if (!ok) return NULL;
352
+ return sub;
353
+ }
354
+
355
+ /* envoy.config.rbac.v3.Principal */
356
+
357
+ UPB_INLINE envoy_config_rbac_v3_Principal *envoy_config_rbac_v3_Principal_new(upb_arena *arena) {
358
+ return (envoy_config_rbac_v3_Principal *)_upb_msg_new(&envoy_config_rbac_v3_Principal_msginit, arena);
359
+ }
360
+ UPB_INLINE envoy_config_rbac_v3_Principal *envoy_config_rbac_v3_Principal_parse(const char *buf, size_t size,
361
+ upb_arena *arena) {
362
+ envoy_config_rbac_v3_Principal *ret = envoy_config_rbac_v3_Principal_new(arena);
363
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Principal_msginit, arena)) ? ret : NULL;
364
+ }
365
+ UPB_INLINE char *envoy_config_rbac_v3_Principal_serialize(const envoy_config_rbac_v3_Principal *msg, upb_arena *arena, size_t *len) {
366
+ return upb_encode(msg, &envoy_config_rbac_v3_Principal_msginit, arena, len);
367
+ }
368
+
369
+ typedef enum {
370
+ envoy_config_rbac_v3_Principal_identifier_and_ids = 1,
371
+ envoy_config_rbac_v3_Principal_identifier_or_ids = 2,
372
+ envoy_config_rbac_v3_Principal_identifier_any = 3,
373
+ envoy_config_rbac_v3_Principal_identifier_authenticated = 4,
374
+ envoy_config_rbac_v3_Principal_identifier_source_ip = 5,
375
+ envoy_config_rbac_v3_Principal_identifier_direct_remote_ip = 10,
376
+ envoy_config_rbac_v3_Principal_identifier_remote_ip = 11,
377
+ envoy_config_rbac_v3_Principal_identifier_header = 6,
378
+ envoy_config_rbac_v3_Principal_identifier_url_path = 9,
379
+ envoy_config_rbac_v3_Principal_identifier_metadata = 7,
380
+ envoy_config_rbac_v3_Principal_identifier_not_id = 8,
381
+ envoy_config_rbac_v3_Principal_identifier_NOT_SET = 0
382
+ } envoy_config_rbac_v3_Principal_identifier_oneofcases;
383
+ UPB_INLINE envoy_config_rbac_v3_Principal_identifier_oneofcases envoy_config_rbac_v3_Principal_identifier_case(const envoy_config_rbac_v3_Principal* msg) { return (envoy_config_rbac_v3_Principal_identifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
384
+
385
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_and_ids(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
386
+ UPB_INLINE const envoy_config_rbac_v3_Principal_Set* envoy_config_rbac_v3_Principal_and_ids(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Principal_Set*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
387
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_or_ids(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
388
+ UPB_INLINE const envoy_config_rbac_v3_Principal_Set* envoy_config_rbac_v3_Principal_or_ids(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Principal_Set*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
389
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_any(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
390
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_any(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, false); }
391
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_authenticated(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 4; }
392
+ UPB_INLINE const envoy_config_rbac_v3_Principal_Authenticated* envoy_config_rbac_v3_Principal_authenticated(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Principal_Authenticated*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 4, NULL); }
393
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_source_ip(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 5; }
394
+ UPB_INLINE const struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_source_ip(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 5, NULL); }
395
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_header(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 6; }
396
+ UPB_INLINE const struct envoy_config_route_v3_HeaderMatcher* envoy_config_rbac_v3_Principal_header(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_route_v3_HeaderMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 6, NULL); }
397
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_metadata(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 7; }
398
+ UPB_INLINE const struct envoy_type_matcher_v3_MetadataMatcher* envoy_config_rbac_v3_Principal_metadata(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_MetadataMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 7, NULL); }
399
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_not_id(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 8; }
400
+ UPB_INLINE const envoy_config_rbac_v3_Principal* envoy_config_rbac_v3_Principal_not_id(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const envoy_config_rbac_v3_Principal*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 8, NULL); }
401
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_url_path(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 9; }
402
+ UPB_INLINE const struct envoy_type_matcher_v3_PathMatcher* envoy_config_rbac_v3_Principal_url_path(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_PathMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 9, NULL); }
403
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_direct_remote_ip(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 10; }
404
+ UPB_INLINE const struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_direct_remote_ip(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 10, NULL); }
405
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_has_remote_ip(const envoy_config_rbac_v3_Principal *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 11; }
406
+ UPB_INLINE const struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_remote_ip(const envoy_config_rbac_v3_Principal *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 11, NULL); }
407
+
408
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_and_ids(envoy_config_rbac_v3_Principal *msg, envoy_config_rbac_v3_Principal_Set* value) {
409
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Principal_Set*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
410
+ }
411
+ UPB_INLINE struct envoy_config_rbac_v3_Principal_Set* envoy_config_rbac_v3_Principal_mutable_and_ids(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
412
+ struct envoy_config_rbac_v3_Principal_Set* sub = (struct envoy_config_rbac_v3_Principal_Set*)envoy_config_rbac_v3_Principal_and_ids(msg);
413
+ if (sub == NULL) {
414
+ sub = (struct envoy_config_rbac_v3_Principal_Set*)_upb_msg_new(&envoy_config_rbac_v3_Principal_Set_msginit, arena);
415
+ if (!sub) return NULL;
416
+ envoy_config_rbac_v3_Principal_set_and_ids(msg, sub);
417
+ }
418
+ return sub;
419
+ }
420
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_or_ids(envoy_config_rbac_v3_Principal *msg, envoy_config_rbac_v3_Principal_Set* value) {
421
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Principal_Set*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
422
+ }
423
+ UPB_INLINE struct envoy_config_rbac_v3_Principal_Set* envoy_config_rbac_v3_Principal_mutable_or_ids(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
424
+ struct envoy_config_rbac_v3_Principal_Set* sub = (struct envoy_config_rbac_v3_Principal_Set*)envoy_config_rbac_v3_Principal_or_ids(msg);
425
+ if (sub == NULL) {
426
+ sub = (struct envoy_config_rbac_v3_Principal_Set*)_upb_msg_new(&envoy_config_rbac_v3_Principal_Set_msginit, arena);
427
+ if (!sub) return NULL;
428
+ envoy_config_rbac_v3_Principal_set_or_ids(msg, sub);
429
+ }
430
+ return sub;
431
+ }
432
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_any(envoy_config_rbac_v3_Principal *msg, bool value) {
433
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
434
+ }
435
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_authenticated(envoy_config_rbac_v3_Principal *msg, envoy_config_rbac_v3_Principal_Authenticated* value) {
436
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Principal_Authenticated*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 4);
437
+ }
438
+ UPB_INLINE struct envoy_config_rbac_v3_Principal_Authenticated* envoy_config_rbac_v3_Principal_mutable_authenticated(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
439
+ struct envoy_config_rbac_v3_Principal_Authenticated* sub = (struct envoy_config_rbac_v3_Principal_Authenticated*)envoy_config_rbac_v3_Principal_authenticated(msg);
440
+ if (sub == NULL) {
441
+ sub = (struct envoy_config_rbac_v3_Principal_Authenticated*)_upb_msg_new(&envoy_config_rbac_v3_Principal_Authenticated_msginit, arena);
442
+ if (!sub) return NULL;
443
+ envoy_config_rbac_v3_Principal_set_authenticated(msg, sub);
444
+ }
445
+ return sub;
446
+ }
447
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_source_ip(envoy_config_rbac_v3_Principal *msg, struct envoy_config_core_v3_CidrRange* value) {
448
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 5);
449
+ }
450
+ UPB_INLINE struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_mutable_source_ip(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
451
+ struct envoy_config_core_v3_CidrRange* sub = (struct envoy_config_core_v3_CidrRange*)envoy_config_rbac_v3_Principal_source_ip(msg);
452
+ if (sub == NULL) {
453
+ sub = (struct envoy_config_core_v3_CidrRange*)_upb_msg_new(&envoy_config_core_v3_CidrRange_msginit, arena);
454
+ if (!sub) return NULL;
455
+ envoy_config_rbac_v3_Principal_set_source_ip(msg, sub);
456
+ }
457
+ return sub;
458
+ }
459
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_header(envoy_config_rbac_v3_Principal *msg, struct envoy_config_route_v3_HeaderMatcher* value) {
460
+ UPB_WRITE_ONEOF(msg, struct envoy_config_route_v3_HeaderMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 6);
461
+ }
462
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_rbac_v3_Principal_mutable_header(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
463
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)envoy_config_rbac_v3_Principal_header(msg);
464
+ if (sub == NULL) {
465
+ sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
466
+ if (!sub) return NULL;
467
+ envoy_config_rbac_v3_Principal_set_header(msg, sub);
468
+ }
469
+ return sub;
470
+ }
471
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_metadata(envoy_config_rbac_v3_Principal *msg, struct envoy_type_matcher_v3_MetadataMatcher* value) {
472
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_MetadataMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 7);
473
+ }
474
+ UPB_INLINE struct envoy_type_matcher_v3_MetadataMatcher* envoy_config_rbac_v3_Principal_mutable_metadata(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
475
+ struct envoy_type_matcher_v3_MetadataMatcher* sub = (struct envoy_type_matcher_v3_MetadataMatcher*)envoy_config_rbac_v3_Principal_metadata(msg);
476
+ if (sub == NULL) {
477
+ sub = (struct envoy_type_matcher_v3_MetadataMatcher*)_upb_msg_new(&envoy_type_matcher_v3_MetadataMatcher_msginit, arena);
478
+ if (!sub) return NULL;
479
+ envoy_config_rbac_v3_Principal_set_metadata(msg, sub);
480
+ }
481
+ return sub;
482
+ }
483
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_not_id(envoy_config_rbac_v3_Principal *msg, envoy_config_rbac_v3_Principal* value) {
484
+ UPB_WRITE_ONEOF(msg, envoy_config_rbac_v3_Principal*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 8);
485
+ }
486
+ UPB_INLINE struct envoy_config_rbac_v3_Principal* envoy_config_rbac_v3_Principal_mutable_not_id(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
487
+ struct envoy_config_rbac_v3_Principal* sub = (struct envoy_config_rbac_v3_Principal*)envoy_config_rbac_v3_Principal_not_id(msg);
488
+ if (sub == NULL) {
489
+ sub = (struct envoy_config_rbac_v3_Principal*)_upb_msg_new(&envoy_config_rbac_v3_Principal_msginit, arena);
490
+ if (!sub) return NULL;
491
+ envoy_config_rbac_v3_Principal_set_not_id(msg, sub);
492
+ }
493
+ return sub;
494
+ }
495
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_url_path(envoy_config_rbac_v3_Principal *msg, struct envoy_type_matcher_v3_PathMatcher* value) {
496
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_PathMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 9);
497
+ }
498
+ UPB_INLINE struct envoy_type_matcher_v3_PathMatcher* envoy_config_rbac_v3_Principal_mutable_url_path(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
499
+ struct envoy_type_matcher_v3_PathMatcher* sub = (struct envoy_type_matcher_v3_PathMatcher*)envoy_config_rbac_v3_Principal_url_path(msg);
500
+ if (sub == NULL) {
501
+ sub = (struct envoy_type_matcher_v3_PathMatcher*)_upb_msg_new(&envoy_type_matcher_v3_PathMatcher_msginit, arena);
502
+ if (!sub) return NULL;
503
+ envoy_config_rbac_v3_Principal_set_url_path(msg, sub);
504
+ }
505
+ return sub;
506
+ }
507
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_direct_remote_ip(envoy_config_rbac_v3_Principal *msg, struct envoy_config_core_v3_CidrRange* value) {
508
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 10);
509
+ }
510
+ UPB_INLINE struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_mutable_direct_remote_ip(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
511
+ struct envoy_config_core_v3_CidrRange* sub = (struct envoy_config_core_v3_CidrRange*)envoy_config_rbac_v3_Principal_direct_remote_ip(msg);
512
+ if (sub == NULL) {
513
+ sub = (struct envoy_config_core_v3_CidrRange*)_upb_msg_new(&envoy_config_core_v3_CidrRange_msginit, arena);
514
+ if (!sub) return NULL;
515
+ envoy_config_rbac_v3_Principal_set_direct_remote_ip(msg, sub);
516
+ }
517
+ return sub;
518
+ }
519
+ UPB_INLINE void envoy_config_rbac_v3_Principal_set_remote_ip(envoy_config_rbac_v3_Principal *msg, struct envoy_config_core_v3_CidrRange* value) {
520
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_CidrRange*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 11);
521
+ }
522
+ UPB_INLINE struct envoy_config_core_v3_CidrRange* envoy_config_rbac_v3_Principal_mutable_remote_ip(envoy_config_rbac_v3_Principal *msg, upb_arena *arena) {
523
+ struct envoy_config_core_v3_CidrRange* sub = (struct envoy_config_core_v3_CidrRange*)envoy_config_rbac_v3_Principal_remote_ip(msg);
524
+ if (sub == NULL) {
525
+ sub = (struct envoy_config_core_v3_CidrRange*)_upb_msg_new(&envoy_config_core_v3_CidrRange_msginit, arena);
526
+ if (!sub) return NULL;
527
+ envoy_config_rbac_v3_Principal_set_remote_ip(msg, sub);
528
+ }
529
+ return sub;
530
+ }
531
+
532
+ /* envoy.config.rbac.v3.Principal.Set */
533
+
534
+ UPB_INLINE envoy_config_rbac_v3_Principal_Set *envoy_config_rbac_v3_Principal_Set_new(upb_arena *arena) {
535
+ return (envoy_config_rbac_v3_Principal_Set *)_upb_msg_new(&envoy_config_rbac_v3_Principal_Set_msginit, arena);
536
+ }
537
+ UPB_INLINE envoy_config_rbac_v3_Principal_Set *envoy_config_rbac_v3_Principal_Set_parse(const char *buf, size_t size,
538
+ upb_arena *arena) {
539
+ envoy_config_rbac_v3_Principal_Set *ret = envoy_config_rbac_v3_Principal_Set_new(arena);
540
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Principal_Set_msginit, arena)) ? ret : NULL;
541
+ }
542
+ UPB_INLINE char *envoy_config_rbac_v3_Principal_Set_serialize(const envoy_config_rbac_v3_Principal_Set *msg, upb_arena *arena, size_t *len) {
543
+ return upb_encode(msg, &envoy_config_rbac_v3_Principal_Set_msginit, arena, len);
544
+ }
545
+
546
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_Set_has_ids(const envoy_config_rbac_v3_Principal_Set *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
547
+ UPB_INLINE const envoy_config_rbac_v3_Principal* const* envoy_config_rbac_v3_Principal_Set_ids(const envoy_config_rbac_v3_Principal_Set *msg, size_t *len) { return (const envoy_config_rbac_v3_Principal* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
548
+
549
+ UPB_INLINE envoy_config_rbac_v3_Principal** envoy_config_rbac_v3_Principal_Set_mutable_ids(envoy_config_rbac_v3_Principal_Set *msg, size_t *len) {
550
+ return (envoy_config_rbac_v3_Principal**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
551
+ }
552
+ UPB_INLINE envoy_config_rbac_v3_Principal** envoy_config_rbac_v3_Principal_Set_resize_ids(envoy_config_rbac_v3_Principal_Set *msg, size_t len, upb_arena *arena) {
553
+ return (envoy_config_rbac_v3_Principal**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_TYPE_MESSAGE, arena);
554
+ }
555
+ UPB_INLINE struct envoy_config_rbac_v3_Principal* envoy_config_rbac_v3_Principal_Set_add_ids(envoy_config_rbac_v3_Principal_Set *msg, upb_arena *arena) {
556
+ struct envoy_config_rbac_v3_Principal* sub = (struct envoy_config_rbac_v3_Principal*)_upb_msg_new(&envoy_config_rbac_v3_Principal_msginit, arena);
557
+ bool ok = _upb_array_append_accessor(
558
+ msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
559
+ if (!ok) return NULL;
560
+ return sub;
561
+ }
562
+
563
+ /* envoy.config.rbac.v3.Principal.Authenticated */
564
+
565
+ UPB_INLINE envoy_config_rbac_v3_Principal_Authenticated *envoy_config_rbac_v3_Principal_Authenticated_new(upb_arena *arena) {
566
+ return (envoy_config_rbac_v3_Principal_Authenticated *)_upb_msg_new(&envoy_config_rbac_v3_Principal_Authenticated_msginit, arena);
567
+ }
568
+ UPB_INLINE envoy_config_rbac_v3_Principal_Authenticated *envoy_config_rbac_v3_Principal_Authenticated_parse(const char *buf, size_t size,
569
+ upb_arena *arena) {
570
+ envoy_config_rbac_v3_Principal_Authenticated *ret = envoy_config_rbac_v3_Principal_Authenticated_new(arena);
571
+ return (ret && upb_decode(buf, size, ret, &envoy_config_rbac_v3_Principal_Authenticated_msginit, arena)) ? ret : NULL;
572
+ }
573
+ UPB_INLINE char *envoy_config_rbac_v3_Principal_Authenticated_serialize(const envoy_config_rbac_v3_Principal_Authenticated *msg, upb_arena *arena, size_t *len) {
574
+ return upb_encode(msg, &envoy_config_rbac_v3_Principal_Authenticated_msginit, arena, len);
575
+ }
576
+
577
+ UPB_INLINE bool envoy_config_rbac_v3_Principal_Authenticated_has_principal_name(const envoy_config_rbac_v3_Principal_Authenticated *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
578
+ UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_config_rbac_v3_Principal_Authenticated_principal_name(const envoy_config_rbac_v3_Principal_Authenticated *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), const struct envoy_type_matcher_v3_StringMatcher*); }
579
+
580
+ UPB_INLINE void envoy_config_rbac_v3_Principal_Authenticated_set_principal_name(envoy_config_rbac_v3_Principal_Authenticated *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
581
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), struct envoy_type_matcher_v3_StringMatcher*) = value;
582
+ }
583
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_rbac_v3_Principal_Authenticated_mutable_principal_name(envoy_config_rbac_v3_Principal_Authenticated *msg, upb_arena *arena) {
584
+ struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_config_rbac_v3_Principal_Authenticated_principal_name(msg);
585
+ if (sub == NULL) {
586
+ sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
587
+ if (!sub) return NULL;
588
+ envoy_config_rbac_v3_Principal_Authenticated_set_principal_name(msg, sub);
589
+ }
590
+ return sub;
591
+ }
592
+
593
+ #ifdef __cplusplus
594
+ } /* extern "C" */
595
+ #endif
596
+
597
+ #include "upb/port_undef.inc"
598
+
599
+ #endif /* ENVOY_CONFIG_RBAC_V3_RBAC_PROTO_UPB_H_ */