• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2021 The Chromium Embedded Framework Authors. All rights
2 // reserved. Use of this source code is governed by a BSD-style license that
3 // can be found in the LICENSE file.
4 //
5 // ---------------------------------------------------------------------------
6 //
7 // This file was generated by the CEF translator tool. If making changes by
8 // hand only do so within the body of existing method and function
9 // implementations. See the translator.README.txt file in the tools directory
10 // for more information.
11 //
12 // $hash=9fbe1de9cf7f32c551c535e190d4c82b4947765d$
13 //
14 
15 #include <dlfcn.h>
16 #include <stdio.h>
17 
18 #include "include/capi/cef_app_capi.h"
19 #include "include/capi/cef_browser_capi.h"
20 #include "include/capi/cef_command_line_capi.h"
21 #include "include/capi/cef_cookie_capi.h"
22 #include "include/capi/cef_crash_util_capi.h"
23 #include "include/capi/cef_drag_data_capi.h"
24 #include "include/capi/cef_file_util_capi.h"
25 #include "include/capi/cef_image_capi.h"
26 #include "include/capi/cef_media_router_capi.h"
27 #include "include/capi/cef_menu_model_capi.h"
28 #include "include/capi/cef_origin_whitelist_capi.h"
29 #include "include/capi/cef_parser_capi.h"
30 #include "include/capi/cef_path_util_capi.h"
31 #include "include/capi/cef_print_settings_capi.h"
32 #include "include/capi/cef_process_message_capi.h"
33 #include "include/capi/cef_process_util_capi.h"
34 #include "include/capi/cef_request_capi.h"
35 #include "include/capi/cef_request_context_capi.h"
36 #include "include/capi/cef_resource_bundle_capi.h"
37 #include "include/capi/cef_response_capi.h"
38 #include "include/capi/cef_scheme_capi.h"
39 #include "include/capi/cef_server_capi.h"
40 #include "include/capi/cef_ssl_info_capi.h"
41 #include "include/capi/cef_stream_capi.h"
42 #include "include/capi/cef_task_capi.h"
43 #include "include/capi/cef_thread_capi.h"
44 #include "include/capi/cef_trace_capi.h"
45 #include "include/capi/cef_urlrequest_capi.h"
46 #include "include/capi/cef_v8_capi.h"
47 #include "include/capi/cef_values_capi.h"
48 #include "include/capi/cef_waitable_event_capi.h"
49 #include "include/capi/cef_web_plugin_capi.h"
50 #include "include/capi/cef_xml_reader_capi.h"
51 #include "include/capi/cef_zip_reader_capi.h"
52 #include "include/capi/test/cef_test_helpers_capi.h"
53 #include "include/capi/test/cef_translator_test_capi.h"
54 #include "include/capi/views/cef_browser_view_capi.h"
55 #include "include/capi/views/cef_display_capi.h"
56 #include "include/capi/views/cef_label_button_capi.h"
57 #include "include/capi/views/cef_menu_button_capi.h"
58 #include "include/capi/views/cef_panel_capi.h"
59 #include "include/capi/views/cef_scroll_view_capi.h"
60 #include "include/capi/views/cef_textfield_capi.h"
61 #include "include/capi/views/cef_window_capi.h"
62 #include "include/cef_api_hash.h"
63 #include "include/cef_version.h"
64 #include "include/internal/cef_logging_internal.h"
65 #include "include/internal/cef_string_list.h"
66 #include "include/internal/cef_string_map.h"
67 #include "include/internal/cef_string_multimap.h"
68 #include "include/internal/cef_string_types.h"
69 #include "include/internal/cef_thread_internal.h"
70 #include "include/internal/cef_time.h"
71 #include "include/internal/cef_trace_event_internal.h"
72 #include "include/wrapper/cef_library_loader.h"
73 
74 // GLOBAL WRAPPER FUNCTIONS - Do not edit by hand.
75 
76 namespace {
77 
78 void* g_libcef_handle = nullptr;
79 
libcef_get_ptr(const char * path,const char * name)80 void* libcef_get_ptr(const char* path, const char* name) {
81   void* ptr = dlsym(g_libcef_handle, name);
82   if (!ptr) {
83     fprintf(stderr, "dlsym %s: %s\n", path, dlerror());
84   }
85   return ptr;
86 }
87 
88 typedef int (*cef_execute_process_ptr)(const struct _cef_main_args_t*,
89                                        struct _cef_app_t*,
90                                        void*);
91 typedef int (*cef_initialize_ptr)(const struct _cef_main_args_t*,
92                                   const struct _cef_settings_t*,
93                                   struct _cef_app_t*,
94                                   void*);
95 typedef void (*cef_shutdown_ptr)();
96 typedef void (*cef_do_message_loop_work_ptr)();
97 typedef void (*cef_run_message_loop_ptr)();
98 typedef void (*cef_quit_message_loop_ptr)();
99 typedef void (*cef_set_osmodal_loop_ptr)(int);
100 typedef void (*cef_enable_highdpi_support_ptr)();
101 typedef int (*cef_crash_reporting_enabled_ptr)();
102 typedef void (*cef_set_crash_key_value_ptr)(const cef_string_t*,
103                                             const cef_string_t*);
104 typedef int (*cef_create_directory_ptr)(const cef_string_t*);
105 typedef int (*cef_get_temp_directory_ptr)(cef_string_t*);
106 typedef int (*cef_create_new_temp_directory_ptr)(const cef_string_t*,
107                                                  cef_string_t*);
108 typedef int (*cef_create_temp_directory_in_directory_ptr)(const cef_string_t*,
109                                                           const cef_string_t*,
110                                                           cef_string_t*);
111 typedef int (*cef_directory_exists_ptr)(const cef_string_t*);
112 typedef int (*cef_delete_file_ptr)(const cef_string_t*, int);
113 typedef int (*cef_zip_directory_ptr)(const cef_string_t*,
114                                      const cef_string_t*,
115                                      int);
116 typedef void (*cef_load_crlsets_file_ptr)(const cef_string_t*);
117 typedef int (*cef_add_cross_origin_whitelist_entry_ptr)(const cef_string_t*,
118                                                         const cef_string_t*,
119                                                         const cef_string_t*,
120                                                         int);
121 typedef int (*cef_remove_cross_origin_whitelist_entry_ptr)(const cef_string_t*,
122                                                            const cef_string_t*,
123                                                            const cef_string_t*,
124                                                            int);
125 typedef int (*cef_clear_cross_origin_whitelist_ptr)();
126 typedef int (*cef_parse_url_ptr)(const cef_string_t*, struct _cef_urlparts_t*);
127 typedef int (*cef_create_url_ptr)(const struct _cef_urlparts_t*, cef_string_t*);
128 typedef cef_string_userfree_t (*cef_format_url_for_security_display_ptr)(
129     const cef_string_t*);
130 typedef cef_string_userfree_t (*cef_get_mime_type_ptr)(const cef_string_t*);
131 typedef void (*cef_get_extensions_for_mime_type_ptr)(const cef_string_t*,
132                                                      cef_string_list_t);
133 typedef cef_string_userfree_t (*cef_base64encode_ptr)(const void*, size_t);
134 typedef struct _cef_binary_value_t* (*cef_base64decode_ptr)(
135     const cef_string_t*);
136 typedef cef_string_userfree_t (*cef_uriencode_ptr)(const cef_string_t*, int);
137 typedef cef_string_userfree_t (*cef_uridecode_ptr)(const cef_string_t*,
138                                                    int,
139                                                    cef_uri_unescape_rule_t);
140 typedef struct _cef_value_t* (*cef_parse_json_ptr)(const cef_string_t*,
141                                                    cef_json_parser_options_t);
142 typedef struct _cef_value_t* (
143     *cef_parse_json_buffer_ptr)(const void*, size_t, cef_json_parser_options_t);
144 typedef struct _cef_value_t* (*cef_parse_jsonand_return_error_ptr)(
145     const cef_string_t*,
146     cef_json_parser_options_t,
147     cef_string_t*);
148 typedef cef_string_userfree_t (*cef_write_json_ptr)(struct _cef_value_t*,
149                                                     cef_json_writer_options_t);
150 typedef int (*cef_get_path_ptr)(cef_path_key_t, cef_string_t*);
151 typedef int (*cef_launch_process_ptr)(struct _cef_command_line_t*);
152 typedef int (*cef_register_scheme_handler_factory_ptr)(
153     const cef_string_t*,
154     const cef_string_t*,
155     struct _cef_scheme_handler_factory_t*);
156 typedef int (*cef_clear_scheme_handler_factories_ptr)();
157 typedef int (*cef_is_cert_status_error_ptr)(cef_cert_status_t);
158 typedef int (*cef_currently_on_ptr)(cef_thread_id_t);
159 typedef int (*cef_post_task_ptr)(cef_thread_id_t, struct _cef_task_t*);
160 typedef int (*cef_post_delayed_task_ptr)(cef_thread_id_t,
161                                          struct _cef_task_t*,
162                                          int64);
163 typedef int (*cef_begin_tracing_ptr)(const cef_string_t*,
164                                      struct _cef_completion_callback_t*);
165 typedef int (*cef_end_tracing_ptr)(const cef_string_t*,
166                                    struct _cef_end_tracing_callback_t*);
167 typedef int64 (*cef_now_from_system_trace_time_ptr)();
168 typedef int (*cef_register_extension_ptr)(const cef_string_t*,
169                                           const cef_string_t*,
170                                           struct _cef_v8handler_t*);
171 typedef void (*cef_visit_web_plugin_info_ptr)(
172     struct _cef_web_plugin_info_visitor_t*);
173 typedef void (*cef_refresh_web_plugins_ptr)();
174 typedef void (*cef_unregister_internal_web_plugin_ptr)(const cef_string_t*);
175 typedef void (*cef_register_web_plugin_crash_ptr)(const cef_string_t*);
176 typedef void (*cef_is_web_plugin_unstable_ptr)(
177     const cef_string_t*,
178     struct _cef_web_plugin_unstable_callback_t*);
179 typedef void (*cef_register_widevine_cdm_ptr)(
180     const cef_string_t*,
181     struct _cef_register_cdm_callback_t*);
182 typedef void (*cef_execute_java_script_with_user_gesture_for_tests_ptr)(
183     struct _cef_frame_t*,
184     const cef_string_t*);
185 typedef int (*cef_browser_host_create_browser_ptr)(
186     const struct _cef_window_info_t*,
187     struct _cef_client_t*,
188     const cef_string_t*,
189     const struct _cef_browser_settings_t*,
190     struct _cef_dictionary_value_t*,
191     struct _cef_request_context_t*);
192 typedef struct _cef_browser_t* (*cef_browser_host_create_browser_sync_ptr)(
193     const struct _cef_window_info_t*,
194     struct _cef_client_t*,
195     const cef_string_t*,
196     const struct _cef_browser_settings_t*,
197     struct _cef_dictionary_value_t*,
198     struct _cef_request_context_t*);
199 typedef struct _cef_command_line_t* (*cef_command_line_create_ptr)();
200 typedef struct _cef_command_line_t* (*cef_command_line_get_global_ptr)();
201 typedef struct _cef_cookie_manager_t* (
202     *cef_cookie_manager_get_global_manager_ptr)(
203     struct _cef_completion_callback_t*);
204 typedef struct _cef_drag_data_t* (*cef_drag_data_create_ptr)();
205 typedef struct _cef_image_t* (*cef_image_create_ptr)();
206 typedef struct _cef_media_router_t* (*cef_media_router_get_global_ptr)(
207     struct _cef_completion_callback_t*);
208 typedef struct _cef_menu_model_t* (*cef_menu_model_create_ptr)(
209     struct _cef_menu_model_delegate_t*);
210 typedef struct _cef_print_settings_t* (*cef_print_settings_create_ptr)();
211 typedef struct _cef_process_message_t* (*cef_process_message_create_ptr)(
212     const cef_string_t*);
213 typedef struct _cef_request_t* (*cef_request_create_ptr)();
214 typedef struct _cef_post_data_t* (*cef_post_data_create_ptr)();
215 typedef struct _cef_post_data_element_t* (*cef_post_data_element_create_ptr)();
216 typedef struct _cef_request_context_t* (
217     *cef_request_context_get_global_context_ptr)();
218 typedef struct _cef_request_context_t* (
219     *cef_request_context_create_context_ptr)(
220     const struct _cef_request_context_settings_t*,
221     struct _cef_request_context_handler_t*);
222 typedef struct _cef_request_context_t* (*cef_create_context_shared_ptr)(
223     struct _cef_request_context_t*,
224     struct _cef_request_context_handler_t*);
225 typedef struct _cef_resource_bundle_t* (*cef_resource_bundle_get_global_ptr)();
226 typedef struct _cef_response_t* (*cef_response_create_ptr)();
227 typedef void (*cef_server_create_ptr)(const cef_string_t*,
228                                       uint16,
229                                       int,
230                                       struct _cef_server_handler_t*);
231 typedef struct _cef_stream_reader_t* (*cef_stream_reader_create_for_file_ptr)(
232     const cef_string_t*);
233 typedef struct _cef_stream_reader_t* (
234     *cef_stream_reader_create_for_data_ptr)(void*, size_t);
235 typedef struct _cef_stream_reader_t* (
236     *cef_stream_reader_create_for_handler_ptr)(struct _cef_read_handler_t*);
237 typedef struct _cef_stream_writer_t* (*cef_stream_writer_create_for_file_ptr)(
238     const cef_string_t*);
239 typedef struct _cef_stream_writer_t* (
240     *cef_stream_writer_create_for_handler_ptr)(struct _cef_write_handler_t*);
241 typedef struct _cef_task_runner_t* (
242     *cef_task_runner_get_for_current_thread_ptr)();
243 typedef struct _cef_task_runner_t* (*cef_task_runner_get_for_thread_ptr)(
244     cef_thread_id_t);
245 typedef struct _cef_thread_t* (*cef_thread_create_ptr)(const cef_string_t*,
246                                                        cef_thread_priority_t,
247                                                        cef_message_loop_type_t,
248                                                        int,
249                                                        cef_com_init_mode_t);
250 typedef struct _cef_urlrequest_t* (*cef_urlrequest_create_ptr)(
251     struct _cef_request_t*,
252     struct _cef_urlrequest_client_t*,
253     struct _cef_request_context_t*);
254 typedef struct _cef_v8context_t* (*cef_v8context_get_current_context_ptr)();
255 typedef struct _cef_v8context_t* (*cef_v8context_get_entered_context_ptr)();
256 typedef int (*cef_v8context_in_context_ptr)();
257 typedef struct _cef_v8value_t* (*cef_v8value_create_undefined_ptr)();
258 typedef struct _cef_v8value_t* (*cef_v8value_create_null_ptr)();
259 typedef struct _cef_v8value_t* (*cef_v8value_create_bool_ptr)(int);
260 typedef struct _cef_v8value_t* (*cef_v8value_create_int_ptr)(int32);
261 typedef struct _cef_v8value_t* (*cef_v8value_create_uint_ptr)(uint32);
262 typedef struct _cef_v8value_t* (*cef_v8value_create_double_ptr)(double);
263 typedef struct _cef_v8value_t* (*cef_v8value_create_date_ptr)(
264     const cef_time_t*);
265 typedef struct _cef_v8value_t* (*cef_v8value_create_string_ptr)(
266     const cef_string_t*);
267 typedef struct _cef_v8value_t* (*cef_v8value_create_object_ptr)(
268     struct _cef_v8accessor_t*,
269     struct _cef_v8interceptor_t*);
270 typedef struct _cef_v8value_t* (*cef_v8value_create_array_ptr)(int);
271 typedef struct _cef_v8value_t* (*cef_v8value_create_array_buffer_ptr)(
272     void*,
273     size_t,
274     struct _cef_v8array_buffer_release_callback_t*);
275 typedef struct _cef_v8value_t* (*cef_v8value_create_function_ptr)(
276     const cef_string_t*,
277     struct _cef_v8handler_t*);
278 typedef struct _cef_v8stack_trace_t* (*cef_v8stack_trace_get_current_ptr)(int);
279 typedef struct _cef_value_t* (*cef_value_create_ptr)();
280 typedef struct _cef_binary_value_t* (*cef_binary_value_create_ptr)(const void*,
281                                                                    size_t);
282 typedef struct _cef_dictionary_value_t* (*cef_dictionary_value_create_ptr)();
283 typedef struct _cef_list_value_t* (*cef_list_value_create_ptr)();
284 typedef struct _cef_waitable_event_t* (*cef_waitable_event_create_ptr)(int,
285                                                                        int);
286 typedef struct _cef_xml_reader_t* (*cef_xml_reader_create_ptr)(
287     struct _cef_stream_reader_t*,
288     cef_xml_encoding_type_t,
289     const cef_string_t*);
290 typedef struct _cef_zip_reader_t* (*cef_zip_reader_create_ptr)(
291     struct _cef_stream_reader_t*);
292 typedef struct _cef_translator_test_t* (*cef_translator_test_create_ptr)();
293 typedef struct _cef_translator_test_ref_ptr_library_t* (
294     *cef_translator_test_ref_ptr_library_create_ptr)(int);
295 typedef struct _cef_translator_test_ref_ptr_library_child_t* (
296     *cef_translator_test_ref_ptr_library_child_create_ptr)(int, int);
297 typedef struct _cef_translator_test_ref_ptr_library_child_child_t* (
298     *cef_translator_test_ref_ptr_library_child_child_create_ptr)(int, int, int);
299 typedef struct _cef_translator_test_scoped_library_t* (
300     *cef_translator_test_scoped_library_create_ptr)(int);
301 typedef struct _cef_translator_test_scoped_library_child_t* (
302     *cef_translator_test_scoped_library_child_create_ptr)(int, int);
303 typedef struct _cef_translator_test_scoped_library_child_child_t* (
304     *cef_translator_test_scoped_library_child_child_create_ptr)(int, int, int);
305 typedef struct _cef_browser_view_t* (*cef_browser_view_create_ptr)(
306     struct _cef_client_t*,
307     const cef_string_t*,
308     const struct _cef_browser_settings_t*,
309     struct _cef_dictionary_value_t*,
310     struct _cef_request_context_t*,
311     struct _cef_browser_view_delegate_t*);
312 typedef struct _cef_browser_view_t* (*cef_browser_view_get_for_browser_ptr)(
313     struct _cef_browser_t*);
314 typedef struct _cef_display_t* (*cef_display_get_primary_ptr)();
315 typedef struct _cef_display_t* (
316     *cef_display_get_nearest_point_ptr)(const cef_point_t*, int);
317 typedef struct _cef_display_t* (
318     *cef_display_get_matching_bounds_ptr)(const cef_rect_t*, int);
319 typedef size_t (*cef_display_get_count_ptr)();
320 typedef void (*cef_display_get_alls_ptr)(size_t*, struct _cef_display_t**);
321 typedef struct _cef_label_button_t* (*cef_label_button_create_ptr)(
322     struct _cef_button_delegate_t*,
323     const cef_string_t*);
324 typedef struct _cef_menu_button_t* (*cef_menu_button_create_ptr)(
325     struct _cef_menu_button_delegate_t*,
326     const cef_string_t*);
327 typedef struct _cef_panel_t* (*cef_panel_create_ptr)(
328     struct _cef_panel_delegate_t*);
329 typedef struct _cef_scroll_view_t* (*cef_scroll_view_create_ptr)(
330     struct _cef_view_delegate_t*);
331 typedef struct _cef_textfield_t* (*cef_textfield_create_ptr)(
332     struct _cef_textfield_delegate_t*);
333 typedef struct _cef_window_t* (*cef_window_create_top_level_ptr)(
334     struct _cef_window_delegate_t*);
335 typedef const char* (*cef_api_hash_ptr)(int);
336 typedef int (*cef_version_info_ptr)(int);
337 typedef int (*cef_get_min_log_level_ptr)();
338 typedef int (*cef_get_vlog_level_ptr)(const char*, size_t);
339 typedef void (*cef_log_ptr)(const char*, int, int, const char*);
340 typedef cef_string_list_t (*cef_string_list_alloc_ptr)();
341 typedef size_t (*cef_string_list_size_ptr)(cef_string_list_t);
342 typedef int (*cef_string_list_value_ptr)(cef_string_list_t,
343                                          size_t,
344                                          cef_string_t*);
345 typedef void (*cef_string_list_append_ptr)(cef_string_list_t,
346                                            const cef_string_t*);
347 typedef void (*cef_string_list_clear_ptr)(cef_string_list_t);
348 typedef void (*cef_string_list_free_ptr)(cef_string_list_t);
349 typedef cef_string_list_t (*cef_string_list_copy_ptr)(cef_string_list_t);
350 typedef cef_string_map_t (*cef_string_map_alloc_ptr)();
351 typedef size_t (*cef_string_map_size_ptr)(cef_string_map_t);
352 typedef int (*cef_string_map_find_ptr)(cef_string_map_t,
353                                        const cef_string_t*,
354                                        cef_string_t*);
355 typedef int (*cef_string_map_key_ptr)(cef_string_map_t, size_t, cef_string_t*);
356 typedef int (*cef_string_map_value_ptr)(cef_string_map_t,
357                                         size_t,
358                                         cef_string_t*);
359 typedef int (*cef_string_map_append_ptr)(cef_string_map_t,
360                                          const cef_string_t*,
361                                          const cef_string_t*);
362 typedef void (*cef_string_map_clear_ptr)(cef_string_map_t);
363 typedef void (*cef_string_map_free_ptr)(cef_string_map_t);
364 typedef cef_string_multimap_t (*cef_string_multimap_alloc_ptr)();
365 typedef size_t (*cef_string_multimap_size_ptr)(cef_string_multimap_t);
366 typedef size_t (*cef_string_multimap_find_count_ptr)(cef_string_multimap_t,
367                                                      const cef_string_t*);
368 typedef int (*cef_string_multimap_enumerate_ptr)(cef_string_multimap_t,
369                                                  const cef_string_t*,
370                                                  size_t,
371                                                  cef_string_t*);
372 typedef int (*cef_string_multimap_key_ptr)(cef_string_multimap_t,
373                                            size_t,
374                                            cef_string_t*);
375 typedef int (*cef_string_multimap_value_ptr)(cef_string_multimap_t,
376                                              size_t,
377                                              cef_string_t*);
378 typedef int (*cef_string_multimap_append_ptr)(cef_string_multimap_t,
379                                               const cef_string_t*,
380                                               const cef_string_t*);
381 typedef void (*cef_string_multimap_clear_ptr)(cef_string_multimap_t);
382 typedef void (*cef_string_multimap_free_ptr)(cef_string_multimap_t);
383 typedef int (*cef_string_wide_set_ptr)(const wchar_t*,
384                                        size_t,
385                                        cef_string_wide_t*,
386                                        int);
387 typedef int (*cef_string_utf8_set_ptr)(const char*,
388                                        size_t,
389                                        cef_string_utf8_t*,
390                                        int);
391 typedef int (*cef_string_utf16_set_ptr)(const char16*,
392                                         size_t,
393                                         cef_string_utf16_t*,
394                                         int);
395 typedef void (*cef_string_wide_clear_ptr)(cef_string_wide_t*);
396 typedef void (*cef_string_utf8_clear_ptr)(cef_string_utf8_t*);
397 typedef void (*cef_string_utf16_clear_ptr)(cef_string_utf16_t*);
398 typedef int (*cef_string_wide_cmp_ptr)(const cef_string_wide_t*,
399                                        const cef_string_wide_t*);
400 typedef int (*cef_string_utf8_cmp_ptr)(const cef_string_utf8_t*,
401                                        const cef_string_utf8_t*);
402 typedef int (*cef_string_utf16_cmp_ptr)(const cef_string_utf16_t*,
403                                         const cef_string_utf16_t*);
404 typedef int (*cef_string_wide_to_utf8_ptr)(const wchar_t*,
405                                            size_t,
406                                            cef_string_utf8_t*);
407 typedef int (*cef_string_utf8_to_wide_ptr)(const char*,
408                                            size_t,
409                                            cef_string_wide_t*);
410 typedef int (*cef_string_wide_to_utf16_ptr)(const wchar_t*,
411                                             size_t,
412                                             cef_string_utf16_t*);
413 typedef int (*cef_string_utf16_to_wide_ptr)(const char16*,
414                                             size_t,
415                                             cef_string_wide_t*);
416 typedef int (*cef_string_utf8_to_utf16_ptr)(const char*,
417                                             size_t,
418                                             cef_string_utf16_t*);
419 typedef int (*cef_string_utf16_to_utf8_ptr)(const char16*,
420                                             size_t,
421                                             cef_string_utf8_t*);
422 typedef int (*cef_string_ascii_to_wide_ptr)(const char*,
423                                             size_t,
424                                             cef_string_wide_t*);
425 typedef int (*cef_string_ascii_to_utf16_ptr)(const char*,
426                                              size_t,
427                                              cef_string_utf16_t*);
428 typedef cef_string_userfree_wide_t (*cef_string_userfree_wide_alloc_ptr)();
429 typedef cef_string_userfree_utf8_t (*cef_string_userfree_utf8_alloc_ptr)();
430 typedef cef_string_userfree_utf16_t (*cef_string_userfree_utf16_alloc_ptr)();
431 typedef void (*cef_string_userfree_wide_free_ptr)(cef_string_userfree_wide_t);
432 typedef void (*cef_string_userfree_utf8_free_ptr)(cef_string_userfree_utf8_t);
433 typedef void (*cef_string_userfree_utf16_free_ptr)(cef_string_userfree_utf16_t);
434 typedef int (*cef_string_utf16_to_lower_ptr)(const char16*,
435                                              size_t,
436                                              cef_string_utf16_t*);
437 typedef int (*cef_string_utf16_to_upper_ptr)(const char16*,
438                                              size_t,
439                                              cef_string_utf16_t*);
440 typedef cef_platform_thread_id_t (*cef_get_current_platform_thread_id_ptr)();
441 typedef cef_platform_thread_handle_t (
442     *cef_get_current_platform_thread_handle_ptr)();
443 typedef int (*cef_time_to_timet_ptr)(const cef_time_t*, time_t*);
444 typedef int (*cef_time_from_timet_ptr)(time_t, cef_time_t*);
445 typedef int (*cef_time_to_doublet_ptr)(const cef_time_t*, double*);
446 typedef int (*cef_time_from_doublet_ptr)(double, cef_time_t*);
447 typedef int (*cef_time_now_ptr)(cef_time_t*);
448 typedef int (*cef_time_delta_ptr)(const cef_time_t*,
449                                   const cef_time_t*,
450                                   long long*);
451 typedef void (*cef_trace_event_instant_ptr)(const char*,
452                                             const char*,
453                                             const char*,
454                                             uint64,
455                                             const char*,
456                                             uint64,
457                                             int);
458 typedef void (*cef_trace_event_begin_ptr)(const char*,
459                                           const char*,
460                                           const char*,
461                                           uint64,
462                                           const char*,
463                                           uint64,
464                                           int);
465 typedef void (*cef_trace_event_end_ptr)(const char*,
466                                         const char*,
467                                         const char*,
468                                         uint64,
469                                         const char*,
470                                         uint64,
471                                         int);
472 typedef void (*cef_trace_counter_ptr)(const char*,
473                                       const char*,
474                                       const char*,
475                                       uint64,
476                                       const char*,
477                                       uint64,
478                                       int);
479 typedef void (*cef_trace_counter_id_ptr)(const char*,
480                                          const char*,
481                                          uint64,
482                                          const char*,
483                                          uint64,
484                                          const char*,
485                                          uint64,
486                                          int);
487 typedef void (*cef_trace_event_async_begin_ptr)(const char*,
488                                                 const char*,
489                                                 uint64,
490                                                 const char*,
491                                                 uint64,
492                                                 const char*,
493                                                 uint64,
494                                                 int);
495 typedef void (*cef_trace_event_async_step_into_ptr)(const char*,
496                                                     const char*,
497                                                     uint64,
498                                                     uint64,
499                                                     const char*,
500                                                     uint64,
501                                                     int);
502 typedef void (*cef_trace_event_async_step_past_ptr)(const char*,
503                                                     const char*,
504                                                     uint64,
505                                                     uint64,
506                                                     const char*,
507                                                     uint64,
508                                                     int);
509 typedef void (*cef_trace_event_async_end_ptr)(const char*,
510                                               const char*,
511                                               uint64,
512                                               const char*,
513                                               uint64,
514                                               const char*,
515                                               uint64,
516                                               int);
517 
518 struct libcef_pointers {
519   cef_execute_process_ptr cef_execute_process;
520   cef_initialize_ptr cef_initialize;
521   cef_shutdown_ptr cef_shutdown;
522   cef_do_message_loop_work_ptr cef_do_message_loop_work;
523   cef_run_message_loop_ptr cef_run_message_loop;
524   cef_quit_message_loop_ptr cef_quit_message_loop;
525   cef_set_osmodal_loop_ptr cef_set_osmodal_loop;
526   cef_enable_highdpi_support_ptr cef_enable_highdpi_support;
527   cef_crash_reporting_enabled_ptr cef_crash_reporting_enabled;
528   cef_set_crash_key_value_ptr cef_set_crash_key_value;
529   cef_create_directory_ptr cef_create_directory;
530   cef_get_temp_directory_ptr cef_get_temp_directory;
531   cef_create_new_temp_directory_ptr cef_create_new_temp_directory;
532   cef_create_temp_directory_in_directory_ptr
533       cef_create_temp_directory_in_directory;
534   cef_directory_exists_ptr cef_directory_exists;
535   cef_delete_file_ptr cef_delete_file;
536   cef_zip_directory_ptr cef_zip_directory;
537   cef_load_crlsets_file_ptr cef_load_crlsets_file;
538   cef_add_cross_origin_whitelist_entry_ptr cef_add_cross_origin_whitelist_entry;
539   cef_remove_cross_origin_whitelist_entry_ptr
540       cef_remove_cross_origin_whitelist_entry;
541   cef_clear_cross_origin_whitelist_ptr cef_clear_cross_origin_whitelist;
542   cef_parse_url_ptr cef_parse_url;
543   cef_create_url_ptr cef_create_url;
544   cef_format_url_for_security_display_ptr cef_format_url_for_security_display;
545   cef_get_mime_type_ptr cef_get_mime_type;
546   cef_get_extensions_for_mime_type_ptr cef_get_extensions_for_mime_type;
547   cef_base64encode_ptr cef_base64encode;
548   cef_base64decode_ptr cef_base64decode;
549   cef_uriencode_ptr cef_uriencode;
550   cef_uridecode_ptr cef_uridecode;
551   cef_parse_json_ptr cef_parse_json;
552   cef_parse_json_buffer_ptr cef_parse_json_buffer;
553   cef_parse_jsonand_return_error_ptr cef_parse_jsonand_return_error;
554   cef_write_json_ptr cef_write_json;
555   cef_get_path_ptr cef_get_path;
556   cef_launch_process_ptr cef_launch_process;
557   cef_register_scheme_handler_factory_ptr cef_register_scheme_handler_factory;
558   cef_clear_scheme_handler_factories_ptr cef_clear_scheme_handler_factories;
559   cef_is_cert_status_error_ptr cef_is_cert_status_error;
560   cef_currently_on_ptr cef_currently_on;
561   cef_post_task_ptr cef_post_task;
562   cef_post_delayed_task_ptr cef_post_delayed_task;
563   cef_begin_tracing_ptr cef_begin_tracing;
564   cef_end_tracing_ptr cef_end_tracing;
565   cef_now_from_system_trace_time_ptr cef_now_from_system_trace_time;
566   cef_register_extension_ptr cef_register_extension;
567   cef_visit_web_plugin_info_ptr cef_visit_web_plugin_info;
568   cef_refresh_web_plugins_ptr cef_refresh_web_plugins;
569   cef_unregister_internal_web_plugin_ptr cef_unregister_internal_web_plugin;
570   cef_register_web_plugin_crash_ptr cef_register_web_plugin_crash;
571   cef_is_web_plugin_unstable_ptr cef_is_web_plugin_unstable;
572   cef_register_widevine_cdm_ptr cef_register_widevine_cdm;
573   cef_execute_java_script_with_user_gesture_for_tests_ptr
574       cef_execute_java_script_with_user_gesture_for_tests;
575   cef_browser_host_create_browser_ptr cef_browser_host_create_browser;
576   cef_browser_host_create_browser_sync_ptr cef_browser_host_create_browser_sync;
577   cef_command_line_create_ptr cef_command_line_create;
578   cef_command_line_get_global_ptr cef_command_line_get_global;
579   cef_cookie_manager_get_global_manager_ptr
580       cef_cookie_manager_get_global_manager;
581   cef_drag_data_create_ptr cef_drag_data_create;
582   cef_image_create_ptr cef_image_create;
583   cef_media_router_get_global_ptr cef_media_router_get_global;
584   cef_menu_model_create_ptr cef_menu_model_create;
585   cef_print_settings_create_ptr cef_print_settings_create;
586   cef_process_message_create_ptr cef_process_message_create;
587   cef_request_create_ptr cef_request_create;
588   cef_post_data_create_ptr cef_post_data_create;
589   cef_post_data_element_create_ptr cef_post_data_element_create;
590   cef_request_context_get_global_context_ptr
591       cef_request_context_get_global_context;
592   cef_request_context_create_context_ptr cef_request_context_create_context;
593   cef_create_context_shared_ptr cef_create_context_shared;
594   cef_resource_bundle_get_global_ptr cef_resource_bundle_get_global;
595   cef_response_create_ptr cef_response_create;
596   cef_server_create_ptr cef_server_create;
597   cef_stream_reader_create_for_file_ptr cef_stream_reader_create_for_file;
598   cef_stream_reader_create_for_data_ptr cef_stream_reader_create_for_data;
599   cef_stream_reader_create_for_handler_ptr cef_stream_reader_create_for_handler;
600   cef_stream_writer_create_for_file_ptr cef_stream_writer_create_for_file;
601   cef_stream_writer_create_for_handler_ptr cef_stream_writer_create_for_handler;
602   cef_task_runner_get_for_current_thread_ptr
603       cef_task_runner_get_for_current_thread;
604   cef_task_runner_get_for_thread_ptr cef_task_runner_get_for_thread;
605   cef_thread_create_ptr cef_thread_create;
606   cef_urlrequest_create_ptr cef_urlrequest_create;
607   cef_v8context_get_current_context_ptr cef_v8context_get_current_context;
608   cef_v8context_get_entered_context_ptr cef_v8context_get_entered_context;
609   cef_v8context_in_context_ptr cef_v8context_in_context;
610   cef_v8value_create_undefined_ptr cef_v8value_create_undefined;
611   cef_v8value_create_null_ptr cef_v8value_create_null;
612   cef_v8value_create_bool_ptr cef_v8value_create_bool;
613   cef_v8value_create_int_ptr cef_v8value_create_int;
614   cef_v8value_create_uint_ptr cef_v8value_create_uint;
615   cef_v8value_create_double_ptr cef_v8value_create_double;
616   cef_v8value_create_date_ptr cef_v8value_create_date;
617   cef_v8value_create_string_ptr cef_v8value_create_string;
618   cef_v8value_create_object_ptr cef_v8value_create_object;
619   cef_v8value_create_array_ptr cef_v8value_create_array;
620   cef_v8value_create_array_buffer_ptr cef_v8value_create_array_buffer;
621   cef_v8value_create_function_ptr cef_v8value_create_function;
622   cef_v8stack_trace_get_current_ptr cef_v8stack_trace_get_current;
623   cef_value_create_ptr cef_value_create;
624   cef_binary_value_create_ptr cef_binary_value_create;
625   cef_dictionary_value_create_ptr cef_dictionary_value_create;
626   cef_list_value_create_ptr cef_list_value_create;
627   cef_waitable_event_create_ptr cef_waitable_event_create;
628   cef_xml_reader_create_ptr cef_xml_reader_create;
629   cef_zip_reader_create_ptr cef_zip_reader_create;
630   cef_translator_test_create_ptr cef_translator_test_create;
631   cef_translator_test_ref_ptr_library_create_ptr
632       cef_translator_test_ref_ptr_library_create;
633   cef_translator_test_ref_ptr_library_child_create_ptr
634       cef_translator_test_ref_ptr_library_child_create;
635   cef_translator_test_ref_ptr_library_child_child_create_ptr
636       cef_translator_test_ref_ptr_library_child_child_create;
637   cef_translator_test_scoped_library_create_ptr
638       cef_translator_test_scoped_library_create;
639   cef_translator_test_scoped_library_child_create_ptr
640       cef_translator_test_scoped_library_child_create;
641   cef_translator_test_scoped_library_child_child_create_ptr
642       cef_translator_test_scoped_library_child_child_create;
643   cef_browser_view_create_ptr cef_browser_view_create;
644   cef_browser_view_get_for_browser_ptr cef_browser_view_get_for_browser;
645   cef_display_get_primary_ptr cef_display_get_primary;
646   cef_display_get_nearest_point_ptr cef_display_get_nearest_point;
647   cef_display_get_matching_bounds_ptr cef_display_get_matching_bounds;
648   cef_display_get_count_ptr cef_display_get_count;
649   cef_display_get_alls_ptr cef_display_get_alls;
650   cef_label_button_create_ptr cef_label_button_create;
651   cef_menu_button_create_ptr cef_menu_button_create;
652   cef_panel_create_ptr cef_panel_create;
653   cef_scroll_view_create_ptr cef_scroll_view_create;
654   cef_textfield_create_ptr cef_textfield_create;
655   cef_window_create_top_level_ptr cef_window_create_top_level;
656   cef_api_hash_ptr cef_api_hash;
657   cef_version_info_ptr cef_version_info;
658   cef_get_min_log_level_ptr cef_get_min_log_level;
659   cef_get_vlog_level_ptr cef_get_vlog_level;
660   cef_log_ptr cef_log;
661   cef_string_list_alloc_ptr cef_string_list_alloc;
662   cef_string_list_size_ptr cef_string_list_size;
663   cef_string_list_value_ptr cef_string_list_value;
664   cef_string_list_append_ptr cef_string_list_append;
665   cef_string_list_clear_ptr cef_string_list_clear;
666   cef_string_list_free_ptr cef_string_list_free;
667   cef_string_list_copy_ptr cef_string_list_copy;
668   cef_string_map_alloc_ptr cef_string_map_alloc;
669   cef_string_map_size_ptr cef_string_map_size;
670   cef_string_map_find_ptr cef_string_map_find;
671   cef_string_map_key_ptr cef_string_map_key;
672   cef_string_map_value_ptr cef_string_map_value;
673   cef_string_map_append_ptr cef_string_map_append;
674   cef_string_map_clear_ptr cef_string_map_clear;
675   cef_string_map_free_ptr cef_string_map_free;
676   cef_string_multimap_alloc_ptr cef_string_multimap_alloc;
677   cef_string_multimap_size_ptr cef_string_multimap_size;
678   cef_string_multimap_find_count_ptr cef_string_multimap_find_count;
679   cef_string_multimap_enumerate_ptr cef_string_multimap_enumerate;
680   cef_string_multimap_key_ptr cef_string_multimap_key;
681   cef_string_multimap_value_ptr cef_string_multimap_value;
682   cef_string_multimap_append_ptr cef_string_multimap_append;
683   cef_string_multimap_clear_ptr cef_string_multimap_clear;
684   cef_string_multimap_free_ptr cef_string_multimap_free;
685   cef_string_wide_set_ptr cef_string_wide_set;
686   cef_string_utf8_set_ptr cef_string_utf8_set;
687   cef_string_utf16_set_ptr cef_string_utf16_set;
688   cef_string_wide_clear_ptr cef_string_wide_clear;
689   cef_string_utf8_clear_ptr cef_string_utf8_clear;
690   cef_string_utf16_clear_ptr cef_string_utf16_clear;
691   cef_string_wide_cmp_ptr cef_string_wide_cmp;
692   cef_string_utf8_cmp_ptr cef_string_utf8_cmp;
693   cef_string_utf16_cmp_ptr cef_string_utf16_cmp;
694   cef_string_wide_to_utf8_ptr cef_string_wide_to_utf8;
695   cef_string_utf8_to_wide_ptr cef_string_utf8_to_wide;
696   cef_string_wide_to_utf16_ptr cef_string_wide_to_utf16;
697   cef_string_utf16_to_wide_ptr cef_string_utf16_to_wide;
698   cef_string_utf8_to_utf16_ptr cef_string_utf8_to_utf16;
699   cef_string_utf16_to_utf8_ptr cef_string_utf16_to_utf8;
700   cef_string_ascii_to_wide_ptr cef_string_ascii_to_wide;
701   cef_string_ascii_to_utf16_ptr cef_string_ascii_to_utf16;
702   cef_string_userfree_wide_alloc_ptr cef_string_userfree_wide_alloc;
703   cef_string_userfree_utf8_alloc_ptr cef_string_userfree_utf8_alloc;
704   cef_string_userfree_utf16_alloc_ptr cef_string_userfree_utf16_alloc;
705   cef_string_userfree_wide_free_ptr cef_string_userfree_wide_free;
706   cef_string_userfree_utf8_free_ptr cef_string_userfree_utf8_free;
707   cef_string_userfree_utf16_free_ptr cef_string_userfree_utf16_free;
708   cef_string_utf16_to_lower_ptr cef_string_utf16_to_lower;
709   cef_string_utf16_to_upper_ptr cef_string_utf16_to_upper;
710   cef_get_current_platform_thread_id_ptr cef_get_current_platform_thread_id;
711   cef_get_current_platform_thread_handle_ptr
712       cef_get_current_platform_thread_handle;
713   cef_time_to_timet_ptr cef_time_to_timet;
714   cef_time_from_timet_ptr cef_time_from_timet;
715   cef_time_to_doublet_ptr cef_time_to_doublet;
716   cef_time_from_doublet_ptr cef_time_from_doublet;
717   cef_time_now_ptr cef_time_now;
718   cef_time_delta_ptr cef_time_delta;
719   cef_trace_event_instant_ptr cef_trace_event_instant;
720   cef_trace_event_begin_ptr cef_trace_event_begin;
721   cef_trace_event_end_ptr cef_trace_event_end;
722   cef_trace_counter_ptr cef_trace_counter;
723   cef_trace_counter_id_ptr cef_trace_counter_id;
724   cef_trace_event_async_begin_ptr cef_trace_event_async_begin;
725   cef_trace_event_async_step_into_ptr cef_trace_event_async_step_into;
726   cef_trace_event_async_step_past_ptr cef_trace_event_async_step_past;
727   cef_trace_event_async_end_ptr cef_trace_event_async_end;
728 
729 } g_libcef_pointers = {0};
730 
731 #define INIT_ENTRY(name)                                            \
732   g_libcef_pointers.name = (name##_ptr)libcef_get_ptr(path, #name); \
733   if (!g_libcef_pointers.name) {                                    \
734     return 0;                                                       \
735   }
736 
libcef_init_pointers(const char * path)737 int libcef_init_pointers(const char* path) {
738   INIT_ENTRY(cef_execute_process);
739   INIT_ENTRY(cef_initialize);
740   INIT_ENTRY(cef_shutdown);
741   INIT_ENTRY(cef_do_message_loop_work);
742   INIT_ENTRY(cef_run_message_loop);
743   INIT_ENTRY(cef_quit_message_loop);
744   INIT_ENTRY(cef_set_osmodal_loop);
745   INIT_ENTRY(cef_enable_highdpi_support);
746   INIT_ENTRY(cef_crash_reporting_enabled);
747   INIT_ENTRY(cef_set_crash_key_value);
748   INIT_ENTRY(cef_create_directory);
749   INIT_ENTRY(cef_get_temp_directory);
750   INIT_ENTRY(cef_create_new_temp_directory);
751   INIT_ENTRY(cef_create_temp_directory_in_directory);
752   INIT_ENTRY(cef_directory_exists);
753   INIT_ENTRY(cef_delete_file);
754   INIT_ENTRY(cef_zip_directory);
755   INIT_ENTRY(cef_load_crlsets_file);
756   INIT_ENTRY(cef_add_cross_origin_whitelist_entry);
757   INIT_ENTRY(cef_remove_cross_origin_whitelist_entry);
758   INIT_ENTRY(cef_clear_cross_origin_whitelist);
759   INIT_ENTRY(cef_parse_url);
760   INIT_ENTRY(cef_create_url);
761   INIT_ENTRY(cef_format_url_for_security_display);
762   INIT_ENTRY(cef_get_mime_type);
763   INIT_ENTRY(cef_get_extensions_for_mime_type);
764   INIT_ENTRY(cef_base64encode);
765   INIT_ENTRY(cef_base64decode);
766   INIT_ENTRY(cef_uriencode);
767   INIT_ENTRY(cef_uridecode);
768   INIT_ENTRY(cef_parse_json);
769   INIT_ENTRY(cef_parse_json_buffer);
770   INIT_ENTRY(cef_parse_jsonand_return_error);
771   INIT_ENTRY(cef_write_json);
772   INIT_ENTRY(cef_get_path);
773   INIT_ENTRY(cef_launch_process);
774   INIT_ENTRY(cef_register_scheme_handler_factory);
775   INIT_ENTRY(cef_clear_scheme_handler_factories);
776   INIT_ENTRY(cef_is_cert_status_error);
777   INIT_ENTRY(cef_currently_on);
778   INIT_ENTRY(cef_post_task);
779   INIT_ENTRY(cef_post_delayed_task);
780   INIT_ENTRY(cef_begin_tracing);
781   INIT_ENTRY(cef_end_tracing);
782   INIT_ENTRY(cef_now_from_system_trace_time);
783   INIT_ENTRY(cef_register_extension);
784   INIT_ENTRY(cef_visit_web_plugin_info);
785   INIT_ENTRY(cef_refresh_web_plugins);
786   INIT_ENTRY(cef_unregister_internal_web_plugin);
787   INIT_ENTRY(cef_register_web_plugin_crash);
788   INIT_ENTRY(cef_is_web_plugin_unstable);
789   INIT_ENTRY(cef_register_widevine_cdm);
790   INIT_ENTRY(cef_execute_java_script_with_user_gesture_for_tests);
791   INIT_ENTRY(cef_browser_host_create_browser);
792   INIT_ENTRY(cef_browser_host_create_browser_sync);
793   INIT_ENTRY(cef_command_line_create);
794   INIT_ENTRY(cef_command_line_get_global);
795   INIT_ENTRY(cef_cookie_manager_get_global_manager);
796   INIT_ENTRY(cef_drag_data_create);
797   INIT_ENTRY(cef_image_create);
798   INIT_ENTRY(cef_media_router_get_global);
799   INIT_ENTRY(cef_menu_model_create);
800   INIT_ENTRY(cef_print_settings_create);
801   INIT_ENTRY(cef_process_message_create);
802   INIT_ENTRY(cef_request_create);
803   INIT_ENTRY(cef_post_data_create);
804   INIT_ENTRY(cef_post_data_element_create);
805   INIT_ENTRY(cef_request_context_get_global_context);
806   INIT_ENTRY(cef_request_context_create_context);
807   INIT_ENTRY(cef_create_context_shared);
808   INIT_ENTRY(cef_resource_bundle_get_global);
809   INIT_ENTRY(cef_response_create);
810   INIT_ENTRY(cef_server_create);
811   INIT_ENTRY(cef_stream_reader_create_for_file);
812   INIT_ENTRY(cef_stream_reader_create_for_data);
813   INIT_ENTRY(cef_stream_reader_create_for_handler);
814   INIT_ENTRY(cef_stream_writer_create_for_file);
815   INIT_ENTRY(cef_stream_writer_create_for_handler);
816   INIT_ENTRY(cef_task_runner_get_for_current_thread);
817   INIT_ENTRY(cef_task_runner_get_for_thread);
818   INIT_ENTRY(cef_thread_create);
819   INIT_ENTRY(cef_urlrequest_create);
820   INIT_ENTRY(cef_v8context_get_current_context);
821   INIT_ENTRY(cef_v8context_get_entered_context);
822   INIT_ENTRY(cef_v8context_in_context);
823   INIT_ENTRY(cef_v8value_create_undefined);
824   INIT_ENTRY(cef_v8value_create_null);
825   INIT_ENTRY(cef_v8value_create_bool);
826   INIT_ENTRY(cef_v8value_create_int);
827   INIT_ENTRY(cef_v8value_create_uint);
828   INIT_ENTRY(cef_v8value_create_double);
829   INIT_ENTRY(cef_v8value_create_date);
830   INIT_ENTRY(cef_v8value_create_string);
831   INIT_ENTRY(cef_v8value_create_object);
832   INIT_ENTRY(cef_v8value_create_array);
833   INIT_ENTRY(cef_v8value_create_array_buffer);
834   INIT_ENTRY(cef_v8value_create_function);
835   INIT_ENTRY(cef_v8stack_trace_get_current);
836   INIT_ENTRY(cef_value_create);
837   INIT_ENTRY(cef_binary_value_create);
838   INIT_ENTRY(cef_dictionary_value_create);
839   INIT_ENTRY(cef_list_value_create);
840   INIT_ENTRY(cef_waitable_event_create);
841   INIT_ENTRY(cef_xml_reader_create);
842   INIT_ENTRY(cef_zip_reader_create);
843   INIT_ENTRY(cef_translator_test_create);
844   INIT_ENTRY(cef_translator_test_ref_ptr_library_create);
845   INIT_ENTRY(cef_translator_test_ref_ptr_library_child_create);
846   INIT_ENTRY(cef_translator_test_ref_ptr_library_child_child_create);
847   INIT_ENTRY(cef_translator_test_scoped_library_create);
848   INIT_ENTRY(cef_translator_test_scoped_library_child_create);
849   INIT_ENTRY(cef_translator_test_scoped_library_child_child_create);
850   INIT_ENTRY(cef_browser_view_create);
851   INIT_ENTRY(cef_browser_view_get_for_browser);
852   INIT_ENTRY(cef_display_get_primary);
853   INIT_ENTRY(cef_display_get_nearest_point);
854   INIT_ENTRY(cef_display_get_matching_bounds);
855   INIT_ENTRY(cef_display_get_count);
856   INIT_ENTRY(cef_display_get_alls);
857   INIT_ENTRY(cef_label_button_create);
858   INIT_ENTRY(cef_menu_button_create);
859   INIT_ENTRY(cef_panel_create);
860   INIT_ENTRY(cef_scroll_view_create);
861   INIT_ENTRY(cef_textfield_create);
862   INIT_ENTRY(cef_window_create_top_level);
863   INIT_ENTRY(cef_api_hash);
864   INIT_ENTRY(cef_version_info);
865   INIT_ENTRY(cef_get_min_log_level);
866   INIT_ENTRY(cef_get_vlog_level);
867   INIT_ENTRY(cef_log);
868   INIT_ENTRY(cef_string_list_alloc);
869   INIT_ENTRY(cef_string_list_size);
870   INIT_ENTRY(cef_string_list_value);
871   INIT_ENTRY(cef_string_list_append);
872   INIT_ENTRY(cef_string_list_clear);
873   INIT_ENTRY(cef_string_list_free);
874   INIT_ENTRY(cef_string_list_copy);
875   INIT_ENTRY(cef_string_map_alloc);
876   INIT_ENTRY(cef_string_map_size);
877   INIT_ENTRY(cef_string_map_find);
878   INIT_ENTRY(cef_string_map_key);
879   INIT_ENTRY(cef_string_map_value);
880   INIT_ENTRY(cef_string_map_append);
881   INIT_ENTRY(cef_string_map_clear);
882   INIT_ENTRY(cef_string_map_free);
883   INIT_ENTRY(cef_string_multimap_alloc);
884   INIT_ENTRY(cef_string_multimap_size);
885   INIT_ENTRY(cef_string_multimap_find_count);
886   INIT_ENTRY(cef_string_multimap_enumerate);
887   INIT_ENTRY(cef_string_multimap_key);
888   INIT_ENTRY(cef_string_multimap_value);
889   INIT_ENTRY(cef_string_multimap_append);
890   INIT_ENTRY(cef_string_multimap_clear);
891   INIT_ENTRY(cef_string_multimap_free);
892   INIT_ENTRY(cef_string_wide_set);
893   INIT_ENTRY(cef_string_utf8_set);
894   INIT_ENTRY(cef_string_utf16_set);
895   INIT_ENTRY(cef_string_wide_clear);
896   INIT_ENTRY(cef_string_utf8_clear);
897   INIT_ENTRY(cef_string_utf16_clear);
898   INIT_ENTRY(cef_string_wide_cmp);
899   INIT_ENTRY(cef_string_utf8_cmp);
900   INIT_ENTRY(cef_string_utf16_cmp);
901   INIT_ENTRY(cef_string_wide_to_utf8);
902   INIT_ENTRY(cef_string_utf8_to_wide);
903   INIT_ENTRY(cef_string_wide_to_utf16);
904   INIT_ENTRY(cef_string_utf16_to_wide);
905   INIT_ENTRY(cef_string_utf8_to_utf16);
906   INIT_ENTRY(cef_string_utf16_to_utf8);
907   INIT_ENTRY(cef_string_ascii_to_wide);
908   INIT_ENTRY(cef_string_ascii_to_utf16);
909   INIT_ENTRY(cef_string_userfree_wide_alloc);
910   INIT_ENTRY(cef_string_userfree_utf8_alloc);
911   INIT_ENTRY(cef_string_userfree_utf16_alloc);
912   INIT_ENTRY(cef_string_userfree_wide_free);
913   INIT_ENTRY(cef_string_userfree_utf8_free);
914   INIT_ENTRY(cef_string_userfree_utf16_free);
915   INIT_ENTRY(cef_string_utf16_to_lower);
916   INIT_ENTRY(cef_string_utf16_to_upper);
917   INIT_ENTRY(cef_get_current_platform_thread_id);
918   INIT_ENTRY(cef_get_current_platform_thread_handle);
919   INIT_ENTRY(cef_time_to_timet);
920   INIT_ENTRY(cef_time_from_timet);
921   INIT_ENTRY(cef_time_to_doublet);
922   INIT_ENTRY(cef_time_from_doublet);
923   INIT_ENTRY(cef_time_now);
924   INIT_ENTRY(cef_time_delta);
925   INIT_ENTRY(cef_trace_event_instant);
926   INIT_ENTRY(cef_trace_event_begin);
927   INIT_ENTRY(cef_trace_event_end);
928   INIT_ENTRY(cef_trace_counter);
929   INIT_ENTRY(cef_trace_counter_id);
930   INIT_ENTRY(cef_trace_event_async_begin);
931   INIT_ENTRY(cef_trace_event_async_step_into);
932   INIT_ENTRY(cef_trace_event_async_step_past);
933   INIT_ENTRY(cef_trace_event_async_end);
934   return 1;
935 }
936 
937 }  // namespace
938 
cef_load_library(const char * path)939 int cef_load_library(const char* path) {
940   if (g_libcef_handle)
941     return 0;
942 
943   g_libcef_handle = dlopen(path, RTLD_LAZY | RTLD_LOCAL | RTLD_FIRST);
944   if (!g_libcef_handle) {
945     fprintf(stderr, "dlopen %s: %s\n", path, dlerror());
946     return 0;
947   }
948 
949   if (!libcef_init_pointers(path)) {
950     cef_unload_library();
951     return 0;
952   }
953 
954   return 1;
955 }
956 
cef_unload_library()957 int cef_unload_library() {
958   int result = 0;
959   if (g_libcef_handle) {
960     result = !dlclose(g_libcef_handle);
961     if (!result) {
962       fprintf(stderr, "dlclose: %s\n", dlerror());
963     }
964     g_libcef_handle = nullptr;
965   }
966   return result;
967 }
968 
969 NO_SANITIZE("cfi-icall")
cef_execute_process(const struct _cef_main_args_t * args,struct _cef_app_t * application,void * windows_sandbox_info)970 int cef_execute_process(const struct _cef_main_args_t* args,
971                         struct _cef_app_t* application,
972                         void* windows_sandbox_info) {
973   return g_libcef_pointers.cef_execute_process(args, application,
974                                                windows_sandbox_info);
975 }
976 
977 NO_SANITIZE("cfi-icall")
cef_initialize(const struct _cef_main_args_t * args,const struct _cef_settings_t * settings,struct _cef_app_t * application,void * windows_sandbox_info)978 int cef_initialize(const struct _cef_main_args_t* args,
979                    const struct _cef_settings_t* settings,
980                    struct _cef_app_t* application,
981                    void* windows_sandbox_info) {
982   return g_libcef_pointers.cef_initialize(args, settings, application,
983                                           windows_sandbox_info);
984 }
985 
cef_shutdown()986 NO_SANITIZE("cfi-icall") void cef_shutdown() {
987   g_libcef_pointers.cef_shutdown();
988 }
989 
cef_do_message_loop_work()990 NO_SANITIZE("cfi-icall") void cef_do_message_loop_work() {
991   g_libcef_pointers.cef_do_message_loop_work();
992 }
993 
cef_run_message_loop()994 NO_SANITIZE("cfi-icall") void cef_run_message_loop() {
995   g_libcef_pointers.cef_run_message_loop();
996 }
997 
cef_quit_message_loop()998 NO_SANITIZE("cfi-icall") void cef_quit_message_loop() {
999   g_libcef_pointers.cef_quit_message_loop();
1000 }
1001 
cef_set_osmodal_loop(int osModalLoop)1002 NO_SANITIZE("cfi-icall") void cef_set_osmodal_loop(int osModalLoop) {
1003   g_libcef_pointers.cef_set_osmodal_loop(osModalLoop);
1004 }
1005 
cef_enable_highdpi_support()1006 NO_SANITIZE("cfi-icall") void cef_enable_highdpi_support() {
1007   g_libcef_pointers.cef_enable_highdpi_support();
1008 }
1009 
cef_crash_reporting_enabled()1010 NO_SANITIZE("cfi-icall") int cef_crash_reporting_enabled() {
1011   return g_libcef_pointers.cef_crash_reporting_enabled();
1012 }
1013 
1014 NO_SANITIZE("cfi-icall")
cef_set_crash_key_value(const cef_string_t * key,const cef_string_t * value)1015 void cef_set_crash_key_value(const cef_string_t* key,
1016                              const cef_string_t* value) {
1017   g_libcef_pointers.cef_set_crash_key_value(key, value);
1018 }
1019 
1020 NO_SANITIZE("cfi-icall")
cef_create_directory(const cef_string_t * full_path)1021 int cef_create_directory(const cef_string_t* full_path) {
1022   return g_libcef_pointers.cef_create_directory(full_path);
1023 }
1024 
cef_get_temp_directory(cef_string_t * temp_dir)1025 NO_SANITIZE("cfi-icall") int cef_get_temp_directory(cef_string_t* temp_dir) {
1026   return g_libcef_pointers.cef_get_temp_directory(temp_dir);
1027 }
1028 
1029 NO_SANITIZE("cfi-icall")
cef_create_new_temp_directory(const cef_string_t * prefix,cef_string_t * new_temp_path)1030 int cef_create_new_temp_directory(const cef_string_t* prefix,
1031                                   cef_string_t* new_temp_path) {
1032   return g_libcef_pointers.cef_create_new_temp_directory(prefix, new_temp_path);
1033 }
1034 
1035 NO_SANITIZE("cfi-icall")
cef_create_temp_directory_in_directory(const cef_string_t * base_dir,const cef_string_t * prefix,cef_string_t * new_dir)1036 int cef_create_temp_directory_in_directory(const cef_string_t* base_dir,
1037                                            const cef_string_t* prefix,
1038                                            cef_string_t* new_dir) {
1039   return g_libcef_pointers.cef_create_temp_directory_in_directory(
1040       base_dir, prefix, new_dir);
1041 }
1042 
cef_directory_exists(const cef_string_t * path)1043 NO_SANITIZE("cfi-icall") int cef_directory_exists(const cef_string_t* path) {
1044   return g_libcef_pointers.cef_directory_exists(path);
1045 }
1046 
1047 NO_SANITIZE("cfi-icall")
cef_delete_file(const cef_string_t * path,int recursive)1048 int cef_delete_file(const cef_string_t* path, int recursive) {
1049   return g_libcef_pointers.cef_delete_file(path, recursive);
1050 }
1051 
1052 NO_SANITIZE("cfi-icall")
cef_zip_directory(const cef_string_t * src_dir,const cef_string_t * dest_file,int include_hidden_files)1053 int cef_zip_directory(const cef_string_t* src_dir,
1054                       const cef_string_t* dest_file,
1055                       int include_hidden_files) {
1056   return g_libcef_pointers.cef_zip_directory(src_dir, dest_file,
1057                                              include_hidden_files);
1058 }
1059 
cef_load_crlsets_file(const cef_string_t * path)1060 NO_SANITIZE("cfi-icall") void cef_load_crlsets_file(const cef_string_t* path) {
1061   g_libcef_pointers.cef_load_crlsets_file(path);
1062 }
1063 
1064 NO_SANITIZE("cfi-icall")
cef_add_cross_origin_whitelist_entry(const cef_string_t * source_origin,const cef_string_t * target_protocol,const cef_string_t * target_domain,int allow_target_subdomains)1065 int cef_add_cross_origin_whitelist_entry(const cef_string_t* source_origin,
1066                                          const cef_string_t* target_protocol,
1067                                          const cef_string_t* target_domain,
1068                                          int allow_target_subdomains) {
1069   return g_libcef_pointers.cef_add_cross_origin_whitelist_entry(
1070       source_origin, target_protocol, target_domain, allow_target_subdomains);
1071 }
1072 
1073 NO_SANITIZE("cfi-icall")
cef_remove_cross_origin_whitelist_entry(const cef_string_t * source_origin,const cef_string_t * target_protocol,const cef_string_t * target_domain,int allow_target_subdomains)1074 int cef_remove_cross_origin_whitelist_entry(const cef_string_t* source_origin,
1075                                             const cef_string_t* target_protocol,
1076                                             const cef_string_t* target_domain,
1077                                             int allow_target_subdomains) {
1078   return g_libcef_pointers.cef_remove_cross_origin_whitelist_entry(
1079       source_origin, target_protocol, target_domain, allow_target_subdomains);
1080 }
1081 
cef_clear_cross_origin_whitelist()1082 NO_SANITIZE("cfi-icall") int cef_clear_cross_origin_whitelist() {
1083   return g_libcef_pointers.cef_clear_cross_origin_whitelist();
1084 }
1085 
1086 NO_SANITIZE("cfi-icall")
cef_parse_url(const cef_string_t * url,struct _cef_urlparts_t * parts)1087 int cef_parse_url(const cef_string_t* url, struct _cef_urlparts_t* parts) {
1088   return g_libcef_pointers.cef_parse_url(url, parts);
1089 }
1090 
1091 NO_SANITIZE("cfi-icall")
cef_create_url(const struct _cef_urlparts_t * parts,cef_string_t * url)1092 int cef_create_url(const struct _cef_urlparts_t* parts, cef_string_t* url) {
1093   return g_libcef_pointers.cef_create_url(parts, url);
1094 }
1095 
1096 NO_SANITIZE("cfi-icall")
cef_format_url_for_security_display(const cef_string_t * origin_url)1097 cef_string_userfree_t cef_format_url_for_security_display(
1098     const cef_string_t* origin_url) {
1099   return g_libcef_pointers.cef_format_url_for_security_display(origin_url);
1100 }
1101 
1102 NO_SANITIZE("cfi-icall")
cef_get_mime_type(const cef_string_t * extension)1103 cef_string_userfree_t cef_get_mime_type(const cef_string_t* extension) {
1104   return g_libcef_pointers.cef_get_mime_type(extension);
1105 }
1106 
1107 NO_SANITIZE("cfi-icall")
cef_get_extensions_for_mime_type(const cef_string_t * mime_type,cef_string_list_t extensions)1108 void cef_get_extensions_for_mime_type(const cef_string_t* mime_type,
1109                                       cef_string_list_t extensions) {
1110   g_libcef_pointers.cef_get_extensions_for_mime_type(mime_type, extensions);
1111 }
1112 
1113 NO_SANITIZE("cfi-icall")
cef_base64encode(const void * data,size_t data_size)1114 cef_string_userfree_t cef_base64encode(const void* data, size_t data_size) {
1115   return g_libcef_pointers.cef_base64encode(data, data_size);
1116 }
1117 
1118 NO_SANITIZE("cfi-icall")
cef_base64decode(const cef_string_t * data)1119 struct _cef_binary_value_t* cef_base64decode(const cef_string_t* data) {
1120   return g_libcef_pointers.cef_base64decode(data);
1121 }
1122 
1123 NO_SANITIZE("cfi-icall")
cef_uriencode(const cef_string_t * text,int use_plus)1124 cef_string_userfree_t cef_uriencode(const cef_string_t* text, int use_plus) {
1125   return g_libcef_pointers.cef_uriencode(text, use_plus);
1126 }
1127 
1128 NO_SANITIZE("cfi-icall")
cef_uridecode(const cef_string_t * text,int convert_to_utf8,cef_uri_unescape_rule_t unescape_rule)1129 cef_string_userfree_t cef_uridecode(const cef_string_t* text,
1130                                     int convert_to_utf8,
1131                                     cef_uri_unescape_rule_t unescape_rule) {
1132   return g_libcef_pointers.cef_uridecode(text, convert_to_utf8, unescape_rule);
1133 }
1134 
1135 NO_SANITIZE("cfi-icall")
cef_parse_json(const cef_string_t * json_string,cef_json_parser_options_t options)1136 struct _cef_value_t* cef_parse_json(const cef_string_t* json_string,
1137                                     cef_json_parser_options_t options) {
1138   return g_libcef_pointers.cef_parse_json(json_string, options);
1139 }
1140 
1141 NO_SANITIZE("cfi-icall")
cef_parse_json_buffer(const void * json,size_t json_size,cef_json_parser_options_t options)1142 struct _cef_value_t* cef_parse_json_buffer(const void* json,
1143                                            size_t json_size,
1144                                            cef_json_parser_options_t options) {
1145   return g_libcef_pointers.cef_parse_json_buffer(json, json_size, options);
1146 }
1147 
1148 NO_SANITIZE("cfi-icall")
cef_parse_jsonand_return_error(const cef_string_t * json_string,cef_json_parser_options_t options,cef_string_t * error_msg_out)1149 struct _cef_value_t* cef_parse_jsonand_return_error(
1150     const cef_string_t* json_string,
1151     cef_json_parser_options_t options,
1152     cef_string_t* error_msg_out) {
1153   return g_libcef_pointers.cef_parse_jsonand_return_error(json_string, options,
1154                                                           error_msg_out);
1155 }
1156 
1157 NO_SANITIZE("cfi-icall")
cef_write_json(struct _cef_value_t * node,cef_json_writer_options_t options)1158 cef_string_userfree_t cef_write_json(struct _cef_value_t* node,
1159                                      cef_json_writer_options_t options) {
1160   return g_libcef_pointers.cef_write_json(node, options);
1161 }
1162 
1163 NO_SANITIZE("cfi-icall")
cef_get_path(cef_path_key_t key,cef_string_t * path)1164 int cef_get_path(cef_path_key_t key, cef_string_t* path) {
1165   return g_libcef_pointers.cef_get_path(key, path);
1166 }
1167 
1168 NO_SANITIZE("cfi-icall")
cef_launch_process(struct _cef_command_line_t * command_line)1169 int cef_launch_process(struct _cef_command_line_t* command_line) {
1170   return g_libcef_pointers.cef_launch_process(command_line);
1171 }
1172 
1173 NO_SANITIZE("cfi-icall")
cef_register_scheme_handler_factory(const cef_string_t * scheme_name,const cef_string_t * domain_name,struct _cef_scheme_handler_factory_t * factory)1174 int cef_register_scheme_handler_factory(
1175     const cef_string_t* scheme_name,
1176     const cef_string_t* domain_name,
1177     struct _cef_scheme_handler_factory_t* factory) {
1178   return g_libcef_pointers.cef_register_scheme_handler_factory(
1179       scheme_name, domain_name, factory);
1180 }
1181 
cef_clear_scheme_handler_factories()1182 NO_SANITIZE("cfi-icall") int cef_clear_scheme_handler_factories() {
1183   return g_libcef_pointers.cef_clear_scheme_handler_factories();
1184 }
1185 
1186 NO_SANITIZE("cfi-icall")
cef_is_cert_status_error(cef_cert_status_t status)1187 int cef_is_cert_status_error(cef_cert_status_t status) {
1188   return g_libcef_pointers.cef_is_cert_status_error(status);
1189 }
1190 
cef_currently_on(cef_thread_id_t threadId)1191 NO_SANITIZE("cfi-icall") int cef_currently_on(cef_thread_id_t threadId) {
1192   return g_libcef_pointers.cef_currently_on(threadId);
1193 }
1194 
1195 NO_SANITIZE("cfi-icall")
cef_post_task(cef_thread_id_t threadId,struct _cef_task_t * task)1196 int cef_post_task(cef_thread_id_t threadId, struct _cef_task_t* task) {
1197   return g_libcef_pointers.cef_post_task(threadId, task);
1198 }
1199 
1200 NO_SANITIZE("cfi-icall")
cef_post_delayed_task(cef_thread_id_t threadId,struct _cef_task_t * task,int64 delay_ms)1201 int cef_post_delayed_task(cef_thread_id_t threadId,
1202                           struct _cef_task_t* task,
1203                           int64 delay_ms) {
1204   return g_libcef_pointers.cef_post_delayed_task(threadId, task, delay_ms);
1205 }
1206 
1207 NO_SANITIZE("cfi-icall")
cef_begin_tracing(const cef_string_t * categories,struct _cef_completion_callback_t * callback)1208 int cef_begin_tracing(const cef_string_t* categories,
1209                       struct _cef_completion_callback_t* callback) {
1210   return g_libcef_pointers.cef_begin_tracing(categories, callback);
1211 }
1212 
1213 NO_SANITIZE("cfi-icall")
cef_end_tracing(const cef_string_t * tracing_file,struct _cef_end_tracing_callback_t * callback)1214 int cef_end_tracing(const cef_string_t* tracing_file,
1215                     struct _cef_end_tracing_callback_t* callback) {
1216   return g_libcef_pointers.cef_end_tracing(tracing_file, callback);
1217 }
1218 
cef_now_from_system_trace_time()1219 NO_SANITIZE("cfi-icall") int64 cef_now_from_system_trace_time() {
1220   return g_libcef_pointers.cef_now_from_system_trace_time();
1221 }
1222 
1223 NO_SANITIZE("cfi-icall")
cef_register_extension(const cef_string_t * extension_name,const cef_string_t * javascript_code,struct _cef_v8handler_t * handler)1224 int cef_register_extension(const cef_string_t* extension_name,
1225                            const cef_string_t* javascript_code,
1226                            struct _cef_v8handler_t* handler) {
1227   return g_libcef_pointers.cef_register_extension(extension_name,
1228                                                   javascript_code, handler);
1229 }
1230 
1231 NO_SANITIZE("cfi-icall")
cef_visit_web_plugin_info(struct _cef_web_plugin_info_visitor_t * visitor)1232 void cef_visit_web_plugin_info(struct _cef_web_plugin_info_visitor_t* visitor) {
1233   g_libcef_pointers.cef_visit_web_plugin_info(visitor);
1234 }
1235 
cef_refresh_web_plugins()1236 NO_SANITIZE("cfi-icall") void cef_refresh_web_plugins() {
1237   g_libcef_pointers.cef_refresh_web_plugins();
1238 }
1239 
1240 NO_SANITIZE("cfi-icall")
cef_unregister_internal_web_plugin(const cef_string_t * path)1241 void cef_unregister_internal_web_plugin(const cef_string_t* path) {
1242   g_libcef_pointers.cef_unregister_internal_web_plugin(path);
1243 }
1244 
1245 NO_SANITIZE("cfi-icall")
cef_register_web_plugin_crash(const cef_string_t * path)1246 void cef_register_web_plugin_crash(const cef_string_t* path) {
1247   g_libcef_pointers.cef_register_web_plugin_crash(path);
1248 }
1249 
1250 NO_SANITIZE("cfi-icall")
cef_is_web_plugin_unstable(const cef_string_t * path,struct _cef_web_plugin_unstable_callback_t * callback)1251 void cef_is_web_plugin_unstable(
1252     const cef_string_t* path,
1253     struct _cef_web_plugin_unstable_callback_t* callback) {
1254   g_libcef_pointers.cef_is_web_plugin_unstable(path, callback);
1255 }
1256 
1257 NO_SANITIZE("cfi-icall")
cef_register_widevine_cdm(const cef_string_t * path,struct _cef_register_cdm_callback_t * callback)1258 void cef_register_widevine_cdm(const cef_string_t* path,
1259                                struct _cef_register_cdm_callback_t* callback) {
1260   g_libcef_pointers.cef_register_widevine_cdm(path, callback);
1261 }
1262 
1263 NO_SANITIZE("cfi-icall")
cef_execute_java_script_with_user_gesture_for_tests(struct _cef_frame_t * frame,const cef_string_t * javascript)1264 void cef_execute_java_script_with_user_gesture_for_tests(
1265     struct _cef_frame_t* frame,
1266     const cef_string_t* javascript) {
1267   g_libcef_pointers.cef_execute_java_script_with_user_gesture_for_tests(
1268       frame, javascript);
1269 }
1270 
1271 NO_SANITIZE("cfi-icall")
cef_browser_host_create_browser(const struct _cef_window_info_t * windowInfo,struct _cef_client_t * client,const cef_string_t * url,const struct _cef_browser_settings_t * settings,struct _cef_dictionary_value_t * extra_info,struct _cef_request_context_t * request_context)1272 int cef_browser_host_create_browser(
1273     const struct _cef_window_info_t* windowInfo,
1274     struct _cef_client_t* client,
1275     const cef_string_t* url,
1276     const struct _cef_browser_settings_t* settings,
1277     struct _cef_dictionary_value_t* extra_info,
1278     struct _cef_request_context_t* request_context) {
1279   return g_libcef_pointers.cef_browser_host_create_browser(
1280       windowInfo, client, url, settings, extra_info, request_context);
1281 }
1282 
1283 NO_SANITIZE("cfi-icall")
cef_browser_host_create_browser_sync(const struct _cef_window_info_t * windowInfo,struct _cef_client_t * client,const cef_string_t * url,const struct _cef_browser_settings_t * settings,struct _cef_dictionary_value_t * extra_info,struct _cef_request_context_t * request_context)1284 struct _cef_browser_t* cef_browser_host_create_browser_sync(
1285     const struct _cef_window_info_t* windowInfo,
1286     struct _cef_client_t* client,
1287     const cef_string_t* url,
1288     const struct _cef_browser_settings_t* settings,
1289     struct _cef_dictionary_value_t* extra_info,
1290     struct _cef_request_context_t* request_context) {
1291   return g_libcef_pointers.cef_browser_host_create_browser_sync(
1292       windowInfo, client, url, settings, extra_info, request_context);
1293 }
1294 
cef_command_line_create()1295 NO_SANITIZE("cfi-icall") struct _cef_command_line_t* cef_command_line_create() {
1296   return g_libcef_pointers.cef_command_line_create();
1297 }
1298 
1299 NO_SANITIZE("cfi-icall")
cef_command_line_get_global()1300 struct _cef_command_line_t* cef_command_line_get_global() {
1301   return g_libcef_pointers.cef_command_line_get_global();
1302 }
1303 
1304 NO_SANITIZE("cfi-icall")
cef_cookie_manager_get_global_manager(struct _cef_completion_callback_t * callback)1305 struct _cef_cookie_manager_t* cef_cookie_manager_get_global_manager(
1306     struct _cef_completion_callback_t* callback) {
1307   return g_libcef_pointers.cef_cookie_manager_get_global_manager(callback);
1308 }
1309 
cef_drag_data_create()1310 NO_SANITIZE("cfi-icall") struct _cef_drag_data_t* cef_drag_data_create() {
1311   return g_libcef_pointers.cef_drag_data_create();
1312 }
1313 
cef_image_create()1314 NO_SANITIZE("cfi-icall") struct _cef_image_t* cef_image_create() {
1315   return g_libcef_pointers.cef_image_create();
1316 }
1317 
1318 NO_SANITIZE("cfi-icall")
cef_media_router_get_global(struct _cef_completion_callback_t * callback)1319 struct _cef_media_router_t* cef_media_router_get_global(
1320     struct _cef_completion_callback_t* callback) {
1321   return g_libcef_pointers.cef_media_router_get_global(callback);
1322 }
1323 
1324 NO_SANITIZE("cfi-icall")
cef_menu_model_create(struct _cef_menu_model_delegate_t * delegate)1325 struct _cef_menu_model_t* cef_menu_model_create(
1326     struct _cef_menu_model_delegate_t* delegate) {
1327   return g_libcef_pointers.cef_menu_model_create(delegate);
1328 }
1329 
1330 NO_SANITIZE("cfi-icall")
cef_print_settings_create()1331 struct _cef_print_settings_t* cef_print_settings_create() {
1332   return g_libcef_pointers.cef_print_settings_create();
1333 }
1334 
1335 NO_SANITIZE("cfi-icall")
cef_process_message_create(const cef_string_t * name)1336 struct _cef_process_message_t* cef_process_message_create(
1337     const cef_string_t* name) {
1338   return g_libcef_pointers.cef_process_message_create(name);
1339 }
1340 
cef_request_create()1341 NO_SANITIZE("cfi-icall") struct _cef_request_t* cef_request_create() {
1342   return g_libcef_pointers.cef_request_create();
1343 }
1344 
cef_post_data_create()1345 NO_SANITIZE("cfi-icall") struct _cef_post_data_t* cef_post_data_create() {
1346   return g_libcef_pointers.cef_post_data_create();
1347 }
1348 
1349 NO_SANITIZE("cfi-icall")
cef_post_data_element_create()1350 struct _cef_post_data_element_t* cef_post_data_element_create() {
1351   return g_libcef_pointers.cef_post_data_element_create();
1352 }
1353 
1354 NO_SANITIZE("cfi-icall")
cef_request_context_get_global_context()1355 struct _cef_request_context_t* cef_request_context_get_global_context() {
1356   return g_libcef_pointers.cef_request_context_get_global_context();
1357 }
1358 
1359 NO_SANITIZE("cfi-icall")
cef_request_context_create_context(const struct _cef_request_context_settings_t * settings,struct _cef_request_context_handler_t * handler)1360 struct _cef_request_context_t* cef_request_context_create_context(
1361     const struct _cef_request_context_settings_t* settings,
1362     struct _cef_request_context_handler_t* handler) {
1363   return g_libcef_pointers.cef_request_context_create_context(settings,
1364                                                               handler);
1365 }
1366 
1367 NO_SANITIZE("cfi-icall")
cef_create_context_shared(struct _cef_request_context_t * other,struct _cef_request_context_handler_t * handler)1368 struct _cef_request_context_t* cef_create_context_shared(
1369     struct _cef_request_context_t* other,
1370     struct _cef_request_context_handler_t* handler) {
1371   return g_libcef_pointers.cef_create_context_shared(other, handler);
1372 }
1373 
1374 NO_SANITIZE("cfi-icall")
cef_resource_bundle_get_global()1375 struct _cef_resource_bundle_t* cef_resource_bundle_get_global() {
1376   return g_libcef_pointers.cef_resource_bundle_get_global();
1377 }
1378 
cef_response_create()1379 NO_SANITIZE("cfi-icall") struct _cef_response_t* cef_response_create() {
1380   return g_libcef_pointers.cef_response_create();
1381 }
1382 
1383 NO_SANITIZE("cfi-icall")
cef_server_create(const cef_string_t * address,uint16 port,int backlog,struct _cef_server_handler_t * handler)1384 void cef_server_create(const cef_string_t* address,
1385                        uint16 port,
1386                        int backlog,
1387                        struct _cef_server_handler_t* handler) {
1388   g_libcef_pointers.cef_server_create(address, port, backlog, handler);
1389 }
1390 
1391 NO_SANITIZE("cfi-icall")
cef_stream_reader_create_for_file(const cef_string_t * fileName)1392 struct _cef_stream_reader_t* cef_stream_reader_create_for_file(
1393     const cef_string_t* fileName) {
1394   return g_libcef_pointers.cef_stream_reader_create_for_file(fileName);
1395 }
1396 
1397 NO_SANITIZE("cfi-icall")
cef_stream_reader_create_for_data(void * data,size_t size)1398 struct _cef_stream_reader_t* cef_stream_reader_create_for_data(void* data,
1399                                                                size_t size) {
1400   return g_libcef_pointers.cef_stream_reader_create_for_data(data, size);
1401 }
1402 
1403 NO_SANITIZE("cfi-icall")
cef_stream_reader_create_for_handler(struct _cef_read_handler_t * handler)1404 struct _cef_stream_reader_t* cef_stream_reader_create_for_handler(
1405     struct _cef_read_handler_t* handler) {
1406   return g_libcef_pointers.cef_stream_reader_create_for_handler(handler);
1407 }
1408 
1409 NO_SANITIZE("cfi-icall")
cef_stream_writer_create_for_file(const cef_string_t * fileName)1410 struct _cef_stream_writer_t* cef_stream_writer_create_for_file(
1411     const cef_string_t* fileName) {
1412   return g_libcef_pointers.cef_stream_writer_create_for_file(fileName);
1413 }
1414 
1415 NO_SANITIZE("cfi-icall")
cef_stream_writer_create_for_handler(struct _cef_write_handler_t * handler)1416 struct _cef_stream_writer_t* cef_stream_writer_create_for_handler(
1417     struct _cef_write_handler_t* handler) {
1418   return g_libcef_pointers.cef_stream_writer_create_for_handler(handler);
1419 }
1420 
1421 NO_SANITIZE("cfi-icall")
cef_task_runner_get_for_current_thread()1422 struct _cef_task_runner_t* cef_task_runner_get_for_current_thread() {
1423   return g_libcef_pointers.cef_task_runner_get_for_current_thread();
1424 }
1425 
1426 NO_SANITIZE("cfi-icall")
cef_task_runner_get_for_thread(cef_thread_id_t threadId)1427 struct _cef_task_runner_t* cef_task_runner_get_for_thread(
1428     cef_thread_id_t threadId) {
1429   return g_libcef_pointers.cef_task_runner_get_for_thread(threadId);
1430 }
1431 
1432 NO_SANITIZE("cfi-icall")
cef_thread_create(const cef_string_t * display_name,cef_thread_priority_t priority,cef_message_loop_type_t message_loop_type,int stoppable,cef_com_init_mode_t com_init_mode)1433 struct _cef_thread_t* cef_thread_create(
1434     const cef_string_t* display_name,
1435     cef_thread_priority_t priority,
1436     cef_message_loop_type_t message_loop_type,
1437     int stoppable,
1438     cef_com_init_mode_t com_init_mode) {
1439   return g_libcef_pointers.cef_thread_create(
1440       display_name, priority, message_loop_type, stoppable, com_init_mode);
1441 }
1442 
1443 NO_SANITIZE("cfi-icall")
cef_urlrequest_create(struct _cef_request_t * request,struct _cef_urlrequest_client_t * client,struct _cef_request_context_t * request_context)1444 struct _cef_urlrequest_t* cef_urlrequest_create(
1445     struct _cef_request_t* request,
1446     struct _cef_urlrequest_client_t* client,
1447     struct _cef_request_context_t* request_context) {
1448   return g_libcef_pointers.cef_urlrequest_create(request, client,
1449                                                  request_context);
1450 }
1451 
1452 NO_SANITIZE("cfi-icall")
cef_v8context_get_current_context()1453 struct _cef_v8context_t* cef_v8context_get_current_context() {
1454   return g_libcef_pointers.cef_v8context_get_current_context();
1455 }
1456 
1457 NO_SANITIZE("cfi-icall")
cef_v8context_get_entered_context()1458 struct _cef_v8context_t* cef_v8context_get_entered_context() {
1459   return g_libcef_pointers.cef_v8context_get_entered_context();
1460 }
1461 
cef_v8context_in_context()1462 NO_SANITIZE("cfi-icall") int cef_v8context_in_context() {
1463   return g_libcef_pointers.cef_v8context_in_context();
1464 }
1465 
cef_v8value_create_undefined()1466 NO_SANITIZE("cfi-icall") struct _cef_v8value_t* cef_v8value_create_undefined() {
1467   return g_libcef_pointers.cef_v8value_create_undefined();
1468 }
1469 
cef_v8value_create_null()1470 NO_SANITIZE("cfi-icall") struct _cef_v8value_t* cef_v8value_create_null() {
1471   return g_libcef_pointers.cef_v8value_create_null();
1472 }
1473 
1474 NO_SANITIZE("cfi-icall")
cef_v8value_create_bool(int value)1475 struct _cef_v8value_t* cef_v8value_create_bool(int value) {
1476   return g_libcef_pointers.cef_v8value_create_bool(value);
1477 }
1478 
1479 NO_SANITIZE("cfi-icall")
cef_v8value_create_int(int32 value)1480 struct _cef_v8value_t* cef_v8value_create_int(int32 value) {
1481   return g_libcef_pointers.cef_v8value_create_int(value);
1482 }
1483 
1484 NO_SANITIZE("cfi-icall")
cef_v8value_create_uint(uint32 value)1485 struct _cef_v8value_t* cef_v8value_create_uint(uint32 value) {
1486   return g_libcef_pointers.cef_v8value_create_uint(value);
1487 }
1488 
1489 NO_SANITIZE("cfi-icall")
cef_v8value_create_double(double value)1490 struct _cef_v8value_t* cef_v8value_create_double(double value) {
1491   return g_libcef_pointers.cef_v8value_create_double(value);
1492 }
1493 
1494 NO_SANITIZE("cfi-icall")
cef_v8value_create_date(const cef_time_t * date)1495 struct _cef_v8value_t* cef_v8value_create_date(const cef_time_t* date) {
1496   return g_libcef_pointers.cef_v8value_create_date(date);
1497 }
1498 
1499 NO_SANITIZE("cfi-icall")
cef_v8value_create_string(const cef_string_t * value)1500 struct _cef_v8value_t* cef_v8value_create_string(const cef_string_t* value) {
1501   return g_libcef_pointers.cef_v8value_create_string(value);
1502 }
1503 
1504 NO_SANITIZE("cfi-icall")
cef_v8value_create_object(struct _cef_v8accessor_t * accessor,struct _cef_v8interceptor_t * interceptor)1505 struct _cef_v8value_t* cef_v8value_create_object(
1506     struct _cef_v8accessor_t* accessor,
1507     struct _cef_v8interceptor_t* interceptor) {
1508   return g_libcef_pointers.cef_v8value_create_object(accessor, interceptor);
1509 }
1510 
1511 NO_SANITIZE("cfi-icall")
cef_v8value_create_array(int length)1512 struct _cef_v8value_t* cef_v8value_create_array(int length) {
1513   return g_libcef_pointers.cef_v8value_create_array(length);
1514 }
1515 
1516 NO_SANITIZE("cfi-icall")
cef_v8value_create_array_buffer(void * buffer,size_t length,struct _cef_v8array_buffer_release_callback_t * release_callback)1517 struct _cef_v8value_t* cef_v8value_create_array_buffer(
1518     void* buffer,
1519     size_t length,
1520     struct _cef_v8array_buffer_release_callback_t* release_callback) {
1521   return g_libcef_pointers.cef_v8value_create_array_buffer(buffer, length,
1522                                                            release_callback);
1523 }
1524 
1525 NO_SANITIZE("cfi-icall")
cef_v8value_create_function(const cef_string_t * name,struct _cef_v8handler_t * handler)1526 struct _cef_v8value_t* cef_v8value_create_function(
1527     const cef_string_t* name,
1528     struct _cef_v8handler_t* handler) {
1529   return g_libcef_pointers.cef_v8value_create_function(name, handler);
1530 }
1531 
1532 NO_SANITIZE("cfi-icall")
cef_v8stack_trace_get_current(int frame_limit)1533 struct _cef_v8stack_trace_t* cef_v8stack_trace_get_current(int frame_limit) {
1534   return g_libcef_pointers.cef_v8stack_trace_get_current(frame_limit);
1535 }
1536 
cef_value_create()1537 NO_SANITIZE("cfi-icall") struct _cef_value_t* cef_value_create() {
1538   return g_libcef_pointers.cef_value_create();
1539 }
1540 
1541 NO_SANITIZE("cfi-icall")
cef_binary_value_create(const void * data,size_t data_size)1542 struct _cef_binary_value_t* cef_binary_value_create(const void* data,
1543                                                     size_t data_size) {
1544   return g_libcef_pointers.cef_binary_value_create(data, data_size);
1545 }
1546 
1547 NO_SANITIZE("cfi-icall")
cef_dictionary_value_create()1548 struct _cef_dictionary_value_t* cef_dictionary_value_create() {
1549   return g_libcef_pointers.cef_dictionary_value_create();
1550 }
1551 
cef_list_value_create()1552 NO_SANITIZE("cfi-icall") struct _cef_list_value_t* cef_list_value_create() {
1553   return g_libcef_pointers.cef_list_value_create();
1554 }
1555 
1556 NO_SANITIZE("cfi-icall")
cef_waitable_event_create(int automatic_reset,int initially_signaled)1557 struct _cef_waitable_event_t* cef_waitable_event_create(
1558     int automatic_reset,
1559     int initially_signaled) {
1560   return g_libcef_pointers.cef_waitable_event_create(automatic_reset,
1561                                                      initially_signaled);
1562 }
1563 
1564 NO_SANITIZE("cfi-icall")
cef_xml_reader_create(struct _cef_stream_reader_t * stream,cef_xml_encoding_type_t encodingType,const cef_string_t * URI)1565 struct _cef_xml_reader_t* cef_xml_reader_create(
1566     struct _cef_stream_reader_t* stream,
1567     cef_xml_encoding_type_t encodingType,
1568     const cef_string_t* URI) {
1569   return g_libcef_pointers.cef_xml_reader_create(stream, encodingType, URI);
1570 }
1571 
1572 NO_SANITIZE("cfi-icall")
cef_zip_reader_create(struct _cef_stream_reader_t * stream)1573 struct _cef_zip_reader_t* cef_zip_reader_create(
1574     struct _cef_stream_reader_t* stream) {
1575   return g_libcef_pointers.cef_zip_reader_create(stream);
1576 }
1577 
1578 NO_SANITIZE("cfi-icall")
cef_translator_test_create()1579 struct _cef_translator_test_t* cef_translator_test_create() {
1580   return g_libcef_pointers.cef_translator_test_create();
1581 }
1582 
1583 NO_SANITIZE("cfi-icall")
1584 struct _cef_translator_test_ref_ptr_library_t*
cef_translator_test_ref_ptr_library_create(int value)1585 cef_translator_test_ref_ptr_library_create(int value) {
1586   return g_libcef_pointers.cef_translator_test_ref_ptr_library_create(value);
1587 }
1588 
1589 NO_SANITIZE("cfi-icall")
1590 struct _cef_translator_test_ref_ptr_library_child_t*
cef_translator_test_ref_ptr_library_child_create(int value,int other_value)1591 cef_translator_test_ref_ptr_library_child_create(int value, int other_value) {
1592   return g_libcef_pointers.cef_translator_test_ref_ptr_library_child_create(
1593       value, other_value);
1594 }
1595 
1596 NO_SANITIZE("cfi-icall")
1597 struct _cef_translator_test_ref_ptr_library_child_child_t*
cef_translator_test_ref_ptr_library_child_child_create(int value,int other_value,int other_other_value)1598 cef_translator_test_ref_ptr_library_child_child_create(int value,
1599                                                        int other_value,
1600                                                        int other_other_value) {
1601   return g_libcef_pointers
1602       .cef_translator_test_ref_ptr_library_child_child_create(
1603           value, other_value, other_other_value);
1604 }
1605 
1606 NO_SANITIZE("cfi-icall")
1607 struct _cef_translator_test_scoped_library_t*
cef_translator_test_scoped_library_create(int value)1608 cef_translator_test_scoped_library_create(int value) {
1609   return g_libcef_pointers.cef_translator_test_scoped_library_create(value);
1610 }
1611 
1612 NO_SANITIZE("cfi-icall")
1613 struct _cef_translator_test_scoped_library_child_t*
cef_translator_test_scoped_library_child_create(int value,int other_value)1614 cef_translator_test_scoped_library_child_create(int value, int other_value) {
1615   return g_libcef_pointers.cef_translator_test_scoped_library_child_create(
1616       value, other_value);
1617 }
1618 
1619 NO_SANITIZE("cfi-icall")
1620 struct _cef_translator_test_scoped_library_child_child_t*
cef_translator_test_scoped_library_child_child_create(int value,int other_value,int other_other_value)1621 cef_translator_test_scoped_library_child_child_create(int value,
1622                                                       int other_value,
1623                                                       int other_other_value) {
1624   return g_libcef_pointers
1625       .cef_translator_test_scoped_library_child_child_create(value, other_value,
1626                                                              other_other_value);
1627 }
1628 
1629 NO_SANITIZE("cfi-icall")
cef_browser_view_create(struct _cef_client_t * client,const cef_string_t * url,const struct _cef_browser_settings_t * settings,struct _cef_dictionary_value_t * extra_info,struct _cef_request_context_t * request_context,struct _cef_browser_view_delegate_t * delegate)1630 struct _cef_browser_view_t* cef_browser_view_create(
1631     struct _cef_client_t* client,
1632     const cef_string_t* url,
1633     const struct _cef_browser_settings_t* settings,
1634     struct _cef_dictionary_value_t* extra_info,
1635     struct _cef_request_context_t* request_context,
1636     struct _cef_browser_view_delegate_t* delegate) {
1637   return g_libcef_pointers.cef_browser_view_create(
1638       client, url, settings, extra_info, request_context, delegate);
1639 }
1640 
1641 NO_SANITIZE("cfi-icall")
cef_browser_view_get_for_browser(struct _cef_browser_t * browser)1642 struct _cef_browser_view_t* cef_browser_view_get_for_browser(
1643     struct _cef_browser_t* browser) {
1644   return g_libcef_pointers.cef_browser_view_get_for_browser(browser);
1645 }
1646 
cef_display_get_primary()1647 NO_SANITIZE("cfi-icall") struct _cef_display_t* cef_display_get_primary() {
1648   return g_libcef_pointers.cef_display_get_primary();
1649 }
1650 
1651 NO_SANITIZE("cfi-icall")
cef_display_get_nearest_point(const cef_point_t * point,int input_pixel_coords)1652 struct _cef_display_t* cef_display_get_nearest_point(const cef_point_t* point,
1653                                                      int input_pixel_coords) {
1654   return g_libcef_pointers.cef_display_get_nearest_point(point,
1655                                                          input_pixel_coords);
1656 }
1657 
1658 NO_SANITIZE("cfi-icall")
cef_display_get_matching_bounds(const cef_rect_t * bounds,int input_pixel_coords)1659 struct _cef_display_t* cef_display_get_matching_bounds(const cef_rect_t* bounds,
1660                                                        int input_pixel_coords) {
1661   return g_libcef_pointers.cef_display_get_matching_bounds(bounds,
1662                                                            input_pixel_coords);
1663 }
1664 
cef_display_get_count()1665 NO_SANITIZE("cfi-icall") size_t cef_display_get_count() {
1666   return g_libcef_pointers.cef_display_get_count();
1667 }
1668 
1669 NO_SANITIZE("cfi-icall")
cef_display_get_alls(size_t * displaysCount,struct _cef_display_t ** displays)1670 void cef_display_get_alls(size_t* displaysCount,
1671                           struct _cef_display_t** displays) {
1672   g_libcef_pointers.cef_display_get_alls(displaysCount, displays);
1673 }
1674 
1675 NO_SANITIZE("cfi-icall")
cef_label_button_create(struct _cef_button_delegate_t * delegate,const cef_string_t * text)1676 struct _cef_label_button_t* cef_label_button_create(
1677     struct _cef_button_delegate_t* delegate,
1678     const cef_string_t* text) {
1679   return g_libcef_pointers.cef_label_button_create(delegate, text);
1680 }
1681 
1682 NO_SANITIZE("cfi-icall")
cef_menu_button_create(struct _cef_menu_button_delegate_t * delegate,const cef_string_t * text)1683 struct _cef_menu_button_t* cef_menu_button_create(
1684     struct _cef_menu_button_delegate_t* delegate,
1685     const cef_string_t* text) {
1686   return g_libcef_pointers.cef_menu_button_create(delegate, text);
1687 }
1688 
1689 NO_SANITIZE("cfi-icall")
cef_panel_create(struct _cef_panel_delegate_t * delegate)1690 struct _cef_panel_t* cef_panel_create(struct _cef_panel_delegate_t* delegate) {
1691   return g_libcef_pointers.cef_panel_create(delegate);
1692 }
1693 
1694 NO_SANITIZE("cfi-icall")
cef_scroll_view_create(struct _cef_view_delegate_t * delegate)1695 struct _cef_scroll_view_t* cef_scroll_view_create(
1696     struct _cef_view_delegate_t* delegate) {
1697   return g_libcef_pointers.cef_scroll_view_create(delegate);
1698 }
1699 
1700 NO_SANITIZE("cfi-icall")
cef_textfield_create(struct _cef_textfield_delegate_t * delegate)1701 struct _cef_textfield_t* cef_textfield_create(
1702     struct _cef_textfield_delegate_t* delegate) {
1703   return g_libcef_pointers.cef_textfield_create(delegate);
1704 }
1705 
1706 NO_SANITIZE("cfi-icall")
cef_window_create_top_level(struct _cef_window_delegate_t * delegate)1707 struct _cef_window_t* cef_window_create_top_level(
1708     struct _cef_window_delegate_t* delegate) {
1709   return g_libcef_pointers.cef_window_create_top_level(delegate);
1710 }
1711 
cef_api_hash(int entry)1712 NO_SANITIZE("cfi-icall") const char* cef_api_hash(int entry) {
1713   return g_libcef_pointers.cef_api_hash(entry);
1714 }
1715 
cef_version_info(int entry)1716 NO_SANITIZE("cfi-icall") int cef_version_info(int entry) {
1717   return g_libcef_pointers.cef_version_info(entry);
1718 }
1719 
cef_get_min_log_level()1720 NO_SANITIZE("cfi-icall") int cef_get_min_log_level() {
1721   return g_libcef_pointers.cef_get_min_log_level();
1722 }
1723 
1724 NO_SANITIZE("cfi-icall")
cef_get_vlog_level(const char * file_start,size_t N)1725 int cef_get_vlog_level(const char* file_start, size_t N) {
1726   return g_libcef_pointers.cef_get_vlog_level(file_start, N);
1727 }
1728 
1729 NO_SANITIZE("cfi-icall")
cef_log(const char * file,int line,int severity,const char * message)1730 void cef_log(const char* file, int line, int severity, const char* message) {
1731   g_libcef_pointers.cef_log(file, line, severity, message);
1732 }
1733 
cef_string_list_alloc()1734 NO_SANITIZE("cfi-icall") cef_string_list_t cef_string_list_alloc() {
1735   return g_libcef_pointers.cef_string_list_alloc();
1736 }
1737 
cef_string_list_size(cef_string_list_t list)1738 NO_SANITIZE("cfi-icall") size_t cef_string_list_size(cef_string_list_t list) {
1739   return g_libcef_pointers.cef_string_list_size(list);
1740 }
1741 
1742 NO_SANITIZE("cfi-icall")
cef_string_list_value(cef_string_list_t list,size_t index,cef_string_t * value)1743 int cef_string_list_value(cef_string_list_t list,
1744                           size_t index,
1745                           cef_string_t* value) {
1746   return g_libcef_pointers.cef_string_list_value(list, index, value);
1747 }
1748 
1749 NO_SANITIZE("cfi-icall")
cef_string_list_append(cef_string_list_t list,const cef_string_t * value)1750 void cef_string_list_append(cef_string_list_t list, const cef_string_t* value) {
1751   g_libcef_pointers.cef_string_list_append(list, value);
1752 }
1753 
cef_string_list_clear(cef_string_list_t list)1754 NO_SANITIZE("cfi-icall") void cef_string_list_clear(cef_string_list_t list) {
1755   g_libcef_pointers.cef_string_list_clear(list);
1756 }
1757 
cef_string_list_free(cef_string_list_t list)1758 NO_SANITIZE("cfi-icall") void cef_string_list_free(cef_string_list_t list) {
1759   g_libcef_pointers.cef_string_list_free(list);
1760 }
1761 
1762 NO_SANITIZE("cfi-icall")
cef_string_list_copy(cef_string_list_t list)1763 cef_string_list_t cef_string_list_copy(cef_string_list_t list) {
1764   return g_libcef_pointers.cef_string_list_copy(list);
1765 }
1766 
cef_string_map_alloc()1767 NO_SANITIZE("cfi-icall") cef_string_map_t cef_string_map_alloc() {
1768   return g_libcef_pointers.cef_string_map_alloc();
1769 }
1770 
cef_string_map_size(cef_string_map_t map)1771 NO_SANITIZE("cfi-icall") size_t cef_string_map_size(cef_string_map_t map) {
1772   return g_libcef_pointers.cef_string_map_size(map);
1773 }
1774 
1775 NO_SANITIZE("cfi-icall")
cef_string_map_find(cef_string_map_t map,const cef_string_t * key,cef_string_t * value)1776 int cef_string_map_find(cef_string_map_t map,
1777                         const cef_string_t* key,
1778                         cef_string_t* value) {
1779   return g_libcef_pointers.cef_string_map_find(map, key, value);
1780 }
1781 
1782 NO_SANITIZE("cfi-icall")
cef_string_map_key(cef_string_map_t map,size_t index,cef_string_t * key)1783 int cef_string_map_key(cef_string_map_t map, size_t index, cef_string_t* key) {
1784   return g_libcef_pointers.cef_string_map_key(map, index, key);
1785 }
1786 
1787 NO_SANITIZE("cfi-icall")
cef_string_map_value(cef_string_map_t map,size_t index,cef_string_t * value)1788 int cef_string_map_value(cef_string_map_t map,
1789                          size_t index,
1790                          cef_string_t* value) {
1791   return g_libcef_pointers.cef_string_map_value(map, index, value);
1792 }
1793 
1794 NO_SANITIZE("cfi-icall")
cef_string_map_append(cef_string_map_t map,const cef_string_t * key,const cef_string_t * value)1795 int cef_string_map_append(cef_string_map_t map,
1796                           const cef_string_t* key,
1797                           const cef_string_t* value) {
1798   return g_libcef_pointers.cef_string_map_append(map, key, value);
1799 }
1800 
cef_string_map_clear(cef_string_map_t map)1801 NO_SANITIZE("cfi-icall") void cef_string_map_clear(cef_string_map_t map) {
1802   g_libcef_pointers.cef_string_map_clear(map);
1803 }
1804 
cef_string_map_free(cef_string_map_t map)1805 NO_SANITIZE("cfi-icall") void cef_string_map_free(cef_string_map_t map) {
1806   g_libcef_pointers.cef_string_map_free(map);
1807 }
1808 
cef_string_multimap_alloc()1809 NO_SANITIZE("cfi-icall") cef_string_multimap_t cef_string_multimap_alloc() {
1810   return g_libcef_pointers.cef_string_multimap_alloc();
1811 }
1812 
1813 NO_SANITIZE("cfi-icall")
cef_string_multimap_size(cef_string_multimap_t map)1814 size_t cef_string_multimap_size(cef_string_multimap_t map) {
1815   return g_libcef_pointers.cef_string_multimap_size(map);
1816 }
1817 
1818 NO_SANITIZE("cfi-icall")
cef_string_multimap_find_count(cef_string_multimap_t map,const cef_string_t * key)1819 size_t cef_string_multimap_find_count(cef_string_multimap_t map,
1820                                       const cef_string_t* key) {
1821   return g_libcef_pointers.cef_string_multimap_find_count(map, key);
1822 }
1823 
1824 NO_SANITIZE("cfi-icall")
cef_string_multimap_enumerate(cef_string_multimap_t map,const cef_string_t * key,size_t value_index,cef_string_t * value)1825 int cef_string_multimap_enumerate(cef_string_multimap_t map,
1826                                   const cef_string_t* key,
1827                                   size_t value_index,
1828                                   cef_string_t* value) {
1829   return g_libcef_pointers.cef_string_multimap_enumerate(map, key, value_index,
1830                                                          value);
1831 }
1832 
1833 NO_SANITIZE("cfi-icall")
cef_string_multimap_key(cef_string_multimap_t map,size_t index,cef_string_t * key)1834 int cef_string_multimap_key(cef_string_multimap_t map,
1835                             size_t index,
1836                             cef_string_t* key) {
1837   return g_libcef_pointers.cef_string_multimap_key(map, index, key);
1838 }
1839 
1840 NO_SANITIZE("cfi-icall")
cef_string_multimap_value(cef_string_multimap_t map,size_t index,cef_string_t * value)1841 int cef_string_multimap_value(cef_string_multimap_t map,
1842                               size_t index,
1843                               cef_string_t* value) {
1844   return g_libcef_pointers.cef_string_multimap_value(map, index, value);
1845 }
1846 
1847 NO_SANITIZE("cfi-icall")
cef_string_multimap_append(cef_string_multimap_t map,const cef_string_t * key,const cef_string_t * value)1848 int cef_string_multimap_append(cef_string_multimap_t map,
1849                                const cef_string_t* key,
1850                                const cef_string_t* value) {
1851   return g_libcef_pointers.cef_string_multimap_append(map, key, value);
1852 }
1853 
1854 NO_SANITIZE("cfi-icall")
cef_string_multimap_clear(cef_string_multimap_t map)1855 void cef_string_multimap_clear(cef_string_multimap_t map) {
1856   g_libcef_pointers.cef_string_multimap_clear(map);
1857 }
1858 
1859 NO_SANITIZE("cfi-icall")
cef_string_multimap_free(cef_string_multimap_t map)1860 void cef_string_multimap_free(cef_string_multimap_t map) {
1861   g_libcef_pointers.cef_string_multimap_free(map);
1862 }
1863 
1864 NO_SANITIZE("cfi-icall")
cef_string_wide_set(const wchar_t * src,size_t src_len,cef_string_wide_t * output,int copy)1865 int cef_string_wide_set(const wchar_t* src,
1866                         size_t src_len,
1867                         cef_string_wide_t* output,
1868                         int copy) {
1869   return g_libcef_pointers.cef_string_wide_set(src, src_len, output, copy);
1870 }
1871 
1872 NO_SANITIZE("cfi-icall")
cef_string_utf8_set(const char * src,size_t src_len,cef_string_utf8_t * output,int copy)1873 int cef_string_utf8_set(const char* src,
1874                         size_t src_len,
1875                         cef_string_utf8_t* output,
1876                         int copy) {
1877   return g_libcef_pointers.cef_string_utf8_set(src, src_len, output, copy);
1878 }
1879 
1880 NO_SANITIZE("cfi-icall")
cef_string_utf16_set(const char16 * src,size_t src_len,cef_string_utf16_t * output,int copy)1881 int cef_string_utf16_set(const char16* src,
1882                          size_t src_len,
1883                          cef_string_utf16_t* output,
1884                          int copy) {
1885   return g_libcef_pointers.cef_string_utf16_set(src, src_len, output, copy);
1886 }
1887 
cef_string_wide_clear(cef_string_wide_t * str)1888 NO_SANITIZE("cfi-icall") void cef_string_wide_clear(cef_string_wide_t* str) {
1889   g_libcef_pointers.cef_string_wide_clear(str);
1890 }
1891 
cef_string_utf8_clear(cef_string_utf8_t * str)1892 NO_SANITIZE("cfi-icall") void cef_string_utf8_clear(cef_string_utf8_t* str) {
1893   g_libcef_pointers.cef_string_utf8_clear(str);
1894 }
1895 
cef_string_utf16_clear(cef_string_utf16_t * str)1896 NO_SANITIZE("cfi-icall") void cef_string_utf16_clear(cef_string_utf16_t* str) {
1897   g_libcef_pointers.cef_string_utf16_clear(str);
1898 }
1899 
1900 NO_SANITIZE("cfi-icall")
cef_string_wide_cmp(const cef_string_wide_t * str1,const cef_string_wide_t * str2)1901 int cef_string_wide_cmp(const cef_string_wide_t* str1,
1902                         const cef_string_wide_t* str2) {
1903   return g_libcef_pointers.cef_string_wide_cmp(str1, str2);
1904 }
1905 
1906 NO_SANITIZE("cfi-icall")
cef_string_utf8_cmp(const cef_string_utf8_t * str1,const cef_string_utf8_t * str2)1907 int cef_string_utf8_cmp(const cef_string_utf8_t* str1,
1908                         const cef_string_utf8_t* str2) {
1909   return g_libcef_pointers.cef_string_utf8_cmp(str1, str2);
1910 }
1911 
1912 NO_SANITIZE("cfi-icall")
cef_string_utf16_cmp(const cef_string_utf16_t * str1,const cef_string_utf16_t * str2)1913 int cef_string_utf16_cmp(const cef_string_utf16_t* str1,
1914                          const cef_string_utf16_t* str2) {
1915   return g_libcef_pointers.cef_string_utf16_cmp(str1, str2);
1916 }
1917 
1918 NO_SANITIZE("cfi-icall")
cef_string_wide_to_utf8(const wchar_t * src,size_t src_len,cef_string_utf8_t * output)1919 int cef_string_wide_to_utf8(const wchar_t* src,
1920                             size_t src_len,
1921                             cef_string_utf8_t* output) {
1922   return g_libcef_pointers.cef_string_wide_to_utf8(src, src_len, output);
1923 }
1924 
1925 NO_SANITIZE("cfi-icall")
cef_string_utf8_to_wide(const char * src,size_t src_len,cef_string_wide_t * output)1926 int cef_string_utf8_to_wide(const char* src,
1927                             size_t src_len,
1928                             cef_string_wide_t* output) {
1929   return g_libcef_pointers.cef_string_utf8_to_wide(src, src_len, output);
1930 }
1931 
1932 NO_SANITIZE("cfi-icall")
cef_string_wide_to_utf16(const wchar_t * src,size_t src_len,cef_string_utf16_t * output)1933 int cef_string_wide_to_utf16(const wchar_t* src,
1934                              size_t src_len,
1935                              cef_string_utf16_t* output) {
1936   return g_libcef_pointers.cef_string_wide_to_utf16(src, src_len, output);
1937 }
1938 
1939 NO_SANITIZE("cfi-icall")
cef_string_utf16_to_wide(const char16 * src,size_t src_len,cef_string_wide_t * output)1940 int cef_string_utf16_to_wide(const char16* src,
1941                              size_t src_len,
1942                              cef_string_wide_t* output) {
1943   return g_libcef_pointers.cef_string_utf16_to_wide(src, src_len, output);
1944 }
1945 
1946 NO_SANITIZE("cfi-icall")
cef_string_utf8_to_utf16(const char * src,size_t src_len,cef_string_utf16_t * output)1947 int cef_string_utf8_to_utf16(const char* src,
1948                              size_t src_len,
1949                              cef_string_utf16_t* output) {
1950   return g_libcef_pointers.cef_string_utf8_to_utf16(src, src_len, output);
1951 }
1952 
1953 NO_SANITIZE("cfi-icall")
cef_string_utf16_to_utf8(const char16 * src,size_t src_len,cef_string_utf8_t * output)1954 int cef_string_utf16_to_utf8(const char16* src,
1955                              size_t src_len,
1956                              cef_string_utf8_t* output) {
1957   return g_libcef_pointers.cef_string_utf16_to_utf8(src, src_len, output);
1958 }
1959 
1960 NO_SANITIZE("cfi-icall")
cef_string_ascii_to_wide(const char * src,size_t src_len,cef_string_wide_t * output)1961 int cef_string_ascii_to_wide(const char* src,
1962                              size_t src_len,
1963                              cef_string_wide_t* output) {
1964   return g_libcef_pointers.cef_string_ascii_to_wide(src, src_len, output);
1965 }
1966 
1967 NO_SANITIZE("cfi-icall")
cef_string_ascii_to_utf16(const char * src,size_t src_len,cef_string_utf16_t * output)1968 int cef_string_ascii_to_utf16(const char* src,
1969                               size_t src_len,
1970                               cef_string_utf16_t* output) {
1971   return g_libcef_pointers.cef_string_ascii_to_utf16(src, src_len, output);
1972 }
1973 
1974 NO_SANITIZE("cfi-icall")
cef_string_userfree_wide_alloc()1975 cef_string_userfree_wide_t cef_string_userfree_wide_alloc() {
1976   return g_libcef_pointers.cef_string_userfree_wide_alloc();
1977 }
1978 
1979 NO_SANITIZE("cfi-icall")
cef_string_userfree_utf8_alloc()1980 cef_string_userfree_utf8_t cef_string_userfree_utf8_alloc() {
1981   return g_libcef_pointers.cef_string_userfree_utf8_alloc();
1982 }
1983 
1984 NO_SANITIZE("cfi-icall")
cef_string_userfree_utf16_alloc()1985 cef_string_userfree_utf16_t cef_string_userfree_utf16_alloc() {
1986   return g_libcef_pointers.cef_string_userfree_utf16_alloc();
1987 }
1988 
1989 NO_SANITIZE("cfi-icall")
cef_string_userfree_wide_free(cef_string_userfree_wide_t str)1990 void cef_string_userfree_wide_free(cef_string_userfree_wide_t str) {
1991   g_libcef_pointers.cef_string_userfree_wide_free(str);
1992 }
1993 
1994 NO_SANITIZE("cfi-icall")
cef_string_userfree_utf8_free(cef_string_userfree_utf8_t str)1995 void cef_string_userfree_utf8_free(cef_string_userfree_utf8_t str) {
1996   g_libcef_pointers.cef_string_userfree_utf8_free(str);
1997 }
1998 
1999 NO_SANITIZE("cfi-icall")
cef_string_userfree_utf16_free(cef_string_userfree_utf16_t str)2000 void cef_string_userfree_utf16_free(cef_string_userfree_utf16_t str) {
2001   g_libcef_pointers.cef_string_userfree_utf16_free(str);
2002 }
2003 
2004 NO_SANITIZE("cfi-icall")
cef_string_utf16_to_lower(const char16 * src,size_t src_len,cef_string_utf16_t * output)2005 int cef_string_utf16_to_lower(const char16* src,
2006                               size_t src_len,
2007                               cef_string_utf16_t* output) {
2008   return g_libcef_pointers.cef_string_utf16_to_lower(src, src_len, output);
2009 }
2010 
2011 NO_SANITIZE("cfi-icall")
cef_string_utf16_to_upper(const char16 * src,size_t src_len,cef_string_utf16_t * output)2012 int cef_string_utf16_to_upper(const char16* src,
2013                               size_t src_len,
2014                               cef_string_utf16_t* output) {
2015   return g_libcef_pointers.cef_string_utf16_to_upper(src, src_len, output);
2016 }
2017 
2018 NO_SANITIZE("cfi-icall")
cef_get_current_platform_thread_id()2019 cef_platform_thread_id_t cef_get_current_platform_thread_id() {
2020   return g_libcef_pointers.cef_get_current_platform_thread_id();
2021 }
2022 
2023 NO_SANITIZE("cfi-icall")
cef_get_current_platform_thread_handle()2024 cef_platform_thread_handle_t cef_get_current_platform_thread_handle() {
2025   return g_libcef_pointers.cef_get_current_platform_thread_handle();
2026 }
2027 
2028 NO_SANITIZE("cfi-icall")
cef_time_to_timet(const cef_time_t * cef_time,time_t * time)2029 int cef_time_to_timet(const cef_time_t* cef_time, time_t* time) {
2030   return g_libcef_pointers.cef_time_to_timet(cef_time, time);
2031 }
2032 
2033 NO_SANITIZE("cfi-icall")
cef_time_from_timet(time_t time,cef_time_t * cef_time)2034 int cef_time_from_timet(time_t time, cef_time_t* cef_time) {
2035   return g_libcef_pointers.cef_time_from_timet(time, cef_time);
2036 }
2037 
2038 NO_SANITIZE("cfi-icall")
cef_time_to_doublet(const cef_time_t * cef_time,double * time)2039 int cef_time_to_doublet(const cef_time_t* cef_time, double* time) {
2040   return g_libcef_pointers.cef_time_to_doublet(cef_time, time);
2041 }
2042 
2043 NO_SANITIZE("cfi-icall")
cef_time_from_doublet(double time,cef_time_t * cef_time)2044 int cef_time_from_doublet(double time, cef_time_t* cef_time) {
2045   return g_libcef_pointers.cef_time_from_doublet(time, cef_time);
2046 }
2047 
cef_time_now(cef_time_t * cef_time)2048 NO_SANITIZE("cfi-icall") int cef_time_now(cef_time_t* cef_time) {
2049   return g_libcef_pointers.cef_time_now(cef_time);
2050 }
2051 
2052 NO_SANITIZE("cfi-icall")
cef_time_delta(const cef_time_t * cef_time1,const cef_time_t * cef_time2,long long * delta)2053 int cef_time_delta(const cef_time_t* cef_time1,
2054                    const cef_time_t* cef_time2,
2055                    long long* delta) {
2056   return g_libcef_pointers.cef_time_delta(cef_time1, cef_time2, delta);
2057 }
2058 
2059 NO_SANITIZE("cfi-icall")
cef_trace_event_instant(const char * category,const char * name,const char * arg1_name,uint64 arg1_val,const char * arg2_name,uint64 arg2_val,int copy)2060 void cef_trace_event_instant(const char* category,
2061                              const char* name,
2062                              const char* arg1_name,
2063                              uint64 arg1_val,
2064                              const char* arg2_name,
2065                              uint64 arg2_val,
2066                              int copy) {
2067   g_libcef_pointers.cef_trace_event_instant(category, name, arg1_name, arg1_val,
2068                                             arg2_name, arg2_val, copy);
2069 }
2070 
2071 NO_SANITIZE("cfi-icall")
cef_trace_event_begin(const char * category,const char * name,const char * arg1_name,uint64 arg1_val,const char * arg2_name,uint64 arg2_val,int copy)2072 void cef_trace_event_begin(const char* category,
2073                            const char* name,
2074                            const char* arg1_name,
2075                            uint64 arg1_val,
2076                            const char* arg2_name,
2077                            uint64 arg2_val,
2078                            int copy) {
2079   g_libcef_pointers.cef_trace_event_begin(category, name, arg1_name, arg1_val,
2080                                           arg2_name, arg2_val, copy);
2081 }
2082 
2083 NO_SANITIZE("cfi-icall")
cef_trace_event_end(const char * category,const char * name,const char * arg1_name,uint64 arg1_val,const char * arg2_name,uint64 arg2_val,int copy)2084 void cef_trace_event_end(const char* category,
2085                          const char* name,
2086                          const char* arg1_name,
2087                          uint64 arg1_val,
2088                          const char* arg2_name,
2089                          uint64 arg2_val,
2090                          int copy) {
2091   g_libcef_pointers.cef_trace_event_end(category, name, arg1_name, arg1_val,
2092                                         arg2_name, arg2_val, copy);
2093 }
2094 
2095 NO_SANITIZE("cfi-icall")
cef_trace_counter(const char * category,const char * name,const char * value1_name,uint64 value1_val,const char * value2_name,uint64 value2_val,int copy)2096 void cef_trace_counter(const char* category,
2097                        const char* name,
2098                        const char* value1_name,
2099                        uint64 value1_val,
2100                        const char* value2_name,
2101                        uint64 value2_val,
2102                        int copy) {
2103   g_libcef_pointers.cef_trace_counter(category, name, value1_name, value1_val,
2104                                       value2_name, value2_val, copy);
2105 }
2106 
2107 NO_SANITIZE("cfi-icall")
cef_trace_counter_id(const char * category,const char * name,uint64 id,const char * value1_name,uint64 value1_val,const char * value2_name,uint64 value2_val,int copy)2108 void cef_trace_counter_id(const char* category,
2109                           const char* name,
2110                           uint64 id,
2111                           const char* value1_name,
2112                           uint64 value1_val,
2113                           const char* value2_name,
2114                           uint64 value2_val,
2115                           int copy) {
2116   g_libcef_pointers.cef_trace_counter_id(category, name, id, value1_name,
2117                                          value1_val, value2_name, value2_val,
2118                                          copy);
2119 }
2120 
2121 NO_SANITIZE("cfi-icall")
cef_trace_event_async_begin(const char * category,const char * name,uint64 id,const char * arg1_name,uint64 arg1_val,const char * arg2_name,uint64 arg2_val,int copy)2122 void cef_trace_event_async_begin(const char* category,
2123                                  const char* name,
2124                                  uint64 id,
2125                                  const char* arg1_name,
2126                                  uint64 arg1_val,
2127                                  const char* arg2_name,
2128                                  uint64 arg2_val,
2129                                  int copy) {
2130   g_libcef_pointers.cef_trace_event_async_begin(
2131       category, name, id, arg1_name, arg1_val, arg2_name, arg2_val, copy);
2132 }
2133 
2134 NO_SANITIZE("cfi-icall")
cef_trace_event_async_step_into(const char * category,const char * name,uint64 id,uint64 step,const char * arg1_name,uint64 arg1_val,int copy)2135 void cef_trace_event_async_step_into(const char* category,
2136                                      const char* name,
2137                                      uint64 id,
2138                                      uint64 step,
2139                                      const char* arg1_name,
2140                                      uint64 arg1_val,
2141                                      int copy) {
2142   g_libcef_pointers.cef_trace_event_async_step_into(category, name, id, step,
2143                                                     arg1_name, arg1_val, copy);
2144 }
2145 
2146 NO_SANITIZE("cfi-icall")
cef_trace_event_async_step_past(const char * category,const char * name,uint64 id,uint64 step,const char * arg1_name,uint64 arg1_val,int copy)2147 void cef_trace_event_async_step_past(const char* category,
2148                                      const char* name,
2149                                      uint64 id,
2150                                      uint64 step,
2151                                      const char* arg1_name,
2152                                      uint64 arg1_val,
2153                                      int copy) {
2154   g_libcef_pointers.cef_trace_event_async_step_past(category, name, id, step,
2155                                                     arg1_name, arg1_val, copy);
2156 }
2157 
2158 NO_SANITIZE("cfi-icall")
cef_trace_event_async_end(const char * category,const char * name,uint64 id,const char * arg1_name,uint64 arg1_val,const char * arg2_name,uint64 arg2_val,int copy)2159 void cef_trace_event_async_end(const char* category,
2160                                const char* name,
2161                                uint64 id,
2162                                const char* arg1_name,
2163                                uint64 arg1_val,
2164                                const char* arg2_name,
2165                                uint64 arg2_val,
2166                                int copy) {
2167   g_libcef_pointers.cef_trace_event_async_end(
2168       category, name, id, arg1_name, arg1_val, arg2_name, arg2_val, copy);
2169 }
2170