1LIBDPKG_0 { 2global: 3 # Error reporting 4 dpkg_has_error; 5 dpkg_put_warn; 6 dpkg_put_error; 7 dpkg_put_errno; 8 dpkg_error_print; 9 dpkg_error_move; 10 dpkg_error_destroy; 11 12 # Charset and string functions 13 dpkg_locales_init; 14 15 # Program name 16 dpkg_set_progname; 17 dpkg_get_progname; 18 19 # Program setup/teardown 20 dpkg_program_init; 21 dpkg_program_done; 22 23 # Ar support 24 dpkg_ar_fdopen; 25 dpkg_ar_create; 26 dpkg_ar_open; 27 dpkg_ar_set_mtime; 28 dpkg_ar_close; 29 dpkg_ar_normalize_name; 30 dpkg_ar_member_is_illegal; 31 32local: 33 *; 34}; 35 36LIBDPKG_PRIVATE { 37 # Color handling 38 color_set_mode; 39 color_get; 40 color_reset; 41 42 # Error handling 43 push_error_context_jump; 44 push_error_context_func; 45 push_error_context; 46 pop_error_context; 47 print_fatal_error; 48 catch_fatal_error; 49 push_checkpoint; 50 push_cleanup; 51 push_cleanup_fallback; 52 pop_cleanup; 53 onerr_abort; # XXX variable, do not export 54 ohshitv; 55 ohshite; 56 ohshit; 57 do_internerr; 58 dpkg_set_report_piped_mode; 59 dpkg_set_report_buffer; 60 dpkg_warning_printer; 61 dpkg_set_warning_printer; 62 warning_get_count; 63 warningv; 64 warning; 65 notice; 66 info; 67 68 debug_set_output; 69 debug_set_mask; 70 debug_has_flag; 71 debug; 72 73 # Generic cleanup 74 cu_closepipe; 75 cu_closestream; 76 cu_closedir; 77 cu_closefd; 78 cu_filename; 79 80 # ‘Must do’ functions 81 m_malloc; 82 m_calloc; 83 m_realloc; 84 m_strdup; 85 m_vasprintf; 86 m_asprintf; 87 m_dup; 88 m_dup2; 89 m_pipe; 90 m_output; 91 fgets_must; 92 fgets_checked; 93 94 # Charset and string functions 95 c_isbits; 96 97 str_match_end; 98 str_fnv_hash; 99 str_concat; 100 str_fmt; 101 str_escape_fmt; 102 str_strip_quotes; 103 str_quote_meta; 104 str_width; 105 str_gen_crop; 106 107 # Variable buffer support 108 varbuf_new; 109 varbuf_init; 110 varbuf_reset; 111 varbuf_grow; 112 varbuf_trunc; 113 varbuf_add_char; 114 varbuf_dup_char; 115 varbuf_map_char; 116 varbuf_add_buf; 117 varbuf_get_str; 118 varbuf_end_str; 119 varbuf_printf; 120 varbuf_vprintf; 121 varbuf_detach; 122 varbuf_snapshot; 123 varbuf_rollback; 124 varbuf_destroy; 125 varbuf_free; 126 127 # Path, directory and file functions 128 secure_unlink_statted; 129 secure_unlink; 130 secure_remove; 131 path_remove_tree; 132 path_skip_slash_dotslash; 133 path_trim_slash_slashdot; 134 path_basename; 135 path_make_temp_template; 136 path_quote_filename; 137 138 dir_sync_path; 139 dir_sync_path_parent; 140 dir_sync_contents; 141 142 treenode_get_mode; 143 treenode_get_virtname; 144 treenode_get_pathname; 145 treewalk_open; 146 treewalk_node; 147 treewalk_next; 148 treewalk_close; 149 150 file_copy_perms; 151 file_show; 152 153 atomic_file_new; 154 atomic_file_open; 155 atomic_file_sync; 156 atomic_file_close; 157 atomic_file_commit; 158 atomic_file_remove; 159 atomic_file_free; 160 161 glob_list_prepend; 162 glob_list_free; 163 164 # Data structure functions 165 namevalue_find_by_name; 166 167 # Buffer I/O functions 168 fd_read; 169 fd_write; 170 fd_allocate_size; 171 buffer_digest; 172 buffer_skip_*; 173 buffer_copy_*; 174 175 # Subprocess and command handling 176 subproc_signals_ignore; 177 subproc_signals_cleanup; 178 subproc_signals_restore; 179 subproc_fork; 180 subproc_reap; 181 182 command_init; 183 command_add_arg; 184 command_add_argl; 185 command_add_argv; 186 command_add_args; 187 command_exec; 188 command_shell; 189 command_destroy; 190 191 pager_get_exec; 192 pager_spawn; 193 pager_reap; 194 195 setcloexec; 196 197 # Compression support 198 compressor_find_by_name; 199 compressor_find_by_extension; 200 compressor_get_name; 201 compressor_get_extension; 202 compressor_get_strategy; 203 compressor_check_params; 204 compress_filter; 205 decompress_filter; 206 207 # Ar support 208 dpkg_ar_put_magic; 209 dpkg_ar_member_put_header; 210 dpkg_ar_member_put_file; 211 dpkg_ar_member_put_mem; 212 dpkg_ar_member_get_size; 213 214 # deb version support 215 deb_version_parse; 216 217 # Configuration and command line handling 218 dpkg_options_load; 219 dpkg_options_parse; 220 dpkg_options_parse_arg_int; 221 dpkg_options_parse_pkgname; 222 badusage; 223 cipaction; # XXX variable, do not export 224 setaction; 225 setobsolete; 226 227 # General logging 228 log_file; # XXX variable, do not export 229 log_message; 230 231 # Action logging 232 statusfd_add; 233 statusfd_send; 234 235 # Progress report support 236 progress_init; 237 progress_step; 238 progress_done; 239 240 # Tar support 241 tar_atoul; 242 tar_atosl; 243 tar_extractor; 244 tar_entry_update_from_system; 245 246 # Non-freeing malloc (pool/arena) 247 nfmalloc; 248 nfstrnsave; 249 nfstrsave; 250 nffreeall; 251 252 # Version struct handling 253 dpkg_version_blank; 254 dpkg_version_is_informative; 255 dpkg_version_compare; 256 dpkg_version_relate; 257 versiondescribe; 258 parseversion; 259 260 # Architecture database 261 dpkg_arch_name_is_illegal; 262 dpkg_arch_describe; 263 dpkg_arch_find; 264 dpkg_arch_get; 265 dpkg_arch_get_list; 266 dpkg_arch_reset_list; 267 dpkg_arch_add; 268 dpkg_arch_unmark; 269 dpkg_arch_load_list; 270 dpkg_arch_save_list; 271 272 # Package struct handling 273 pkgset_blank; 274 pkgset_link_pkg; 275 pkgset_installed_instances; 276 pkg_blank; 277 pkgbin_blank; 278 pkg_name_is_illegal; 279 pkg_set_status; 280 pkg_set_eflags; 281 pkg_clear_eflags; 282 pkg_reset_eflags; 283 pkg_copy_eflags; 284 pkg_set_want; 285 pkg_is_informative; 286 copy_dependency_links; 287 pkg_sorter_by_nonambig_name_arch; 288 varbuf_add_pkgbin_name; 289 varbuf_add_archqual; 290 varbuf_add_source_version; 291 pkgbin_name; 292 pkg_name; 293 pkgbin_name_const; 294 pkg_name_const; 295 pkg_source_version; 296 pkgbin_synopsis; 297 pkg_abbrev_want; 298 pkg_abbrev_status; 299 pkg_abbrev_eflag; 300 pkg_want_name; 301 pkg_eflag_name; 302 pkg_status_name; 303 pkg_priority_name; 304 305 # Package list handling 306 pkg_list_new; 307 pkg_list_free; 308 pkg_list_prepend; 309 310 # Package array handling 311 pkg_array_init_from_hash; 312 pkg_array_init_from_names; 313 pkg_array_foreach; 314 pkg_array_sort; 315 pkg_array_destroy; 316 317 # Package queue handling 318 pkg_queue_init; 319 pkg_queue_destroy; 320 pkg_queue_is_empty; 321 pkg_queue_push; 322 pkg_queue_pop; 323 324 # Package in-core database functions 325 pkg_hash_find_set; 326 pkg_hash_find_singleton; 327 pkg_hash_find_pkg; 328 pkg_hash_count_set; 329 pkg_hash_count_pkg; 330 pkg_hash_reset; 331 pkg_hash_iter_new; 332 pkg_hash_iter_next_set; 333 pkg_hash_iter_next_pkg; 334 pkg_hash_iter_free; 335 336 # Package field handling 337 fieldinfos; # XXX variable, do not export 338 find_field_info; 339 find_arbfield_info; 340 341 # Package field format handling 342 pkg_format_parse; 343 pkg_format_show; 344 pkg_format_free; 345 346 # Package specifiers 347 pkg_spec_is_illegal; 348 pkg_spec_init; 349 pkg_spec_destroy; 350 pkg_spec_set; 351 pkg_spec_parse; 352 pkg_spec_match_pkg; 353 pkg_spec_parse_pkg; 354 pkg_spec_find_pkg; 355 pkg_spec_iter_init; 356 pkg_spec_iter_next_pkg; 357 pkg_spec_iter_destroy; 358 359 # Dependency and Conflict functions 360 pkg_virtual_deppossi_satisfied; 361 deparchsatisfied; 362 archsatisfied; 363 versionsatisfied; 364 365 # Package on-disk database functions 366 wantinfos; # XXX variable, do not export 367 varbuf_add_arbfield; 368 varbufdependency; 369 varbufrecord; 370 writerecord; 371 parsedb_new; 372 parsedb_open; 373 parsedb_load; 374 parsedb_parse; 375 parsedb_close; 376 parsedb; 377 writedb_records; 378 writedb; 379 380 dpkg_db_set_dir; 381 dpkg_db_get_dir; 382 dpkg_db_get_path; 383 384 # Log based package on-disk database support 385 modstatdb_init; 386 modstatdb_is_locked; 387 modstatdb_can_lock; 388 modstatdb_lock; 389 modstatdb_unlock; 390 modstatdb_open; 391 modstatdb_get_status; 392 modstatdb_note; 393 modstatdb_note_ifwrite; 394 modstatdb_checkpoint; 395 modstatdb_shutdown; 396 modstatdb_done; 397 398 # Package on-disk control database support 399 pkg_infodb_foreach; 400 pkg_infodb_get_dir; 401 pkg_infodb_get_file; 402 pkg_infodb_has_file; 403 pkg_infodb_upgrade; 404 405 # Package on-disk diversion database support 406 ensure_diversions; 407 408 # Filesystem node hash support 409 fsys_hash_init; 410 fsys_hash_reset; 411 fsys_hash_entries; 412 fsys_hash_find_node; 413 414 fsys_hash_iter_new; 415 fsys_hash_iter_next; 416 fsys_hash_iter_free; 417 418 fsys_hash_rev_iter_init; 419 fsys_hash_rev_iter_next; 420 fsys_hash_rev_iter_abort; 421 422 fsys_node_pkgs_iter_new; 423 fsys_node_pkgs_iter_next; 424 fsys_node_pkgs_iter_free; 425 426 dpkg_fsys_set_dir; 427 dpkg_fsys_get_dir; 428 dpkg_fsys_get_path; 429 430 # Package on-disk filesystem database support 431 parse_filehash; 432 write_filelist_except; 433 write_filehash_except; 434 ensure_packagefiles_available; 435 ensure_allinstfiles_available; 436 ensure_allinstfiles_available_quiet; 437 438 # Package on-disk stat override database support 439 statdb_parse_uid; 440 statdb_parse_gid; 441 statdb_parse_mode; 442 ensure_statoverrides; 443 444 # Triggers support 445 trig_name_is_illegal; 446 trigdef_set_methods; 447 trigdef_update_start; 448 trigdef_update_printf; 449 trigdef_parse; 450 trigdef_process_done; 451 trig_override_hooks; 452 trig_file_activate_byname; 453 trig_file_activate; 454 trig_path_activate; 455 trig_note_pend; 456 trig_note_aw; 457 trig_clear_awaiters; 458 trig_file_interests_ensure; 459 trig_file_interests_save; 460 trig_cicb_interest_delete; 461 trig_cicb_interest_add; 462 trig_parse_ci; 463 trig_cicb_statuschange_activate; 464 trig_incorporate; 465} LIBDPKG_0; 466