1 /* 2 * 3 * Copyright 2016 gRPC authors. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 */ 18 19 #ifndef GRPC_RB_GRPC_IMPORTS_H_ 20 #define GRPC_RB_GRPC_IMPORTS_H_ 21 22 #include <grpc/support/port_platform.h> 23 24 #ifdef GPR_WINDOWS 25 26 #include <windows.h> 27 28 #include <grpc/compression.h> 29 #include <grpc/grpc.h> 30 #include <grpc/grpc_posix.h> 31 #include <grpc/grpc_security.h> 32 #include <grpc/impl/codegen/byte_buffer.h> 33 #include <grpc/impl/codegen/log.h> 34 #include <grpc/slice.h> 35 #include <grpc/slice_buffer.h> 36 #include <grpc/support/alloc.h> 37 #include <grpc/support/cpu.h> 38 #include <grpc/support/log_windows.h> 39 #include <grpc/support/string_util.h> 40 #include <grpc/support/sync.h> 41 #include <grpc/support/thd_id.h> 42 #include <grpc/support/time.h> 43 44 typedef int(*grpc_compression_algorithm_is_message_type)(grpc_compression_algorithm algorithm); 45 extern grpc_compression_algorithm_is_message_type grpc_compression_algorithm_is_message_import; 46 #define grpc_compression_algorithm_is_message grpc_compression_algorithm_is_message_import 47 typedef int(*grpc_compression_algorithm_is_stream_type)(grpc_compression_algorithm algorithm); 48 extern grpc_compression_algorithm_is_stream_type grpc_compression_algorithm_is_stream_import; 49 #define grpc_compression_algorithm_is_stream grpc_compression_algorithm_is_stream_import 50 typedef int(*grpc_compression_algorithm_parse_type)(grpc_slice value, grpc_compression_algorithm* algorithm); 51 extern grpc_compression_algorithm_parse_type grpc_compression_algorithm_parse_import; 52 #define grpc_compression_algorithm_parse grpc_compression_algorithm_parse_import 53 typedef int(*grpc_compression_algorithm_name_type)(grpc_compression_algorithm algorithm, const char** name); 54 extern grpc_compression_algorithm_name_type grpc_compression_algorithm_name_import; 55 #define grpc_compression_algorithm_name grpc_compression_algorithm_name_import 56 typedef grpc_compression_algorithm(*grpc_compression_algorithm_for_level_type)(grpc_compression_level level, uint32_t accepted_encodings); 57 extern grpc_compression_algorithm_for_level_type grpc_compression_algorithm_for_level_import; 58 #define grpc_compression_algorithm_for_level grpc_compression_algorithm_for_level_import 59 typedef void(*grpc_compression_options_init_type)(grpc_compression_options* opts); 60 extern grpc_compression_options_init_type grpc_compression_options_init_import; 61 #define grpc_compression_options_init grpc_compression_options_init_import 62 typedef void(*grpc_compression_options_enable_algorithm_type)(grpc_compression_options* opts, grpc_compression_algorithm algorithm); 63 extern grpc_compression_options_enable_algorithm_type grpc_compression_options_enable_algorithm_import; 64 #define grpc_compression_options_enable_algorithm grpc_compression_options_enable_algorithm_import 65 typedef void(*grpc_compression_options_disable_algorithm_type)(grpc_compression_options* opts, grpc_compression_algorithm algorithm); 66 extern grpc_compression_options_disable_algorithm_type grpc_compression_options_disable_algorithm_import; 67 #define grpc_compression_options_disable_algorithm grpc_compression_options_disable_algorithm_import 68 typedef int(*grpc_compression_options_is_algorithm_enabled_type)(const grpc_compression_options* opts, grpc_compression_algorithm algorithm); 69 extern grpc_compression_options_is_algorithm_enabled_type grpc_compression_options_is_algorithm_enabled_import; 70 #define grpc_compression_options_is_algorithm_enabled grpc_compression_options_is_algorithm_enabled_import 71 typedef void(*grpc_metadata_array_init_type)(grpc_metadata_array* array); 72 extern grpc_metadata_array_init_type grpc_metadata_array_init_import; 73 #define grpc_metadata_array_init grpc_metadata_array_init_import 74 typedef void(*grpc_metadata_array_destroy_type)(grpc_metadata_array* array); 75 extern grpc_metadata_array_destroy_type grpc_metadata_array_destroy_import; 76 #define grpc_metadata_array_destroy grpc_metadata_array_destroy_import 77 typedef void(*grpc_call_details_init_type)(grpc_call_details* details); 78 extern grpc_call_details_init_type grpc_call_details_init_import; 79 #define grpc_call_details_init grpc_call_details_init_import 80 typedef void(*grpc_call_details_destroy_type)(grpc_call_details* details); 81 extern grpc_call_details_destroy_type grpc_call_details_destroy_import; 82 #define grpc_call_details_destroy grpc_call_details_destroy_import 83 typedef void(*grpc_register_plugin_type)(void (*init)(void), void (*destroy)(void)); 84 extern grpc_register_plugin_type grpc_register_plugin_import; 85 #define grpc_register_plugin grpc_register_plugin_import 86 typedef void(*grpc_init_type)(void); 87 extern grpc_init_type grpc_init_import; 88 #define grpc_init grpc_init_import 89 typedef void(*grpc_shutdown_type)(void); 90 extern grpc_shutdown_type grpc_shutdown_import; 91 #define grpc_shutdown grpc_shutdown_import 92 typedef int(*grpc_is_initialized_type)(void); 93 extern grpc_is_initialized_type grpc_is_initialized_import; 94 #define grpc_is_initialized grpc_is_initialized_import 95 typedef const char*(*grpc_version_string_type)(void); 96 extern grpc_version_string_type grpc_version_string_import; 97 #define grpc_version_string grpc_version_string_import 98 typedef const char*(*grpc_g_stands_for_type)(void); 99 extern grpc_g_stands_for_type grpc_g_stands_for_import; 100 #define grpc_g_stands_for grpc_g_stands_for_import 101 typedef const grpc_completion_queue_factory*(*grpc_completion_queue_factory_lookup_type)(const grpc_completion_queue_attributes* attributes); 102 extern grpc_completion_queue_factory_lookup_type grpc_completion_queue_factory_lookup_import; 103 #define grpc_completion_queue_factory_lookup grpc_completion_queue_factory_lookup_import 104 typedef grpc_completion_queue*(*grpc_completion_queue_create_for_next_type)(void* reserved); 105 extern grpc_completion_queue_create_for_next_type grpc_completion_queue_create_for_next_import; 106 #define grpc_completion_queue_create_for_next grpc_completion_queue_create_for_next_import 107 typedef grpc_completion_queue*(*grpc_completion_queue_create_for_pluck_type)(void* reserved); 108 extern grpc_completion_queue_create_for_pluck_type grpc_completion_queue_create_for_pluck_import; 109 #define grpc_completion_queue_create_for_pluck grpc_completion_queue_create_for_pluck_import 110 typedef grpc_completion_queue*(*grpc_completion_queue_create_for_callback_type)(grpc_experimental_completion_queue_functor* shutdown_callback, void* reserved); 111 extern grpc_completion_queue_create_for_callback_type grpc_completion_queue_create_for_callback_import; 112 #define grpc_completion_queue_create_for_callback grpc_completion_queue_create_for_callback_import 113 typedef grpc_completion_queue*(*grpc_completion_queue_create_type)(const grpc_completion_queue_factory* factory, const grpc_completion_queue_attributes* attributes, void* reserved); 114 extern grpc_completion_queue_create_type grpc_completion_queue_create_import; 115 #define grpc_completion_queue_create grpc_completion_queue_create_import 116 typedef grpc_event(*grpc_completion_queue_next_type)(grpc_completion_queue* cq, gpr_timespec deadline, void* reserved); 117 extern grpc_completion_queue_next_type grpc_completion_queue_next_import; 118 #define grpc_completion_queue_next grpc_completion_queue_next_import 119 typedef grpc_event(*grpc_completion_queue_pluck_type)(grpc_completion_queue* cq, void* tag, gpr_timespec deadline, void* reserved); 120 extern grpc_completion_queue_pluck_type grpc_completion_queue_pluck_import; 121 #define grpc_completion_queue_pluck grpc_completion_queue_pluck_import 122 typedef void(*grpc_completion_queue_shutdown_type)(grpc_completion_queue* cq); 123 extern grpc_completion_queue_shutdown_type grpc_completion_queue_shutdown_import; 124 #define grpc_completion_queue_shutdown grpc_completion_queue_shutdown_import 125 typedef void(*grpc_completion_queue_destroy_type)(grpc_completion_queue* cq); 126 extern grpc_completion_queue_destroy_type grpc_completion_queue_destroy_import; 127 #define grpc_completion_queue_destroy grpc_completion_queue_destroy_import 128 typedef void(*grpc_completion_queue_thread_local_cache_init_type)(grpc_completion_queue* cq); 129 extern grpc_completion_queue_thread_local_cache_init_type grpc_completion_queue_thread_local_cache_init_import; 130 #define grpc_completion_queue_thread_local_cache_init grpc_completion_queue_thread_local_cache_init_import 131 typedef int(*grpc_completion_queue_thread_local_cache_flush_type)(grpc_completion_queue* cq, void** tag, int* ok); 132 extern grpc_completion_queue_thread_local_cache_flush_type grpc_completion_queue_thread_local_cache_flush_import; 133 #define grpc_completion_queue_thread_local_cache_flush grpc_completion_queue_thread_local_cache_flush_import 134 typedef grpc_connectivity_state(*grpc_channel_check_connectivity_state_type)(grpc_channel* channel, int try_to_connect); 135 extern grpc_channel_check_connectivity_state_type grpc_channel_check_connectivity_state_import; 136 #define grpc_channel_check_connectivity_state grpc_channel_check_connectivity_state_import 137 typedef int(*grpc_channel_num_external_connectivity_watchers_type)(grpc_channel* channel); 138 extern grpc_channel_num_external_connectivity_watchers_type grpc_channel_num_external_connectivity_watchers_import; 139 #define grpc_channel_num_external_connectivity_watchers grpc_channel_num_external_connectivity_watchers_import 140 typedef void(*grpc_channel_watch_connectivity_state_type)(grpc_channel* channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue* cq, void* tag); 141 extern grpc_channel_watch_connectivity_state_type grpc_channel_watch_connectivity_state_import; 142 #define grpc_channel_watch_connectivity_state grpc_channel_watch_connectivity_state_import 143 typedef int(*grpc_channel_support_connectivity_watcher_type)(grpc_channel* channel); 144 extern grpc_channel_support_connectivity_watcher_type grpc_channel_support_connectivity_watcher_import; 145 #define grpc_channel_support_connectivity_watcher grpc_channel_support_connectivity_watcher_import 146 typedef grpc_call*(*grpc_channel_create_call_type)(grpc_channel* channel, grpc_call* parent_call, uint32_t propagation_mask, grpc_completion_queue* completion_queue, grpc_slice method, const grpc_slice* host, gpr_timespec deadline, void* reserved); 147 extern grpc_channel_create_call_type grpc_channel_create_call_import; 148 #define grpc_channel_create_call grpc_channel_create_call_import 149 typedef void(*grpc_channel_ping_type)(grpc_channel* channel, grpc_completion_queue* cq, void* tag, void* reserved); 150 extern grpc_channel_ping_type grpc_channel_ping_import; 151 #define grpc_channel_ping grpc_channel_ping_import 152 typedef void*(*grpc_channel_register_call_type)(grpc_channel* channel, const char* method, const char* host, void* reserved); 153 extern grpc_channel_register_call_type grpc_channel_register_call_import; 154 #define grpc_channel_register_call grpc_channel_register_call_import 155 typedef grpc_call*(*grpc_channel_create_registered_call_type)(grpc_channel* channel, grpc_call* parent_call, uint32_t propagation_mask, grpc_completion_queue* completion_queue, void* registered_call_handle, gpr_timespec deadline, void* reserved); 156 extern grpc_channel_create_registered_call_type grpc_channel_create_registered_call_import; 157 #define grpc_channel_create_registered_call grpc_channel_create_registered_call_import 158 typedef void*(*grpc_call_arena_alloc_type)(grpc_call* call, size_t size); 159 extern grpc_call_arena_alloc_type grpc_call_arena_alloc_import; 160 #define grpc_call_arena_alloc grpc_call_arena_alloc_import 161 typedef grpc_call_error(*grpc_call_start_batch_type)(grpc_call* call, const grpc_op* ops, size_t nops, void* tag, void* reserved); 162 extern grpc_call_start_batch_type grpc_call_start_batch_import; 163 #define grpc_call_start_batch grpc_call_start_batch_import 164 typedef char*(*grpc_call_get_peer_type)(grpc_call* call); 165 extern grpc_call_get_peer_type grpc_call_get_peer_import; 166 #define grpc_call_get_peer grpc_call_get_peer_import 167 typedef void(*grpc_census_call_set_context_type)(grpc_call* call, struct census_context* context); 168 extern grpc_census_call_set_context_type grpc_census_call_set_context_import; 169 #define grpc_census_call_set_context grpc_census_call_set_context_import 170 typedef struct census_context*(*grpc_census_call_get_context_type)(grpc_call* call); 171 extern grpc_census_call_get_context_type grpc_census_call_get_context_import; 172 #define grpc_census_call_get_context grpc_census_call_get_context_import 173 typedef char*(*grpc_channel_get_target_type)(grpc_channel* channel); 174 extern grpc_channel_get_target_type grpc_channel_get_target_import; 175 #define grpc_channel_get_target grpc_channel_get_target_import 176 typedef void(*grpc_channel_get_info_type)(grpc_channel* channel, const grpc_channel_info* channel_info); 177 extern grpc_channel_get_info_type grpc_channel_get_info_import; 178 #define grpc_channel_get_info grpc_channel_get_info_import 179 typedef void(*grpc_channel_reset_connect_backoff_type)(grpc_channel* channel); 180 extern grpc_channel_reset_connect_backoff_type grpc_channel_reset_connect_backoff_import; 181 #define grpc_channel_reset_connect_backoff grpc_channel_reset_connect_backoff_import 182 typedef grpc_channel*(*grpc_insecure_channel_create_type)(const char* target, const grpc_channel_args* args, void* reserved); 183 extern grpc_insecure_channel_create_type grpc_insecure_channel_create_import; 184 #define grpc_insecure_channel_create grpc_insecure_channel_create_import 185 typedef grpc_channel*(*grpc_lame_client_channel_create_type)(const char* target, grpc_status_code error_code, const char* error_message); 186 extern grpc_lame_client_channel_create_type grpc_lame_client_channel_create_import; 187 #define grpc_lame_client_channel_create grpc_lame_client_channel_create_import 188 typedef void(*grpc_channel_destroy_type)(grpc_channel* channel); 189 extern grpc_channel_destroy_type grpc_channel_destroy_import; 190 #define grpc_channel_destroy grpc_channel_destroy_import 191 typedef grpc_call_error(*grpc_call_cancel_type)(grpc_call* call, void* reserved); 192 extern grpc_call_cancel_type grpc_call_cancel_import; 193 #define grpc_call_cancel grpc_call_cancel_import 194 typedef grpc_call_error(*grpc_call_cancel_with_status_type)(grpc_call* call, grpc_status_code status, const char* description, void* reserved); 195 extern grpc_call_cancel_with_status_type grpc_call_cancel_with_status_import; 196 #define grpc_call_cancel_with_status grpc_call_cancel_with_status_import 197 typedef void(*grpc_call_ref_type)(grpc_call* call); 198 extern grpc_call_ref_type grpc_call_ref_import; 199 #define grpc_call_ref grpc_call_ref_import 200 typedef void(*grpc_call_unref_type)(grpc_call* call); 201 extern grpc_call_unref_type grpc_call_unref_import; 202 #define grpc_call_unref grpc_call_unref_import 203 typedef grpc_call_error(*grpc_server_request_call_type)(grpc_server* server, grpc_call** call, grpc_call_details* details, grpc_metadata_array* request_metadata, grpc_completion_queue* cq_bound_to_call, grpc_completion_queue* cq_for_notification, void* tag_new); 204 extern grpc_server_request_call_type grpc_server_request_call_import; 205 #define grpc_server_request_call grpc_server_request_call_import 206 typedef void*(*grpc_server_register_method_type)(grpc_server* server, const char* method, const char* host, grpc_server_register_method_payload_handling payload_handling, uint32_t flags); 207 extern grpc_server_register_method_type grpc_server_register_method_import; 208 #define grpc_server_register_method grpc_server_register_method_import 209 typedef grpc_call_error(*grpc_server_request_registered_call_type)(grpc_server* server, void* registered_method, grpc_call** call, gpr_timespec* deadline, grpc_metadata_array* request_metadata, grpc_byte_buffer** optional_payload, grpc_completion_queue* cq_bound_to_call, grpc_completion_queue* cq_for_notification, void* tag_new); 210 extern grpc_server_request_registered_call_type grpc_server_request_registered_call_import; 211 #define grpc_server_request_registered_call grpc_server_request_registered_call_import 212 typedef grpc_server*(*grpc_server_create_type)(const grpc_channel_args* args, void* reserved); 213 extern grpc_server_create_type grpc_server_create_import; 214 #define grpc_server_create grpc_server_create_import 215 typedef void(*grpc_server_register_completion_queue_type)(grpc_server* server, grpc_completion_queue* cq, void* reserved); 216 extern grpc_server_register_completion_queue_type grpc_server_register_completion_queue_import; 217 #define grpc_server_register_completion_queue grpc_server_register_completion_queue_import 218 typedef int(*grpc_server_add_insecure_http2_port_type)(grpc_server* server, const char* addr); 219 extern grpc_server_add_insecure_http2_port_type grpc_server_add_insecure_http2_port_import; 220 #define grpc_server_add_insecure_http2_port grpc_server_add_insecure_http2_port_import 221 typedef void(*grpc_server_start_type)(grpc_server* server); 222 extern grpc_server_start_type grpc_server_start_import; 223 #define grpc_server_start grpc_server_start_import 224 typedef void(*grpc_server_shutdown_and_notify_type)(grpc_server* server, grpc_completion_queue* cq, void* tag); 225 extern grpc_server_shutdown_and_notify_type grpc_server_shutdown_and_notify_import; 226 #define grpc_server_shutdown_and_notify grpc_server_shutdown_and_notify_import 227 typedef void(*grpc_server_cancel_all_calls_type)(grpc_server* server); 228 extern grpc_server_cancel_all_calls_type grpc_server_cancel_all_calls_import; 229 #define grpc_server_cancel_all_calls grpc_server_cancel_all_calls_import 230 typedef void(*grpc_server_destroy_type)(grpc_server* server); 231 extern grpc_server_destroy_type grpc_server_destroy_import; 232 #define grpc_server_destroy grpc_server_destroy_import 233 typedef int(*grpc_tracer_set_enabled_type)(const char* name, int enabled); 234 extern grpc_tracer_set_enabled_type grpc_tracer_set_enabled_import; 235 #define grpc_tracer_set_enabled grpc_tracer_set_enabled_import 236 typedef int(*grpc_header_key_is_legal_type)(grpc_slice slice); 237 extern grpc_header_key_is_legal_type grpc_header_key_is_legal_import; 238 #define grpc_header_key_is_legal grpc_header_key_is_legal_import 239 typedef int(*grpc_header_nonbin_value_is_legal_type)(grpc_slice slice); 240 extern grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_import; 241 #define grpc_header_nonbin_value_is_legal grpc_header_nonbin_value_is_legal_import 242 typedef int(*grpc_is_binary_header_type)(grpc_slice slice); 243 extern grpc_is_binary_header_type grpc_is_binary_header_import; 244 #define grpc_is_binary_header grpc_is_binary_header_import 245 typedef const char*(*grpc_call_error_to_string_type)(grpc_call_error error); 246 extern grpc_call_error_to_string_type grpc_call_error_to_string_import; 247 #define grpc_call_error_to_string grpc_call_error_to_string_import 248 typedef grpc_resource_quota*(*grpc_resource_quota_create_type)(const char* trace_name); 249 extern grpc_resource_quota_create_type grpc_resource_quota_create_import; 250 #define grpc_resource_quota_create grpc_resource_quota_create_import 251 typedef void(*grpc_resource_quota_ref_type)(grpc_resource_quota* resource_quota); 252 extern grpc_resource_quota_ref_type grpc_resource_quota_ref_import; 253 #define grpc_resource_quota_ref grpc_resource_quota_ref_import 254 typedef void(*grpc_resource_quota_unref_type)(grpc_resource_quota* resource_quota); 255 extern grpc_resource_quota_unref_type grpc_resource_quota_unref_import; 256 #define grpc_resource_quota_unref grpc_resource_quota_unref_import 257 typedef void(*grpc_resource_quota_resize_type)(grpc_resource_quota* resource_quota, size_t new_size); 258 extern grpc_resource_quota_resize_type grpc_resource_quota_resize_import; 259 #define grpc_resource_quota_resize grpc_resource_quota_resize_import 260 typedef void(*grpc_resource_quota_set_max_threads_type)(grpc_resource_quota* resource_quota, int new_max_threads); 261 extern grpc_resource_quota_set_max_threads_type grpc_resource_quota_set_max_threads_import; 262 #define grpc_resource_quota_set_max_threads grpc_resource_quota_set_max_threads_import 263 typedef const grpc_arg_pointer_vtable*(*grpc_resource_quota_arg_vtable_type)(void); 264 extern grpc_resource_quota_arg_vtable_type grpc_resource_quota_arg_vtable_import; 265 #define grpc_resource_quota_arg_vtable grpc_resource_quota_arg_vtable_import 266 typedef char*(*grpc_channelz_get_top_channels_type)(intptr_t start_channel_id); 267 extern grpc_channelz_get_top_channels_type grpc_channelz_get_top_channels_import; 268 #define grpc_channelz_get_top_channels grpc_channelz_get_top_channels_import 269 typedef char*(*grpc_channelz_get_servers_type)(intptr_t start_server_id); 270 extern grpc_channelz_get_servers_type grpc_channelz_get_servers_import; 271 #define grpc_channelz_get_servers grpc_channelz_get_servers_import 272 typedef char*(*grpc_channelz_get_channel_type)(intptr_t channel_id); 273 extern grpc_channelz_get_channel_type grpc_channelz_get_channel_import; 274 #define grpc_channelz_get_channel grpc_channelz_get_channel_import 275 typedef char*(*grpc_channelz_get_subchannel_type)(intptr_t subchannel_id); 276 extern grpc_channelz_get_subchannel_type grpc_channelz_get_subchannel_import; 277 #define grpc_channelz_get_subchannel grpc_channelz_get_subchannel_import 278 typedef grpc_channel*(*grpc_insecure_channel_create_from_fd_type)(const char* target, int fd, const grpc_channel_args* args); 279 extern grpc_insecure_channel_create_from_fd_type grpc_insecure_channel_create_from_fd_import; 280 #define grpc_insecure_channel_create_from_fd grpc_insecure_channel_create_from_fd_import 281 typedef void(*grpc_server_add_insecure_channel_from_fd_type)(grpc_server* server, void* reserved, int fd); 282 extern grpc_server_add_insecure_channel_from_fd_type grpc_server_add_insecure_channel_from_fd_import; 283 #define grpc_server_add_insecure_channel_from_fd grpc_server_add_insecure_channel_from_fd_import 284 typedef void(*grpc_use_signal_type)(int signum); 285 extern grpc_use_signal_type grpc_use_signal_import; 286 #define grpc_use_signal grpc_use_signal_import 287 typedef const grpc_auth_property*(*grpc_auth_property_iterator_next_type)(grpc_auth_property_iterator* it); 288 extern grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import; 289 #define grpc_auth_property_iterator_next grpc_auth_property_iterator_next_import 290 typedef grpc_auth_property_iterator(*grpc_auth_context_property_iterator_type)(const grpc_auth_context* ctx); 291 extern grpc_auth_context_property_iterator_type grpc_auth_context_property_iterator_import; 292 #define grpc_auth_context_property_iterator grpc_auth_context_property_iterator_import 293 typedef grpc_auth_property_iterator(*grpc_auth_context_peer_identity_type)(const grpc_auth_context* ctx); 294 extern grpc_auth_context_peer_identity_type grpc_auth_context_peer_identity_import; 295 #define grpc_auth_context_peer_identity grpc_auth_context_peer_identity_import 296 typedef grpc_auth_property_iterator(*grpc_auth_context_find_properties_by_name_type)(const grpc_auth_context* ctx, const char* name); 297 extern grpc_auth_context_find_properties_by_name_type grpc_auth_context_find_properties_by_name_import; 298 #define grpc_auth_context_find_properties_by_name grpc_auth_context_find_properties_by_name_import 299 typedef const char*(*grpc_auth_context_peer_identity_property_name_type)(const grpc_auth_context* ctx); 300 extern grpc_auth_context_peer_identity_property_name_type grpc_auth_context_peer_identity_property_name_import; 301 #define grpc_auth_context_peer_identity_property_name grpc_auth_context_peer_identity_property_name_import 302 typedef int(*grpc_auth_context_peer_is_authenticated_type)(const grpc_auth_context* ctx); 303 extern grpc_auth_context_peer_is_authenticated_type grpc_auth_context_peer_is_authenticated_import; 304 #define grpc_auth_context_peer_is_authenticated grpc_auth_context_peer_is_authenticated_import 305 typedef grpc_auth_context*(*grpc_call_auth_context_type)(grpc_call* call); 306 extern grpc_call_auth_context_type grpc_call_auth_context_import; 307 #define grpc_call_auth_context grpc_call_auth_context_import 308 typedef void(*grpc_auth_context_release_type)(grpc_auth_context* context); 309 extern grpc_auth_context_release_type grpc_auth_context_release_import; 310 #define grpc_auth_context_release grpc_auth_context_release_import 311 typedef void(*grpc_auth_context_add_property_type)(grpc_auth_context* ctx, const char* name, const char* value, size_t value_length); 312 extern grpc_auth_context_add_property_type grpc_auth_context_add_property_import; 313 #define grpc_auth_context_add_property grpc_auth_context_add_property_import 314 typedef void(*grpc_auth_context_add_cstring_property_type)(grpc_auth_context* ctx, const char* name, const char* value); 315 extern grpc_auth_context_add_cstring_property_type grpc_auth_context_add_cstring_property_import; 316 #define grpc_auth_context_add_cstring_property grpc_auth_context_add_cstring_property_import 317 typedef int(*grpc_auth_context_set_peer_identity_property_name_type)(grpc_auth_context* ctx, const char* name); 318 extern grpc_auth_context_set_peer_identity_property_name_type grpc_auth_context_set_peer_identity_property_name_import; 319 #define grpc_auth_context_set_peer_identity_property_name grpc_auth_context_set_peer_identity_property_name_import 320 typedef grpc_ssl_session_cache*(*grpc_ssl_session_cache_create_lru_type)(size_t capacity); 321 extern grpc_ssl_session_cache_create_lru_type grpc_ssl_session_cache_create_lru_import; 322 #define grpc_ssl_session_cache_create_lru grpc_ssl_session_cache_create_lru_import 323 typedef void(*grpc_ssl_session_cache_destroy_type)(grpc_ssl_session_cache* cache); 324 extern grpc_ssl_session_cache_destroy_type grpc_ssl_session_cache_destroy_import; 325 #define grpc_ssl_session_cache_destroy grpc_ssl_session_cache_destroy_import 326 typedef grpc_arg(*grpc_ssl_session_cache_create_channel_arg_type)(grpc_ssl_session_cache* cache); 327 extern grpc_ssl_session_cache_create_channel_arg_type grpc_ssl_session_cache_create_channel_arg_import; 328 #define grpc_ssl_session_cache_create_channel_arg grpc_ssl_session_cache_create_channel_arg_import 329 typedef void(*grpc_channel_credentials_release_type)(grpc_channel_credentials* creds); 330 extern grpc_channel_credentials_release_type grpc_channel_credentials_release_import; 331 #define grpc_channel_credentials_release grpc_channel_credentials_release_import 332 typedef grpc_channel_credentials*(*grpc_google_default_credentials_create_type)(void); 333 extern grpc_google_default_credentials_create_type grpc_google_default_credentials_create_import; 334 #define grpc_google_default_credentials_create grpc_google_default_credentials_create_import 335 typedef void(*grpc_set_ssl_roots_override_callback_type)(grpc_ssl_roots_override_callback cb); 336 extern grpc_set_ssl_roots_override_callback_type grpc_set_ssl_roots_override_callback_import; 337 #define grpc_set_ssl_roots_override_callback grpc_set_ssl_roots_override_callback_import 338 typedef grpc_channel_credentials*(*grpc_ssl_credentials_create_type)(const char* pem_root_certs, grpc_ssl_pem_key_cert_pair* pem_key_cert_pair, const verify_peer_options* verify_options, void* reserved); 339 extern grpc_ssl_credentials_create_type grpc_ssl_credentials_create_import; 340 #define grpc_ssl_credentials_create grpc_ssl_credentials_create_import 341 typedef void(*grpc_call_credentials_release_type)(grpc_call_credentials* creds); 342 extern grpc_call_credentials_release_type grpc_call_credentials_release_import; 343 #define grpc_call_credentials_release grpc_call_credentials_release_import 344 typedef grpc_channel_credentials*(*grpc_composite_channel_credentials_create_type)(grpc_channel_credentials* channel_creds, grpc_call_credentials* call_creds, void* reserved); 345 extern grpc_composite_channel_credentials_create_type grpc_composite_channel_credentials_create_import; 346 #define grpc_composite_channel_credentials_create grpc_composite_channel_credentials_create_import 347 typedef grpc_call_credentials*(*grpc_composite_call_credentials_create_type)(grpc_call_credentials* creds1, grpc_call_credentials* creds2, void* reserved); 348 extern grpc_composite_call_credentials_create_type grpc_composite_call_credentials_create_import; 349 #define grpc_composite_call_credentials_create grpc_composite_call_credentials_create_import 350 typedef grpc_call_credentials*(*grpc_google_compute_engine_credentials_create_type)(void* reserved); 351 extern grpc_google_compute_engine_credentials_create_type grpc_google_compute_engine_credentials_create_import; 352 #define grpc_google_compute_engine_credentials_create grpc_google_compute_engine_credentials_create_import 353 typedef gpr_timespec(*grpc_max_auth_token_lifetime_type)(void); 354 extern grpc_max_auth_token_lifetime_type grpc_max_auth_token_lifetime_import; 355 #define grpc_max_auth_token_lifetime grpc_max_auth_token_lifetime_import 356 typedef grpc_call_credentials*(*grpc_service_account_jwt_access_credentials_create_type)(const char* json_key, gpr_timespec token_lifetime, void* reserved); 357 extern grpc_service_account_jwt_access_credentials_create_type grpc_service_account_jwt_access_credentials_create_import; 358 #define grpc_service_account_jwt_access_credentials_create grpc_service_account_jwt_access_credentials_create_import 359 typedef grpc_call_credentials*(*grpc_google_refresh_token_credentials_create_type)(const char* json_refresh_token, void* reserved); 360 extern grpc_google_refresh_token_credentials_create_type grpc_google_refresh_token_credentials_create_import; 361 #define grpc_google_refresh_token_credentials_create grpc_google_refresh_token_credentials_create_import 362 typedef grpc_call_credentials*(*grpc_access_token_credentials_create_type)(const char* access_token, void* reserved); 363 extern grpc_access_token_credentials_create_type grpc_access_token_credentials_create_import; 364 #define grpc_access_token_credentials_create grpc_access_token_credentials_create_import 365 typedef grpc_call_credentials*(*grpc_google_iam_credentials_create_type)(const char* authorization_token, const char* authority_selector, void* reserved); 366 extern grpc_google_iam_credentials_create_type grpc_google_iam_credentials_create_import; 367 #define grpc_google_iam_credentials_create grpc_google_iam_credentials_create_import 368 typedef grpc_call_credentials*(*grpc_metadata_credentials_create_from_plugin_type)(grpc_metadata_credentials_plugin plugin, void* reserved); 369 extern grpc_metadata_credentials_create_from_plugin_type grpc_metadata_credentials_create_from_plugin_import; 370 #define grpc_metadata_credentials_create_from_plugin grpc_metadata_credentials_create_from_plugin_import 371 typedef grpc_channel*(*grpc_secure_channel_create_type)(grpc_channel_credentials* creds, const char* target, const grpc_channel_args* args, void* reserved); 372 extern grpc_secure_channel_create_type grpc_secure_channel_create_import; 373 #define grpc_secure_channel_create grpc_secure_channel_create_import 374 typedef void(*grpc_server_credentials_release_type)(grpc_server_credentials* creds); 375 extern grpc_server_credentials_release_type grpc_server_credentials_release_import; 376 #define grpc_server_credentials_release grpc_server_credentials_release_import 377 typedef grpc_ssl_server_certificate_config*(*grpc_ssl_server_certificate_config_create_type)(const char* pem_root_certs, const grpc_ssl_pem_key_cert_pair* pem_key_cert_pairs, size_t num_key_cert_pairs); 378 extern grpc_ssl_server_certificate_config_create_type grpc_ssl_server_certificate_config_create_import; 379 #define grpc_ssl_server_certificate_config_create grpc_ssl_server_certificate_config_create_import 380 typedef void(*grpc_ssl_server_certificate_config_destroy_type)(grpc_ssl_server_certificate_config* config); 381 extern grpc_ssl_server_certificate_config_destroy_type grpc_ssl_server_certificate_config_destroy_import; 382 #define grpc_ssl_server_certificate_config_destroy grpc_ssl_server_certificate_config_destroy_import 383 typedef grpc_server_credentials*(*grpc_ssl_server_credentials_create_type)(const char* pem_root_certs, grpc_ssl_pem_key_cert_pair* pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth, void* reserved); 384 extern grpc_ssl_server_credentials_create_type grpc_ssl_server_credentials_create_import; 385 #define grpc_ssl_server_credentials_create grpc_ssl_server_credentials_create_import 386 typedef grpc_server_credentials*(*grpc_ssl_server_credentials_create_ex_type)(const char* pem_root_certs, grpc_ssl_pem_key_cert_pair* pem_key_cert_pairs, size_t num_key_cert_pairs, grpc_ssl_client_certificate_request_type client_certificate_request, void* reserved); 387 extern grpc_ssl_server_credentials_create_ex_type grpc_ssl_server_credentials_create_ex_import; 388 #define grpc_ssl_server_credentials_create_ex grpc_ssl_server_credentials_create_ex_import 389 typedef grpc_ssl_server_credentials_options*(*grpc_ssl_server_credentials_create_options_using_config_type)(grpc_ssl_client_certificate_request_type client_certificate_request, grpc_ssl_server_certificate_config* certificate_config); 390 extern grpc_ssl_server_credentials_create_options_using_config_type grpc_ssl_server_credentials_create_options_using_config_import; 391 #define grpc_ssl_server_credentials_create_options_using_config grpc_ssl_server_credentials_create_options_using_config_import 392 typedef grpc_ssl_server_credentials_options*(*grpc_ssl_server_credentials_create_options_using_config_fetcher_type)(grpc_ssl_client_certificate_request_type client_certificate_request, grpc_ssl_server_certificate_config_callback cb, void* user_data); 393 extern grpc_ssl_server_credentials_create_options_using_config_fetcher_type grpc_ssl_server_credentials_create_options_using_config_fetcher_import; 394 #define grpc_ssl_server_credentials_create_options_using_config_fetcher grpc_ssl_server_credentials_create_options_using_config_fetcher_import 395 typedef void(*grpc_ssl_server_credentials_options_destroy_type)(grpc_ssl_server_credentials_options* options); 396 extern grpc_ssl_server_credentials_options_destroy_type grpc_ssl_server_credentials_options_destroy_import; 397 #define grpc_ssl_server_credentials_options_destroy grpc_ssl_server_credentials_options_destroy_import 398 typedef grpc_server_credentials*(*grpc_ssl_server_credentials_create_with_options_type)(grpc_ssl_server_credentials_options* options); 399 extern grpc_ssl_server_credentials_create_with_options_type grpc_ssl_server_credentials_create_with_options_import; 400 #define grpc_ssl_server_credentials_create_with_options grpc_ssl_server_credentials_create_with_options_import 401 typedef int(*grpc_server_add_secure_http2_port_type)(grpc_server* server, const char* addr, grpc_server_credentials* creds); 402 extern grpc_server_add_secure_http2_port_type grpc_server_add_secure_http2_port_import; 403 #define grpc_server_add_secure_http2_port grpc_server_add_secure_http2_port_import 404 typedef grpc_call_error(*grpc_call_set_credentials_type)(grpc_call* call, grpc_call_credentials* creds); 405 extern grpc_call_set_credentials_type grpc_call_set_credentials_import; 406 #define grpc_call_set_credentials grpc_call_set_credentials_import 407 typedef void(*grpc_server_credentials_set_auth_metadata_processor_type)(grpc_server_credentials* creds, grpc_auth_metadata_processor processor); 408 extern grpc_server_credentials_set_auth_metadata_processor_type grpc_server_credentials_set_auth_metadata_processor_import; 409 #define grpc_server_credentials_set_auth_metadata_processor grpc_server_credentials_set_auth_metadata_processor_import 410 typedef grpc_alts_credentials_options*(*grpc_alts_credentials_client_options_create_type)(void); 411 extern grpc_alts_credentials_client_options_create_type grpc_alts_credentials_client_options_create_import; 412 #define grpc_alts_credentials_client_options_create grpc_alts_credentials_client_options_create_import 413 typedef grpc_alts_credentials_options*(*grpc_alts_credentials_server_options_create_type)(void); 414 extern grpc_alts_credentials_server_options_create_type grpc_alts_credentials_server_options_create_import; 415 #define grpc_alts_credentials_server_options_create grpc_alts_credentials_server_options_create_import 416 typedef void(*grpc_alts_credentials_client_options_add_target_service_account_type)(grpc_alts_credentials_options* options, const char* service_account); 417 extern grpc_alts_credentials_client_options_add_target_service_account_type grpc_alts_credentials_client_options_add_target_service_account_import; 418 #define grpc_alts_credentials_client_options_add_target_service_account grpc_alts_credentials_client_options_add_target_service_account_import 419 typedef void(*grpc_alts_credentials_options_destroy_type)(grpc_alts_credentials_options* options); 420 extern grpc_alts_credentials_options_destroy_type grpc_alts_credentials_options_destroy_import; 421 #define grpc_alts_credentials_options_destroy grpc_alts_credentials_options_destroy_import 422 typedef grpc_channel_credentials*(*grpc_alts_credentials_create_type)(const grpc_alts_credentials_options* options); 423 extern grpc_alts_credentials_create_type grpc_alts_credentials_create_import; 424 #define grpc_alts_credentials_create grpc_alts_credentials_create_import 425 typedef grpc_server_credentials*(*grpc_alts_server_credentials_create_type)(const grpc_alts_credentials_options* options); 426 extern grpc_alts_server_credentials_create_type grpc_alts_server_credentials_create_import; 427 #define grpc_alts_server_credentials_create grpc_alts_server_credentials_create_import 428 typedef grpc_channel_credentials*(*grpc_local_credentials_create_type)(grpc_local_connect_type type); 429 extern grpc_local_credentials_create_type grpc_local_credentials_create_import; 430 #define grpc_local_credentials_create grpc_local_credentials_create_import 431 typedef grpc_server_credentials*(*grpc_local_server_credentials_create_type)(grpc_local_connect_type type); 432 extern grpc_local_server_credentials_create_type grpc_local_server_credentials_create_import; 433 #define grpc_local_server_credentials_create grpc_local_server_credentials_create_import 434 typedef grpc_byte_buffer*(*grpc_raw_byte_buffer_create_type)(grpc_slice* slices, size_t nslices); 435 extern grpc_raw_byte_buffer_create_type grpc_raw_byte_buffer_create_import; 436 #define grpc_raw_byte_buffer_create grpc_raw_byte_buffer_create_import 437 typedef grpc_byte_buffer*(*grpc_raw_compressed_byte_buffer_create_type)(grpc_slice* slices, size_t nslices, grpc_compression_algorithm compression); 438 extern grpc_raw_compressed_byte_buffer_create_type grpc_raw_compressed_byte_buffer_create_import; 439 #define grpc_raw_compressed_byte_buffer_create grpc_raw_compressed_byte_buffer_create_import 440 typedef grpc_byte_buffer*(*grpc_byte_buffer_copy_type)(grpc_byte_buffer* bb); 441 extern grpc_byte_buffer_copy_type grpc_byte_buffer_copy_import; 442 #define grpc_byte_buffer_copy grpc_byte_buffer_copy_import 443 typedef size_t(*grpc_byte_buffer_length_type)(grpc_byte_buffer* bb); 444 extern grpc_byte_buffer_length_type grpc_byte_buffer_length_import; 445 #define grpc_byte_buffer_length grpc_byte_buffer_length_import 446 typedef void(*grpc_byte_buffer_destroy_type)(grpc_byte_buffer* byte_buffer); 447 extern grpc_byte_buffer_destroy_type grpc_byte_buffer_destroy_import; 448 #define grpc_byte_buffer_destroy grpc_byte_buffer_destroy_import 449 typedef int(*grpc_byte_buffer_reader_init_type)(grpc_byte_buffer_reader* reader, grpc_byte_buffer* buffer); 450 extern grpc_byte_buffer_reader_init_type grpc_byte_buffer_reader_init_import; 451 #define grpc_byte_buffer_reader_init grpc_byte_buffer_reader_init_import 452 typedef void(*grpc_byte_buffer_reader_destroy_type)(grpc_byte_buffer_reader* reader); 453 extern grpc_byte_buffer_reader_destroy_type grpc_byte_buffer_reader_destroy_import; 454 #define grpc_byte_buffer_reader_destroy grpc_byte_buffer_reader_destroy_import 455 typedef int(*grpc_byte_buffer_reader_next_type)(grpc_byte_buffer_reader* reader, grpc_slice* slice); 456 extern grpc_byte_buffer_reader_next_type grpc_byte_buffer_reader_next_import; 457 #define grpc_byte_buffer_reader_next grpc_byte_buffer_reader_next_import 458 typedef grpc_slice(*grpc_byte_buffer_reader_readall_type)(grpc_byte_buffer_reader* reader); 459 extern grpc_byte_buffer_reader_readall_type grpc_byte_buffer_reader_readall_import; 460 #define grpc_byte_buffer_reader_readall grpc_byte_buffer_reader_readall_import 461 typedef grpc_byte_buffer*(*grpc_raw_byte_buffer_from_reader_type)(grpc_byte_buffer_reader* reader); 462 extern grpc_raw_byte_buffer_from_reader_type grpc_raw_byte_buffer_from_reader_import; 463 #define grpc_raw_byte_buffer_from_reader grpc_raw_byte_buffer_from_reader_import 464 typedef const char*(*gpr_log_severity_string_type)(gpr_log_severity severity); 465 extern gpr_log_severity_string_type gpr_log_severity_string_import; 466 #define gpr_log_severity_string gpr_log_severity_string_import 467 typedef void(*gpr_log_type)(const char* file, int line, gpr_log_severity severity, const char* format, ...) GPR_PRINT_FORMAT_CHECK(4, 5); 468 extern gpr_log_type gpr_log_import; 469 #define gpr_log gpr_log_import 470 typedef int(*gpr_should_log_type)(gpr_log_severity severity); 471 extern gpr_should_log_type gpr_should_log_import; 472 #define gpr_should_log gpr_should_log_import 473 typedef void(*gpr_log_message_type)(const char* file, int line, gpr_log_severity severity, const char* message); 474 extern gpr_log_message_type gpr_log_message_import; 475 #define gpr_log_message gpr_log_message_import 476 typedef void(*gpr_set_log_verbosity_type)(gpr_log_severity min_severity_to_print); 477 extern gpr_set_log_verbosity_type gpr_set_log_verbosity_import; 478 #define gpr_set_log_verbosity gpr_set_log_verbosity_import 479 typedef void(*gpr_log_verbosity_init_type)(void); 480 extern gpr_log_verbosity_init_type gpr_log_verbosity_init_import; 481 #define gpr_log_verbosity_init gpr_log_verbosity_init_import 482 typedef void(*gpr_set_log_function_type)(gpr_log_func func); 483 extern gpr_set_log_function_type gpr_set_log_function_import; 484 #define gpr_set_log_function gpr_set_log_function_import 485 typedef grpc_slice(*grpc_slice_ref_type)(grpc_slice s); 486 extern grpc_slice_ref_type grpc_slice_ref_import; 487 #define grpc_slice_ref grpc_slice_ref_import 488 typedef void(*grpc_slice_unref_type)(grpc_slice s); 489 extern grpc_slice_unref_type grpc_slice_unref_import; 490 #define grpc_slice_unref grpc_slice_unref_import 491 typedef grpc_slice(*grpc_slice_copy_type)(grpc_slice s); 492 extern grpc_slice_copy_type grpc_slice_copy_import; 493 #define grpc_slice_copy grpc_slice_copy_import 494 typedef grpc_slice(*grpc_slice_new_type)(void* p, size_t len, void (*destroy)(void*)); 495 extern grpc_slice_new_type grpc_slice_new_import; 496 #define grpc_slice_new grpc_slice_new_import 497 typedef grpc_slice(*grpc_slice_new_with_user_data_type)(void* p, size_t len, void (*destroy)(void*), void* user_data); 498 extern grpc_slice_new_with_user_data_type grpc_slice_new_with_user_data_import; 499 #define grpc_slice_new_with_user_data grpc_slice_new_with_user_data_import 500 typedef grpc_slice(*grpc_slice_new_with_len_type)(void* p, size_t len, void (*destroy)(void*, size_t)); 501 extern grpc_slice_new_with_len_type grpc_slice_new_with_len_import; 502 #define grpc_slice_new_with_len grpc_slice_new_with_len_import 503 typedef grpc_slice(*grpc_slice_malloc_type)(size_t length); 504 extern grpc_slice_malloc_type grpc_slice_malloc_import; 505 #define grpc_slice_malloc grpc_slice_malloc_import 506 typedef grpc_slice(*grpc_slice_malloc_large_type)(size_t length); 507 extern grpc_slice_malloc_large_type grpc_slice_malloc_large_import; 508 #define grpc_slice_malloc_large grpc_slice_malloc_large_import 509 typedef grpc_slice(*grpc_slice_intern_type)(grpc_slice slice); 510 extern grpc_slice_intern_type grpc_slice_intern_import; 511 #define grpc_slice_intern grpc_slice_intern_import 512 typedef grpc_slice(*grpc_slice_from_copied_string_type)(const char* source); 513 extern grpc_slice_from_copied_string_type grpc_slice_from_copied_string_import; 514 #define grpc_slice_from_copied_string grpc_slice_from_copied_string_import 515 typedef grpc_slice(*grpc_slice_from_copied_buffer_type)(const char* source, size_t len); 516 extern grpc_slice_from_copied_buffer_type grpc_slice_from_copied_buffer_import; 517 #define grpc_slice_from_copied_buffer grpc_slice_from_copied_buffer_import 518 typedef grpc_slice(*grpc_slice_from_static_string_type)(const char* source); 519 extern grpc_slice_from_static_string_type grpc_slice_from_static_string_import; 520 #define grpc_slice_from_static_string grpc_slice_from_static_string_import 521 typedef grpc_slice(*grpc_slice_from_static_buffer_type)(const void* source, size_t len); 522 extern grpc_slice_from_static_buffer_type grpc_slice_from_static_buffer_import; 523 #define grpc_slice_from_static_buffer grpc_slice_from_static_buffer_import 524 typedef grpc_slice(*grpc_slice_sub_type)(grpc_slice s, size_t begin, size_t end); 525 extern grpc_slice_sub_type grpc_slice_sub_import; 526 #define grpc_slice_sub grpc_slice_sub_import 527 typedef grpc_slice(*grpc_slice_sub_no_ref_type)(grpc_slice s, size_t begin, size_t end); 528 extern grpc_slice_sub_no_ref_type grpc_slice_sub_no_ref_import; 529 #define grpc_slice_sub_no_ref grpc_slice_sub_no_ref_import 530 typedef grpc_slice(*grpc_slice_split_tail_type)(grpc_slice* s, size_t split); 531 extern grpc_slice_split_tail_type grpc_slice_split_tail_import; 532 #define grpc_slice_split_tail grpc_slice_split_tail_import 533 typedef grpc_slice(*grpc_slice_split_tail_maybe_ref_type)(grpc_slice* s, size_t split, grpc_slice_ref_whom ref_whom); 534 extern grpc_slice_split_tail_maybe_ref_type grpc_slice_split_tail_maybe_ref_import; 535 #define grpc_slice_split_tail_maybe_ref grpc_slice_split_tail_maybe_ref_import 536 typedef grpc_slice(*grpc_slice_split_head_type)(grpc_slice* s, size_t split); 537 extern grpc_slice_split_head_type grpc_slice_split_head_import; 538 #define grpc_slice_split_head grpc_slice_split_head_import 539 typedef grpc_slice(*grpc_empty_slice_type)(void); 540 extern grpc_empty_slice_type grpc_empty_slice_import; 541 #define grpc_empty_slice grpc_empty_slice_import 542 typedef uint32_t(*grpc_slice_default_hash_impl_type)(grpc_slice s); 543 extern grpc_slice_default_hash_impl_type grpc_slice_default_hash_impl_import; 544 #define grpc_slice_default_hash_impl grpc_slice_default_hash_impl_import 545 typedef int(*grpc_slice_default_eq_impl_type)(grpc_slice a, grpc_slice b); 546 extern grpc_slice_default_eq_impl_type grpc_slice_default_eq_impl_import; 547 #define grpc_slice_default_eq_impl grpc_slice_default_eq_impl_import 548 typedef int(*grpc_slice_eq_type)(grpc_slice a, grpc_slice b); 549 extern grpc_slice_eq_type grpc_slice_eq_import; 550 #define grpc_slice_eq grpc_slice_eq_import 551 typedef int(*grpc_slice_cmp_type)(grpc_slice a, grpc_slice b); 552 extern grpc_slice_cmp_type grpc_slice_cmp_import; 553 #define grpc_slice_cmp grpc_slice_cmp_import 554 typedef int(*grpc_slice_str_cmp_type)(grpc_slice a, const char* b); 555 extern grpc_slice_str_cmp_type grpc_slice_str_cmp_import; 556 #define grpc_slice_str_cmp grpc_slice_str_cmp_import 557 typedef int(*grpc_slice_buf_start_eq_type)(grpc_slice a, const void* b, size_t blen); 558 extern grpc_slice_buf_start_eq_type grpc_slice_buf_start_eq_import; 559 #define grpc_slice_buf_start_eq grpc_slice_buf_start_eq_import 560 typedef int(*grpc_slice_rchr_type)(grpc_slice s, char c); 561 extern grpc_slice_rchr_type grpc_slice_rchr_import; 562 #define grpc_slice_rchr grpc_slice_rchr_import 563 typedef int(*grpc_slice_chr_type)(grpc_slice s, char c); 564 extern grpc_slice_chr_type grpc_slice_chr_import; 565 #define grpc_slice_chr grpc_slice_chr_import 566 typedef int(*grpc_slice_slice_type)(grpc_slice haystack, grpc_slice needle); 567 extern grpc_slice_slice_type grpc_slice_slice_import; 568 #define grpc_slice_slice grpc_slice_slice_import 569 typedef uint32_t(*grpc_slice_hash_type)(grpc_slice s); 570 extern grpc_slice_hash_type grpc_slice_hash_import; 571 #define grpc_slice_hash grpc_slice_hash_import 572 typedef int(*grpc_slice_is_equivalent_type)(grpc_slice a, grpc_slice b); 573 extern grpc_slice_is_equivalent_type grpc_slice_is_equivalent_import; 574 #define grpc_slice_is_equivalent grpc_slice_is_equivalent_import 575 typedef grpc_slice(*grpc_slice_dup_type)(grpc_slice a); 576 extern grpc_slice_dup_type grpc_slice_dup_import; 577 #define grpc_slice_dup grpc_slice_dup_import 578 typedef char*(*grpc_slice_to_c_string_type)(grpc_slice s); 579 extern grpc_slice_to_c_string_type grpc_slice_to_c_string_import; 580 #define grpc_slice_to_c_string grpc_slice_to_c_string_import 581 typedef void(*grpc_slice_buffer_init_type)(grpc_slice_buffer* sb); 582 extern grpc_slice_buffer_init_type grpc_slice_buffer_init_import; 583 #define grpc_slice_buffer_init grpc_slice_buffer_init_import 584 typedef void(*grpc_slice_buffer_destroy_type)(grpc_slice_buffer* sb); 585 extern grpc_slice_buffer_destroy_type grpc_slice_buffer_destroy_import; 586 #define grpc_slice_buffer_destroy grpc_slice_buffer_destroy_import 587 typedef void(*grpc_slice_buffer_add_type)(grpc_slice_buffer* sb, grpc_slice slice); 588 extern grpc_slice_buffer_add_type grpc_slice_buffer_add_import; 589 #define grpc_slice_buffer_add grpc_slice_buffer_add_import 590 typedef size_t(*grpc_slice_buffer_add_indexed_type)(grpc_slice_buffer* sb, grpc_slice slice); 591 extern grpc_slice_buffer_add_indexed_type grpc_slice_buffer_add_indexed_import; 592 #define grpc_slice_buffer_add_indexed grpc_slice_buffer_add_indexed_import 593 typedef void(*grpc_slice_buffer_addn_type)(grpc_slice_buffer* sb, grpc_slice* slices, size_t n); 594 extern grpc_slice_buffer_addn_type grpc_slice_buffer_addn_import; 595 #define grpc_slice_buffer_addn grpc_slice_buffer_addn_import 596 typedef uint8_t*(*grpc_slice_buffer_tiny_add_type)(grpc_slice_buffer* sb, size_t len); 597 extern grpc_slice_buffer_tiny_add_type grpc_slice_buffer_tiny_add_import; 598 #define grpc_slice_buffer_tiny_add grpc_slice_buffer_tiny_add_import 599 typedef void(*grpc_slice_buffer_pop_type)(grpc_slice_buffer* sb); 600 extern grpc_slice_buffer_pop_type grpc_slice_buffer_pop_import; 601 #define grpc_slice_buffer_pop grpc_slice_buffer_pop_import 602 typedef void(*grpc_slice_buffer_reset_and_unref_type)(grpc_slice_buffer* sb); 603 extern grpc_slice_buffer_reset_and_unref_type grpc_slice_buffer_reset_and_unref_import; 604 #define grpc_slice_buffer_reset_and_unref grpc_slice_buffer_reset_and_unref_import 605 typedef void(*grpc_slice_buffer_swap_type)(grpc_slice_buffer* a, grpc_slice_buffer* b); 606 extern grpc_slice_buffer_swap_type grpc_slice_buffer_swap_import; 607 #define grpc_slice_buffer_swap grpc_slice_buffer_swap_import 608 typedef void(*grpc_slice_buffer_move_into_type)(grpc_slice_buffer* src, grpc_slice_buffer* dst); 609 extern grpc_slice_buffer_move_into_type grpc_slice_buffer_move_into_import; 610 #define grpc_slice_buffer_move_into grpc_slice_buffer_move_into_import 611 typedef void(*grpc_slice_buffer_trim_end_type)(grpc_slice_buffer* src, size_t n, grpc_slice_buffer* garbage); 612 extern grpc_slice_buffer_trim_end_type grpc_slice_buffer_trim_end_import; 613 #define grpc_slice_buffer_trim_end grpc_slice_buffer_trim_end_import 614 typedef void(*grpc_slice_buffer_move_first_type)(grpc_slice_buffer* src, size_t n, grpc_slice_buffer* dst); 615 extern grpc_slice_buffer_move_first_type grpc_slice_buffer_move_first_import; 616 #define grpc_slice_buffer_move_first grpc_slice_buffer_move_first_import 617 typedef void(*grpc_slice_buffer_move_first_no_ref_type)(grpc_slice_buffer* src, size_t n, grpc_slice_buffer* dst); 618 extern grpc_slice_buffer_move_first_no_ref_type grpc_slice_buffer_move_first_no_ref_import; 619 #define grpc_slice_buffer_move_first_no_ref grpc_slice_buffer_move_first_no_ref_import 620 typedef void(*grpc_slice_buffer_move_first_into_buffer_type)(grpc_slice_buffer* src, size_t n, void* dst); 621 extern grpc_slice_buffer_move_first_into_buffer_type grpc_slice_buffer_move_first_into_buffer_import; 622 #define grpc_slice_buffer_move_first_into_buffer grpc_slice_buffer_move_first_into_buffer_import 623 typedef grpc_slice(*grpc_slice_buffer_take_first_type)(grpc_slice_buffer* src); 624 extern grpc_slice_buffer_take_first_type grpc_slice_buffer_take_first_import; 625 #define grpc_slice_buffer_take_first grpc_slice_buffer_take_first_import 626 typedef void(*grpc_slice_buffer_undo_take_first_type)(grpc_slice_buffer* src, grpc_slice slice); 627 extern grpc_slice_buffer_undo_take_first_type grpc_slice_buffer_undo_take_first_import; 628 #define grpc_slice_buffer_undo_take_first grpc_slice_buffer_undo_take_first_import 629 typedef void*(*gpr_malloc_type)(size_t size); 630 extern gpr_malloc_type gpr_malloc_import; 631 #define gpr_malloc gpr_malloc_import 632 typedef void*(*gpr_zalloc_type)(size_t size); 633 extern gpr_zalloc_type gpr_zalloc_import; 634 #define gpr_zalloc gpr_zalloc_import 635 typedef void(*gpr_free_type)(void* ptr); 636 extern gpr_free_type gpr_free_import; 637 #define gpr_free gpr_free_import 638 typedef void*(*gpr_realloc_type)(void* p, size_t size); 639 extern gpr_realloc_type gpr_realloc_import; 640 #define gpr_realloc gpr_realloc_import 641 typedef void*(*gpr_malloc_aligned_type)(size_t size, size_t alignment); 642 extern gpr_malloc_aligned_type gpr_malloc_aligned_import; 643 #define gpr_malloc_aligned gpr_malloc_aligned_import 644 typedef void(*gpr_free_aligned_type)(void* ptr); 645 extern gpr_free_aligned_type gpr_free_aligned_import; 646 #define gpr_free_aligned gpr_free_aligned_import 647 typedef void(*gpr_set_allocation_functions_type)(gpr_allocation_functions functions); 648 extern gpr_set_allocation_functions_type gpr_set_allocation_functions_import; 649 #define gpr_set_allocation_functions gpr_set_allocation_functions_import 650 typedef gpr_allocation_functions(*gpr_get_allocation_functions_type)(void); 651 extern gpr_get_allocation_functions_type gpr_get_allocation_functions_import; 652 #define gpr_get_allocation_functions gpr_get_allocation_functions_import 653 typedef unsigned(*gpr_cpu_num_cores_type)(void); 654 extern gpr_cpu_num_cores_type gpr_cpu_num_cores_import; 655 #define gpr_cpu_num_cores gpr_cpu_num_cores_import 656 typedef unsigned(*gpr_cpu_current_cpu_type)(void); 657 extern gpr_cpu_current_cpu_type gpr_cpu_current_cpu_import; 658 #define gpr_cpu_current_cpu gpr_cpu_current_cpu_import 659 typedef char*(*gpr_format_message_type)(int messageid); 660 extern gpr_format_message_type gpr_format_message_import; 661 #define gpr_format_message gpr_format_message_import 662 typedef char*(*gpr_strdup_type)(const char* src); 663 extern gpr_strdup_type gpr_strdup_import; 664 #define gpr_strdup gpr_strdup_import 665 typedef int(*gpr_asprintf_type)(char** strp, const char* format, ...) GPR_PRINT_FORMAT_CHECK(2, 3); 666 extern gpr_asprintf_type gpr_asprintf_import; 667 #define gpr_asprintf gpr_asprintf_import 668 typedef void(*gpr_mu_init_type)(gpr_mu* mu); 669 extern gpr_mu_init_type gpr_mu_init_import; 670 #define gpr_mu_init gpr_mu_init_import 671 typedef void(*gpr_mu_destroy_type)(gpr_mu* mu); 672 extern gpr_mu_destroy_type gpr_mu_destroy_import; 673 #define gpr_mu_destroy gpr_mu_destroy_import 674 typedef void(*gpr_mu_lock_type)(gpr_mu* mu); 675 extern gpr_mu_lock_type gpr_mu_lock_import; 676 #define gpr_mu_lock gpr_mu_lock_import 677 typedef void(*gpr_mu_unlock_type)(gpr_mu* mu); 678 extern gpr_mu_unlock_type gpr_mu_unlock_import; 679 #define gpr_mu_unlock gpr_mu_unlock_import 680 typedef int(*gpr_mu_trylock_type)(gpr_mu* mu); 681 extern gpr_mu_trylock_type gpr_mu_trylock_import; 682 #define gpr_mu_trylock gpr_mu_trylock_import 683 typedef void(*gpr_cv_init_type)(gpr_cv* cv); 684 extern gpr_cv_init_type gpr_cv_init_import; 685 #define gpr_cv_init gpr_cv_init_import 686 typedef void(*gpr_cv_destroy_type)(gpr_cv* cv); 687 extern gpr_cv_destroy_type gpr_cv_destroy_import; 688 #define gpr_cv_destroy gpr_cv_destroy_import 689 typedef int(*gpr_cv_wait_type)(gpr_cv* cv, gpr_mu* mu, gpr_timespec abs_deadline); 690 extern gpr_cv_wait_type gpr_cv_wait_import; 691 #define gpr_cv_wait gpr_cv_wait_import 692 typedef void(*gpr_cv_signal_type)(gpr_cv* cv); 693 extern gpr_cv_signal_type gpr_cv_signal_import; 694 #define gpr_cv_signal gpr_cv_signal_import 695 typedef void(*gpr_cv_broadcast_type)(gpr_cv* cv); 696 extern gpr_cv_broadcast_type gpr_cv_broadcast_import; 697 #define gpr_cv_broadcast gpr_cv_broadcast_import 698 typedef void(*gpr_once_init_type)(gpr_once* once, void (*init_routine)(void)); 699 extern gpr_once_init_type gpr_once_init_import; 700 #define gpr_once_init gpr_once_init_import 701 typedef void(*gpr_event_init_type)(gpr_event* ev); 702 extern gpr_event_init_type gpr_event_init_import; 703 #define gpr_event_init gpr_event_init_import 704 typedef void(*gpr_event_set_type)(gpr_event* ev, void* value); 705 extern gpr_event_set_type gpr_event_set_import; 706 #define gpr_event_set gpr_event_set_import 707 typedef void*(*gpr_event_get_type)(gpr_event* ev); 708 extern gpr_event_get_type gpr_event_get_import; 709 #define gpr_event_get gpr_event_get_import 710 typedef void*(*gpr_event_wait_type)(gpr_event* ev, gpr_timespec abs_deadline); 711 extern gpr_event_wait_type gpr_event_wait_import; 712 #define gpr_event_wait gpr_event_wait_import 713 typedef void(*gpr_ref_init_type)(gpr_refcount* r, int n); 714 extern gpr_ref_init_type gpr_ref_init_import; 715 #define gpr_ref_init gpr_ref_init_import 716 typedef void(*gpr_ref_type)(gpr_refcount* r); 717 extern gpr_ref_type gpr_ref_import; 718 #define gpr_ref gpr_ref_import 719 typedef void(*gpr_ref_non_zero_type)(gpr_refcount* r); 720 extern gpr_ref_non_zero_type gpr_ref_non_zero_import; 721 #define gpr_ref_non_zero gpr_ref_non_zero_import 722 typedef void(*gpr_refn_type)(gpr_refcount* r, int n); 723 extern gpr_refn_type gpr_refn_import; 724 #define gpr_refn gpr_refn_import 725 typedef int(*gpr_unref_type)(gpr_refcount* r); 726 extern gpr_unref_type gpr_unref_import; 727 #define gpr_unref gpr_unref_import 728 typedef int(*gpr_ref_is_unique_type)(gpr_refcount* r); 729 extern gpr_ref_is_unique_type gpr_ref_is_unique_import; 730 #define gpr_ref_is_unique gpr_ref_is_unique_import 731 typedef void(*gpr_stats_init_type)(gpr_stats_counter* c, intptr_t n); 732 extern gpr_stats_init_type gpr_stats_init_import; 733 #define gpr_stats_init gpr_stats_init_import 734 typedef void(*gpr_stats_inc_type)(gpr_stats_counter* c, intptr_t inc); 735 extern gpr_stats_inc_type gpr_stats_inc_import; 736 #define gpr_stats_inc gpr_stats_inc_import 737 typedef intptr_t(*gpr_stats_read_type)(const gpr_stats_counter* c); 738 extern gpr_stats_read_type gpr_stats_read_import; 739 #define gpr_stats_read gpr_stats_read_import 740 typedef gpr_thd_id(*gpr_thd_currentid_type)(void); 741 extern gpr_thd_currentid_type gpr_thd_currentid_import; 742 #define gpr_thd_currentid gpr_thd_currentid_import 743 typedef gpr_timespec(*gpr_time_0_type)(gpr_clock_type type); 744 extern gpr_time_0_type gpr_time_0_import; 745 #define gpr_time_0 gpr_time_0_import 746 typedef gpr_timespec(*gpr_inf_future_type)(gpr_clock_type type); 747 extern gpr_inf_future_type gpr_inf_future_import; 748 #define gpr_inf_future gpr_inf_future_import 749 typedef gpr_timespec(*gpr_inf_past_type)(gpr_clock_type type); 750 extern gpr_inf_past_type gpr_inf_past_import; 751 #define gpr_inf_past gpr_inf_past_import 752 typedef void(*gpr_time_init_type)(void); 753 extern gpr_time_init_type gpr_time_init_import; 754 #define gpr_time_init gpr_time_init_import 755 typedef gpr_timespec(*gpr_now_type)(gpr_clock_type clock); 756 extern gpr_now_type gpr_now_import; 757 #define gpr_now gpr_now_import 758 typedef gpr_timespec(*gpr_convert_clock_type_type)(gpr_timespec t, gpr_clock_type target_clock); 759 extern gpr_convert_clock_type_type gpr_convert_clock_type_import; 760 #define gpr_convert_clock_type gpr_convert_clock_type_import 761 typedef int(*gpr_time_cmp_type)(gpr_timespec a, gpr_timespec b); 762 extern gpr_time_cmp_type gpr_time_cmp_import; 763 #define gpr_time_cmp gpr_time_cmp_import 764 typedef gpr_timespec(*gpr_time_max_type)(gpr_timespec a, gpr_timespec b); 765 extern gpr_time_max_type gpr_time_max_import; 766 #define gpr_time_max gpr_time_max_import 767 typedef gpr_timespec(*gpr_time_min_type)(gpr_timespec a, gpr_timespec b); 768 extern gpr_time_min_type gpr_time_min_import; 769 #define gpr_time_min gpr_time_min_import 770 typedef gpr_timespec(*gpr_time_add_type)(gpr_timespec a, gpr_timespec b); 771 extern gpr_time_add_type gpr_time_add_import; 772 #define gpr_time_add gpr_time_add_import 773 typedef gpr_timespec(*gpr_time_sub_type)(gpr_timespec a, gpr_timespec b); 774 extern gpr_time_sub_type gpr_time_sub_import; 775 #define gpr_time_sub gpr_time_sub_import 776 typedef gpr_timespec(*gpr_time_from_micros_type)(int64_t x, gpr_clock_type clock_type); 777 extern gpr_time_from_micros_type gpr_time_from_micros_import; 778 #define gpr_time_from_micros gpr_time_from_micros_import 779 typedef gpr_timespec(*gpr_time_from_nanos_type)(int64_t x, gpr_clock_type clock_type); 780 extern gpr_time_from_nanos_type gpr_time_from_nanos_import; 781 #define gpr_time_from_nanos gpr_time_from_nanos_import 782 typedef gpr_timespec(*gpr_time_from_millis_type)(int64_t x, gpr_clock_type clock_type); 783 extern gpr_time_from_millis_type gpr_time_from_millis_import; 784 #define gpr_time_from_millis gpr_time_from_millis_import 785 typedef gpr_timespec(*gpr_time_from_seconds_type)(int64_t x, gpr_clock_type clock_type); 786 extern gpr_time_from_seconds_type gpr_time_from_seconds_import; 787 #define gpr_time_from_seconds gpr_time_from_seconds_import 788 typedef gpr_timespec(*gpr_time_from_minutes_type)(int64_t x, gpr_clock_type clock_type); 789 extern gpr_time_from_minutes_type gpr_time_from_minutes_import; 790 #define gpr_time_from_minutes gpr_time_from_minutes_import 791 typedef gpr_timespec(*gpr_time_from_hours_type)(int64_t x, gpr_clock_type clock_type); 792 extern gpr_time_from_hours_type gpr_time_from_hours_import; 793 #define gpr_time_from_hours gpr_time_from_hours_import 794 typedef int32_t(*gpr_time_to_millis_type)(gpr_timespec timespec); 795 extern gpr_time_to_millis_type gpr_time_to_millis_import; 796 #define gpr_time_to_millis gpr_time_to_millis_import 797 typedef int(*gpr_time_similar_type)(gpr_timespec a, gpr_timespec b, gpr_timespec threshold); 798 extern gpr_time_similar_type gpr_time_similar_import; 799 #define gpr_time_similar gpr_time_similar_import 800 typedef void(*gpr_sleep_until_type)(gpr_timespec until); 801 extern gpr_sleep_until_type gpr_sleep_until_import; 802 #define gpr_sleep_until gpr_sleep_until_import 803 typedef double(*gpr_timespec_to_micros_type)(gpr_timespec t); 804 extern gpr_timespec_to_micros_type gpr_timespec_to_micros_import; 805 #define gpr_timespec_to_micros gpr_timespec_to_micros_import 806 807 void grpc_rb_load_imports(HMODULE library); 808 809 #endif /* GPR_WINDOWS */ 810 811 #endif 812