QMail function index

QMail function index
Generated by tools/catalog/gen-index.ps1; do not edit.
Scope: include/**/*.h plus src/update/update_download.h (public CMake include directory); src/**/*.c,cpp,h,hpp,inc static definitions.
Excludes deps and generated directories. Conditional branches are all indexed.
Limits: lexical C-style signatures; macro-generated functions, C++ methods/operators and function-pointer typedefs are not a complete ABI inventory.
Columns: kind | file:line | name | signature. Static names are file-qualified by their location.

public | include/api/api_rest.h:798 | rest_init | result_t rest_init(void)
public | include/api/api_rest.h:799 | rest_cleanup | void rest_cleanup(void)
public | include/api/api_rest.h:800 | load_raida_servers | result_t load_raida_servers(void)
public | include/api/api_rest.h:801 | save_config_file | result_t save_config_file(void)
public | include/api/api_rest.h:817 | config_seed_qmail_identity | void config_seed_qmail_identity(void)
public | include/api/api_rest.h:818 | config_persist_identity | void config_persist_identity(const struct qmail_identity *src)
public | include/api/api_rest.h:821 | get_wallet_path | void get_wallet_path(char *out, size_t size, const char *wallet_name)
public | include/api/api_rest.h:824 | create_directory | result_t create_directory(const char *path)
public | include/api/api_rest.h:825 | create_directory_recursive | result_t create_directory_recursive(const char *path)
public | include/api/api_rest.h:826 | directory_exists | bool directory_exists(const char *path)
public | include/api/api_rest.h:827 | file_exists | bool file_exists(const char *path)
public | include/api/api_rest.h:830 | network_init | result_t network_init(void)
public | include/api/api_rest.h:831 | network_cleanup | void network_cleanup(void)
public | include/api/api_rest.h:837 | generate_random_bytes | void generate_random_bytes(uint8_t *buffer, size_t length)
public | include/api/api_rest.h:839 | rest_protocol_generate_challenge | void rest_protocol_generate_challenge(uint8_t challenge[CHALLENGE_LENGTH])
public | include/api/api_rest.h:840 | rest_protocol_build_packet | result_t rest_protocol_build_packet(const protocol_request_t *request, uint8_t **packet_out, size_t *packet_size_out)
public | include/api/api_rest.h:842 | rest_protocol_parse_response | result_t rest_protocol_parse_response(const uint8_t *data, size_t data_size, const protocol_request_t *original_request, protocol_response_t *response_out)
public | include/api/api_rest.h:845 | rest_protocol_response_free | void rest_protocol_response_free(protocol_response_t *resp)
public | include/api/api_rest.h:856 | transport_send | result_t transport_send(rest_transport_t transport_type, const char *ip_address, uint16_t port, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, rest_transport_result_t *result_out)
public | include/api/api_rest.h:864 | cmd_echo | result_t cmd_echo(rest_transport_t transport_type, encryption_t enc_type, exec_mode_t mode, uint32_t timeout_ms, echo_task_t *task_out)
public | include/api/api_rest.h:867 | save_response_times | result_t save_response_times(const echo_task_t *task)
public | include/api/api_rest.h:868 | load_response_times | result_t load_response_times(raida_time_entry_t times[RAIDA_COUNT])
public | include/api/api_rest.h:871 | cmd_find_coin | result_t cmd_find_coin(const cloudcoin_t *coin, find_coin_result_t *result)
public | include/api/api_rest.h:873 | cmd_get_encryption_ticket | result_t cmd_get_encryption_ticket(uint8_t helper_id, uint8_t broken_raida_id, const rest_encryption_keys_t *keys, const uint8_t key_part[8], uint8_t encrypted_ticket[16])
public | include/api/api_rest.h:878 | cmd_fix_encryption | result_t cmd_fix_encryption(uint8_t broken_id, int8_t denomination, uint32_t serial_number, uint8_t helper1_id, const uint8_t ticket1[16], uint8_t helper2_id, const uint8_t ticket2[16], fix_raida_result_t *result)
public | include/api/api_rest.h:883 | cmd_fix_coin | result_t cmd_fix_coin(const cloudcoin_t *coin, uint32_t passed_mask, const rest_encryption_keys_t *keys, fix_coin_result_t *result)
public | include/api/api_rest.h:885 | cmd_fix_fracked_coin | result_t cmd_fix_fracked_coin(const cloudcoin_t *coin, uint32_t passed_mask, const rest_encryption_keys_t *keys, fix_coin_result_t *result)
public | include/api/api_rest.h:889 | cmd_make_change | result_t cmd_make_change(const char *wallet_path, int8_t denomination, make_change_result_t *result)
public | include/api/api_rest.h:892 | cmd_put_locker | result_t cmd_put_locker(const char *wallet_path, const cloudcoin_t *coins, int coin_count, const char *locker_key, put_locker_result_t *result)
public | include/api/api_rest.h:895 | cmd_peek_locker | result_t cmd_peek_locker(const char *locker_key, peek_locker_result_t *result)
public | include/api/api_rest.h:896 | cmd_download_locker | result_t cmd_download_locker(const char *wallet_path, const char *locker_key, download_locker_result_t *result)
public | include/api/api_rest.h:898 | cmd_health_check | result_t cmd_health_check(const char *wallet_path, health_check_result_t *result)
public | include/api/api_rest.h:910 | list_bin_files | int list_bin_files(const char *dir_path, char ***filenames, int max_files)
public | include/api/api_rest.h:911 | free_file_list | void free_file_list(char **filenames, int count)
public | include/api/api_rest.h:912 | coin_read_first | result_t coin_read_first(const char *dir_path, const char *filename, cloudcoin_t *coin_out)
public | include/api/api_rest.h:914 | coin_get_an | result_t coin_get_an(const cloudcoin_t *coin, uint8_t raida_id, uint8_t an_out[AN_LENGTH])
public | include/api/api_rest.h:916 | coin_denomination_value | uint64_t coin_denomination_value(int8_t denomination)
public | include/api/api_rest.h:918 | rest_coin_status_known | known_status_t rest_coin_status_known(uint8_t status)
public | include/api/api_rest.h:919 | coin_status_result | op_result_t coin_status_result(uint8_t status)
public | include/api/api_rest.h:920 | rest_coin_status_to_string | const char *rest_coin_status_to_string(uint8_t status)
public | include/api/api_rest.h:921 | coin_status_to_hex | char coin_status_to_hex(uint8_t status)
public | include/api/api_rest.h:925 | get_encryption_keys | result_t get_encryption_keys(rest_encryption_keys_t *keys_out)
public | include/api/api_rest.h:926 | coin_update_pown_nibble | result_t coin_update_pown_nibble(const char *dir_path, const char *filename, uint8_t raida_id, uint8_t new_status)
public | include/api/api_rest.h:928 | coin_create_bin | result_t coin_create_bin(const char *dir_path, int8_t denomination, uint32_t serial_number, const uint8_t ans[RAIDA_COUNT][AN_LENGTH], const uint8_t pown[RAIDA_COUNT])
public | include/api/api_rest.h:932 | handle_encryption_failures | result_t handle_encryption_failures(rest_encryption_keys_t *keys, const bool enc_failed[RAIDA_COUNT])
public | include/api/api_rest.h:934 | grade_coins | result_t grade_coins(const char *wallet_path, grade_results_t *results_out)
public | include/api/api_rest.h:935 | grade_code_to_string | const char *grade_code_to_string(grade_code_t code)
public | include/api/api_rest.h:939 | rest_crypto_aes128_ctr_crypt | result_t rest_crypto_aes128_ctr_crypt(const uint8_t key[16], const uint8_t nonce[8], uint8_t *data, size_t data_len)
public | include/api/api_rest.h:944 | rest_crypto_md5 | result_t rest_crypto_md5(const uint8_t *data, size_t len, uint8_t hash_out[16])
public | include/api/api_rest.h:945 | rest_crypto_derive_locker_key | void rest_crypto_derive_locker_key(uint8_t raida_id, const char *locker_key_str, uint8_t key_out[16])
public | include/api/api_rest.h:947 | rest_crypto_derive_locker_an | void rest_crypto_derive_locker_an(int8_t denomination, uint32_t serial_number, const uint8_t seed[16], uint8_t an_out[16])
public | include/api/api_rest.h:957 | status_code_to_string | const char *status_code_to_string(uint8_t code)
public | include/api/api_rest.h:960 | result_to_string | const char *result_to_string(result_t result)
public | include/api/api_rest.h:963 | json_init | void json_init(json_builder_t* jb)
public | include/api/api_rest.h:964 | json_get_string | const char* json_get_string(json_builder_t* jb)
public | include/api/api_rest.h:965 | json_object_begin | void json_object_begin(json_builder_t* jb)
public | include/api/api_rest.h:966 | json_object_end | void json_object_end(json_builder_t* jb)
public | include/api/api_rest.h:967 | json_array_begin | void json_array_begin(json_builder_t* jb)
public | include/api/api_rest.h:968 | json_array_end | void json_array_end(json_builder_t* jb)
public | include/api/api_rest.h:969 | json_key | void json_key(json_builder_t* jb, const char* key)
public | include/api/api_rest.h:970 | json_string | void json_string(json_builder_t* jb, const char* value)
public | include/api/api_rest.h:971 | json_number | void json_number(json_builder_t* jb, double value)
public | include/api/api_rest.h:972 | json_int | void json_int(json_builder_t* jb, int value)
public | include/api/api_rest.h:973 | json_int64 | void json_int64(json_builder_t* jb, int64_t value)
public | include/api/api_rest.h:974 | json_bool | void json_bool(json_builder_t* jb, bool value)
public | include/api/api_rest.h:975 | json_null | void json_null(json_builder_t* jb)
public | include/api/api_rest.h:976 | json_add_string | void json_add_string(json_builder_t* jb, const char* key, const char* value)
public | include/api/api_rest.h:977 | json_add_number | void json_add_number(json_builder_t* jb, const char* key, double value)
public | include/api/api_rest.h:978 | json_add_int | void json_add_int(json_builder_t* jb, const char* key, int value)
public | include/api/api_rest.h:979 | json_add_int64 | void json_add_int64(json_builder_t* jb, const char* key, int64_t value)
public | include/api/api_rest.h:980 | json_add_bool | void json_add_bool(json_builder_t* jb, const char* key, bool value)
public | include/api/api_rest.h:981 | json_add_null | void json_add_null(json_builder_t* jb, const char* key)
public | include/api/api_rest.h:988 | json_add_raw | void json_add_raw(json_builder_t* jb, const char* key, const char* raw_json)
public | include/api/api_rest.h:994 | json_add_cc_amount | void json_add_cc_amount(json_builder_t *jb, const char *key, uint64_t units)
public | include/api/api_rest.h:995 | json_success_response | void json_success_response(json_builder_t* jb, const char* command)
public | include/api/api_rest.h:996 | json_error_response | void json_error_response(json_builder_t* jb, const char* message, int code)
public | include/api/api_rest.h:999 | http_server_init | result_t http_server_init(http_server_t* server, uint16_t port, const char* host)
public | include/api/api_rest.h:1000 | http_server_start | result_t http_server_start(http_server_t* server)
public | include/api/api_rest.h:1001 | http_server_stop | void http_server_stop(http_server_t* server)
public | include/api/api_rest.h:1002 | http_server_destroy | void http_server_destroy(http_server_t* server)
public | include/api/api_rest.h:1003 | http_server_register_endpoint | result_t http_server_register_endpoint(http_server_t* server, const char* path, http_handler_func handler, void* user_data)
public | include/api/api_rest.h:1005 | http_server_run | void http_server_run(http_server_t* server)
public | include/api/api_rest.h:1006 | http_request_get_param | const char* http_request_get_param(http_request_t* request, const char* name)
public | include/api/api_rest.h:1007 | http_request_get_param_int | int http_request_get_param_int(http_request_t* request, const char* name, int default_value)
public | include/api/api_rest.h:1008 | http_request_get_param_multi | int http_request_get_param_multi(http_request_t* request, const char* name, const char** values_out, int max_values)
public | include/api/api_rest.h:1013 | http_param_parse_bool | bool http_param_parse_bool(const char *str)
public | include/api/api_rest.h:1014 | http_response_set_json | void http_response_set_json(http_response_t* response, json_builder_t* jb)
public | include/api/api_rest.h:1015 | http_response_set_binary | void http_response_set_binary(http_response_t* response, const void* data, size_t data_len, const char* content_type)
public | include/api/api_rest.h:1017 | http_response_set_file | void http_response_set_file(http_response_t *response, const char *path, const char *content_type, bool unlink_after_send)
public | include/api/api_rest.h:1019 | http_response_set_error | void http_response_set_error(http_response_t* response, const char* message, int code)
public | include/api/api_rest.h:1025 | http_response_set_json_owned | void http_response_set_json_owned(http_response_t* response, char* body, size_t body_length)
public | include/api/api_rest.h:1032 | locker_key_derive | void locker_key_derive(const char *locker_key, uint8_t locker_code[16])
public | include/api/api_rest.h:1035 | api_register_endpoints | void api_register_endpoints(http_server_t* server)
public | include/api/api_rest.h:1038 | command_adapter_init | void command_adapter_init(void)
public | include/api/api_rest.h:1039 | json_array_add_string | void json_array_add_string(json_builder_t *jb, const char *value)
public | include/api/node_policy.h:14 | core_node_policy_resolve | static void core_node_policy_resolve(core_node_policy_t *p)
public | include/api/node_policy.h:20 | core_node_policy_init | static void core_node_policy_init(core_node_policy_t *p, bool server)
public | include/api/node_policy.h:25 | core_node_policy_parse | static int core_node_policy_parse(core_node_policy_t *p, const char *key, const char *value)
public | include/api/node_policy.h:49 | core_node_health_due | static bool core_node_health_due(unsigned hours, int64_t last, int64_t now)
public | include/api/raida_task.h:151 | raida_task_init | result_t raida_task_init(raida_task_t *task, const char *task_id, uint64_t timeout_ms)
public | include/api/raida_task.h:158 | raida_task_free | void raida_task_free(raida_task_t *task)
public | include/api/raida_task.h:176 | raida_task_record_response | result_t raida_task_record_response(raida_task_t *task, int raida_index, task_node_status_t status, uint64_t response_ms)
public | include/api/raida_task.h:187 | raida_task_mark_timeouts | result_t raida_task_mark_timeouts(raida_task_t *task)
public | include/api/raida_task.h:202 | raida_task_update_timing | result_t raida_task_update_timing(raida_task_t *task)
public | include/api/raida_task.h:217 | raida_task_get_progress | int raida_task_get_progress(raida_task_t *task)
public | include/api/raida_task.h:225 | raida_task_is_complete | bool raida_task_is_complete(raida_task_t *task)
public | include/api/raida_task.h:235 | raida_task_get_responded | result_t raida_task_get_responded(raida_task_t *task, int *indices, int *count_out)
public | include/api/raida_task.h:245 | raida_task_get_pending | result_t raida_task_get_pending(raida_task_t *task, int *indices, int *count_out)
public | include/api/raida_task.h:263 | raida_task_write_json | result_t raida_task_write_json(raida_task_t *task, const char *filepath, const char *status, const char *message, const char *data_json)
public | include/api/raida_task.h:275 | raida_task_build_raida_json | int raida_task_build_raida_json(raida_task_t *task, char *buffer, size_t size)
public | include/api/raida_task.h:285 | raida_task_build_timing_json | int raida_task_build_timing_json(raida_task_t *task, char *buffer, size_t size)
public | include/api/raida_task.h:301 | raida_task_set_callback | void raida_task_set_callback(raida_task_t *task, void (*callback)(const char *task_id, void *user_data), void *user_data)
public | include/api/raida_task.h:314 | raida_task_get_time_ms | uint64_t raida_task_get_time_ms(void)
public | include/api/transport_adapter.h:39 | transport_adapter_map_type | transport_type_t transport_adapter_map_type(rest_transport_t rest_transport)
public | include/api/transport_adapter.h:47 | transport_adapter_map_type_reverse | rest_transport_t transport_adapter_map_type_reverse(transport_type_t core_transport)
public | include/api/transport_adapter.h:66 | transport_adapter_get | core_transport_t* transport_adapter_get(void)
public | include/api/transport_adapter.h:75 | transport_adapter_init | result_t transport_adapter_init(void)
public | include/api/transport_adapter.h:76 | transport_adapter_init_cached | result_t transport_adapter_init_cached(void)
public | include/api/transport_adapter.h:81 | transport_adapter_cleanup | void transport_adapter_cleanup(void)
public | include/api/transport_adapter.h:92 | transport_adapter_set_timeout | void transport_adapter_set_timeout(uint32_t timeout_ms)
public | include/api/transport_adapter.h:99 | transport_adapter_get_timeout | uint32_t transport_adapter_get_timeout(void)
public | include/cbdf/cbdf_annotations.h:22 | cbdf_annotations_strip | cbdf_status cbdf_annotations_strip(const uint8_t *bytes, size_t len, cbdf_arena *arena, cbdf_slice *out)
public | include/cbdf/cbdf_annotations.h:34 | cbdf_annotations_apply | cbdf_status cbdf_annotations_apply(cbdf_doc *doc, cbdf_arena *arena, const uint8_t *keys, const cbdf_slice *values, size_t count)
public | include/cbdf/cbdf_compress.h:23 | cbdf_zlib_inflate_exact | cbdf_status cbdf_zlib_inflate_exact(const uint8_t *comp, size_t comp_len, size_t decomp_len, cbdf_arena *arena, uint8_t **out, size_t *out_len)
public | include/cbdf/cbdf_compress.h:31 | cbdf_zlib_deflate_level9 | cbdf_status cbdf_zlib_deflate_level9(const uint8_t *plain, size_t plain_len, cbdf_arena *arena, uint8_t **out, size_t *out_len)
public | include/cbdf/cbdf_compress.h:39 | cbdf_parse_styles_text_blob | cbdf_status cbdf_parse_styles_text_blob(const uint8_t *blob, size_t blob_len, cbdf_slice *styles, cbdf_slice *text)
public | include/cbdf/cbdf_constants.h:20 | cbdf_meta_key_is_repeatable | int cbdf_meta_key_is_repeatable(uint8_t key)
public | include/cbdf/cbdf_constants.h:23 | cbdf_meta_key_name | const char *cbdf_meta_key_name(uint8_t key)
public | include/cbdf/cbdf_display.h:128 | cbdf_display_build | cbdf_status cbdf_display_build(const cbdf_doc *doc, cbdf_arena *arena, cbdf_display *out)
public | include/cbdf/cbdf_display.h:131 | cbdf_disp_kind_str | const char *cbdf_disp_kind_str(cbdf_disp_kind k)
public | include/cbdf/cbdf_display.h:134 | cbdf_display_child | const cbdf_disp_node *cbdf_display_child(const cbdf_display *d, int parent, int child_index)
public | include/cbdf/cbdf_encode.h:79 | cbdf_encode_opts_default | void cbdf_encode_opts_default(cbdf_encode_opts *opts)
public | include/cbdf/cbdf_encode.h:85 | cbdf_encode_opts_from_doc | void cbdf_encode_opts_from_doc(const cbdf_doc *doc, cbdf_encode_opts *opts)
public | include/cbdf/cbdf_encode.h:91 | cbdf_decode | cbdf_status cbdf_decode(const uint8_t *buf, size_t len, const cbdf_decode_opts *opts, cbdf_doc *out, cbdf_arena *mem)
public | include/cbdf/cbdf_encode.h:99 | cbdf_encode | cbdf_status cbdf_encode(const cbdf_doc *doc, const cbdf_encode_opts *opts, cbdf_arena *mem, cbdf_slice *bytes_out)
public | include/cbdf/cbdf_encode.h:106 | cbdf_doc_compute_features | void cbdf_doc_compute_features(const cbdf_doc *doc, uint32_t *required_out, uint32_t *optional_out)
public | include/cbdf/cbdf_hash.h:33 | cbdf_content_hash_compute | cbdf_status cbdf_content_hash_compute(const uint8_t *styles, size_t styles_len, const uint8_t *text, size_t text_len, const uint8_t *resources, size_t resources_len, uint8_t alg, uint8_t *digest, size_t digest_cap, size_t *digest_len)
public | include/cbdf/cbdf_hash.h:44 | cbdf_content_hash_verify | cbdf_status cbdf_content_hash_verify(const cbdf_meta *meta, const uint8_t *styles, size_t styles_len, const uint8_t *text, size_t text_len, const uint8_t *resources, size_t resources_len, cbdf_hash_result *result)
public | include/cbdf/cbdf_hash.h:51 | cbdf_hash_result_str | const char *cbdf_hash_result_str(cbdf_hash_result r)
public | include/cbdf/cbdf_layout.h:18 | cbdf_layout_by_id | const cbdf_layout *cbdf_layout_by_id(uint16_t id)
public | include/cbdf/cbdf_layout.h:21 | cbdf_layout_by_slug | const cbdf_layout *cbdf_layout_by_slug(const char *slug)
public | include/cbdf/cbdf_layout.h:29 | cbdf_layout_count | size_t cbdf_layout_count(void)
public | include/cbdf/cbdf_layout.h:30 | cbdf_layout_at | const cbdf_layout_info *cbdf_layout_at(size_t index)
public | include/cbdf/cbdf_layout.h:36 | cbdf_layout_mobile_pair | uint16_t cbdf_layout_mobile_pair(uint16_t layout_id)
public | include/cbdf/cbdf_layout.h:38 | cbdf_layout_pane_count | int cbdf_layout_pane_count(const cbdf_layout *l)
public | include/cbdf/cbdf_layout.h:41 | cbdf_layout_pane | const cbdf_pane *cbdf_layout_pane(const cbdf_layout *l, int i)
public | include/cbdf/cbdf_layout.h:44 | cbdf_layout_slug | const char *cbdf_layout_slug(const cbdf_layout *l)
public | include/cbdf/cbdf_layout.h:46 | cbdf_layout_category | const char *cbdf_layout_category(const cbdf_layout *l)
public | include/cbdf/cbdf_layout.h:57 | cbdf_layout_legacy_decode | int cbdf_layout_legacy_decode(uint8_t legacy_byte, cbdf_pane *out, int max_panes)
public | include/cbdf/cbdf_layout.h:60 | cbdf_layout_id_is_legacy | int cbdf_layout_id_is_legacy(uint16_t id)
public | include/cbdf/cbdf_meta.h:57 | cbdf_meta_parse | cbdf_status cbdf_meta_parse(const uint8_t *buf, size_t len, cbdf_arena *arena, cbdf_meta *out)
public | include/cbdf/cbdf_meta.h:61 | cbdf_meta_parse_opts | cbdf_status cbdf_meta_parse_opts(const uint8_t *buf, size_t len, cbdf_arena *arena, const cbdf_meta_opts *opts, cbdf_meta *out)
public | include/cbdf/cbdf_meta.h:67 | cbdf_meta_count | size_t cbdf_meta_count(const cbdf_meta *m, uint8_t key)
public | include/cbdf/cbdf_meta.h:74 | cbdf_meta_get | cbdf_status cbdf_meta_get(const cbdf_meta *m, uint8_t key, cbdf_slice *value, int *present)
public | include/cbdf/cbdf_meta.h:77 | cbdf_meta_get_nth | cbdf_status cbdf_meta_get_nth(const cbdf_meta *m, uint8_t key, size_t index, cbdf_slice *value, int *present)
public | include/cbdf/cbdf_meta.h:82 | cbdf_meta_version | cbdf_status cbdf_meta_version(const cbdf_meta *m, uint8_t *out, int *present)
public | include/cbdf/cbdf_meta.h:83 | cbdf_meta_compression | cbdf_status cbdf_meta_compression(const cbdf_meta *m, uint8_t *out, int *present)
public | include/cbdf/cbdf_meta.h:84 | cbdf_meta_style_set | cbdf_status cbdf_meta_style_set(const cbdf_meta *m, uint8_t *out, int *present)
public | include/cbdf/cbdf_meta.h:85 | cbdf_meta_meta_only | cbdf_status cbdf_meta_meta_only(const cbdf_meta *m, uint8_t *out, int *present)
public | include/cbdf/cbdf_meta.h:86 | cbdf_meta_ai_summary | cbdf_status cbdf_meta_ai_summary(const cbdf_meta *m, cbdf_slice *out, int *present)
public | include/cbdf/cbdf_meta.h:87 | cbdf_meta_preview | cbdf_status cbdf_meta_preview(const cbdf_meta *m, cbdf_slice *out, int *present)
public | include/cbdf/cbdf_meta.h:88 | cbdf_meta_text_offset | cbdf_status cbdf_meta_text_offset(const cbdf_meta *m, uint32_t *out, int *present)
public | include/cbdf/cbdf_meta.h:89 | cbdf_meta_features | cbdf_status cbdf_meta_features(const cbdf_meta *m, uint8_t key42_or_43, uint32_t *out, int *present)
public | include/cbdf/cbdf_meta.h:91 | cbdf_meta_content_hash | cbdf_status cbdf_meta_content_hash(const cbdf_meta *m, cbdf_slice *out, int *present)
public | include/cbdf/cbdf_meta.h:93 | cbdf_meta_subject | cbdf_status cbdf_meta_subject(const cbdf_meta *m, cbdf_slice *out, int *present)
public | include/cbdf/cbdf_meta.h:100 | cbdf_subject_truncate_utf8 | size_t cbdf_subject_truncate_utf8(const uint8_t *src, size_t src_len, uint8_t *dst, size_t dst_cap)
public | include/cbdf/cbdf_payload.h:36 | cbdf_payload_lookup | cbdf_payload_info cbdf_payload_lookup(uint8_t ctrl)
public | include/cbdf/cbdf_payload.h:43 | cbdf_payload_skip | cbdf_status cbdf_payload_skip(cbdf_cur *c, uint8_t ctrl)
public | include/cbdf/cbdf_payload.h:49 | cbdf_payload_skip_slice | cbdf_status cbdf_payload_skip_slice(cbdf_cur *c, uint8_t ctrl, cbdf_slice *payload)
public | include/cbdf/cbdf_payload.h:52 | cbdf_ctrl_is_phase2_text | int cbdf_ctrl_is_phase2_text(uint8_t ctrl)
public | include/cbdf/cbdf_resources.h:39 | cbdf_resources_parse | cbdf_status cbdf_resources_parse(const uint8_t *buf, size_t len, cbdf_arena *arena, cbdf_resources *out)
public | include/cbdf/cbdf_resources.h:42 | cbdf_resources_find | const cbdf_resource *cbdf_resources_find(const cbdf_resources *r, uint8_t id)
public | include/cbdf/cbdf_resources.h:44 | cbdf_resource_type_is_image | int cbdf_resource_type_is_image(uint8_t type)
public | include/cbdf/cbdf_resources.h:52 | cbdf_resources_check_image | cbdf_status cbdf_resources_check_image(const cbdf_styles *styles, const cbdf_resources *res, uint8_t image_def_index, int *placeholder, uint8_t *resource_id_out)
public | include/cbdf/cbdf_resources.h:62 | cbdf_resources_check_custom_font | cbdf_status cbdf_resources_check_custom_font(const cbdf_resources *res, uint16_t font_id, int *fallback, cbdf_arena *arena, cbdf_resources *warn_target)
public | include/cbdf/cbdf_resources.h:68 | cbdf_resource_type_name | const char *cbdf_resource_type_name(uint8_t type)
public | include/cbdf/cbdf_section.h:70 | cbdf_walk_sections | cbdf_status cbdf_walk_sections(const uint8_t *buf, size_t len, cbdf_arena *arena, cbdf_sections *out)
public | include/cbdf/cbdf_section.h:74 | cbdf_walk_sections_opts | cbdf_status cbdf_walk_sections_opts(const uint8_t *buf, size_t len, cbdf_arena *arena, const cbdf_walk_opts *opts, cbdf_sections *out)
public | include/cbdf/cbdf_section.h:79 | cbdf_shape_str | const char *cbdf_shape_str(cbdf_shape s)
public | include/cbdf/cbdf_styles.h:44 | cbdf_styles_parse | cbdf_status cbdf_styles_parse(const uint8_t *buf, size_t len, cbdf_arena *arena, cbdf_styles *out)
public | include/cbdf/cbdf_styles.h:48 | cbdf_styles_stride | uint16_t cbdf_styles_stride(cbdf_style_subtable st, uint8_t tier)
public | include/cbdf/cbdf_styles.h:51 | cbdf_styles_corner_pct | unsigned cbdf_styles_corner_pct(unsigned v6)
public | include/cbdf/cbdf_styles.h:57 | cbdf_styles_spacing_nibble | int cbdf_styles_spacing_nibble(uint8_t nib, uint8_t *out_value)
public | include/cbdf/cbdf_styles.h:64 | cbdf_styles_color_sanitize | uint16_t cbdf_styles_color_sanitize(uint16_t rgb565, int is_solid_intent)
public | include/cbdf/cbdf_styles.h:66 | cbdf_style_subtable_name | const char *cbdf_style_subtable_name(cbdf_style_subtable st)
public | include/cbdf/cbdf_text.h:67 | cbdf_text_parse | cbdf_status cbdf_text_parse(const uint8_t *buf, size_t len, const cbdf_styles *styles, cbdf_arena *arena, cbdf_text *out)
public | include/cbdf/cbdf_text.h:77 | cbdf_extract_plain_text | cbdf_status cbdf_extract_plain_text(const uint8_t *text, size_t len, cbdf_arena *mem, cbdf_slice *out)
public | include/cbdf/cbdf_types.h:58 | cbdf_error_clear | static inline void cbdf_error_clear(cbdf_error *e)
public | include/cbdf/cbdf_types.h:68 | cbdf_error_set | static inline void cbdf_error_set(cbdf_error *e, cbdf_status st, size_t off, const char *detail)
public | include/cbdf/cbdf_types.h:79 | cbdf_status_str | const char *cbdf_status_str(cbdf_status st)
public | include/cbdf/cbdf_types.h:90 | cbdf_slice_make | static inline cbdf_slice cbdf_slice_make(const uint8_t *p, size_t n)
public | include/cbdf/cbdf_types.h:98 | cbdf_slice_empty | static inline cbdf_slice cbdf_slice_empty(void)
public | include/cbdf/cbdf_types.h:127 | cbdf_arena_init | void cbdf_arena_init(cbdf_arena *a, void *buf, size_t capacity)
public | include/cbdf/cbdf_types.h:133 | cbdf_arena_init_malloc | cbdf_status cbdf_arena_init_malloc(cbdf_arena *a, size_t capacity)
public | include/cbdf/cbdf_types.h:136 | cbdf_arena_reset | void cbdf_arena_reset(cbdf_arena *a)
public | include/cbdf/cbdf_types.h:139 | cbdf_arena_free | void cbdf_arena_free(cbdf_arena *a)
public | include/cbdf/cbdf_types.h:142 | cbdf_arena_alloc | void *cbdf_arena_alloc(cbdf_arena *a, size_t size)
public | include/cbdf/cbdf_types.h:145 | cbdf_arena_calloc | void *cbdf_arena_calloc(cbdf_arena *a, size_t count, size_t size)
public | include/cbdf/cbdf_types.h:148 | cbdf_arena_chunk_count | size_t cbdf_arena_chunk_count(const cbdf_arena *a)
public | include/cbdf/cbdf_types.h:161 | cbdf_cur_init | void cbdf_cur_init(cbdf_cur *c, const uint8_t *buf, size_t len, size_t base_off)
public | include/cbdf/cbdf_types.h:163 | cbdf_cur_offset | size_t cbdf_cur_offset(const cbdf_cur *c)
public | include/cbdf/cbdf_types.h:164 | cbdf_cur_remaining | size_t cbdf_cur_remaining(const cbdf_cur *c)
public | include/cbdf/cbdf_types.h:165 | cbdf_cur_eof | int cbdf_cur_eof(const cbdf_cur *c)
public | include/cbdf/cbdf_types.h:167 | cbdf_cur_u8 | cbdf_status cbdf_cur_u8(cbdf_cur *c, uint8_t *out)
public | include/cbdf/cbdf_types.h:168 | cbdf_cur_u16le | cbdf_status cbdf_cur_u16le(cbdf_cur *c, uint16_t *out)
public | include/cbdf/cbdf_types.h:169 | cbdf_cur_u32le | cbdf_status cbdf_cur_u32le(cbdf_cur *c, uint32_t *out)
public | include/cbdf/cbdf_types.h:170 | cbdf_cur_bytes | cbdf_status cbdf_cur_bytes(cbdf_cur *c, size_t n, cbdf_slice *out)
public | include/cbdf/cbdf_types.h:171 | cbdf_cur_skip | cbdf_status cbdf_cur_skip(cbdf_cur *c, size_t n)
public | include/cbdf/cbdf_types.h:172 | cbdf_cur_unget | cbdf_status cbdf_cur_unget(cbdf_cur *c, size_t n)
public | include/cbdf/cbdf_types.h:173 | cbdf_cur_expect_u8 | cbdf_status cbdf_cur_expect_u8(cbdf_cur *c, uint8_t want)
public | include/cbdf/cbdf_types.h:180 | cbdf_size_add | cbdf_status cbdf_size_add(size_t a, size_t b, size_t *out)
public | include/cbdf/cbdf_types.h:183 | cbdf_size_mul | cbdf_status cbdf_size_mul(size_t a, size_t b, size_t *out)
public | include/cbdf/cbdf_types.h:199 | cbdf_warn_str | const char *cbdf_warn_str(cbdf_warn_code w)
public | include/cbdfview/cbdf_view.h:111 | cbdf_view_config_default | void cbdf_view_config_default(cbdf_view_config *cfg)
public | include/cbdfview/cbdf_view.h:120 | cbdf_view_open_file | int cbdf_view_open_file(const char *path, const cbdf_view_config *cfg, cbdf_view_frame_stats *out_stats)
public | include/cbdfview/cbdf_view.h:127 | cbdf_view_run_stress | int cbdf_view_run_stress(const cbdf_view_config *cfg, cbdf_view_frame_stats *out_stats)
public | include/cbdfview/cbdf_view.h:135 | cbdf_view_run_scroll_test | int cbdf_view_run_scroll_test(const cbdf_view_config *cfg)
public | include/cbdfview/cbdf_view.h:141 | cbdf_view_run_list_test | int cbdf_view_run_list_test(const cbdf_view_config *cfg)
public | include/cbdfview/cbdf_view.h:144 | cbdf_view_last_error | const char *cbdf_view_last_error(void)
public | include/cbdfview/cbdf_view.h:173 | cbdf_view_offscreen_create | cbdf_view_offscreen *cbdf_view_offscreen_create( SDL_Renderer *renderer, const uint8_t *bytes, size_t len, const char *font_path, cbdf_view_resolve_font_fn resolve_font, void *resolve_user, cbdf_view_offscreen_status *status)
public | include/cbdfview/cbdf_view.h:186 | cbdf_view_offscreen_create_ex | cbdf_view_offscreen *cbdf_view_offscreen_create_ex( SDL_Renderer *renderer, const uint8_t *bytes, size_t len, const cbdf_view_font_config *fonts, cbdf_view_offscreen_status *status)
public | include/cbdfview/cbdf_view.h:195 | cbdf_view_offscreen_notdef_count | int cbdf_view_offscreen_notdef_count(cbdf_view_offscreen *ctx, const char *text, size_t len, uint16_t font_id, uint16_t font_size)
public | include/cbdfview/cbdf_view.h:203 | cbdf_view_offscreen_update | int cbdf_view_offscreen_update( cbdf_view_offscreen *ctx, const uint8_t *bytes, size_t len, cbdf_view_offscreen_status *status)
public | include/cbdfview/cbdf_view.h:217 | cbdf_view_offscreen_render | SDL_Texture *cbdf_view_offscreen_render( cbdf_view_offscreen *ctx, int w, int h, float scroll_y, cbdf_view_offscreen_status *status)
public | include/cbdfview/cbdf_view.h:230 | cbdf_view_offscreen_content_height | float cbdf_view_offscreen_content_height(cbdf_view_offscreen *ctx, int w)
public | include/cbdfview/cbdf_view.h:240 | cbdf_view_offscreen_render_scaled | SDL_Texture *cbdf_view_offscreen_render_scaled( cbdf_view_offscreen *ctx, int w, int h, float scroll_x, float scroll_y, float zoom, cbdf_view_offscreen_status *status)
public | include/cbdfview/cbdf_view.h:253 | cbdf_view_offscreen_content_height_scaled | float cbdf_view_offscreen_content_height_scaled(cbdf_view_offscreen *ctx, int w, float zoom)
public | include/cbdfview/cbdf_view.h:261 | cbdf_view_offscreen_content_width_scaled | float cbdf_view_offscreen_content_width_scaled(cbdf_view_offscreen *ctx, int w, float zoom)
public | include/cbdfview/cbdf_view.h:268 | cbdf_view_offscreen_font_fallback_count | size_t cbdf_view_offscreen_font_fallback_count(const cbdf_view_offscreen *ctx)
public | include/cbdfview/cbdf_view.h:274 | cbdf_view_offscreen_font_fallback_message | const char *cbdf_view_offscreen_font_fallback_message(const cbdf_view_offscreen *ctx)
public | include/cbdfview/cbdf_view.h:283 | cbdf_view_offscreen_set_page_alpha | void cbdf_view_offscreen_set_page_alpha(cbdf_view_offscreen *ctx, int alpha)
public | include/cbdfview/cbdf_view.h:285 | cbdf_view_offscreen_destroy | void cbdf_view_offscreen_destroy(cbdf_view_offscreen *ctx)
public | include/cbdfview/cbdf_view.h:292 | cbdf_view_run_offscreen_test | int cbdf_view_run_offscreen_test(void)
public | include/core/boot_encryption_check.h:35 | boot_encryption_check_run | void boot_encryption_check_run(void)
public | include/core/boot_encryption_check.h:41 | boot_encryption_check_clear | void boot_encryption_check_clear(void)
public | include/core/cmd_config_utils.h:18 | core_is_encryption_required | bool core_is_encryption_required(void)
public | include/core/cmd_convert_credit.h:52 | convert_txn_init | result_t convert_txn_init(convert_txn_t *txn)
public | include/core/cmd_convert_credit.h:71 | convert_authenticate | result_t convert_authenticate(const convert_txn_t *txn, const legacy_coin_t *coins, int count, const convert_options_t *options, convert_authenticate_result_t *result)
public | include/core/cmd_convert_credit.h:77 | convert_authenticate_balance | result_t convert_authenticate_balance(const convert_txn_t *txn, const convert_options_t *options, convert_authenticate_result_t *result)
public | include/core/cmd_convert_credit.h:98 | convert_get_sns | result_t convert_get_sns(const convert_txn_t *txn, const uint8_t d_bytes[CONVERT_GETSNS_DENS], const uint32_t start_sn[CONVERT_GETSNS_DENS], const convert_options_t *options, convert_get_sns_result_t *result)
public | include/core/cmd_convert_credit.h:125 | convert_pickup | result_t convert_pickup(const convert_txn_t *txn, const cloudcoin_t *targets, int target_count, const convert_options_t *options, convert_pickup_result_t *result)
public | include/core/cmd_convert_credit.h:134 | convert_credit_run | result_t convert_credit_run(legacy_coin_t *coins, int count, const convert_options_t *options, convert_result_t *result)
public | include/core/cmd_convert_credit.h:142 | convert_credit_recover_journal | result_t convert_credit_recover_journal(const char *wallet_path, const char *journal_path, const char *task_id)
public | include/core/cmd_convert.h:91 | convert_options_init | static inline void convert_options_init(convert_options_t *opts)
public | include/core/cmd_convert.h:140 | convert_legacy_face_units | uint64_t convert_legacy_face_units(const legacy_coin_t *coin, uint8_t shard_id)
public | include/core/cmd_convert.h:150 | convert_derive_ans | void convert_derive_ans(cloudcoin_t *new_coins, int new_count, uint8_t raida_keys[RAIDA_COUNT][AN_LENGTH])
public | include/core/cmd_convert.h:153 | convert_result_init | static inline void convert_result_init(convert_result_t *result)
public | include/core/cmd_convert.h:186 | convert_legacy_coins | result_t convert_legacy_coins(legacy_coin_t *coins, int count, const convert_options_t *options, convert_result_t *result)
public | include/core/cmd_convert.h:201 | legacy_parse_stack_file | result_t legacy_parse_stack_file(const char *file_path, legacy_coin_t **coins_out, int *count_out)
public | include/core/cmd_convert.h:215 | legacy_parse_cc2_file | result_t legacy_parse_cc2_file(const char *file_path, legacy_coin_t **coins_out, int *count_out)
public | include/core/cmd_convert.h:224 | legacy_detect_file_type | legacy_file_type_t legacy_detect_file_type(const char *file_path)
public | include/core/cmd_convert.h:232 | legacy_cc1_denomination | int8_t legacy_cc1_denomination(uint32_t sn)
public | include/core/cmd_convert.h:253 | convert_process_recovery | result_t convert_process_recovery(const char *wallet_path)
public | include/core/cmd_convert.h:265 | convert_scan_recovery_journals | int convert_scan_recovery_journals(const char *wallets_dir)
public | include/core/cmd_convert.h:279 | convert_wallet_journal_count | int convert_wallet_journal_count(const char *wallet_path)
public | include/core/cmd_convert.h:293 | convert_collect_journal_source_sns | int convert_collect_journal_source_sns(const char *wallet_path, uint32_t **sns_out)
public | include/core/cmd_convert.h:350 | convert_complete_journal | result_t convert_complete_journal(const char *wallet_path, const char *journal_path, const char *source_dir, bool dry_run, convert_complete_report_t *report)
public | include/core/cmd_convert.h:366 | convert_process_recovery_all | result_t convert_process_recovery_all(const char *wallets_dir)
public | include/core/cmd_count.h:66 | cmd_count | result_t cmd_count(count_results_t *results)
public | include/core/cmd_deposit.h:51 | upgrade_convert_stats_init | static inline void upgrade_convert_stats_init(upgrade_convert_stats_t *s)
public | include/core/cmd_deposit.h:139 | deposit_options_init | static inline void deposit_options_init(deposit_options_t *options)
public | include/core/cmd_deposit.h:158 | deposit_result_init | static inline void deposit_result_init(deposit_result_t *result)
public | include/core/cmd_deposit.h:189 | deposit_is_supported_filename | bool deposit_is_supported_filename(const char *filename)
public | include/core/cmd_deposit.h:202 | deposit_execute | result_t deposit_execute(const deposit_options_t *options, deposit_progress_fn callback, void *ctx, deposit_result_t *result)
public | include/core/cmd_deposit.h:217 | deposit_execute_import | result_t deposit_execute_import(const deposit_options_t *options, deposit_progress_fn callback, void *ctx, deposit_result_t *result)
public | include/core/cmd_deposit.h:234 | deposit_phase_move | result_t deposit_phase_move(const deposit_options_t *options, deposit_progress_fn callback, void *ctx, int *files_moved, int *files_failed)
public | include/core/cmd_deposit.h:248 | deposit_phase_unpack | result_t deposit_phase_unpack(const deposit_options_t *options, deposit_progress_fn callback, void *ctx, int *coins_unpacked, int *ccv1_parked_out, int *ccv2_parked_out, int *duplicates_out, int *corrupted_out)
public | include/core/cmd_deposit.h:257 | deposit_phase_pown | result_t deposit_phase_pown(const deposit_options_t *options, deposit_progress_fn callback, void *ctx)
public | include/core/cmd_deposit.h:263 | deposit_phase_grade | result_t deposit_phase_grade(const deposit_options_t *options, deposit_progress_fn callback, void *ctx, deposit_result_t *result)
public | include/core/cmd_deposit.h:270 | deposit_phase_fix | result_t deposit_phase_fix(const deposit_options_t *options, deposit_progress_fn callback, void *ctx)
public | include/core/cmd_deposit.h:287 | deposit_create_receipt | result_t deposit_create_receipt(const char *wallet_path, const deposit_result_t *result, const char *memo, const char *task_id, char *receipt_path, size_t path_size)
public | include/core/cmd_deposit.h:301 | deposit_log_transaction | result_t deposit_log_transaction(const char *wallet_path, const deposit_result_t *result, const char *memo)
public | include/core/cmd_deposit.h:323 | deposit_recover_task | result_t deposit_recover_task(const char *wallet_path, const char *task_id, deposit_result_t *result)
public | include/core/cmd_deposit.h:372 | deposit_get_recovery_state_snapshot | void deposit_get_recovery_state_snapshot(recovery_state_t *out_state)
public | include/core/cmd_deposit.h:386 | deposit_scan_suspect_folders | int deposit_scan_suspect_folders(const char *wallets_dir)
public | include/core/cmd_deposit.h:397 | deposit_process_recovery | result_t deposit_process_recovery(core_transport_t *transport)
public | include/core/cmd_deposit.h:404 | deposit_is_recovering | bool deposit_is_recovering(void)
public | include/core/cmd_deposit.h:429 | deposit_finish_unprocessed | result_t deposit_finish_unprocessed(const char *wallet_path, core_transport_t *transport, int *coins_out)
public | include/core/cmd_deposit.h:441 | deposit_mutex_lock | void deposit_mutex_lock(void)
public | include/core/cmd_deposit.h:442 | deposit_mutex_unlock | void deposit_mutex_unlock(void)
public | include/core/cmd_detect_hash.h:48 | detect_hash_compute_proof | result_t detect_hash_compute_proof(const uint8_t challenge[CHALLENGE_LENGTH], int8_t denomination, uint32_t serial_number, const uint8_t an[COIN_AN_SIZE], uint8_t proof_out[DETECT_HASH_PROOF_SIZE])
public | include/core/cmd_detect_hash.h:69 | detect_hash_build_body | result_t detect_hash_build_body(const cloudcoin_t *coins, int coin_count, uint8_t raida_id, const uint8_t challenge[CHALLENGE_LENGTH], uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_detect_hash.h:90 | detect_hash_execute_ex | result_t detect_hash_execute_ex(cloudcoin_t *coins, int coin_count, detect_result_t *result, coin_detect_status_t *coin_status, uint8_t *raida_status_codes)
public | include/core/cmd_detect.h:76 | detect_options_init | static inline void detect_options_init(detect_options_t *options)
public | include/core/cmd_detect.h:86 | detect_result_init | static inline void detect_result_init(detect_result_t *result)
public | include/core/cmd_detect.h:110 | detect_build_body | result_t detect_build_body(const cloudcoin_t *coins, int coin_count, uint8_t raida_id, uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_detect.h:122 | detect_parse_response | result_t detect_parse_response(const protocol_response_t *response, int coin_count, bool *results_out)
public | include/core/cmd_detect.h:135 | detect_execute | result_t detect_execute(const detect_options_t *options, cloudcoin_t *coins, int coin_count, detect_result_t *result, coin_detect_status_t *coin_status)
public | include/core/cmd_detect.h:155 | detect_execute_ex | result_t detect_execute_ex(const detect_options_t *options, cloudcoin_t *coins, int coin_count, detect_result_t *result, coin_detect_status_t *coin_status, uint8_t *raida_status_codes)
public | include/core/cmd_detect.h:171 | detect_single_raida | result_t detect_single_raida(const detect_options_t *options, const cloudcoin_t *coins, int coin_count, uint8_t raida_id, bool *results_out)
public | include/core/cmd_detect.h:178 | detect_is_authentic | static inline bool detect_is_authentic(const coin_detect_status_t *status)
public | include/core/cmd_detect.h:185 | detect_is_fracked | static inline bool detect_is_fracked(const coin_detect_status_t *status)
public | include/core/cmd_detect.h:192 | detect_is_counterfeit | static inline bool detect_is_counterfeit(const coin_detect_status_t *status)
public | include/core/cmd_disclaimer.h:13 | core_get_disclaimer_text | const char* core_get_disclaimer_text(void)
public | include/core/cmd_drd.h:153 | core_drd_post_user | result_t core_drd_post_user(const drd_auth_coin_t *auth, int64_t inbox_fee, uint8_t first_symbol, uint8_t second_symbol, int8_t class_rejection, const char *first_name, const char *last_name, const char *description, const raida_encryption_key_t *enc_key, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:168 | core_drd_get_user | result_t core_drd_get_user(int8_t denomination, uint32_t serial_number, const raida_encryption_key_t *enc_key, drd_user_t *user_out, bool *found_out, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:180 | core_drd_search_users | result_t core_drd_search_users(const char *first_name, const char *last_name, int limit, const raida_encryption_key_t *enc_key, drd_user_t *results_out, int max_results, int *count_out, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:192 | core_drd_delete_user | result_t core_drd_delete_user(const drd_auth_coin_t *auth, const raida_encryption_key_t *enc_key, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:200 | core_drd_list_set | result_t core_drd_list_set(const drd_auth_coin_t *auth, const drd_list_entry_t *entries, int entry_count, const raida_encryption_key_t *enc_key, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:208 | core_drd_list_remove | result_t core_drd_list_remove(const drd_auth_coin_t *auth, const drd_list_entry_t *entries, int entry_count, const raida_encryption_key_t *enc_key, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:219 | core_drd_list_get | result_t core_drd_list_get(const drd_auth_coin_t *auth, const raida_encryption_key_t *enc_key, drd_list_entry_t *entries_out, int max_entries, int *count_out, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:244 | core_drd_get_changes | result_t core_drd_get_changes(uint8_t target_raida, uint8_t shard_count, uint8_t shard_index, const drd_changes_cursor_t *cursor, int64_t updated_before, uint8_t mode, uint16_t page_size, const raida_encryption_key_t *enc_key, core_transport_t *transport_iface, transport_type_t transport, drd_changes_page_t *page_out)
public | include/core/cmd_drd.h:255 | drd_changes_page_free | void drd_changes_page_free(drd_changes_page_t *page)
public | include/core/cmd_drd.h:266 | drd_fee_from_string | result_t drd_fee_from_string(const char *str, int64_t *units_out)
public | include/core/cmd_drd.h:272 | drd_fee_to_string | void drd_fee_to_string(int64_t units, char *buf, int buf_len)
public | include/core/cmd_drd.h:379 | core_drd_server_post | result_t core_drd_server_post(const drd_auth_coin_t *auth, const drd_server_desc_t *desc, const raida_encryption_key_pair_t *enc_pair, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:393 | core_drd_server_get | result_t core_drd_server_get(uint8_t role, uint8_t selector, int8_t dn, uint32_t serial_number, uint8_t raida_id, const raida_encryption_key_pair_t *enc_pair, drd_server_desc_t *results_out, int max_results, int *count_out, drd_fanout_result_t *out)
public | include/core/cmd_drd.h:409 | core_drd_server_get_page | result_t core_drd_server_get_page(uint8_t target_raida, uint8_t role, int has_cursor, int8_t cursor_dn, uint32_t cursor_sn, int page_size, const raida_encryption_key_pair_t *enc_pair, drd_server_desc_t *records, drd_server_page_t *page)
public | include/core/cmd_echo.h:50 | cmd_echo_serial | result_t cmd_echo_serial(transport_type_t transport, encryption_type_t enc, uint32_t timeout_ms, echo_results_t *results)
public | include/core/cmd_echo.h:63 | cmd_echo_parallel | result_t cmd_echo_parallel(transport_type_t transport, encryption_type_t enc, uint32_t timeout_ms, echo_results_t *results)
public | include/core/cmd_echo.h:75 | echo_raida_serial_new | void echo_raida_serial_new(transport_type_t transport, encryption_type_t enc, uint32_t timeout_ms)
public | include/core/cmd_echo.h:81 | echo_raida_parallel_new | void echo_raida_parallel_new(transport_type_t transport, encryption_type_t enc, uint32_t timeout_ms)
public | include/core/cmd_export.h:72 | export_locations_load | result_t export_locations_load(export_locations_t *locations_out)
public | include/core/cmd_export.h:80 | export_locations_save | result_t export_locations_save(const export_locations_t *locations)
public | include/core/cmd_export.h:92 | export_locations_add | result_t export_locations_add(export_locations_t *locations, const char *path)
public | include/core/cmd_export.h:102 | export_locations_to_json | result_t export_locations_to_json(const export_locations_t *locations, char *json_out, size_t json_size)
public | include/core/cmd_export.h:134 | export_check_amount | result_t export_check_amount(const char *wallet_path, uint64_t amount, coin_selection_t *selection_out)
public | include/core/cmd_export.h:149 | export_select_coins | result_t export_select_coins(const char *wallet_path, uint64_t amount, bool auto_change, core_transport_t *transport, coin_selection_t *selection_out)
public | include/core/cmd_export.h:158 | export_selection_free | void export_selection_free(coin_selection_t *selection)
public | include/core/cmd_export.h:199 | cmd_export_coins | result_t cmd_export_coins(const export_options_t *options, export_result_t *result_out)
public | include/core/cmd_export.h:206 | export_result_free | void export_result_free(export_result_t *result)
public | include/core/cmd_export.h:221 | export_generate_guid_tag | result_t export_generate_guid_tag(char *buffer, size_t size)
public | include/core/cmd_export.h:228 | export_sanitize_tag | void export_sanitize_tag(char *tag)
public | include/core/cmd_find.h:101 | find_options_init | static inline void find_options_init(find_options_t *options)
public | include/core/cmd_find.h:110 | find_result_init | static inline void find_result_init(find_result_t *result)
public | include/core/cmd_find.h:118 | find_coin_result_init | static inline void find_coin_result_init(find_coin_result_t *result)
public | include/core/cmd_find.h:140 | find_execute | result_t find_execute(const find_options_t *options, cloudcoin_t *coins, int coin_count, find_result_t *result, find_coin_result_t *coin_results)
public | include/core/cmd_find.h:155 | find_limbo_coins | result_t find_limbo_coins(const find_options_t *options, find_result_t *result)
public | include/core/cmd_find.h:163 | cmd_find | result_t cmd_find(const find_options_t *options, find_result_t *result)
public | include/core/cmd_fix_encryption.h:87 | fix_encryption_options_init | static inline void fix_encryption_options_init(fix_encryption_options_t *options)
public | include/core/cmd_fix_encryption.h:97 | fix_encryption_result_init | static inline void fix_encryption_result_init(fix_encryption_result_t *result)
public | include/core/cmd_fix_encryption.h:119 | get_encrypt_ticket_build_body | result_t get_encrypt_ticket_build_body(uint8_t broken_raida_id, const cloudcoin_t *coin, const uint8_t key_part[KEY_PART_SIZE], uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_fix_encryption.h:135 | get_encrypt_ticket_parse_response | result_t get_encrypt_ticket_parse_response(const protocol_response_t *response, uint8_t helper_raida_id, uint8_t broken_raida_id, uint8_t split_id, encryption_ticket_t *ticket_out)
public | include/core/cmd_fix_encryption.h:153 | get_encrypt_ticket | result_t get_encrypt_ticket(const fix_encryption_options_t *options, uint8_t helper_raida_id, uint8_t broken_raida_id, const cloudcoin_t *coin, const uint8_t key_part[KEY_PART_SIZE], uint8_t split_id, encryption_ticket_t *ticket_out)
public | include/core/cmd_fix_encryption.h:175 | fix_encryption_build_body | result_t fix_encryption_build_body(const cloudcoin_t *coin, const encryption_ticket_t *ticket0, const encryption_ticket_t *ticket1, uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_fix_encryption.h:188 | fix_encryption_parse_response | result_t fix_encryption_parse_response(const protocol_response_t *response, fix_encryption_result_t *result)
public | include/core/cmd_fix_encryption.h:202 | fix_encryption_send | result_t fix_encryption_send(const fix_encryption_options_t *options, uint8_t broken_raida_id, const cloudcoin_t *coin, const encryption_ticket_t *ticket0, const encryption_ticket_t *ticket1, fix_encryption_result_t *result)
public | include/core/cmd_fix_encryption.h:228 | fix_encryption_execute | result_t fix_encryption_execute(const fix_encryption_options_t *options, uint8_t broken_raida_id, const cloudcoin_t *coin, uint8_t helper1_id, uint8_t helper2_id, fix_encryption_result_t *result)
public | include/core/cmd_fix_encryption.h:247 | fix_all_encryption | result_t fix_all_encryption(const fix_encryption_options_t *options, cloudcoin_t *coin, const uint8_t *passing_raida, int passing_count, const uint8_t *broken_raida, int broken_count, int *fixed_count_out)
public | include/core/cmd_fix_encryption.h:306 | fix_encryption_escalate | result_t fix_encryption_escalate(const fix_encryption_options_t *options, const uint8_t status_codes[RAIDA_COUNT], int *fixed_count_out)
public | include/core/cmd_fix_protocol.h:52 | fix_protocol_options_init | static inline void fix_protocol_options_init(fix_protocol_options_t *options)
public | include/core/cmd_fix_protocol.h:57 | fix_protocol_result_init | static inline void fix_protocol_result_init(fix_protocol_result_t *result)
public | include/core/cmd_fix_protocol.h:87 | fix_build_body | result_t fix_build_body(const cloudcoin_t *coins, int coin_count, uint8_t target_raida_id, const raida_ticket_t *all_tickets, int ticket_count, uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_fix_protocol.h:115 | fix_failing_raida | result_t fix_failing_raida(const fix_protocol_options_t *options, const cloudcoin_t *coins, int coin_count, const uint8_t *failing_raida, int failing_count, const raida_ticket_t *all_tickets, int ticket_count, fix_protocol_result_t *result, bool *coin_fixed_per_raida)
public | include/core/cmd_fix.h:51 | fix_options_init | static inline void fix_options_init(fix_options_t *options)
public | include/core/cmd_fix.h:66 | fix_result_init | static inline void fix_result_init(fix_result_t *result)
public | include/core/cmd_fix.h:92 | fix_fracked_coins | result_t fix_fracked_coins(const fix_options_t *options, fix_result_t *result)
public | include/core/cmd_get_sns.h:31 | core_free_get_sns_result | void core_free_get_sns_result(core_get_sns_result_t *result)
public | include/core/cmd_get_sns.h:42 | core_get_available_sns | result_t core_get_available_sns( int8_t denomination, encryption_key_t *enc_key, core_get_sns_result_t *results )
public | include/core/cmd_get_ticket.h:98 | get_ticket_options_init | static inline void get_ticket_options_init(get_ticket_options_t *options)
public | include/core/cmd_get_ticket.h:106 | get_ticket_result_init | static inline void get_ticket_result_init(get_ticket_result_t *result)
public | include/core/cmd_get_ticket.h:123 | get_ticket_result_free | static inline void get_ticket_result_free(get_ticket_result_t *result)
public | include/core/cmd_get_ticket.h:151 | get_ticket_build_body | result_t get_ticket_build_body(const cloudcoin_t *coins, int coin_count, uint8_t raida_id, uint8_t **body_out, size_t *body_size_out)
public | include/core/cmd_get_ticket.h:164 | get_ticket_parse_response | result_t get_ticket_parse_response(const protocol_response_t *response, int coin_count, uint8_t raida_id, raida_ticket_t *tickets_out)
public | include/core/cmd_get_ticket.h:182 | get_ticket_from_passing | result_t get_ticket_from_passing(const get_ticket_options_t *options, const cloudcoin_t *coins, int coin_count, const uint8_t *passing_raida, int passing_count, get_ticket_result_t *result)
public | include/core/cmd_get_ticket.h:201 | get_ticket_from_passing_ex | result_t get_ticket_from_passing_ex(const get_ticket_options_t *options, const cloudcoin_t *coins, int coin_count, const uint8_t *passing_raida, int passing_count, get_ticket_result_t *result, uint8_t *raida_status_codes)
public | include/core/cmd_grade.h:67 | grade_options_init | static inline void grade_options_init(grade_options_t *options)
public | include/core/cmd_grade.h:78 | grade_result_init | static inline void grade_result_init(grade_result_t *result)
public | include/core/cmd_grade.h:101 | grade_calculate | coin_grade_t grade_calculate(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/cmd_grade.h:111 | grade_count_pown | void grade_count_pown(const uint8_t pown_status[RAIDA_COUNT], int *pass_out, int *fail_out, int *error_out)
public | include/core/cmd_grade.h:138 | grade_count_pown_status | void grade_count_pown_status(const uint8_t pown_status[RAIDA_COUNT], int *auth_out, int *fail_out, int *unknown_out)
public | include/core/cmd_grade.h:153 | grade_calculate_status | coin_grade_t grade_calculate_status(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/cmd_grade.h:163 | grade_coin_struct | coin_grade_t grade_coin_struct(const cloudcoin_t *coin)
public | include/core/cmd_grade.h:180 | grade_folder | result_t grade_folder(const grade_options_t *options, grade_result_t *result)
public | include/core/cmd_grade.h:190 | grade_coin | coin_grade_t grade_coin(const char *wallet_path, const char *filename, const grade_options_t *options, int8_t *denomination_out)
public | include/core/cmd_grade.h:201 | grade_to_folder | folder_type_t grade_to_folder(coin_grade_t grade)
public | include/core/cmd_grade.h:206 | grade_to_string | const char *grade_to_string(coin_grade_t grade)
public | include/core/cmd_heal.h:110 | heal_options_init | static inline void heal_options_init(heal_options_t *options)
public | include/core/cmd_heal.h:128 | heal_result_init | static inline void heal_result_init(heal_result_t *result)
public | include/core/cmd_heal.h:148 | heal_result_free | static inline void heal_result_free(heal_result_t *result)
public | include/core/cmd_heal.h:160 | heal_status_str | static inline const char* heal_status_str(heal_status_t status)
public | include/core/cmd_heal.h:191 | heal_wallet_fracked | result_t heal_wallet_fracked(const heal_options_t *options, const char *wallet_path, heal_result_t *result)
public | include/core/cmd_join.h:38 | core_join_coins | result_t core_join_coins( coin_t *source_coins, int source_coin_count, int8_t target_denomination, encryption_key_t *enc_key, core_join_coins_result_t *results )
public | include/core/cmd_locker.h:126 | core_free_peek_locker_result | void core_free_peek_locker_result(core_peek_locker_result_t *results)
public | include/core/cmd_locker.h:132 | core_free_download_locker_result | void core_free_download_locker_result(core_download_locker_result_t *results)
public | include/core/cmd_locker.h:144 | core_put_locker | result_t core_put_locker( coin_t *coins, int coin_count, const char *locker_key_str, encryption_key_t *enc_key, core_put_locker_result_t *results )
public | include/core/cmd_locker.h:160 | core_peek_locker | result_t core_peek_locker( const char *locker_key_str, encryption_key_t *enc_key, core_peek_locker_result_t *results )
public | include/core/cmd_locker.h:174 | core_download_locker | result_t core_download_locker( const char *locker_key_str, encryption_key_t *enc_key, core_download_locker_result_t *results )
public | include/core/cmd_locker.h:191 | core_put_locker_no_sum | result_t core_put_locker_no_sum( coin_t *coins, int coin_count, const char *locker_key_str, core_put_locker_no_sum_result_t *results )
public | include/core/cmd_locker.h:209 | core_put_locker_batch | result_t core_put_locker_batch( coin_t *coins, const char **locker_key_strs, int coin_count, core_put_locker_no_sum_result_t *results )
public | include/core/cmd_locker.h:220 | core_free_put_locker_no_sum_result | void core_free_put_locker_no_sum_result(core_put_locker_no_sum_result_t *results)
public | include/core/cmd_locker.h:223 | core_locker_derive_code | void core_locker_derive_code(const char *locker_key_str, uint8_t raida_id, uint8_t locker_code_out[LOCKER_CODE_LENGTH])
public | include/core/cmd_make_change.h:84 | make_change_result_init | void make_change_result_init(make_change_result_t *result)
public | include/core/cmd_make_change.h:91 | make_change_options_init | void make_change_options_init(make_change_options_t *options)
public | include/core/cmd_make_change.h:105 | make_change_generate_starting_sn | uint32_t make_change_generate_starting_sn(void)
public | include/core/cmd_make_change.h:116 | make_change_can_break | bool make_change_can_break(int8_t denomination)
public | include/core/cmd_make_change.h:146 | cmd_make_change | result_t cmd_make_change(const make_change_options_t *options, make_change_result_t *result)
public | include/core/cmd_platform_utils.h:18 | core_is_on_removable_drive | bool core_is_on_removable_drive(void)
public | include/core/cmd_pown.h:62 | pown_options_init | static inline void pown_options_init(pown_options_t *options)
public | include/core/cmd_pown.h:89 | pown_execute | result_t pown_execute(cloudcoin_t *coins, int coin_count, const pown_options_t *options, pown_results_t *results)
public | include/core/cmd_pown.h:101 | pown_execute_single | result_t pown_execute_single(cloudcoin_t *coin, const pown_options_t *options, pown_coin_result_t *result)
public | include/core/cmd_pown.h:116 | pown_generate_pans | void pown_generate_pans(cloudcoin_t *coin)
public | include/core/cmd_pown.h:126 | pown_sum_generate_pans | void pown_sum_generate_pans(cloudcoin_t *coins, int coin_count, const uint8_t ad[16])
public | include/core/cmd_pown.h:133 | pown_commit_pans | void pown_commit_pans(cloudcoin_t *coin)
public | include/core/cmd_pown.h:152 | pown_parse_response | result_t pown_parse_response(const uint8_t *body, size_t body_size, uint8_t status, uint8_t raida_id, cloudcoin_t *coins, int coin_count)
public | include/core/cmd_pown.h:163 | pown_results_init | void pown_results_init(pown_results_t *results)
public | include/core/cmd_pown.h:168 | pown_results_free | void pown_results_free(pown_results_t *results)
public | include/core/cmd_pown.h:173 | pown_results_alloc | result_t pown_results_alloc(pown_results_t *results, int coin_count)
public | include/core/cmd_pown.h:180 | pown_results_calculate_totals | void pown_results_calculate_totals(pown_results_t *results, cloudcoin_t *coins)
public | include/core/cmd_pown.h:190 | pown_status_to_char | char pown_status_to_char(uint8_t status)
public | include/core/cmd_pown.h:205 | raida_to_spaced_string | void raida_to_spaced_string(const uint8_t values[RAIDA_COUNT], char (*to_char)(uint8_t), char out[RAIDA_SPACED_STRING_LEN])
public | include/core/cmd_unpack.h:49 | unpack_options_init | static inline void unpack_options_init(unpack_options_t *options)
public | include/core/cmd_unpack.h:61 | unpack_result_init | static inline void unpack_result_init(unpack_result_t *result)
public | include/core/cmd_unpack.h:89 | unpack_import_folder | result_t unpack_import_folder(const unpack_options_t *options, unpack_result_t *result)
public | include/core/cmd_unpack.h:101 | unpack_file | result_t unpack_file(const char *file_path, const unpack_options_t *options, cloudcoin_t **coins_out, int *count_out)
public | include/core/cmd_unpack.h:112 | unpack_is_duplicate | bool unpack_is_duplicate(const char *wallet_path, uint32_t serial)
public | include/core/cmd_unpack.h:135 | unpack_detect_file_type | unpack_file_type_t unpack_detect_file_type(const char *file_path)
public | include/core/cmd_unpack.h:146 | unpack_zip_file | result_t unpack_zip_file(const char *zip_path, const unpack_options_t *options, cloudcoin_t **coins_out, int *count_out)
public | include/core/cmd_unpack.h:155 | unpack_png_file | result_t unpack_png_file(const char *png_path, const unpack_options_t *options, cloudcoin_t **coins_out, int *count_out)
public | include/core/cmd_upgrade.h:53 | upgrade_options_init | static inline void upgrade_options_init(upgrade_options_t *opts)
public | include/core/cmd_upgrade.h:87 | upgrade_result_init | static inline void upgrade_result_init(upgrade_result_t *result)
public | include/core/cmd_upgrade.h:111 | count_files_in_folder | int count_files_in_folder(const char *folder_path)
public | include/core/cmd_upgrade.h:131 | upgrade_execute | result_t upgrade_execute(const upgrade_options_t *options, deposit_progress_fn callback, void *ctx, upgrade_result_t *result)
public | include/core/cmd_upgrade.h:173 | upgrade_phase_convert | result_t upgrade_phase_convert(const char *wallet_path, core_transport_t *transport, upgrade_mode_t mode, bool use_unencrypted, const char *task_id, deposit_progress_fn callback, void *ctx, int *converted_out, int *expired_out, int *counterfeit_out, upgrade_convert_stats_t *stats_out, int progress_base, int progress_span)
public | include/core/cmd_upgrade.h:194 | upgrade_phase_fix_fracked | result_t upgrade_phase_fix_fracked(const char *wallet_path, core_transport_t *transport, const char *task_id, deposit_progress_fn callback, void *ctx)
public | include/core/cmd_upgrade.h:209 | upgrade_scan_import_folders | int upgrade_scan_import_folders(const char *wallets_dir)
public | include/core/cmd_upgrade.h:221 | upgrade_process_import_folders | result_t upgrade_process_import_folders(const char *wallets_dir, core_transport_t *transport)
public | include/core/cmd_version.h:48 | cmd_version | result_t cmd_version(version_results_t *results)
public | include/core/cmd_version.h:61 | cmd_show_versions | void cmd_show_versions(void)
public | include/core/cmd_wallet_wrappers.h:21 | cmd_wallet_withdraw_with_logging | result_t cmd_wallet_withdraw_with_logging(const wallet_withdraw_options_t *options, wallet_withdraw_result_t *result_out)
public | include/core/cmd_wallet_wrappers.h:33 | cmd_wallet_transfer_with_logging | result_t cmd_wallet_transfer_with_logging(const char *src_wallet, const char *dst_wallet, const char **filenames, int file_count)
public | include/core/cmd_wallet.h:53 | cmd_wallet_create | result_t cmd_wallet_create(const char *base_path, const char *name)
public | include/core/cmd_wallet.h:58 | cmd_wallet_delete | result_t cmd_wallet_delete(const char *wallet_path)
public | include/core/cmd_wallet.h:63 | cmd_wallet_balance | result_t cmd_wallet_balance(const char *wallet_path, uint64_t *total_out, int *count_out)
public | include/core/cmd_wallet.h:71 | cmd_wallet_move_coins | result_t cmd_wallet_move_coins(const char *src_wallet, const char *dst_wallet, const char **filenames, int file_count)
public | include/core/cmd_wallet.h:82 | cmd_wallet_withdraw | result_t cmd_wallet_withdraw(const wallet_withdraw_options_t *options, wallet_withdraw_result_t *result_out)
public | include/core/cmd_wallet.h:88 | cmd_wallet_list | result_t cmd_wallet_list(wallet_entry_t *entries, int max_entries, int *count_out)
public | include/core/cmd_wallet.h:93 | cmd_wallet_list_coins | result_t cmd_wallet_list_coins(const char *wallet_path, folder_type_t folder, folder_scan_t *scan_out)
public | include/core/cmd_wallet.h:99 | cmd_wallet_list_serials | result_t cmd_wallet_list_serials(const char *wallet_path, uint32_t *serials, int max_serials, int *count_out)
public | include/core/cmd_wallet.h:105 | cmd_wallet_transactions_iter | result_t cmd_wallet_transactions_iter(const char *wallet_path, wallet_line_cb cb, void *ctx)
public | include/core/cmd_wallet.h:111 | cmd_wallet_receipts_iter | result_t cmd_wallet_receipts_iter(const char *wallet_path, wallet_line_cb cb, void *ctx)
public | include/core/cmd_wallet.h:117 | cmd_wallet_templates_list | result_t cmd_wallet_templates_list(const char *wallet_path, wallet_line_cb cb, void *ctx)
public | include/core/cmd_wallet.h:124 | cmd_wallet_template_import | result_t cmd_wallet_template_import(const char *wallet_path, const char *source_png_path, char *saved_name_out, size_t saved_name_len)
public | include/core/cmd_wallet.h:132 | cmd_wallet_template_delete | result_t cmd_wallet_template_delete(const char *wallet_path, const char *template_name)
public | include/core/cmd_wallet.h:138 | cmd_wallet_template_set_active | result_t cmd_wallet_template_set_active(const char *wallet_path, const char *template_name)
public | include/core/cmd_wallet.h:144 | cmd_wallet_template_get_active | result_t cmd_wallet_template_get_active(const char *wallet_path, char *template_name_out, size_t template_name_len)
public | include/core/cmd_wallet.h:152 | cmd_wallet_backup | result_t cmd_wallet_backup(const char *wallet_path, const char *dest_path)
public | include/core/cmd_wallet.h:160 | cmd_wallet_export_png | result_t cmd_wallet_export_png(const char *wallet_path, const char *filename, const char *png_template_path, const char *output_png_path)
public | include/core/coin_crypto.h:31 | coin_crypto_init | result_t coin_crypto_init(void)
public | include/core/coin_crypto.h:37 | coin_crypto_cleanup | void coin_crypto_cleanup(void)
public | include/core/coin_crypto.h:52 | coin_crypto_set_key_from_password | result_t coin_crypto_set_key_from_password(const char *password)
public | include/core/coin_crypto.h:58 | coin_crypto_clear_key | void coin_crypto_clear_key(void)
public | include/core/coin_crypto.h:69 | coin_crypto_has_key | bool coin_crypto_has_key(void)
public | include/core/coin_crypto.h:76 | coin_crypto_has_type10_key | bool coin_crypto_has_type10_key(void)
public | include/core/coin_crypto.h:86 | coin_crypto_set_type10_key | result_t coin_crypto_set_type10_key(const uint8_t key[32], const uint8_t salt[16])
public | include/core/coin_crypto.h:95 | coin_crypto_get_type10_key | result_t coin_crypto_get_type10_key(uint8_t key_out[32], uint8_t salt_out[16])
public | include/core/coin_crypto.h:110 | coin_crypto_suppress_encryption | void coin_crypto_suppress_encryption(void)
public | include/core/coin_crypto.h:111 | coin_crypto_allow_encryption | void coin_crypto_allow_encryption(void)
public | include/core/coin_crypto.h:112 | coin_crypto_is_encryption_suppressed | bool coin_crypto_is_encryption_suppressed(void)
public | include/core/coin_file.h:31 | coin_file_read | result_t coin_file_read(const char *filepath, cloudcoin_t *coin)
public | include/core/coin_file.h:45 | coin_file_write | result_t coin_file_write(const char *filepath, const cloudcoin_t *coin)
public | include/core/coin_file.h:95 | coin_file_write_type10_atomic | result_t coin_file_write_type10_atomic(const char *filepath, const cloudcoin_t *coin, const uint8_t key[32], const uint8_t salt[16], const t10_session_authority_t *auth, const coin_src_token_t *src)
public | include/core/coin_file.h:114 | coin_file_write_plaintext_atomic | result_t coin_file_write_plaintext_atomic(const char *filepath, const cloudcoin_t *coin, const t10_session_authority_t *auth)
public | include/core/coin_file.h:129 | coin_file_write_plaintext_atomic_tok | result_t coin_file_write_plaintext_atomic_tok(const char *filepath, const cloudcoin_t *coin, const t10_session_authority_t *auth, const coin_src_token_t *src)
public | include/core/coin_file.h:173 | coin_file_read_multi | result_t coin_file_read_multi(const char *filepath, cloudcoin_t **coins, int *count)
public | include/core/coin_file.h:187 | coin_file_write_multi | result_t coin_file_write_multi(const char *filepath, const cloudcoin_t *coins, int count)
public | include/core/coin_file.h:204 | coin_file_read_meta | result_t coin_file_read_meta(const char *filepath, coin_file_header_t *header_out, uint32_t *serial_out, int8_t *denom_out)
public | include/core/coin_file.h:218 | coin_file_read_type10_salt | result_t coin_file_read_type10_salt(const char *filepath, uint8_t salt_out[CCEF_SALT_SIZE])
public | include/core/coin_file.h:240 | coin_file_save | result_t coin_file_save(const char *directory, const cloudcoin_t *coins, int count, const char *tag, bool tag_is_user_memo)
public | include/core/coin_file.h:251 | coin_array_free | void coin_array_free(cloudcoin_t *coins)
public | include/core/coin_file.h:277 | coin_file_write_atomic | result_t coin_file_write_atomic(const char *filepath, const cloudcoin_t *coin)
public | include/core/coin_file.h:287 | coin_file_write_multi_atomic | result_t coin_file_write_multi_atomic(const char *filepath, const cloudcoin_t *coins, int count)
public | include/core/coin_filename.h:48 | coin_filename_build | result_t coin_filename_build(char *buffer, size_t size, uint64_t value_microunits, int coin_count, uint32_t serial, const char *tag, bool tag_is_user_memo)
public | include/core/coin_filename.h:69 | coin_filename_generate | result_t coin_filename_generate(char *buffer, size_t size, int8_t denomination, uint32_t serial, const char *tag)
public | include/core/coin_filename.h:92 | coin_filename_extract_serial | result_t coin_filename_extract_serial(const char *filename, uint32_t *serial)
public | include/core/coin_filename.h:97 | coin_filename_is_bin | bool coin_filename_is_bin(const char *filename)
public | include/core/coin_filename.h:115 | coin_filename_with_task | result_t coin_filename_with_task(char *buffer, size_t size, uint32_t serial, int8_t denomination, const char *task_id)
public | include/core/coin_filename.h:129 | coin_filename_has_task | bool coin_filename_has_task(const char *filename, const char *task_id)
public | include/core/coin_filename.h:144 | coin_filename_sanitize_tag | void coin_filename_sanitize_tag(char *tag, size_t max_len)
public | include/core/coin_types.h:84 | coin_read_be16 | static inline uint16_t coin_read_be16(const uint8_t *p)
public | include/core/coin_types.h:89 | coin_write_be16 | static inline void coin_write_be16(uint8_t *p, uint16_t v)
public | include/core/coin_types.h:95 | coin_read_be32 | static inline uint32_t coin_read_be32(const uint8_t *p)
public | include/core/coin_types.h:101 | coin_write_be32 | static inline void coin_write_be32(uint8_t *p, uint32_t v)
public | include/core/coin_types.h:109 | coin_read_be24 | static inline uint32_t coin_read_be24(const uint8_t *p)
public | include/core/coin_types.h:114 | coin_read_be64 | static inline uint64_t coin_read_be64(const uint8_t *p)
public | include/core/coin_types.h:122 | coin_write_be64 | static inline void coin_write_be64(uint8_t *p, uint64_t v)
public | include/core/coin_types.h:134 | coin_write_be24 | static inline void coin_write_be24(uint8_t *p, uint32_t v)
public | include/core/coin_utils.h:28 | coin_pown_encode_bytes | void coin_pown_encode_bytes(const uint8_t pown_status[RAIDA_COUNT], uint8_t bytes[COIN_POWN_BYTES])
public | include/core/coin_utils.h:39 | coin_pown_decode_bytes | void coin_pown_decode_bytes(const uint8_t bytes[COIN_POWN_BYTES], uint8_t pown_status[RAIDA_COUNT])
public | include/core/coin_utils.h:62 | coin_status_known | known_status_t coin_status_known(uint8_t status)
public | include/core/coin_utils.h:70 | coin_status_op_result | op_result_t coin_status_op_result(uint8_t status)
public | include/core/coin_utils.h:79 | coin_status_make | uint8_t coin_status_make(known_status_t known, op_result_t result)
public | include/core/coin_utils.h:94 | coin_status_update | uint8_t coin_status_update(uint8_t current, bool passed, op_result_t result)
public | include/core/coin_utils.h:102 | coin_status_to_string | const char *coin_status_to_string(uint8_t status)
public | include/core/coin_utils.h:109 | coin_pown_status_init | void coin_pown_status_init(uint8_t pown_status[RAIDA_COUNT])
public | include/core/coin_utils.h:119 | coin_pown_count_pass | int coin_pown_count_pass(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/coin_utils.h:129 | coin_pown_count_fail | int coin_pown_count_fail(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/coin_utils.h:139 | coin_pown_count_unknown | int coin_pown_count_unknown(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/coin_utils.h:157 | coin_denomination_to_microunits | uint64_t coin_denomination_to_microunits(int8_t denom)
public | include/core/coin_utils.h:175 | make_change_cascade_budget | uint64_t make_change_cascade_budget(int8_t max_breakable, int8_t target_denom, uint64_t multi_coins)
public | include/core/coin_utils.h:191 | make_change_counts_progressed | bool make_change_counts_progressed(const int *before, const int *after, int n, int8_t source_denom)
public | include/core/coin_utils.h:210 | make_change_ensure_loop | result_t make_change_ensure_loop(int8_t target_denom, int target_count, uint64_t budget_ceiling, make_change_scan_fn scan, make_change_break_fn do_break, void *ud)
public | include/core/coin_utils.h:227 | make_change_pick_break_for_gap | int8_t make_change_pick_break_for_gap(const bool present[COIN_DENOM_COUNT], uint64_t gap_units)
public | include/core/coin_utils.h:238 | coin_microunits_to_denomination | int8_t coin_microunits_to_denomination(uint64_t value)
public | include/core/coin_utils.h:246 | coin_denomination_to_string | const char *coin_denomination_to_string(int8_t denom)
public | include/core/coin_utils.h:254 | coin_denomination_to_value | double coin_denomination_to_value(int8_t denom)
public | include/core/coin_utils.h:265 | coin_value_to_denomination | int8_t coin_value_to_denomination(double value)
public | include/core/coin_utils.h:278 | coin_denom_format_for_filename | result_t coin_denom_format_for_filename(int8_t denom, char *buffer, size_t size)
public | include/core/coin_utils.h:287 | coin_array_total_value | uint64_t coin_array_total_value(const cloudcoin_t *coins, int count)
public | include/core/coin_utils.h:301 | coin_is_valid | bool coin_is_valid(const cloudcoin_t *coin)
public | include/core/coin_utils.h:309 | coin_serial_is_valid | bool coin_serial_is_valid(uint32_t serial)
public | include/core/coin_utils.h:317 | coin_denomination_is_valid | bool coin_denomination_is_valid(int8_t denom)
public | include/core/coin_utils.h:322 | denomination_code_to_value_double | double denomination_code_to_value_double(int8_t code)
public | include/core/coin_utils.h:331 | denomination_value_to_code_double | bool denomination_value_to_code_double(double value, int8_t *code_out)
public | include/core/coin_utils.h:347 | qmail_tld_to_denomination | bool qmail_tld_to_denomination(const char *class_name, uint8_t *denom_out)
public | include/core/coin_utils.h:358 | qmail_denomination_to_tld | const char *qmail_denomination_to_tld(uint8_t denom)
public | include/core/core_bootstrap.h:54 | core_desktop_config_defaults | void core_desktop_config_defaults(core_desktop_config_t *out)
public | include/core/core_bootstrap.h:64 | core_bootstrap_ensure_directories | result_t core_bootstrap_ensure_directories(const char *client_data_dir)
public | include/core/core_bootstrap.h:75 | core_bootstrap_write_default_config | result_t core_bootstrap_write_default_config(const char *client_data_dir, int *created_out)
public | include/core/core_bootstrap.h:92 | core_bootstrap_load_config | result_t core_bootstrap_load_config(const char *client_data_dir, core_desktop_config_t *out)
public | include/core/core_bootstrap.h:102 | core_bootstrap_wallet_registry | result_t core_bootstrap_wallet_registry(const char *client_data_dir, int *changed_out)
public | include/core/core_bootstrap.h:117 | core_bootstrap_refresh_raida_servers | result_t core_bootstrap_refresh_raida_servers(int *changed_out)
public | include/core/core_bootstrap.h:121 | core_bootstrap_refresh_raida_servers_ex | result_t core_bootstrap_refresh_raida_servers_ex(int *changed_out, int *source_out)
public | include/core/core_http_provider.h:38 | core_http_provider_set | void core_http_provider_set(const core_http_provider_t *provider)
public | include/core/core_http_provider.h:44 | core_http_provider_get | const core_http_provider_t *core_http_provider_get(void)
public | include/core/core_transport_provider.h:14 | transport_adapter_get | core_transport_t *transport_adapter_get(void)
public | include/core/core_transport.h:275 | core_transport_result_init | static inline void core_transport_result_init(core_transport_result_t *result)
public | include/core/core_transport.h:289 | core_transport_result_free | static inline void core_transport_result_free(core_transport_result_t *result)
public | include/core/core_transport.h:301 | core_transport_init | static inline void core_transport_init(core_transport_t *transport)
public | include/core/crypto.h:35 | crypto_aes128_ctr_crypt | result_t crypto_aes128_ctr_crypt(const uint8_t key[16], const uint8_t nonce[8], uint8_t *data, size_t data_len)
public | include/core/crypto.h:51 | crypto_md5 | result_t crypto_md5(const uint8_t *data, size_t len, uint8_t hash_out[16])
public | include/core/crypto.h:65 | crypto_sha256 | result_t crypto_sha256(const uint8_t *data, size_t len, uint8_t hash_out[32])
public | include/core/crypto.h:83 | crypto_aes128_ctr_crypt_iv16 | result_t crypto_aes128_ctr_crypt_iv16(const uint8_t key[16], const uint8_t iv[16], uint8_t *data, size_t data_len)
public | include/core/crypto.h:103 | crypto_aes256_ctr_crypt | result_t crypto_aes256_ctr_crypt(const uint8_t key[32], const uint8_t iv[16], uint8_t *data, size_t data_len)
public | include/core/crypto.h:117 | crypto_aes256_gcm_encrypt | result_t crypto_aes256_gcm_encrypt(const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, uint8_t tag_out[16])
public | include/core/crypto.h:129 | crypto_aes256_gcm_decrypt | result_t crypto_aes256_gcm_decrypt(const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, const uint8_t tag[16])
public | include/core/crypto.h:148 | crypto_derive_locker_key | void crypto_derive_locker_key(uint8_t raida_id, const char *locker_key_str, uint8_t key_out[16])
public | include/core/crypto.h:166 | crypto_derive_locker_an | void crypto_derive_locker_an(int8_t denomination, uint32_t serial_number, const uint8_t seed[16], uint8_t an_out[16])
public | include/core/crypto.h:183 | crypto_random_bytes | void crypto_random_bytes(uint8_t *buffer, size_t len)
public | include/core/crypto.h:197 | crypto_random_bytes_checked | result_t crypto_random_bytes_checked(uint8_t *buf, size_t len)
public | include/core/drd_local_store.h:45 | drd_local_store_init | result_t drd_local_store_init(const char *data_dir)
public | include/core/drd_local_store.h:46 | drd_local_store_close | void drd_local_store_close(void)
public | include/core/drd_local_store.h:47 | drd_local_store_is_open | bool drd_local_store_is_open(void)
public | include/core/drd_local_store.h:55 | drd_local_store_begin_batch | result_t drd_local_store_begin_batch(void)
public | include/core/drd_local_store.h:56 | drd_local_store_commit_batch | result_t drd_local_store_commit_batch(void)
public | include/core/drd_local_store.h:57 | drd_local_store_rollback_batch | result_t drd_local_store_rollback_batch(void)
public | include/core/drd_local_store.h:64 | drd_local_store_upsert_user | result_t drd_local_store_upsert_user(const drd_user_t *user)
public | include/core/drd_local_store.h:70 | drd_local_store_apply_tombstone | result_t drd_local_store_apply_tombstone(int8_t denomination, uint32_t serial_number, int64_t deleted_at)
public | include/core/drd_local_store.h:102 | drd_local_search_params_init | void drd_local_search_params_init(drd_local_search_params_t *p)
public | include/core/drd_local_store.h:110 | drd_local_store_search | result_t drd_local_store_search(const drd_local_search_params_t *params, drd_user_t *results_out, int max_results, int *count_out, int64_t *total_out, bool *deleted_flags_out)
public | include/core/drd_local_store.h:116 | drd_local_store_counts | result_t drd_local_store_counts(int64_t *live_out, int64_t *tombstone_out)
public | include/core/drd_local_store.h:126 | drd_local_store_get_cursor | result_t drd_local_store_get_cursor(uint8_t raida_id, uint8_t shard_count, uint8_t shard_index, drd_sync_cursor_row_t *row_out)
public | include/core/drd_local_store.h:129 | drd_local_store_save_cursor | result_t drd_local_store_save_cursor(uint8_t raida_id, uint8_t shard_count, uint8_t shard_index, const drd_sync_cursor_row_t *row)
public | include/core/drd_local_store.h:137 | drd_local_store_max_cursor_for_shard | result_t drd_local_store_max_cursor_for_shard(uint8_t shard_count, uint8_t shard_index, int64_t *max_updated_at_out)
public | include/core/drd_local_store.h:142 | drd_local_store_clear_cursors | result_t drd_local_store_clear_cursors(void)
public | include/core/drd_local_store.h:148 | drd_local_store_last_sync_at | result_t drd_local_store_last_sync_at(int64_t *out)
public | include/core/drd_sync.h:43 | drd_sync_config_default | void drd_sync_config_default(drd_sync_config_t *out)
public | include/core/drd_sync.h:47 | drd_sync_start | result_t drd_sync_start(const char *data_dir, const drd_sync_config_t *cfg)
public | include/core/drd_sync.h:50 | drd_sync_request_shutdown | void drd_sync_request_shutdown(void)
public | include/core/drd_sync.h:56 | drd_sync_kick | result_t drd_sync_kick(bool full, char *task_id_out, size_t task_id_size)
public | include/core/drd_sync.h:59 | drd_sync_get_status | void drd_sync_get_status(drd_sync_status_t *out)
public | include/core/encryption_key.h:58 | encryption_key_init | void encryption_key_init(raida_encryption_key_t *key)
public | include/core/encryption_key.h:87 | encryption_key_select | result_t encryption_key_select(const char *wallet_path, uint32_t exclude_sn, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:104 | encryption_key_select_excluding | result_t encryption_key_select_excluding(const char *wallet_path, int8_t exclude_denom, uint32_t exclude_sn, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:120 | encryption_key_select_any_wallet | result_t encryption_key_select_any_wallet(uint32_t exclude_sn, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:134 | encryption_key_select_by_sn | result_t encryption_key_select_by_sn(const char *wallet_path, uint32_t target_sn, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:145 | encryption_key_count_passes | int encryption_key_count_passes(const uint8_t pown_status[RAIDA_COUNT])
public | include/core/encryption_key.h:209 | encryption_key_policy_init | void encryption_key_policy_init(encryption_key_policy_t *p)
public | include/core/encryption_key.h:235 | encryption_key_get | result_t encryption_key_get(const encryption_key_policy_t *policy, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:243 | encryption_key_pair_options_init | void encryption_key_pair_options_init(encryption_key_pair_options_t *options)
public | include/core/encryption_key.h:245 | encryption_key_get_pair | result_t encryption_key_get_pair(const encryption_key_pair_options_t *options, raida_encryption_key_pair_t *pair_out)
public | include/core/encryption_key.h:248 | encryption_key_reseat_pair | result_t encryption_key_reseat_pair( const encryption_key_pair_options_t *options, const raida_encryption_key_pair_t *blamed_pair, const uint32_t *batch_sns, size_t batch_count, raida_encryption_key_pair_t *pair_out)
public | include/core/encryption_key.h:263 | encryption_key_pair_apply_unique | result_t encryption_key_pair_apply_unique( const raida_encryption_key_pair_t *pair, encryption_key_pair_action_fn action, void *user_data, size_t *attempted_out, size_t *failed_out)
public | include/core/encryption_key.h:281 | encryption_key_reseat_opts_init | void encryption_key_reseat_opts_init(encryption_key_reseat_opts_t *opts)
public | include/core/encryption_key.h:304 | encryption_key_reseat | result_t encryption_key_reseat(const char *wallet_path, uint32_t blamed_sn, const uint32_t *batch_sns, size_t batch_count, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:325 | encryption_key_reseat_ex | result_t encryption_key_reseat_ex(const encryption_key_reseat_opts_t *opts, const char *wallet_path, uint32_t blamed_sn, const uint32_t *batch_sns, size_t batch_count, raida_encryption_key_t *key_out)
public | include/core/encryption_key.h:345 | encryption_key_fill_for_raida | static inline void encryption_key_fill_for_raida( const raida_encryption_key_t *master, uint8_t raida_id, encryption_key_t *out)
public | include/core/encryption_key.h:361 | encryption_key_fill_pair_for_raida | static inline result_t encryption_key_fill_pair_for_raida( const raida_encryption_key_pair_t *pair, uint8_t raida_id, encryption_key_t *out)
public | include/core/encryption_key.h:398 | encryption_key_setup_locker | void encryption_key_setup_locker(const uint8_t locker_code[AN_LENGTH], encryption_key_t *key_out)
public | include/core/executor.h:225 | exec_config_init | void exec_config_init(exec_config_t *config)
public | include/core/executor.h:230 | exec_config_simple | void exec_config_simple(exec_config_t *config, transport_type_t transport, exec_mode_t mode)
public | include/core/executor.h:235 | exec_config_encrypted | void exec_config_encrypted(exec_config_t *config, transport_type_t transport, exec_mode_t mode, encryption_key_t *key)
public | include/core/executor.h:242 | exec_config_set_encryption | result_t exec_config_set_encryption(exec_config_t *config, encryption_type_t type, encryption_key_t *key, per_raida_key_fn provider, void *provider_data)
public | include/core/executor.h:255 | exec_config_enable_hv2_en8_auth_coin | result_t exec_config_enable_hv2_en8_auth_coin(exec_config_t *config)
public | include/core/executor.h:272 | executor_run | result_t executor_run(uint8_t command_group, uint8_t command_code, body_builder_fn builder, void *builder_data, exec_config_t *config, exec_results_t *results)
public | include/core/executor.h:288 | executor_run_single | result_t executor_run_single(uint8_t raida_id, uint8_t command_group, uint8_t command_code, const uint8_t *body, size_t body_size, exec_config_t *config, raida_result_t *result)
public | include/core/executor.h:338 | executor_run_endpoint | result_t executor_run_endpoint(const void *endpoint, uint8_t command_group, uint8_t command_code, const uint8_t *body, size_t body_size, exec_config_t *config, raida_result_t *result)
public | include/core/executor.h:348 | executor_run_single_owned | result_t executor_run_single_owned(uint8_t raida_id, uint8_t command_group, uint8_t command_code, uint8_t **body, size_t body_size, exec_config_t *config, raida_result_t *result)
public | include/core/executor.h:374 | executor_run_async | result_t executor_run_async(uint8_t command_group, uint8_t command_code, body_builder_fn builder, void *builder_data, exec_config_t *config, executor_async_t **handle)
public | include/core/executor.h:381 | executor_async_is_complete | bool executor_async_is_complete(executor_async_t *handle)
public | include/core/executor.h:390 | executor_async_wait | result_t executor_async_wait(executor_async_t *handle, uint32_t timeout_ms)
public | include/core/executor.h:399 | executor_async_get_results | result_t executor_async_get_results(executor_async_t *handle, exec_results_t *results)
public | include/core/executor.h:405 | executor_async_cancel | void executor_async_cancel(executor_async_t *handle)
public | include/core/executor.h:410 | executor_async_free | void executor_async_free(executor_async_t *handle)
public | include/core/executor.h:426 | executor_select_helpers | result_t executor_select_helpers(uint8_t exclude_raida, uint8_t *helpers, int *helper_count, int max_helpers, core_transport_t *transport_iface)
public | include/core/executor.h:438 | exec_results_init | void exec_results_init(exec_results_t *results)
public | include/core/executor.h:443 | exec_results_free | void exec_results_free(exec_results_t *results)
public | include/core/executor.h:448 | raida_result_init | void raida_result_init(raida_result_t *result)
public | include/core/executor.h:453 | raida_result_free | void raida_result_free(raida_result_t *result)
public | include/core/filesystem.h:16 | fs_create_directories | result_t fs_create_directories(const char *path, unsigned mode)
public | include/core/filesystem.h:20 | fs_flush_file_sync | result_t fs_flush_file_sync(FILE *file)
public | include/core/filesystem.h:43 | fs_move_file | result_t fs_move_file(const char *src, const char *dst)
public | include/core/filesystem.h:50 | fs_move_file_sync_noreplace | result_t fs_move_file_sync_noreplace(const char *src, const char *dst)
public | include/core/filesystem.h:53 | fs_quarantine_move_sync_completed | result_t fs_quarantine_move_sync_completed(const char *src, const char *dst)
public | include/core/filesystem.h:71 | fs_atomic_rename | result_t fs_atomic_rename(const char *src, const char *dst)
public | include/core/filesystem.h:75 | fs_publish_file_sync | result_t fs_publish_file_sync(const char *src, const char *dst)
public | include/core/filesystem.h:84 | fs_copy_file | result_t fs_copy_file(const char *src, const char *dst)
public | include/core/filesystem.h:93 | fs_copy_file_noreplace | result_t fs_copy_file_noreplace(const char *src, const char *dst, bool *existed_out)
public | include/core/filesystem.h:106 | fs_get_file_size_size_t | bool fs_get_file_size_size_t(const char *path, size_t *size_out)
public | include/core/filesystem.h:114 | fs_get_file_size | long fs_get_file_size(const char *path)
public | include/core/filesystem.h:117 | fs_get_free_space | bool fs_get_free_space(const char *path, uint64_t *free_bytes_out)
public | include/core/filesystem.h:125 | fs_get_filename | const char* fs_get_filename(const char *path)
public | include/core/filesystem.h:140 | fs_extract_basename | result_t fs_extract_basename(const char *path, char *out, size_t out_size)
public | include/core/filesystem.h:150 | fs_canonicalize_path | bool fs_canonicalize_path(const char *path, char *out, size_t out_size)
public | include/core/filesystem.h:163 | fs_path_is_inside_client_data | bool fs_path_is_inside_client_data(const char *canonical_path)
public | include/core/filesystem.h:170 | fs_path_prepare_runtime | result_t fs_path_prepare_runtime(const char *path, char *runtime_out, size_t runtime_out_size, fs_path_kind_t *kind_out)
public | include/core/filesystem.h:175 | fs_path_to_storage | result_t fs_path_to_storage(const char *runtime_path, fs_path_kind_t kind, char *stored_out, size_t stored_out_size)
public | include/core/filesystem.h:179 | fs_path_from_storage | result_t fs_path_from_storage(const char *stored_path, fs_path_kind_t kind, char *runtime_out, size_t runtime_out_size)
public | include/core/folder_types.h:70 | folder_type_to_name | const char *folder_type_to_name(folder_type_t folder)
public | include/core/folder_types.h:78 | folder_name_to_type | folder_type_t folder_name_to_type(const char *name)
public | include/core/header_v2.h:90 | header_v2_is_content_group | bool header_v2_is_content_group(uint8_t command_group)
public | include/core/header_v2.h:91 | header_v2_content_en_allowed | bool header_v2_content_en_allowed(encryption_type_t en, int allow_plaintext)
public | include/core/header_v2.h:92 | header_v2_flags_valid | bool header_v2_flags_valid(uint8_t flags)
public | include/core/header_v2.h:93 | header_v2_en_flags_legal | bool header_v2_en_flags_legal(encryption_type_t en, uint8_t flags)
public | include/core/header_v2.h:95 | header_v2_write_locator_coin | void header_v2_write_locator_coin(uint8_t loc[HEADER_V2_LOCATOR_SIZE], int8_t denomination, uint32_t serial_number)
public | include/core/header_v2.h:97 | header_v2_write_identity_coin | void header_v2_write_identity_coin(uint8_t identity[HEADER_V2_IDENTITY_SIZE], int8_t denomination, uint32_t serial_number, const uint8_t an[AN_LENGTH])
public | include/core/header_v2.h:100 | header_v2_write_identity_session | void header_v2_write_identity_session(uint8_t identity[HEADER_V2_IDENTITY_SIZE], const uint8_t handle[HEADER_V2_LOCATOR_SIZE])
public | include/core/header_v2.h:102 | header_v2_identity_matches_flags | bool header_v2_identity_matches_flags(uint8_t flags, const uint8_t identity[HEADER_V2_IDENTITY_SIZE], const uint8_t loc_a[HEADER_V2_LOCATOR_SIZE])
public | include/core/header_v2.h:106 | header_v2_build_request | result_t header_v2_build_request(const header_v2_build_params_t *params, uint8_t **frame_out, size_t *frame_len_out)
public | include/core/header_v2.h:108 | header_v2_parsed_free | void header_v2_parsed_free(header_v2_parsed_t *parsed)
public | include/core/header_v2.h:109 | header_v2_parse_request | result_t header_v2_parse_request(const uint8_t *frame, size_t frame_len, const uint8_t *key, size_t key_len, header_v2_parsed_t *parsed_out)
public | include/core/header_v2.h:113 | header_v2_build_response | result_t header_v2_build_response(uint8_t ri, uint8_t sh, uint8_t status, uint8_t cg, uint16_t echo, encryption_type_t en, const uint8_t *key, size_t key_len, const uint8_t request_nonce[HEADER_V2_NONCE_SIZE], const uint8_t *challenge_or_xor, const uint8_t *plaintext, size_t plaintext_len, uint32_t exec_time_us, uint8_t **frame_out, size_t *frame_len_out)
public | include/core/health_manager.h:61 | health_result_init | static inline void health_result_init(health_result_t *result)
public | include/core/health_manager.h:89 | health_manager_start | result_t health_manager_start(void)
public | include/core/health_manager.h:94 | health_manager_stop | void health_manager_stop(void)
public | include/core/health_manager.h:101 | health_manager_is_busy | bool health_manager_is_busy(void)
public | include/core/health_manager.h:108 | health_manager_is_initialized | bool health_manager_is_initialized(void)
public | include/core/health_manager.h:123 | health_manager_try_begin | bool health_manager_try_begin(const char *operation)
public | include/core/health_manager.h:131 | health_manager_end | void health_manager_end(void)
public | include/core/health_manager.h:160 | health_set_skip_unprocessed_sweep | void health_set_skip_unprocessed_sweep(bool skip)
public | include/core/health_manager.h:162 | health_check_wallet | result_t health_check_wallet(const char *wallet_path, core_transport_t *transport, bool skip_detect, health_result_t *result)
public | include/core/health_manager.h:174 | health_run_grade | result_t health_run_grade(const char *wallet_path, health_result_t *result)
public | include/core/health_manager.h:179 | health_run_fix_limbo | result_t health_run_fix_limbo(const char *wallet_path, core_transport_t *transport, health_result_t *result)
public | include/core/health_manager.h:188 | health_run_fix_fracked | result_t health_run_fix_fracked(const char *wallet_path, core_transport_t *transport, health_result_t *result)
public | include/core/health_manager.h:195 | health_run_fix_encryption | result_t health_run_fix_encryption(const char *wallet_path, core_transport_t *transport, health_result_t *result)
public | include/core/health_manager.h:206 | health_run_detect | result_t health_run_detect(const char *wallet_path, core_transport_t *transport, health_result_t *result)
public | include/core/health_manager.h:216 | health_mark_helper_fracked_and_repair | result_t health_mark_helper_fracked_and_repair( const raida_encryption_key_t *enc_key, const uint8_t *failed_raidas, int failed_count, core_transport_t *transport, health_result_t *result)
public | include/core/http_client.h:36 | http_get | result_t http_get(const char *url, char **response_data, size_t *response_size)
public | include/core/http_client.h:42 | http_get_with_options | result_t http_get_with_options(const char *url, const http_get_options_t *options, char **response_data, size_t *response_size)
public | include/core/http_client.h:47 | http_get_stream | result_t http_get_stream(const char *url, const http_get_options_t *options, http_stream_sink_t sink, void *context)
public | include/core/http_client.h:55 | http_client_global_init | void http_client_global_init(void)
public | include/core/http_client.h:62 | http_client_global_cleanup | void http_client_global_cleanup(void)
public | include/core/instance_lock.h:64 | instance_lock_init | void instance_lock_init(instance_lock_t *lock)
public | include/core/instance_lock.h:87 | instance_lock_try | result_t instance_lock_try(instance_lock_t *lock, const char *client_data_path)
public | include/core/instance_lock.h:93 | instance_lock_release | void instance_lock_release(instance_lock_t *lock)
public | include/core/instance_lock.h:99 | instance_lock_file_path | const char *instance_lock_file_path(const instance_lock_t *lock)
public | include/core/instance_lock.h:107 | instance_lock_acquire_global | result_t instance_lock_acquire_global(const char *client_data_path)
public | include/core/instance_lock.h:110 | instance_lock_release_global | void instance_lock_release_global(void)
public | include/core/instance_lock.h:113 | instance_lock_global_file_path | const char *instance_lock_global_file_path(void)
public | include/core/logging.h:91 | log_init | void log_init(void)
public | include/core/logging.h:98 | log_cleanup | void log_cleanup(void)
public | include/core/logging.h:111 | log_compress_file_gzip | bool log_compress_file_gzip(const char *src, const char *dst)
public | include/core/logging.h:124 | log_rotate_if_needed | void log_rotate_if_needed(const char *client_data_path)
public | include/core/logging.h:130 | log_set_level | void log_set_level(log_level_t level)
public | include/core/logging.h:137 | log_get_level | log_level_t log_get_level(void)
public | include/core/logging.h:158 | log_push_request_level | void log_push_request_level(log_level_t level)
public | include/core/logging.h:164 | log_pop_request_level | void log_pop_request_level(void)
public | include/core/logging.h:169 | log_push_request_id | void log_push_request_id(const char *request_id)
public | include/core/logging.h:174 | log_pop_request_id | void log_pop_request_id(void)
public | include/core/logging.h:189 | log_request_mark_quiet | void log_request_mark_quiet(void)
public | include/core/logging.h:192 | log_request_is_quiet | bool log_request_is_quiet(void)
public | include/core/logging.h:195 | log_request_clear_quiet | void log_request_clear_quiet(void)
public | include/core/logging.h:210 | log_set_handler | void log_set_handler(log_handler_fn handler, void *user_context)
public | include/core/logging.h:225 | log_set_file | bool log_set_file(const char *filepath)
public | include/core/logging.h:231 | log_set_timestamps | void log_set_timestamps(bool enabled)
public | include/core/logging.h:237 | log_set_show_category | void log_set_show_category(bool enabled)
public | include/core/logging.h:247 | log_debug | void log_debug(log_category_t cat, const char *fmt, ...)
public | include/core/logging.h:253 | log_info | void log_info(log_category_t cat, const char *fmt, ...)
public | include/core/logging.h:259 | log_warn | void log_warn(log_category_t cat, const char *fmt, ...)
public | include/core/logging.h:265 | log_error | void log_error(log_category_t cat, const char *fmt, ...)
public | include/core/logging.h:271 | log_message | void log_message(log_level_t level, log_category_t cat, const char *fmt, ...)
public | include/core/logging.h:277 | log_message_v | void log_message_v(log_level_t level, log_category_t cat, const char *fmt, va_list args)
public | include/core/logging.h:286 | log_level_name | const char* log_level_name(log_level_t level)
public | include/core/logging.h:291 | log_category_name | const char* log_category_name(log_category_t cat)
public | include/core/logging.h:312 | display_timing_histogram | void display_timing_histogram(const char *command_name, const uint32_t *times, const bool *success, const bool *attempted, int count, uint32_t timeout_ms, uint32_t total_time_ms)
public | include/core/logging.h:326 | log_hex_dump | void log_hex_dump(const uint8_t *data, size_t len, const char *label)
public | include/core/logging.h:337 | display_raida_summary | void display_raida_summary(int success, int errors, int timeouts, int total)
public | include/core/logging.h:343 | display_separator | void display_separator(void)
public | include/core/logging.h:349 | display_header | void display_header(const char *title)
public | include/core/logging.h:360 | log_debug_hex_dump | void log_debug_hex_dump(const uint8_t *data, size_t len, const char *label)
public | include/core/logging.h:378 | log_raida_results | void log_raida_results(const char *command_name, const uint32_t *times_ms, const bool *success, const bool *timed_out, const bool *attempted, const uint8_t *status_codes, int count, uint32_t total_time_ms)
public | include/core/logging.h:396 | log_debug_raida_report | void log_debug_raida_report(const raida_debug_report_t *report, bool force)
public | include/core/logging.h:410 | log_request | void log_request(const char *method, const char *path, const char *query_string)
public | include/core/logging.h:422 | log_response | void log_response(int status_code, const char *json_body, size_t body_len)
public | include/core/platform.h:226 | platform_init | result_t platform_init(void)
public | include/core/platform.h:231 | platform_cleanup | void platform_cleanup(void)
public | include/core/platform.h:240 | platform_time_ms | uint64_t platform_time_ms(void)
public | include/core/platform.h:243 | platform_monotonic_ms | uint64_t platform_monotonic_ms(void)
public | include/core/platform.h:248 | platform_sleep_ms | void platform_sleep_ms(uint32_t ms)
public | include/core/platform.h:256 | platform_localtime | bool platform_localtime(const time_t *now, struct tm *result)
public | include/core/platform.h:269 | platform_thread_create | result_t platform_thread_create(thread_t *thread, thread_func_t func, void *arg)
public | include/core/platform.h:276 | thread_join | result_t thread_join(thread_t *thread)
public | include/core/platform.h:284 | thread_join_all | result_t thread_join_all(thread_t *threads, int count)
public | include/core/platform.h:289 | thread_is_running | bool thread_is_running(thread_t *thread)
public | include/core/platform.h:297 | thread_join_timed | result_t thread_join_timed(thread_t *thread, uint32_t timeout_ms)
public | include/core/platform.h:306 | mutex_init | result_t mutex_init(mutex_t *mutex)
public | include/core/platform.h:311 | mutex_destroy | void mutex_destroy(mutex_t *mutex)
public | include/core/platform.h:316 | mutex_lock | void mutex_lock(mutex_t *mutex)
public | include/core/platform.h:321 | mutex_unlock | void mutex_unlock(mutex_t *mutex)
public | include/core/platform.h:332 | platform_random_bytes | void platform_random_bytes(uint8_t *buffer, size_t len)
public | include/core/platform.h:339 | platform_secure_random_bytes | result_t platform_secure_random_bytes(uint8_t *buffer, size_t len)
public | include/core/platform.h:348 | platform_socket_close | void platform_socket_close(socket_t sock)
public | include/core/platform.h:353 | platform_socket_set_nonblocking | result_t platform_socket_set_nonblocking(socket_t sock, bool nonblocking)
public | include/core/platform.h:358 | platform_socket_error | int platform_socket_error(void)
public | include/core/platform.h:363 | platform_socket_would_block | bool platform_socket_would_block(int error)
public | include/core/platform.h:368 | platform_socket_in_progress | bool platform_socket_in_progress(int error)
public | include/core/platform.h:380 | platform_get_executable_dir | result_t platform_get_executable_dir(char *buffer, size_t size)
public | include/core/platform.h:387 | platform_file_exists | bool platform_file_exists(const char *filepath)
public | include/core/platform.h:395 | platform_set_client_data_dir_override | void platform_set_client_data_dir_override(const char *path)
public | include/core/platform.h:403 | platform_get_client_data_dir | void platform_get_client_data_dir(char *buffer)
public | include/core/platform.h:414 | platform_result_str | const char* platform_result_str(result_t result)
public | include/core/platform.h:429 | qmail_worker_pthread_create | static inline int qmail_worker_pthread_create(pthread_t *tid, void *(*fn)(void *), void *arg, int detached)
public | include/core/protocol.h:119 | protocol_request_init | void protocol_request_init(protocol_request_t *request)
public | include/core/protocol.h:124 | protocol_request_free | void protocol_request_free(protocol_request_t *request)
public | include/core/protocol.h:129 | protocol_request_set_body | result_t protocol_request_set_body(protocol_request_t *request, const uint8_t *body, size_t body_size)
public | include/core/protocol.h:136 | protocol_request_take_body | result_t protocol_request_take_body(protocol_request_t *request, uint8_t **body, size_t body_size)
public | include/core/protocol.h:146 | protocol_uses_extended_qmail_framing | bool protocol_uses_extended_qmail_framing(uint8_t command_group, uint8_t command_code)
public | include/core/protocol.h:150 | protocol_request_header_size | size_t protocol_request_header_size(encryption_type_t type)
public | include/core/protocol.h:153 | protocol_frame_header_size | size_t protocol_frame_header_size(const protocol_request_t *request)
public | include/core/protocol.h:156 | protocol_type8_command_supported | bool protocol_type8_command_supported(uint8_t command_group, uint8_t command_code)
public | include/core/protocol.h:168 | protocol_build_packet | result_t protocol_build_packet(protocol_request_t *request, uint8_t **packet, size_t *packet_size)
public | include/core/protocol.h:174 | protocol_free_packet | void protocol_free_packet(uint8_t *packet)
public | include/core/protocol.h:188 | protocol_parse_response | result_t protocol_parse_response(const uint8_t *data, size_t len, const protocol_request_t *request, protocol_response_t *response)
public | include/core/protocol.h:195 | protocol_response_free | void protocol_response_free(protocol_response_t *response)
public | include/core/protocol.h:204 | protocol_generate_challenge | void protocol_generate_challenge(uint8_t challenge[CHALLENGE_LENGTH])
public | include/core/protocol.h:209 | protocol_validate_challenge_crc | bool protocol_validate_challenge_crc(const uint8_t challenge[CHALLENGE_LENGTH])
public | include/core/protocol.h:214 | protocol_verify_signature | bool protocol_verify_signature(const protocol_request_t *request, const protocol_response_t *response)
public | include/core/protocol.h:224 | protocol_encrypt_body | result_t protocol_encrypt_body(const encryption_key_t *key, const uint8_t nonce[8], uint8_t *body, size_t body_size)
public | include/core/protocol.h:232 | protocol_decrypt_body | result_t protocol_decrypt_body(const encryption_key_t *key, const uint8_t nonce[8], uint8_t *body, size_t body_size)
public | include/core/protocol.h:239 | protocol_aes_128_ctr | result_t protocol_aes_128_ctr(const uint8_t *key, const uint8_t *nonce, const uint8_t *input, uint8_t *output, size_t len)
public | include/core/protocol.h:259 | protocol_write_coin_id | static inline size_t protocol_write_coin_id(uint8_t *buf, int8_t dn, uint32_t sn)
public | include/core/protocol.h:277 | protocol_write_coin | static inline size_t protocol_write_coin(uint8_t *buf, int8_t dn, uint32_t sn, const uint8_t an[AN_LENGTH])
public | include/core/protocol.h:290 | protocol_write_sn | static inline size_t protocol_write_sn(uint8_t *buf, uint32_t sn)
public | include/core/protocol.h:304 | protocol_strip_terminator | static inline size_t protocol_strip_terminator(const uint8_t *body, size_t body_len)
public | include/core/raida_consensus_fetch.h:60 | raida_consensus_fetch | result_t raida_consensus_fetch(const char *endpoint, const consensus_fetch_config_t *config, char **out_result)
public | include/core/raida_parallel.h:20 | raida_calculate_timeout | uint32_t raida_calculate_timeout(uint16_t cmd, int coin_count, uint32_t hint_ms)
public | include/core/raida_policy.h:104 | raida_policy_defaults | void raida_policy_defaults(raida_policy_t *policy)
public | include/core/raida_policy.h:105 | raida_policy_validate | result_t raida_policy_validate(const raida_policy_t *policy, char *error, uint32_t error_size)
public | include/core/raida_policy.h:107 | raida_policy_snapshot | void raida_policy_snapshot(raida_policy_t *out)
public | include/core/raida_policy.h:108 | raida_policy_publish | result_t raida_policy_publish(const raida_policy_t *policy)
public | include/core/raida_policy.h:109 | raida_policy_timeout | uint32_t raida_policy_timeout(raida_timeout_kind_t kind)
public | include/core/raida_policy.h:110 | raida_policy_timeout_key | const char *raida_policy_timeout_key(raida_timeout_kind_t kind)
public | include/core/raida_policy.h:113 | raida_policy_timeout_bounds | void raida_policy_timeout_bounds(raida_timeout_kind_t kind, uint32_t *min_ms, uint32_t *max_ms)
public | include/core/raida_policy.h:115 | raida_policy_set_config_value | bool raida_policy_set_config_value(raida_policy_t *policy, const char *key, const char *value, char *error, uint32_t error_size)
public | include/core/raida_servers.h:40 | raida_get_hardcoded_servers | void raida_get_hardcoded_servers(raida_server_info_t servers[RAIDA_COUNT])
public | include/core/raida_servers.h:48 | raida_write_default_server_file | result_t raida_write_default_server_file(const char *filepath)
public | include/core/raida_servers.h:67 | raida_initialize_server_list | result_t raida_initialize_server_list(raida_server_info_t servers[RAIDA_COUNT])
public | include/core/raida_servers.h:73 | raida_initialize_server_list_ex | result_t raida_initialize_server_list_ex(raida_server_info_t servers[RAIDA_COUNT], int *source_out)
public | include/core/raida_servers.h:84 | raida_load_cached_server_list | result_t raida_load_cached_server_list(raida_server_info_t servers[RAIDA_COUNT])
public | include/core/raida_servers.h:95 | raida_index_is_default_qmail | bool raida_index_is_default_qmail(int raida_index)
public | include/core/raida_status.h:262 | raida_status_to_string | const char* raida_status_to_string(uint8_t status)
public | include/core/raida_status.h:275 | raida_status_is_success | bool raida_status_is_success(uint8_t status)
public | include/core/raida_status.h:283 | raida_status_is_retryable | bool raida_status_is_retryable(uint8_t status)
public | include/core/raida_status.h:297 | raida_status_is_encryption_failure | static inline bool raida_status_is_encryption_failure(uint8_t status)
public | include/core/raida_status.h:322 | raida_status_tell_is_invalid_recipient | static inline bool raida_status_tell_is_invalid_recipient(uint8_t status)
public | include/core/raida_status.h:337 | raida_status_tell_is_permanent_rejection | static inline bool raida_status_tell_is_permanent_rejection(uint8_t status)
public | include/core/raida_status.h:353 | raida_status_tell_is_payment_failure | static inline bool raida_status_tell_is_payment_failure(uint8_t status)
public | include/core/raida_telemetry.h:68 | raida_telemetry_init | result_t raida_telemetry_init(const char *log_dir)
public | include/core/raida_telemetry.h:74 | raida_telemetry_log | void raida_telemetry_log(const raida_telemetry_entry_t *entry)
public | include/core/raida_telemetry.h:79 | raida_telemetry_close | void raida_telemetry_close(void)
public | include/core/raida_telemetry.h:84 | raida_telemetry_is_active | bool raida_telemetry_is_active(void)
public | include/core/raida_telemetry.h:114 | raida_telemetry_report | void raida_telemetry_report(void)
public | include/core/raida_telemetry.h:117 | raida_telemetry_report_reset | void raida_telemetry_report_reset(void)
public | include/core/raida_telemetry.h:120 | raida_telemetry_report_totals | void raida_telemetry_report_totals(uint64_t *calls_out, uint64_t *timeouts_out)
public | include/core/receipt_writer.h:125 | receipt_ctx_init | void receipt_ctx_init(receipt_ctx_t *ctx)
public | include/core/receipt_writer.h:139 | receipt_write | result_t receipt_write(const receipt_ctx_t *ctx, char *receipt_path_out, size_t path_size)
public | include/core/receipt_writer.h:147 | receipt_write_and_emit | result_t receipt_write_and_emit(const receipt_ctx_t *ctx, char *receipt_path_out, size_t path_size, char **out_json, size_t *out_length)
public | include/core/receipt_writer.h:169 | receipt_writer_set_json_writer | void receipt_writer_set_json_writer(receipt_json_writer_fn fn)
public | include/core/receipt_writer.h:173 | receipt_build_json | result_t receipt_build_json(const receipt_ctx_t *ctx, char **out_json, size_t *out_length)
public | include/core/results.h:14 | result_to_string | const char *result_to_string(result_t result)
public | include/core/results.h:33 | result_explain | const char *result_explain(result_t result)
public | include/core/rke_client.h:66 | rke_derive_ctx_init | static inline void rke_derive_ctx_init(rke_derive_ctx_t *ctx)
public | include/core/rke_client.h:71 | rke_collect_options_init | static inline void rke_collect_options_init(rke_collect_options_t *o)
public | include/core/rke_client.h:80 | rke_collect_result_init | static inline void rke_collect_result_init(rke_collect_result_t *r)
public | include/core/rke_client.h:85 | rke_build_keyshare_body | result_t rke_build_keyshare_body(const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t client_sn[RKE_V2_CLIENT_SN_LEN], uint64_t timestamp_unix, const uint8_t client_nonce[RKE_V2_CLIENT_NONCE_LEN], uint8_t **body_out, size_t *body_len_out)
public | include/core/rke_client.h:92 | rke_build_share_ticket_body | result_t rke_build_share_ticket_body(const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t client_sn[RKE_V2_CLIENT_SN_LEN], uint64_t timestamp_unix, const uint8_t client_nonce[RKE_V2_CLIENT_NONCE_LEN], int8_t mail_denom, uint32_t mail_sn, const uint8_t mail_an[16], uint8_t **body_out, size_t *body_len_out)
public | include/core/rke_client.h:101 | rke_derive_k_rke_from_shares | result_t rke_derive_k_rke_from_shares(rke_derive_ctx_t *ctx)
public | include/core/rke_client.h:107 | rke_collect | result_t rke_collect(const rke_collect_options_t *options, rke_collect_result_t *result)
public | include/core/rke_client.h:111 | rke_collect_to_ctx | result_t rke_collect_to_ctx(const rke_collect_options_t *options, rke_derive_ctx_t *ctx_out)
public | include/core/rke_client.h:114 | rke_ctx_pack_tickets_be | void rke_ctx_pack_tickets_be(const rke_derive_ctx_t *ctx, uint8_t out100[100])
public | include/core/rke_dns.h:26 | rke_dns_parse_txt | result_t rke_dns_parse_txt(const char *txt, rke_dns_txt_t *out)
public | include/core/rke_sdk.h:49 | rke_sdk_config_init | void rke_sdk_config_init(rke_sdk_config_t *cfg)
public | include/core/rke_sdk.h:53 | rke_sdk_create | result_t rke_sdk_create(const rke_sdk_config_t *cfg, rke_sdk_t **out)
public | include/core/rke_sdk.h:54 | rke_sdk_start | result_t rke_sdk_start(rke_sdk_t *s)
public | include/core/rke_sdk.h:55 | rke_sdk_reload_operator_wallet | result_t rke_sdk_reload_operator_wallet(rke_sdk_t *s)
public | include/core/rke_sdk.h:56 | rke_sdk_get_health | result_t rke_sdk_get_health(const rke_sdk_t *s, rke_sdk_health_t *out)
public | include/core/rke_sdk.h:60 | rke_sdk_redeem_tickets | result_t rke_sdk_redeem_tickets( rke_sdk_t *s, const uint32_t tickets[RKE_V2_RAIDA_COUNT], int8_t claimed_den, uint32_t claimed_sn, rke_fanout_results_t *out)
public | include/core/rke_sdk.h:68 | rke_sdk_preload_secrets | result_t rke_sdk_preload_secrets( rke_sdk_t *s, const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t secrets[RKE_V2_RAIDA_COUNT][RKE_V2_MASTER_SECRET_LEN], rke_fanout_results_t *out)
public | include/core/rke_sdk.h:75 | rke_sdk_stop | void rke_sdk_stop(rke_sdk_t *s)
public | include/core/rke_sdk.h:76 | rke_sdk_destroy | void rke_sdk_destroy(rke_sdk_t *s)
public | include/core/rke_server_ops.h:40 | rke_redeem_tickets | result_t rke_redeem_tickets(const uint32_t tickets[RKE_V2_RAIDA_COUNT], int8_t claimed_den, uint32_t claimed_sn, const rke_fanout_options_t *opt, rke_fanout_results_t *out)
public | include/core/rke_server_ops.h:46 | rke_preload_masters | result_t rke_preload_masters( const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t secrets[RKE_V2_RAIDA_COUNT][RKE_V2_MASTER_SECRET_LEN], const rke_fanout_options_t *opt, rke_fanout_results_t *out)
public | include/core/rke_server_ops.h:52 | rke_redeem_quorum_ok | int rke_redeem_quorum_ok(const rke_fanout_results_t *r)
public | include/core/rke_session_client.h:30 | rke_cs_session_init | static inline void rke_cs_session_init(rke_cs_session_t *s)
public | include/core/rke_session_client.h:40 | rke_cs_build_open_body | result_t rke_cs_build_open_body(const rke_derive_ctx_t *ctx, uint8_t flags, int8_t mail_den, uint32_t mail_sn, const uint32_t tickets[25], uint8_t out173[RKE_OPEN_HTTP_BODY_LEN])
public | include/core/rke_session_client.h:46 | rke_cs_parse_open_response | result_t rke_cs_parse_open_response(const uint8_t k_rke[32], const uint8_t resp85[85], rke_cs_session_t *out)
public | include/core/rke_session_client.h:54 | rke_cs_build_cmd | result_t rke_cs_build_cmd(const rke_cs_session_t *sess, uint16_t cmd, const uint8_t *pt, size_t pt_len, uint8_t *out, size_t out_cap, size_t *out_len)
public | include/core/rke_session_client.h:58 | rke_cs_parse_cmd_response | result_t rke_cs_parse_cmd_response(const rke_cs_session_t *sess, const uint8_t *resp, size_t resp_len, uint8_t *pt_out, size_t pt_cap, size_t *pt_len)
public | include/core/rke_session_client.h:74 | rke_cs_binary_call | result_t rke_cs_binary_call(const char *host, uint16_t port, uint8_t type, const uint8_t *body, size_t body_len, uint16_t *status_out, uint8_t *resp, size_t resp_cap, size_t *resp_len, uint32_t timeout_ms)
public | include/core/rke_session_client.h:83 | rke_cs_session_open_binary | result_t rke_cs_session_open_binary(const char *host, uint16_t port, const rke_derive_ctx_t *ctx, uint8_t flags, int8_t mail_den, uint32_t mail_sn, const uint32_t tickets[25], rke_cs_session_t *sess_out, uint32_t timeout_ms)
public | include/core/rke_type9.h:52 | rke_t9_build_request | result_t rke_t9_build_request(uint8_t node_id, const uint8_t handle[RKE_T9_HANDLE_LEN], const uint8_t k_sess[32], uint8_t cg, uint8_t cm, uint64_t counter, const uint8_t nonce[12], const uint8_t challenge[16], const uint8_t *cmd_data, size_t cmd_len, uint8_t **frame_out, size_t *frame_len_out)
public | include/core/rke_type9.h:59 | rke_t9_parse_response | result_t rke_t9_parse_response(const uint8_t *resp, size_t resp_len, const uint8_t k_sess[32], const uint8_t req_nonce[12], int *status_out, int *is_failure_frame_out, uint8_t **plaintext_out, size_t *pt_len_out)
public | include/core/rke_type9.h:65 | rke_t9_build_open | result_t rke_t9_build_open(uint8_t node_id, const rke_derive_ctx_t *ctx, uint32_t participation_mask, int auth_required, int8_t claimed_den, uint32_t claimed_sn, const uint8_t nonce[12], const uint8_t challenge[16], uint8_t frame_out[RKE_T9_OPEN_FRAME_LEN])
public | include/core/rke_type9.h:73 | rke_t9_build_open_hv2 | result_t rke_t9_build_open_hv2(uint8_t node_id, const rke_derive_ctx_t *ctx, uint32_t participation_mask, int auth_required, int8_t claimed_den, uint32_t claimed_sn, const uint8_t nonce[12], const uint8_t challenge[16], uint16_t echo, uint8_t frame_out[RKE_T9_OPEN_FRAME_LEN])
public | include/core/rke_type9.h:80 | rke_t9_build_request_hv2 | result_t rke_t9_build_request_hv2(uint8_t node_id, const uint8_t handle[RKE_T9_HANDLE_LEN], const uint8_t k_sess[32], uint8_t cg, uint8_t cm, uint64_t counter, const uint8_t nonce[12], const uint8_t challenge[16], const uint8_t *cmd_data, size_t cmd_len, uint16_t echo, uint8_t **frame_out, size_t *frame_len_out)
public | include/core/rke_type9.h:89 | rke_t9_parse_open_response | result_t rke_t9_parse_open_response(const uint8_t *resp, size_t resp_len, const uint8_t k_rke[32], const uint8_t req_nonce[12], int *status_out, int *is_failure_frame_out, int *open_result_out, rke_t9_session_t *sess_out)
public | include/core/rke_type9.h:98 | rke_t9_make_challenge | void rke_t9_make_challenge(uint8_t out[16])
public | include/core/rke_type9.h:104 | rke_t9_session_build_request | result_t rke_t9_session_build_request(rke_t9_session_t *sess, uint8_t cg, uint8_t cm, const uint8_t nonce[12], const uint8_t challenge[16], const uint8_t *cmd_data, size_t cmd_len)
public | include/core/rke_type9.h:110 | rke_t9_session_open | result_t rke_t9_session_open(const char *host, uint16_t port, uint8_t node_id, const rke_derive_ctx_t *ctx, uint32_t participation_mask, int auth_required, int8_t claimed_den, uint32_t claimed_sn, int timeout_ms, rke_t9_session_t *sess_out, int *status_out)
public | include/core/rke_type9.h:122 | rke_t9_session_open_hv2 | result_t rke_t9_session_open_hv2(const char *host, uint16_t port, uint8_t node_id, const rke_derive_ctx_t *ctx, uint32_t participation_mask, int auth_required, int8_t claimed_den, uint32_t claimed_sn, uint16_t echo, int timeout_ms, rke_t9_session_t *sess_out, int *status_out)
public | include/core/rke_type9.h:129 | rke_t9_command | result_t rke_t9_command(const char *host, uint16_t port, rke_t9_session_t *sess, uint8_t cg, uint8_t cm, const uint8_t *cmd_data, size_t cmd_len, int timeout_ms, int *status_out, uint8_t **resp_out, size_t *resp_len_out)
public | include/core/rke_type9.h:136 | rke_t9_exchange_exact | result_t rke_t9_exchange_exact(const char *literal, uint16_t port, const uint8_t *request, size_t request_len, int timeout_ms, uint8_t **response, size_t *response_len)
public | include/core/rke_type9.h:140 | rke_t9_session_wipe | void rke_t9_session_wipe(rke_t9_session_t *sess)
public | include/core/rke_v2_kdf.h:35 | rke_hkdf_expand_only | int rke_hkdf_expand_only(const uint8_t *prk, size_t prk_len, const uint8_t *info, size_t info_len, uint8_t *okm, size_t okm_len)
public | include/core/rke_v2_kdf.h:40 | rke_v2_build_info_share | size_t rke_v2_build_info_share(const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t client_sn[RKE_V2_CLIENT_SN_LEN], uint64_t timestamp_be_host_order, const uint8_t client_nonce[RKE_V2_CLIENT_NONCE_LEN], uint8_t *info_out, size_t info_cap)
public | include/core/rke_v2_kdf.h:51 | rke_v2_derive_share | int rke_v2_derive_share(const uint8_t master_secret[RKE_V2_MASTER_SECRET_LEN], const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t client_sn[RKE_V2_CLIENT_SN_LEN], uint64_t timestamp_unix, const uint8_t client_nonce[RKE_V2_CLIENT_NONCE_LEN], uint8_t share_out[RKE_V2_SHARE_LEN])
public | include/core/rke_v2_kdf.h:64 | rke_v2_combine_shares | int rke_v2_combine_shares(const uint8_t *shares[RKE_V2_RAIDA_COUNT], uint32_t participation_mask, uint8_t combined_out[RKE_V2_SHARE_LEN])
public | include/core/rke_v2_kdf.h:69 | rke_v2_derive_k_rke | int rke_v2_derive_k_rke(const uint8_t combined[RKE_V2_SHARE_LEN], const uint8_t cs_id[RKE_V2_CS_ID_LEN], uint8_t key_id, const uint8_t client_nonce[RKE_V2_CLIENT_NONCE_LEN], uint8_t k_rke_out[RKE_V2_MASTER_SECRET_LEN])
public | include/core/rke_v2_kdf.h:76 | rke_v2_put_u32_be | void rke_v2_put_u32_be(uint32_t v, uint8_t out[4])
public | include/core/rke_v2_kdf.h:77 | rke_v2_put_u64_be | void rke_v2_put_u64_be(uint64_t v, uint8_t out[8])
public | include/core/rke_v2_kdf.h:78 | rke_v2_get_u32_be | uint32_t rke_v2_get_u32_be(const uint8_t in[4])
public | include/core/rke_v2_kdf.h:79 | rke_v2_get_u64_be | uint64_t rke_v2_get_u64_be(const uint8_t in[8])
public | include/core/rke_v2_kdf.h:82 | rke_v2_mask_popcount | int rke_v2_mask_popcount(uint32_t mask)
public | include/core/sha256_util.h:23 | sha256_stream_create | result_t sha256_stream_create(sha256_stream_t **out)
public | include/core/sha256_util.h:24 | sha256_stream_update | result_t sha256_stream_update(sha256_stream_t *stream, const uint8_t *data, size_t size)
public | include/core/sha256_util.h:25 | sha256_stream_finish | result_t sha256_stream_finish(sha256_stream_t *stream, uint8_t digest[SHA256_DIGEST_SIZE])
public | include/core/sha256_util.h:26 | sha256_stream_free | void sha256_stream_free(sha256_stream_t *stream)
public | include/core/sha256_util.h:36 | sha256_digest | result_t sha256_digest(const uint8_t *data, size_t data_len, uint8_t digest_out[SHA256_DIGEST_SIZE])
public | include/core/sha256_util.h:48 | sha256_hex | result_t sha256_hex(const uint8_t *data, size_t data_len, char *hex_out)
public | include/core/sha256_util.h:53 | sha256_file | result_t sha256_file(const char *path, uint8_t digest_out[SHA256_DIGEST_SIZE], uint64_t *size_out)
public | include/core/t10_session.h:117 | t10_session_set_detect_hook | void t10_session_set_detect_hook(t10_session_detect_hook_fn fn, void *user_data)
public | include/core/t10_session.h:127 | t10_test_set_detect_hash_hook | void t10_test_set_detect_hash_hook(t10_session_detect_hook_fn fn, void *user_data)
public | include/core/t10_session.h:133 | t10_test_force_next_bulk_scan_fail | void t10_test_force_next_bulk_scan_fail(void)
public | include/core/t10_session.h:139 | t10_test_bump_generation | void t10_test_bump_generation(void)
public | include/core/t10_session.h:146 | t10_test_bump_generation_unlocked | void t10_test_bump_generation_unlocked(void)
public | include/core/t10_session.h:156 | t10_test_set_commit_fence_hook | void t10_test_set_commit_fence_hook(t10_commit_fence_hook_fn fn, void *user_data)
public | include/core/t10_session.h:162 | t10_test_force_next_scan_incomplete | void t10_test_force_next_scan_incomplete(void)
public | include/core/t10_session.h:169 | t10_test_force_next_publish_epoch_mismatch | void t10_test_force_next_publish_epoch_mismatch(void)
public | include/core/t10_session.h:195 | t10_session_set_detect_provider | void t10_session_set_detect_provider(t10_session_detect_provider_fn fn)
public | include/core/t10_session.h:213 | t10_session_set_detect_hash_provider | void t10_session_set_detect_hash_provider(t10_session_detect_hash_provider_fn fn)
public | include/core/t10_session.h:216 | t10_session_state | t10_session_state_t t10_session_state(void)
public | include/core/t10_session.h:223 | t10_session_has_pending_password | bool t10_session_has_pending_password(void)
public | include/core/t10_session.h:231 | t10_session_may_persist | bool t10_session_may_persist(void)
public | include/core/t10_session.h:238 | t10_session_may_persist_for | bool t10_session_may_persist_for(const t10_session_authority_t *auth)
public | include/core/t10_session.h:245 | t10_session_wallet_is_encrypted | bool t10_session_wallet_is_encrypted(void)
public | include/core/t10_session.h:251 | t10_session_pin_authority | result_t t10_session_pin_authority(t10_session_authority_t *out)
public | include/core/t10_session.h:258 | t10_session_authority_still_valid | bool t10_session_authority_still_valid(const t10_session_authority_t *auth)
public | include/core/t10_session.h:288 | t10_session_commit_begin | result_t t10_session_commit_begin(const t10_session_authority_t *auth)
public | include/core/t10_session.h:289 | t10_session_commit_end | void t10_session_commit_end(void)
public | include/core/t10_session.h:297 | t10_session_key_for_salt | result_t t10_session_key_for_salt(const uint8_t salt[16], uint8_t out_key[32])
public | include/core/t10_session.h:300 | t10_session_salt_domains | int t10_session_salt_domains(void)
public | include/core/t10_session.h:320 | t10_session_load_password | result_t t10_session_load_password(const char *password, t10_login_result_t *out)
public | include/core/t10_session.h:326 | t10_session_logout | void t10_session_logout(void)
public | include/core/t10_session.h:335 | t10_session_type10_scan | result_t t10_session_type10_scan(t10_scan_result_t *out)
public | include/core/t10_session.h:342 | t10_session_type10_scan_counts | result_t t10_session_type10_scan_counts(int *type10, int *plaintext, int *legacy)
public | include/core/t10_session.h:355 | t10_session_begin_establish | result_t t10_session_begin_establish(void)
public | include/core/t10_session.h:362 | t10_session_confirm_established | result_t t10_session_confirm_established(const t10_session_authority_t *auth)
public | include/core/t10_session.h:374 | t10_session_rollback_establish | result_t t10_session_rollback_establish(const t10_session_authority_t *auth)
public | include/core/t10_session.h:381 | t10_session_after_full_decrypt | void t10_session_after_full_decrypt(void)
public | include/core/t10_session.h:391 | t10_session_refresh_encrypted_cache | result_t t10_session_refresh_encrypted_cache(void)
public | include/core/t10_session.h:416 | t10_bulk_encrypt | result_t t10_bulk_encrypt(const char *wallet_path, const t10_session_authority_t *auth, t10_bulk_counts_t *counts, const char *task_id, t10_bulk_progress_fn progress_fn, void *progress_ud)
public | include/core/t10_session.h:429 | t10_bulk_decrypt | result_t t10_bulk_decrypt(const char *wallet_path, const t10_session_authority_t *auth, t10_bulk_counts_t *counts, const char *task_id, t10_bulk_progress_fn progress_fn, void *progress_ud)
public | include/core/t10_session.h:440 | t10_bulk_count_files | result_t t10_bulk_count_files(const char *wallet_path, int *out_total)
public | include/core/t10_session.h:475 | t10_session_classify_file | result_t t10_session_classify_file(const char *filepath, t10_file_verdict_t *verdict)
public | include/core/t10_session.h:493 | t10_session_classify_wallet | result_t t10_session_classify_wallet(const char *wallet_path, int max_files, t10_classify_visit_fn visit, void *user_data, int *visited_out, bool *truncated_out, int *walk_errors_out)
public | include/core/task_manager.h:70 | rest_task_generate_id | void rest_task_generate_id(char *buffer, size_t size)
public | include/core/task_manager.h:79 | task_create | result_t task_create(const char *task_id, const char *message)
public | include/core/task_manager.h:89 | task_update_progress | result_t task_update_progress(const char *task_id, int progress, const char *message)
public | include/core/task_manager.h:98 | task_complete | result_t task_complete(const char *task_id, const char *message)
public | include/core/task_manager.h:110 | task_complete_with_data | result_t task_complete_with_data(const char *task_id, const char *message, const char *data_json)
public | include/core/task_manager.h:120 | task_fail | result_t task_fail(const char *task_id, const char *error_message)
public | include/core/task_manager.h:124 | task_fail_with_data | result_t task_fail_with_data(const char *task_id, const char *error_message, const char *data_fragment)
public | include/core/task_manager.h:142 | task_update_with_data | result_t task_update_with_data(const char *task_id, int progress, const char *message, const char *data_json)
public | include/core/task_manager.h:154 | task_set_data_string | result_t task_set_data_string(const char *task_id, const char *key, const char *value)
public | include/core/task_manager.h:169 | task_set_counts | result_t task_set_counts(const char *task_id, int bank, int fracked, int counterfeit, int limbo, int duplicate, int errors)
public | include/core/task_manager.h:192 | task_merge_data | result_t task_merge_data(const char *task_id, const char *data_json)
public | include/core/task_manager.h:205 | task_get_status | result_t task_get_status(const char *task_id, char *status_out, size_t status_size, int *progress_out, char *message_out, size_t message_size)
public | include/core/task_manager.h:214 | task_get_data_json | result_t task_get_data_json(const char *task_id, char *data_out, size_t data_size)
public | include/core/task_manager.h:233 | task_reconcile_interrupted | int task_reconcile_interrupted(const char *const *protected_task_ids, int protected_count)
public | include/core/transaction_log.h:71 | transaction_log_add | result_t transaction_log_add(const char *wallet_path, const transaction_t *tx)
public | include/core/transaction_log.h:83 | transaction_log_read | result_t transaction_log_read(const char *wallet_path, transaction_log_data_t *data_out)
public | include/core/transaction_log.h:90 | transaction_log_free | void transaction_log_free(transaction_log_data_t *data)
public | include/core/transaction_log.h:106 | transaction_log_verify_balance | result_t transaction_log_verify_balance(const char *wallet_path, balance_verification_t *result)
public | include/core/transaction_log.h:120 | transaction_log_add_adjustment | result_t transaction_log_add_adjustment(const char *wallet_path, int64_t difference, const char *reason)
public | include/core/transaction_log.h:136 | transaction_log_view | result_t transaction_log_view(const char *wallet_path, transaction_log_data_t *data_out, balance_verification_t *verification_out)
public | include/core/transport.h:35 | transport_tcp_response_limit | static inline size_t transport_tcp_response_limit(size_t requested_limit)
public | include/core/transport.h:43 | transport_tcp_response_size_allowed | static inline bool transport_tcp_response_size_allowed( size_t total_size, size_t requested_limit)
public | include/core/transport.h:121 | transport_config_init | void transport_config_init(transport_config_t *config)
public | include/core/transport.h:126 | transport_set_default_timeout | void transport_set_default_timeout(uint32_t timeout_ms)
public | include/core/transport.h:131 | transport_get_default_timeout | uint32_t transport_get_default_timeout(void)
public | include/core/transport.h:143 | transport_get_server | result_t transport_get_server(uint8_t raida_id, raida_server_t *server)
public | include/core/transport.h:148 | transport_set_server | result_t transport_set_server(uint8_t raida_id, const raida_server_t *server)
public | include/core/transport.h:153 | transport_load_hardcoded_servers | result_t transport_load_hardcoded_servers(void)
public | include/core/transport.h:158 | transport_load_servers_from_file | result_t transport_load_servers_from_file(const char *filepath)
public | include/core/transport.h:167 | transport_save_stats | result_t transport_save_stats(void)
public | include/core/transport.h:172 | transport_load_stats | result_t transport_load_stats(void)
public | include/core/transport.h:179 | transport_record_result | void transport_record_result(uint8_t raida_id, uint32_t response_ms, bool success, bool timed_out)
public | include/core/transport.h:184 | transport_get_stats | result_t transport_get_stats(uint8_t raida_id, raida_stats_t *stats)
public | include/core/transport.h:189 | transport_is_server_available | bool transport_is_server_available(uint8_t raida_id)
public | include/core/transport.h:198 | transport_server_recently_unavailable | bool transport_server_recently_unavailable(uint8_t raida_id, uint32_t cooldown_ms, uint64_t *age_ms_out)
public | include/core/transport.h:205 | transport_get_response_time | uint32_t transport_get_response_time(uint8_t raida_id)
public | include/core/transport.h:210 | transport_reset_stats | void transport_reset_stats(void)
public | include/core/transport.h:217 | transport_reset_server_stats | void transport_reset_server_stats(uint8_t raida_id)
public | include/core/transport.h:233 | transport_send | result_t transport_send(uint8_t raida_id, const uint8_t *packet, size_t packet_size, transport_config_t *config, transport_result_t *result)
public | include/core/transport.h:257 | transport_resolve_host | result_t transport_resolve_host(const char *host, uint16_t port, int socktype, struct addrinfo **out)
public | include/core/transport.h:263 | transport_send_tcp | result_t transport_send_tcp(const raida_server_t *server, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, size_t max_response_size, transport_result_t *result)
public | include/core/transport.h:273 | transport_send_udp | result_t transport_send_udp(const raida_server_t *server, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, transport_result_t *result)
public | include/core/transport.h:279 | transport_cancel_call | void transport_cancel_call(uint32_t call_id)
public | include/core/transport.h:287 | transport_cancel_all | void transport_cancel_all(void)
public | include/core/transport.h:292 | transport_result_free | void transport_result_free(transport_result_t *result)
public | include/core/transport.h:303 | transport_init | result_t transport_init(void)
public | include/core/transport.h:307 | transport_init_cached | result_t transport_init_cached(void)
public | include/core/transport.h:312 | transport_cleanup | void transport_cleanup(void)
public | include/core/type10_crypto.h:42 | t10_derive_key | result_t t10_derive_key(const uint8_t *password, size_t password_len, const uint8_t salt[16], uint8_t suite, uint8_t out_key[32])
public | include/core/type10_crypto.h:53 | t10_ctr_crypt | result_t t10_ctr_crypt(const uint8_t key[32], const uint8_t nonce[12], uint8_t buf[400])
public | include/core/type10_crypto.h:60 | t10_crc32c | uint32_t t10_crc32c(const uint8_t *data, size_t len)
public | include/core/type10_crypto.h:67 | t10_secure_clear | void t10_secure_clear(void *p, size_t n)
public | include/core/utils.h:23 | utils_generate_an | void utils_generate_an(uint8_t an[AN_LENGTH])
public | include/core/utils.h:35 | utils_bytes_to_hex | void utils_bytes_to_hex(const uint8_t *bytes, size_t len, char *hex)
public | include/core/utils.h:44 | utils_bytes_to_hex_safe | static inline void utils_bytes_to_hex_safe(const uint8_t *bytes, size_t len, char *hex, size_t hex_size)
public | include/core/utils.h:59 | utils_hex_to_bytes | void utils_hex_to_bytes(const char *hex, uint8_t *bytes, size_t len)
public | include/core/utils.h:68 | utils_write_u16_be | void utils_write_u16_be(uint8_t *buf, uint16_t value)
public | include/core/utils.h:73 | utils_write_u24_be | void utils_write_u24_be(uint8_t *buf, uint32_t value)
public | include/core/utils.h:78 | utils_write_u32_be | void utils_write_u32_be(uint8_t *buf, uint32_t value)
public | include/core/utils.h:83 | utils_write_u64_be | void utils_write_u64_be(uint8_t *buf, uint64_t value)
public | include/core/utils.h:88 | utils_read_u16_be | uint16_t utils_read_u16_be(const uint8_t *buf)
public | include/core/utils.h:93 | utils_read_u24_be | uint32_t utils_read_u24_be(const uint8_t *buf)
public | include/core/utils.h:98 | utils_read_u32_be | uint32_t utils_read_u32_be(const uint8_t *buf)
public | include/core/utils.h:103 | utils_read_u64_be | uint64_t utils_read_u64_be(const uint8_t *buf)
public | include/core/utils.h:112 | utils_crc32_init | uint32_t utils_crc32_init(void)
public | include/core/utils.h:117 | utils_crc32_update | uint32_t utils_crc32_update(uint32_t crc, const uint8_t *data, size_t len)
public | include/core/utils.h:122 | utils_crc32_finish | uint32_t utils_crc32_finish(uint32_t crc)
public | include/core/utils.h:130 | utils_crc32 | uint32_t utils_crc32(const uint8_t *data, size_t len)
public | include/core/utils.h:139 | utils_strncpy | void utils_strncpy(char *dest, const char *src, size_t dest_size)
public | include/core/utils.h:144 | utils_strncat | void utils_strncat(char *dest, const char *src, size_t dest_size)
public | include/core/wallet_funding_lock.h:47 | wallet_funding_lock_init | result_t wallet_funding_lock_init(void)
public | include/core/wallet_funding_lock.h:52 | wallet_funding_lock_ready | bool wallet_funding_lock_ready(void)
public | include/core/wallet_funding_lock.h:64 | wallet_funding_lock_acquire | int wallet_funding_lock_acquire(const char *wallet_path)
public | include/core/wallet_funding_lock.h:66 | wallet_funding_lock_try_acquire | int wallet_funding_lock_try_acquire(const char *wallet_path)
public | include/core/wallet_funding_lock.h:74 | wallet_funding_lock_release | void wallet_funding_lock_release(int slot, const char *wallet_path)
public | include/core/wallet_funding_lock.h:79 | wallet_funding_lock_shutdown | void wallet_funding_lock_shutdown(void)
public | include/core/wallet_lock.h:28 | wallet_lock_acquire | void wallet_lock_acquire(void)
public | include/core/wallet_lock.h:34 | wallet_lock_release | void wallet_lock_release(void)
public | include/core/wallet_lock.h:40 | wallet_lock_is_busy | bool wallet_lock_is_busy(void)
public | include/core/wallet.h:93 | wallet_create | result_t wallet_create(const char *base_path, const char *name)
public | include/core/wallet.h:103 | wallet_ensure_structure | result_t wallet_ensure_structure(const char *wallet_path)
public | include/core/wallet.h:117 | wallet_registry_load | result_t wallet_registry_load(const char *data_path)
public | include/core/wallet.h:127 | wallet_registry_save | result_t wallet_registry_save(const char *data_path)
public | include/core/wallet.h:149 | wallet_registry_rebase_client_data_paths | result_t wallet_registry_rebase_client_data_paths(const char *current_data_path, int *changed_out)
public | include/core/wallet.h:160 | wallet_registry_add | result_t wallet_registry_add(const char *wallet_path, wallet_type_t type)
public | include/core/wallet.h:170 | wallet_registry_remove | result_t wallet_registry_remove(const char *wallet_path)
public | include/core/wallet.h:177 | wallet_registry_count | int wallet_registry_count(void)
public | include/core/wallet.h:185 | wallet_registry_get | const wallet_entry_t *wallet_registry_get(int index)
public | include/core/wallet.h:204 | wallet_is_mail_wallet | bool wallet_is_mail_wallet(const char *path)
public | include/core/wallet.h:223 | path_is_inside_trusted_zone | bool path_is_inside_trusted_zone(const char *path)
public | include/core/wallet.h:234 | wallet_get_folder_path | result_t wallet_get_folder_path(const char *wallet_path, folder_type_t folder, char *buffer, size_t size)
public | include/core/wallet.h:252 | wallet_scan_folder | result_t wallet_scan_folder(const char *wallet_path, folder_type_t folder, folder_scan_t *scan_out)
public | include/core/wallet.h:260 | folder_scan_free | void folder_scan_free(folder_scan_t *scan)
public | include/core/wallet.h:277 | wallet_move_coin | result_t wallet_move_coin(const char *wallet_path, const char *filename, folder_type_t from_folder, folder_type_t to_folder)
public | include/core/wallet.h:288 | wallet_delete_coin | result_t wallet_delete_coin(const char *wallet_path, const char *filename, folder_type_t from_folder)
public | include/core/wallet.h:300 | wallet_import_coin | result_t wallet_import_coin(const char *wallet_path, const char *external_path)
public | include/core/wallet.h:312 | wallet_export_coin | result_t wallet_export_coin(const char *wallet_path, const char *filename, const char *external_path)
public | include/core/wallet.h:328 | wallet_folder_balance | result_t wallet_folder_balance(const char *wallet_path, folder_type_t folder, uint64_t *total_out, int *count_out)
public | include/core/wallet.h:338 | wallet_bank_balance | result_t wallet_bank_balance(const char *wallet_path, uint64_t *total_out)
public | include/core/wallet.h:344 | wallet_bank_fracked_balance_units | uint64_t wallet_bank_fracked_balance_units(const char *wallet_path)
public | include/cs_cmd.h:50 | cs_cmd_process | cs_cmd_err_t cs_cmd_process(cs_cmd_ctx_t *ctx, const uint8_t *req, size_t req_len, uint8_t *out_buf, size_t out_cap, size_t *out_len)
public | include/cs_cmd.h:54 | cs_cmd_build_request | int cs_cmd_build_request(const uint8_t k_sess[32], const uint8_t session_key_id[16], uint16_t cmd, uint64_t counter, const uint8_t *pt, size_t pt_len, uint8_t *out, size_t out_cap, size_t *out_len)
public | include/cs_cmd.h:60 | cs_cmd_parse_response | int cs_cmd_parse_response(const uint8_t k_sess[32], const uint8_t *resp, size_t resp_len, uint8_t *pt_out, size_t pt_cap, size_t *pt_len)
public | include/cs_crypto.h:8 | cs_gcm_encrypt | int cs_gcm_encrypt(const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, uint8_t tag_out[16])
public | include/cs_crypto.h:12 | cs_gcm_decrypt | int cs_gcm_decrypt(const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, const uint8_t tag[16])
public | include/cs_crypto.h:16 | cs_random_bytes | void cs_random_bytes(uint8_t *buf, size_t len)
public | include/cs_crypto.h:28 | cs_sha256 | int cs_sha256(const uint8_t *data, size_t len, uint8_t digest[32])
public | include/cs_crypto.h:31 | cs_secure_zero | void cs_secure_zero(void *data, size_t len)
public | include/cs_daemon_config.h:141 | cs_daemon_config_defaults | void cs_daemon_config_defaults(cs_daemon_config_t *config)
public | include/cs_daemon_config.h:153 | cs_daemon_config_set | int cs_daemon_config_set(cs_daemon_config_t *config, const char *key, const char *value, char *error, size_t error_len)
public | include/cs_daemon_config.h:161 | cs_daemon_config_load_file | int cs_daemon_config_load_file(cs_daemon_config_t *config, const char *path, bool *existed, char *error, size_t error_len)
public | include/cs_daemon_config.h:169 | cs_daemon_config_fopen | FILE *cs_daemon_config_fopen(const char *path, const char *mode)
public | include/cs_daemon_config.h:176 | cs_daemon_config_validate | int cs_daemon_config_validate(const cs_daemon_config_t *config, char *error, size_t error_len)
public | include/cs_daemon_config.h:186 | cs_daemon_config_derive_cs_id | int cs_daemon_config_derive_cs_id(const cs_daemon_config_t *config, uint8_t cs_id_out[16])
public | include/cs_daemon_config.h:190 | cs_daemon_config_path | int cs_daemon_config_path(const cs_daemon_config_t *config, const char *leaf, char *out, size_t out_len)
public | include/cs_daemon_status.h:117 | cs_daemon_state_name | const char *cs_daemon_state_name(cs_daemon_state_t state)
public | include/cs_daemon_status.h:190 | cs_daemon_status_format | int cs_daemon_status_format(const cs_daemon_status_t *status, char *out, size_t out_len)
public | include/cs_daemon_status.h:197 | cs_daemon_status_write | int cs_daemon_status_write(const cs_daemon_status_t *status, const char *path)
public | include/cs_daemon_status.h:205 | cs_daemon_status_read_key | int cs_daemon_status_read_key(const char *path, const char *key, char *out, size_t out_len)
public | include/cs_daemon_status.h:218 | cs_daemon_token_ensure | int cs_daemon_token_ensure(cs_daemon_config_t *config, const char *path, char *error, size_t error_len)
public | include/cs_daemon.h:154 | cs_daemon_start | int cs_daemon_start(cs_daemon_t *daemon, const cs_daemon_config_t *config)
public | include/cs_daemon.h:185 | cs_daemon_set_identity_backend | int cs_daemon_set_identity_backend(cs_daemon_t *daemon, cs_identity_batch_redeem_fn redeem, void *userdata)
public | include/cs_daemon.h:188 | cs_daemon_set_locker_transport | int cs_daemon_set_locker_transport(cs_daemon_t *daemon, const cs_raida_map_t *map, cs_locker_send_fn send, void *userdata)
public | include/cs_daemon.h:195 | cs_daemon_serve | int cs_daemon_serve(cs_daemon_t *daemon)
public | include/cs_daemon.h:204 | cs_daemon_request_stop | void cs_daemon_request_stop(cs_daemon_t *daemon)
public | include/cs_daemon.h:214 | cs_daemon_shutdown | void cs_daemon_shutdown(cs_daemon_t *daemon, cs_daemon_state_t final_state)
public | include/cs_daemon.h:217 | cs_daemon_publish_status | int cs_daemon_publish_status(cs_daemon_t *daemon)
public | include/cs_daemon.h:220 | cs_daemon_set_error | void cs_daemon_set_error(cs_daemon_t *daemon, const char *message)
public | include/cs_daemon.h:241 | cs_daemon_wipe_vault | void cs_daemon_wipe_vault(cs_vault_t *vault)
public | include/cs_identity.h:73 | cs_identity_validate_fanout | cs_identity_err_t cs_identity_validate_fanout(const cs_identity_ctx_t *ctx, const uint32_t tickets[25], int8_t claimed_den, uint32_t claimed_sn, cs_identity_result_t *out)
public | include/cs_identity.h:80 | cs_identity_sdk_batch_redeem | int cs_identity_sdk_batch_redeem( const uint32_t tickets[CS_IDENTITY_RAIDA_COUNT], int8_t claimed_den, uint32_t claimed_sn, void *userdata, cs_identity_result_t *out)
public | include/cs_identity.h:101 | cs_rke_sdk_preload_secrets | cs_rke_sdk_preload_err_t cs_rke_sdk_preload_secrets( const char *wallets_root, const uint8_t cs_id[16], uint8_t key_id, const uint8_t secrets[CS_IDENTITY_RAIDA_COUNT][32], cs_rke_sdk_preload_result_t *out)
public | include/cs_identity.h:110 | cs_identity_activate_session | int cs_identity_activate_session(const cs_identity_ctx_t *ctx, cs_session_t *sess, const uint32_t tickets[25], int8_t claimed_den, uint32_t claimed_sn)
public | include/cs_identity.h:120 | cs_identity_mock_validate_one | int cs_identity_mock_validate_one(uint8_t raida_id, uint32_t ticket, int8_t claimed_den, uint32_t claimed_sn, void *userdata, int *ok, int8_t *out_den, uint32_t *out_sn)
public | include/cs_identity.h:129 | cs_identity_open_hook | int cs_identity_open_hook(const uint32_t tickets[25], int8_t mail_den, uint32_t mail_sn, int auth_required, void *userdata, int *authenticated_ok)
public | include/cs_object.h:168 | cs_object_identity_equal | bool cs_object_identity_equal(const cs_object_identity_t *a, const cs_object_identity_t *b)
public | include/cs_object.h:284 | cs_object_store_init | int cs_object_store_init(cs_object_store_t *store, const char *storage_dir)
public | include/cs_object.h:287 | cs_object_store_free | void cs_object_store_free(cs_object_store_t *store)
public | include/cs_object.h:289 | cs_object_store_lock | void cs_object_store_lock(cs_object_store_t *store)
public | include/cs_object.h:290 | cs_object_store_unlock | void cs_object_store_unlock(cs_object_store_t *store)
public | include/cs_object.h:293 | cs_object_find | cs_object_record_t *cs_object_find(cs_object_store_t *store, const uint8_t object_id[16], uint8_t file_type)
public | include/cs_object.h:298 | cs_object_find_transfer | cs_object_transfer_t *cs_object_find_transfer(cs_object_store_t *store, const cs_object_identity_t *owner, const uint8_t transfer_id[16])
public | include/cs_object.h:303 | cs_object_expire_transfers | int cs_object_expire_transfers(cs_object_store_t *store, uint64_t now)
public | include/cs_object.h:355 | cs_purchase_desc_equal | bool cs_purchase_desc_equal(const cs_purchase_desc_t *a, const cs_purchase_desc_t *b)
public | include/cs_object.h:381 | cs_payment_verify | uint8_t cs_payment_verify(cs_object_store_t *store, const uint8_t locker_code[16], const uint8_t transfer_id[16], const cs_purchase_desc_t *desc)
public | include/cs_object.h:386 | cs_payment_collect | uint8_t cs_payment_collect(cs_object_store_t *store, const uint8_t locker_code[16], const uint8_t transfer_id[16], uint8_t current_state)
public | include/cs_object.h:400 | cs_object_payment_ok | bool cs_object_payment_ok(cs_object_store_t *store, const cs_object_transfer_t *transfer)
public | include/cs_object.h:429 | cs_object_dispatch | void cs_object_dispatch(cs_object_store_t *store, uint8_t command, const cs_object_identity_t *identity, const uint8_t *body, size_t body_len, cs_object_result_t *out)
public | include/cs_object.h:435 | cs_object_result_free | void cs_object_result_free(cs_object_result_t *result)
public | include/cs_object.h:456 | cs_object_exists_answer | int cs_object_exists_answer(cs_object_store_t *store, const uint8_t *request, size_t request_len, uint8_t out[CS_OBJ_EXISTS_RESP_SIZE])
public | include/cs_object.h:478 | cs_object_probe_limiter_init | void cs_object_probe_limiter_init(cs_object_probe_limiter_t *limiter, uint32_t max_per_window, uint32_t window_sec)
public | include/cs_object.h:480 | cs_object_probe_limiter_free | void cs_object_probe_limiter_free(cs_object_probe_limiter_t *limiter)
public | include/cs_object.h:481 | cs_object_probe_allow | bool cs_object_probe_allow(cs_object_probe_limiter_t *limiter, uint32_t source, uint64_t now)
public | include/cs_payment.h:317 | cs_payment_popcount | uint32_t cs_payment_popcount(uint32_t v)
public | include/cs_payment.h:473 | cs_payment_init | int cs_payment_init(cs_payment_t *pay, cs_object_store_t *store, const char *storage_dir)
public | include/cs_payment.h:476 | cs_payment_free | void cs_payment_free(cs_payment_t *pay)
public | include/cs_payment.h:496 | cs_payment_mark_effect_pending | int cs_payment_mark_effect_pending(cs_payment_t *pay, const uint8_t transfer_id[16])
public | include/cs_payment.h:516 | cs_payment_set_replace_observer | void cs_payment_set_replace_observer(cs_payment_t *pay, cs_ledger_replace_observer_fn fn, void *userdata)
public | include/cs_payment.h:521 | cs_payment_set_transport | void cs_payment_set_transport(cs_payment_t *pay, const cs_raida_map_t *map, cs_locker_send_fn send, void *send_userdata)
public | include/cs_payment.h:525 | cs_payment_set_rank | void cs_payment_set_rank(cs_payment_t *pay, cs_locker_rank_fn rank, void *userdata)
public | include/cs_payment.h:572 | cs_payment_begin | uint8_t cs_payment_begin(cs_payment_t *pay, const uint8_t locker_code[16], const uint8_t transfer_id[16], const cs_purchase_desc_t *desc, cs_peek_result_t *result)
public | include/cs_payment.h:581 | cs_payment_upload_allowed | bool cs_payment_upload_allowed(cs_payment_t *pay, const uint8_t transfer_id[16])
public | include/cs_payment.h:610 | cs_payment_collect_transfer | int cs_payment_collect_transfer(cs_payment_t *pay, const uint8_t transfer_id[16], cs_collect_result_t *result)
public | include/cs_payment.h:618 | cs_payment_sweep | int cs_payment_sweep(cs_payment_t *pay, uint64_t now)
public | include/cs_payment.h:642 | cs_payment_status | int cs_payment_status(cs_payment_t *pay, const uint8_t transfer_id[16], cs_payment_status_t *out)
public | include/cs_payment.h:653 | cs_locker_build_peek | size_t cs_locker_build_peek(uint8_t raida_id, const uint8_t locker_code[16], uint8_t *out, size_t out_cap)
public | include/cs_payment.h:655 | cs_locker_build_download | size_t cs_locker_build_download(uint8_t raida_id, const uint8_t locker_code[16], const uint8_t seed[16], uint8_t *out, size_t out_cap)
public | include/cs_payment.h:665 | cs_locker_sum_coins | int cs_locker_sum_coins(const uint8_t *body, size_t body_len, uint64_t *microunits_out, uint32_t *coins_out)
public | include/cs_payment.h:669 | cs_locker_code_plausible | bool cs_locker_code_plausible(const uint8_t code[16])
public | include/cs_payment.h:672 | cs_payment_retention_for | uint64_t cs_payment_retention_for(uint64_t microunits, uint64_t bytes)
public | include/cs_payment.h:675 | cs_locker_send_tcp | int cs_locker_send_tcp(void *userdata, uint8_t raida_id, const uint8_t *request, size_t request_len, uint32_t timeout_ms, cs_locker_reply_t *out)
public | include/cs_raida_fanout.h:35 | cs_raida_fanout_redeem | void cs_raida_fanout_redeem(const cs_raida_map_t *map, const uint32_t tickets[25], int8_t claimed_den, uint32_t claimed_sn, int enc_mode, const cs_type8_keys_t *keys, cs_raida_fanout_redeem_t *out)
public | include/cs_raida_fanout.h:40 | cs_raida_fanout_preload | void cs_raida_fanout_preload(const cs_raida_map_t *map, const uint8_t cs_id[16], uint8_t key_id, const uint8_t secrets[25][32], int enc_mode, const cs_type8_keys_t *keys, cs_raida_fanout_preload_t *out)
public | include/cs_raida_fanout.h:46 | cs_raida_identity_validate_one | int cs_raida_identity_validate_one(uint8_t raida_id, uint32_t ticket, int8_t claimed_den, uint32_t claimed_sn, void *userdata, int *ok, int8_t *out_den, uint32_t *out_sn)
public | include/cs_raida_map.h:23 | cs_raida_map_init | void cs_raida_map_init(cs_raida_map_t *m)
public | include/cs_raida_map.h:26 | cs_raida_map_fill_lab | void cs_raida_map_fill_lab(cs_raida_map_t *m, const char *host, uint16_t port_base)
public | include/cs_raida_map.h:33 | cs_raida_map_load_file | int cs_raida_map_load_file(cs_raida_map_t *m, const char *path)
public | include/cs_raida_map.h:35 | cs_raida_map_count_configured | int cs_raida_map_count_configured(const cs_raida_map_t *m)
public | include/cs_raida_type0.h:47 | cs_type8_keys_init | void cs_type8_keys_init(cs_type8_keys_t *k)
public | include/cs_raida_type0.h:50 | cs_type8_keys_fill_lab | void cs_type8_keys_fill_lab(cs_type8_keys_t *k, int8_t den_a, uint32_t sn_a, int8_t den_b, uint32_t sn_b, uint8_t seed)
public | include/cs_raida_type0.h:57 | cs_raida_redeem | int cs_raida_redeem(const cs_raida_endpoint_t *ep, uint8_t raida_id, uint32_t ticket, int8_t claimed_den, uint32_t claimed_sn, int enc_mode, const cs_type8_keys_t *keys, uint32_t timeout_ms, cs_raida_redeem_result_t *out)
public | include/cs_raida_type0.h:62 | cs_raida_preload_one | int cs_raida_preload_one(const cs_raida_endpoint_t *ep, uint8_t raida_id, const uint8_t cs_id[16], uint8_t key_id, const uint8_t secret[32], int enc_mode, const cs_type8_keys_t *keys, uint32_t timeout_ms, cs_raida_preload_result_t *out)
public | include/cs_raida_type0.h:69 | cs_raida_type0_redeem | int cs_raida_type0_redeem(const cs_raida_endpoint_t *ep, uint8_t raida_id, uint32_t ticket, int8_t claimed_den, uint32_t claimed_sn, uint32_t timeout_ms, cs_raida_redeem_result_t *out)
public | include/cs_raida_type0.h:74 | cs_raida_type0_preload_one | int cs_raida_type0_preload_one(const cs_raida_endpoint_t *ep, uint8_t raida_id, const uint8_t cs_id[16], uint8_t key_id, const uint8_t secret[32], uint32_t timeout_ms, cs_raida_preload_result_t *out)
public | include/cs_raida_type0.h:83 | cs_raida_build_type8_packet | size_t cs_raida_build_type8_packet(uint8_t raida_id, uint8_t group, uint8_t cmd, const uint8_t *cmd_data, size_t cmd_len, const cs_type8_keys_t *keys, uint8_t *out, size_t out_cap, uint8_t nonce_out[12])
public | include/cs_raida_type0.h:89 | cs_raida_type8_decrypt_response | int cs_raida_type8_decrypt_response(const uint8_t resp_hdr[32], const uint8_t *resp_body, size_t body_len, const uint8_t req_nonce[12], const cs_type8_keys_t *keys, uint8_t raida_id, uint8_t *pt_out, size_t pt_cap)
public | include/cs_session.h:88 | cs_session_table_init | void cs_session_table_init(cs_session_table_t *t, size_t capacity, uint32_t default_ttl_sec)
public | include/cs_session.h:90 | cs_session_table_free | void cs_session_table_free(cs_session_table_t *t)
public | include/cs_session.h:93 | cs_session_create_tentative | int cs_session_create_tentative(cs_session_table_t *t, const uint8_t cs_id[16], uint8_t key_id, const uint8_t client_sn[5], cs_session_t **out)
public | include/cs_session.h:98 | cs_session_create_type9 | int cs_session_create_type9(cs_session_table_t *t, const uint8_t cs_id[16], uint8_t key_id, const uint8_t client_sn[5], uint32_t ttl_sec, const uint8_t k_rke[32], cs_session_t **out)
public | include/cs_session.h:103 | cs_session_activate | int cs_session_activate(cs_session_t *s, int8_t mailbox_denom, uint32_t mailbox_sn, bool authenticated)
public | include/cs_session.h:105 | cs_session_kill | int cs_session_kill(cs_session_t *s)
public | include/cs_session.h:113 | cs_session_table_kill_dead | int cs_session_table_kill_dead(cs_session_table_t *t, cs_session_t *s, uint64_t now_unix)
public | include/cs_session.h:117 | cs_session_table_kill | int cs_session_table_kill(cs_session_table_t *t, cs_session_t *s, uint64_t now_unix)
public | include/cs_session.h:120 | cs_session_find | cs_session_t *cs_session_find(cs_session_table_t *t, const uint8_t session_key_id[CS_SESSION_ID_LEN])
public | include/cs_session.h:122 | cs_session_find_by_handle | cs_session_t *cs_session_find_by_handle( cs_session_table_t *t, const uint8_t handle[CS_SESSION_HANDLE_LEN])
public | include/cs_session.h:129 | cs_session_table_lock | void cs_session_table_lock(cs_session_table_t *t)
public | include/cs_session.h:130 | cs_session_table_unlock | void cs_session_table_unlock(cs_session_table_t *t)
public | include/cs_session.h:138 | cs_session_lock | void cs_session_lock(cs_session_t *s)
public | include/cs_session.h:139 | cs_session_unlock | void cs_session_unlock(cs_session_t *s)
public | include/cs_session.h:152 | cs_session_acquire_by_handle | cs_session_t *cs_session_acquire_by_handle( cs_session_table_t *t, const uint8_t handle[CS_SESSION_HANDLE_LEN])
public | include/cs_session.h:156 | cs_session_release | void cs_session_release(cs_session_table_t *t, cs_session_t *s)
public | include/cs_session.h:165 | cs_session_handle_reserved | bool cs_session_handle_reserved(cs_session_table_t *t, const uint8_t handle[CS_SESSION_HANDLE_LEN], uint64_t now_unix)
public | include/cs_session.h:170 | cs_session_table_purge | int cs_session_table_purge(cs_session_table_t *t, uint64_t now_unix)
public | include/cs_session.h:173 | cs_session_purge_expired | int cs_session_purge_expired(cs_session_table_t *t, uint64_t now_unix)
public | include/cs_stripe.h:33 | cs_stripe_store_init | void cs_stripe_store_init(cs_stripe_store_t *s, size_t capacity)
public | include/cs_stripe.h:34 | cs_stripe_store_free | void cs_stripe_store_free(cs_stripe_store_t *s)
public | include/cs_stripe.h:40 | cs_stripe_put | int cs_stripe_put(cs_stripe_store_t *s, const cs_session_t *sess, const uint8_t stripe_id[CS_STRIPE_ID_LEN], const uint8_t *data, size_t len)
public | include/cs_stripe.h:48 | cs_stripe_get | int cs_stripe_get(const cs_stripe_store_t *s, const cs_session_t *sess, const uint8_t stripe_id[CS_STRIPE_ID_LEN], const uint8_t **out_data, size_t *out_len)
public | include/cs_type9_listener.h:114 | cs_type9_listener_init | void cs_type9_listener_init(cs_type9_listener_t *listener, cs_type9_ctx_t *type9, uint16_t port)
public | include/cs_type9_listener.h:123 | cs_type9_listener_set_bind_address | int cs_type9_listener_set_bind_address(cs_type9_listener_t *listener, const char *address)
public | include/cs_type9_listener.h:127 | cs_type9_listener_serve | int cs_type9_listener_serve(cs_type9_listener_t *listener)
public | include/cs_type9_listener.h:128 | cs_type9_listener_stop | void cs_type9_listener_stop(cs_type9_listener_t *listener)
public | include/cs_type9.h:74 | cs_type9_ctx_init | void cs_type9_ctx_init(cs_type9_ctx_t *ctx, cs_vault_t *vault, cs_session_table_t *sessions, cs_identity_ctx_t *identity)
public | include/cs_type9.h:77 | cs_type9_ctx_free | void cs_type9_ctx_free(cs_type9_ctx_t *ctx)
public | include/cs_type9.h:80 | cs_type9_parse_request | int cs_type9_parse_request(const cs_type9_ctx_t *ctx, const uint8_t *frame, size_t frame_len, cs_type9_request_t *out)
public | include/cs_type9.h:93 | cs_type9_build_failure | int cs_type9_build_failure(uint8_t ri, uint8_t cg, uint8_t status, uint16_t echo, uint8_t **response_out, size_t *response_len_out)
public | include/cs_type9.h:98 | cs_type9_build_response | int cs_type9_build_response(uint8_t ri, uint8_t cg, uint8_t status, const uint8_t key[32], const uint8_t request_nonce[12], const uint8_t *plaintext, size_t plaintext_len, uint16_t echo, uint8_t **response_out, size_t *response_len_out)
public | include/cs_type9.h:106 | cs_type9_process_frame | int cs_type9_process_frame(cs_type9_ctx_t *ctx, const uint8_t *frame, size_t frame_len, uint8_t **response_out, size_t *response_len_out)
public | include/cs_vault_seal.h:110 | cs_vault_seal | int cs_vault_seal(const cs_vault_t *v, uint8_t key_id, const uint8_t *context, size_t context_len, const uint8_t *plain, size_t plain_len, uint8_t *out, size_t out_cap, size_t *out_len)
public | include/cs_vault_seal.h:127 | cs_vault_unseal | int cs_vault_unseal(const cs_vault_t *v, const uint8_t *blob, size_t blob_len, const uint8_t *context, size_t context_len, uint8_t *plain_out, size_t plain_cap, size_t *plain_len)
public | include/cs_vault_seal.h:141 | cs_vault_seal_force_encrypt_failure | void cs_vault_seal_force_encrypt_failure(int enable)
public | include/cs_vault_seal.h:148 | cs_vault_seal_key_available | int cs_vault_seal_key_available(const cs_vault_t *v, const uint8_t *blob, size_t blob_len)
public | include/cs_vault.h:34 | cs_vault_init | void cs_vault_init(cs_vault_t *v)
public | include/cs_vault.h:45 | cs_vault_free | void cs_vault_free(cs_vault_t *v)
public | include/cs_vault.h:66 | cs_vault_set_wipe_observer | void cs_vault_set_wipe_observer(cs_vault_wipe_observer_fn fn, void *userdata)
public | include/cs_vault.h:78 | cs_vault_file_is_exposed | int cs_vault_file_is_exposed(const char *path)
public | include/cs_vault.h:81 | cs_vault_load | int cs_vault_load(cs_vault_t *v, const char *path)
public | include/cs_vault.h:84 | cs_vault_save | int cs_vault_save(const cs_vault_t *v, const char *path)
public | include/cs_vault.h:87 | cs_vault_upsert | int cs_vault_upsert(cs_vault_t *v, const cs_vault_record_t *rec)
public | include/cs_vault.h:90 | cs_vault_find | const cs_vault_record_t *cs_vault_find(const cs_vault_t *v, uint8_t key_id)
public | include/cs_vault.h:96 | cs_vault_recompute_k_rke | int cs_vault_recompute_k_rke(const cs_vault_t *v, uint8_t key_id, const uint8_t client_sn[5], uint64_t timestamp_unix, const uint8_t client_nonce[16], uint32_t share_participation_mask, uint8_t k_rke_out[32])
public | include/qgui/cbdf.h:27 | qgui_cbdf_stub_ops | void qgui_cbdf_stub_ops(qgui_cbdf_ops_t *ops)
public | include/qgui/client.h:276 | qgui_client_stub_init | void qgui_client_stub_init(qgui_client_ops_t *ops)
public | include/qgui/client.h:277 | qgui_transport_stub_init | void qgui_transport_stub_init(qgui_transport_ops_t *ops)
public | include/qgui/client.h:278 | qgui_client_fake_init | void qgui_client_fake_init(qgui_client_ops_t *ops)
public | include/qgui/client.h:280 | qgui_client_fake_setup_status | qgui_setup_status_t *qgui_client_fake_setup_status(void)
public | include/qgui/client.h:287 | qgui_client_decode_identity | qgui_result_t qgui_client_decode_identity(const char *json, qgui_identity_t *out)
public | include/qgui/client.h:288 | qgui_client_decode_folder_counts | qgui_result_t qgui_client_decode_folder_counts(const char *json, qgui_folder_info_t *out, int cap, int *out_n)
public | include/qgui/client.h:290 | qgui_client_decode_message_list | qgui_result_t qgui_client_decode_message_list(const char *json, long long now_ts, qgui_mail_row_t *rows, int cap, int *out_n, qgui_mail_guid_fn on_guid, void *guid_user)
public | include/qgui/client.h:294 | qgui_client_decode_list_total | qgui_result_t qgui_client_decode_list_total(const char *json, int *total_out)
public | include/qgui/client.h:295 | qgui_client_decode_message | qgui_result_t qgui_client_decode_message(const char *json, long long now_ts, qgui_message_t *out)
public | include/qgui/client.h:296 | qgui_client_decode_attachments | qgui_result_t qgui_client_decode_attachments(const char *json, qgui_message_t *msg)
public | include/qgui/client.h:297 | qgui_client_decode_raida_echo | qgui_result_t qgui_client_decode_raida_echo(const char *json, int *ok, int *total)
public | include/qgui/client.h:298 | qgui_client_decode_local_status | qgui_result_t qgui_client_decode_local_status(const char *json, int *beacons_ok, int *beacons_total, int *servers)
public | include/qgui/client.h:300 | qgui_client_decode_wallet_balance | qgui_result_t qgui_client_decode_wallet_balance(const char *json, int *total_cc, char *name, size_t name_sz)
public | include/qgui/client.h:301 | qgui_client_decode_encryption_status | qgui_result_t qgui_client_decode_encryption_status(const char *json, int *encrypted, int *plaintext, int *login_required)
public | include/qgui/client.h:304 | qgui_client_decode_health | qgui_result_t qgui_client_decode_health(const char *json, qgui_health_t *out)
public | include/qgui/client.h:306 | qgui_client_decode_send | qgui_result_t qgui_client_decode_send(const char *json, char *task_id, size_t task_id_sz, char *msg, size_t msg_sz)
public | include/qgui/client.h:308 | qgui_client_decode_task | qgui_result_t qgui_client_decode_task(const char *json, qgui_task_status_t *out)
public | include/qgui/client.h:310 | qgui_client_send_form | int qgui_client_send_form(const qgui_send_request_t *req, char *dst, size_t cap)
public | include/qgui/client.h:312 | qgui_client_decode_transfer_caps | qgui_result_t qgui_client_decode_transfer_caps(const char *json, qgui_transfer_caps_t *out, char *msg, size_t msg_sz)
public | include/qgui/client.h:314 | qgui_client_decode_transfer | qgui_result_t qgui_client_decode_transfer(const char *json, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
public | include/qgui/client.h:318 | qgui_client_decode_wallets | qgui_result_t qgui_client_decode_wallets(const char *json, qgui_wallet_t *out, int cap, int *out_n)
public | include/qgui/client.h:319 | qgui_client_decode_transactions | qgui_result_t qgui_client_decode_transactions(const char *json, const qgui_wallet_t *wallet, qgui_transaction_t *out, int cap, int *out_n)
public | include/qgui/client.h:321 | qgui_client_decode_receipt_files | qgui_result_t qgui_client_decode_receipt_files(const char *json, char (*names)[80], int cap, int *out_n)
public | include/qgui/client.h:322 | qgui_client_decode_receipt | qgui_result_t qgui_client_decode_receipt(const char *json, char *text, size_t text_sz, char *msg, size_t msg_sz)
public | include/qgui/client.h:324 | qgui_client_parse_transaction_row | int qgui_client_parse_transaction_row(const char *line, const qgui_wallet_t *wallet, qgui_transaction_t *out)
public | include/qgui/client.h:326 | qgui_client_transaction_sort_key | long long qgui_client_transaction_sort_key(const char *datetime)
public | include/qgui/client.h:328 | qgui_client_decode_balance | qgui_result_t qgui_client_decode_balance(const char *json, qgui_wallet_balance_t *out, char *msg, size_t msg_sz)
public | include/qgui/client.h:329 | qgui_client_decode_coins | qgui_result_t qgui_client_decode_coins(const char *json, qgui_wallet_balance_t *out)
public | include/qgui/client.h:332 | qgui_client_decode_wallet_outcome | qgui_result_t qgui_client_decode_wallet_outcome(const char *json, qgui_wallet_op_t op, qgui_wallet_outcome_t *out)
public | include/qgui/client.h:334 | qgui_client_summarise_task_data | void qgui_client_summarise_task_data(const char *data_json, char *summary, size_t summary_sz)
public | include/qgui/client.h:336 | qgui_client_make_locker_key | void qgui_client_make_locker_key(unsigned seed, char *dst, size_t cap)
public | include/qgui/client.h:339 | qgui_client_decode_disclaimer | qgui_result_t qgui_client_decode_disclaimer(const char *json, qgui_setup_status_t *st)
public | include/qgui/client.h:340 | qgui_client_decode_usb | qgui_result_t qgui_client_decode_usb(const char *json, qgui_setup_status_t *st)
public | include/qgui/client.h:341 | qgui_client_decode_encryption | qgui_result_t qgui_client_decode_encryption(const char *json, qgui_setup_status_t *st)
public | include/qgui/client.h:342 | qgui_client_decode_provision | qgui_result_t qgui_client_decode_provision(const char *json, qgui_setup_status_t *st)
public | include/qgui/client.h:343 | qgui_client_decode_version_check | qgui_result_t qgui_client_decode_version_check(const char *json, qgui_setup_status_t *st)
public | include/qgui/client.h:346 | qgui_client_decode_profile | qgui_result_t qgui_client_decode_profile(const char *json, qgui_profile_t *out, char *msg, size_t msg_sz)
public | include/qgui/client.h:347 | qgui_client_decode_drd_users | qgui_result_t qgui_client_decode_drd_users(const char *json, qgui_drd_user_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
public | include/qgui/client.h:349 | qgui_client_base64url_encode | int qgui_client_base64url_encode(const char *src, char *dst, size_t cap)
public | include/qgui/client.h:350 | qgui_client_base64url_decode | int qgui_client_base64url_decode(const char *src, char *dst, size_t cap)
public | include/qgui/client.h:352 | qgui_client_decode_contacts | qgui_result_t qgui_client_decode_contacts(const char *json, qgui_contact_t *out, int cap, int *out_n)
public | include/qgui/client.h:354 | qgui_client_unique_path | void qgui_client_unique_path(const char *dir, const char *name, char *out, size_t out_sz)
public | include/qgui/client.h:356 | qgui_decode_core_folder_id | int qgui_decode_core_folder_id(qgui_folder_id_t id)
public | include/qgui/client.h:357 | qgui_decode_mail_id | qgui_mail_id_t qgui_decode_mail_id(const char *hex32)
public | include/qgui/client.h:358 | qgui_decode_time_label | void qgui_decode_time_label(long long unix_ts, long long now_ts, char *dst, size_t cap)
public | include/qgui/client.h:361 | qgui_op_lookup | int qgui_op_lookup(const char *op, const char **method, const char **path)
public | include/qgui/client.h:362 | qgui_op_count | int qgui_op_count(void)
public | include/qgui/client.h:364 | qgui_transport_rest_last_status | int qgui_transport_rest_last_status(const qgui_transport_ops_t *ops)
public | include/qgui/client.h:366 | qgui_rest_params_to_query | int qgui_rest_params_to_query(const char *params_json, char *dst, size_t cap)
public | include/qgui/client.h:368 | qgui_rest_urlencode | int qgui_rest_urlencode(const char *s, char *dst, size_t cap)
public | include/qgui/client.h:369 | qgui_transport_rest_init | void qgui_transport_rest_init(qgui_transport_ops_t *ops, const char *host, int port, const char *token)
public | include/qgui/client.h:373 | qgui_state_seed_from_client | qgui_result_t qgui_state_seed_from_client(struct qgui_state *state, const qgui_client_ops_t *client)
public | include/qgui/client.h:524 | qgui_client_bulk | qgui_result_t qgui_client_bulk(const qgui_client_ops_t *client, const qgui_bulk_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:525 | qgui_client_load_lists | qgui_result_t qgui_client_load_lists(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:526 | qgui_client_list_mutate | qgui_result_t qgui_client_list_mutate(const qgui_client_ops_t *client, const qgui_list_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:527 | qgui_client_decode_lists | qgui_result_t qgui_client_decode_lists(const char *json, qgui_list_entry_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
public | include/qgui/client.h:528 | qgui_client_support_logs | qgui_result_t qgui_client_support_logs(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:529 | qgui_client_decode_support_zip | qgui_result_t qgui_client_decode_support_zip(const char *json, char *path, size_t path_sz, char *msg, size_t msg_sz)
public | include/qgui/client.h:532 | qgui_client_update_check | qgui_result_t qgui_client_update_check(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:533 | qgui_client_update_download | qgui_result_t qgui_client_update_download(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:535 | qgui_client_decode_update_status | qgui_result_t qgui_client_decode_update_status(const char *version_json, const char *apply_json, qgui_update_status_t *out)
public | include/qgui/client.h:536 | qgui_client_fake_update_status | qgui_update_status_t *qgui_client_fake_update_status(void)
public | include/qgui/client.h:539 | qgui_client_load_ex | qgui_result_t qgui_client_load_ex(const qgui_client_ops_t *client, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, int sort, const qgui_send_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:544 | qgui_client_load_query | qgui_result_t qgui_client_load_query(const qgui_client_ops_t *client, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, int sort, const qgui_mail_query_t *query, const char *text, const qgui_send_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:548 | qgui_client_search | qgui_result_t qgui_client_search(const qgui_client_ops_t *client, const char *query, qgui_load_result_t *out)
public | include/qgui/client.h:549 | qgui_client_load_pending | qgui_result_t qgui_client_load_pending(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:550 | qgui_client_sync | qgui_result_t qgui_client_sync(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:551 | qgui_client_decode_pending | qgui_result_t qgui_client_decode_pending(const char *json, long long now_ts, qgui_pending_t *out, int cap, int *out_n)
public | include/qgui/client.h:552 | qgui_decode_qgui_folder_id | qgui_folder_id_t qgui_decode_qgui_folder_id(int core_id)
public | include/qgui/client.h:553 | qgui_client_fake_pending_set | void qgui_client_fake_pending_set(const qgui_pending_t *p, int n)
public | include/qgui/client.h:556 | qgui_client_decode_simple | int qgui_client_decode_simple(const char *json, char *msg, size_t msg_sz)
public | include/qgui/client.h:558 | qgui_client_mail_action | qgui_result_t qgui_client_mail_action(const qgui_client_ops_t *client, const qgui_mail_action_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:562 | qgui_client_load_setup | qgui_result_t qgui_client_load_setup(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:563 | qgui_client_setup_action | qgui_result_t qgui_client_setup_action(const qgui_client_ops_t *client, const qgui_setup_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:567 | qgui_client_load_profile | qgui_result_t qgui_client_load_profile(const qgui_client_ops_t *client, const char *address, qgui_load_result_t *out)
public | include/qgui/client.h:568 | qgui_client_save_profile | qgui_result_t qgui_client_save_profile(const qgui_client_ops_t *client, const qgui_profile_t *p, qgui_load_result_t *out)
public | include/qgui/client.h:569 | qgui_client_drd_search | qgui_result_t qgui_client_drd_search(const qgui_client_ops_t *client, const char *query, qgui_load_result_t *out)
public | include/qgui/client.h:573 | qgui_client_load_wallet | qgui_result_t qgui_client_load_wallet(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:574 | qgui_client_load_legacy | qgui_result_t qgui_client_load_legacy(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:575 | qgui_client_wallet_action | qgui_result_t qgui_client_wallet_action(const qgui_client_ops_t *client, const qgui_wallet_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:581 | qgui_client_load_transactions | qgui_result_t qgui_client_load_transactions(const qgui_client_ops_t *client, qgui_load_result_t *out)
public | include/qgui/client.h:582 | qgui_client_load_receipt | qgui_result_t qgui_client_load_receipt(const qgui_client_ops_t *client, const qgui_receipt_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:587 | qgui_client_load_contact | qgui_result_t qgui_client_load_contact(const qgui_client_ops_t *client, qgui_load_kind_t kind, int popular, const qgui_contact_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:593 | qgui_client_load | qgui_result_t qgui_client_load(const qgui_client_ops_t *client, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, const qgui_send_request_t *req, qgui_load_result_t *out)
public | include/qgui/client.h:598 | qgui_client_download | qgui_result_t qgui_client_download(const qgui_client_ops_t *client, const qgui_download_request_t *req, qgui_progress_t *progress, qgui_load_result_t *out)
public | include/qgui/client.h:600 | qgui_client_send_with_progress | qgui_result_t qgui_client_send_with_progress(const qgui_client_ops_t *client, const qgui_send_request_t *req, qgui_progress_t *progress, qgui_load_result_t *out)
public | include/qgui/client.h:604 | qgui_client_decode_send_progress | qgui_result_t qgui_client_decode_send_progress(const char *data_json, int overall_pct, const char *message, qgui_send_progress_t *out)
public | include/qgui/client.h:608 | qgui_client_server_bind | void qgui_client_server_bind(qgui_client_ops_t *client, qgui_result_t (*fn)(void *, const qgui_server_request_t *, qgui_server_reply_t *), void *user)
public | include/qgui/client.h:610 | qgui_client_server_request | qgui_result_t qgui_client_server_request(const qgui_client_ops_t *client, const qgui_server_request_t *request, qgui_load_result_t *out)
public | include/qgui/client.h:611 | qgui_state_apply_load | void qgui_state_apply_load(struct qgui_state *state, const qgui_load_result_t *r)
public | include/qgui/client.h:619 | qgui_client_rest_set_setup_progress | void qgui_client_rest_set_setup_progress(qgui_client_ops_t *ops, void (*fn)(void *, int, int, int), void *user)
public | include/qgui/client.h:621 | qgui_client_rest_init | void qgui_client_rest_init(qgui_client_ops_t *ops, qgui_transport_ops_t *transport, qgui_arena_t *arena)
public | include/qgui/client.h:624 | qgui_client_rest_last_error | const char *qgui_client_rest_last_error(const qgui_client_ops_t *ops)
public | include/qgui/desktop.h:68 | qgui_jobs_start | struct qgui_jobs *qgui_jobs_start(const qgui_client_ops_t *client, qgui_arena_t *arena)
public | include/qgui/desktop.h:69 | qgui_jobs_stop | void qgui_jobs_stop(struct qgui_jobs *jobs)
public | include/qgui/desktop.h:70 | qgui_jobs_enqueue | qgui_job_id_t qgui_jobs_enqueue(struct qgui_jobs *jobs, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id)
public | include/qgui/desktop.h:73 | qgui_jobs_enqueue_send | qgui_job_id_t qgui_jobs_enqueue_send(struct qgui_jobs *jobs, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, const qgui_send_request_t *req)
public | include/qgui/desktop.h:77 | qgui_jobs_enqueue_download | qgui_job_id_t qgui_jobs_enqueue_download(struct qgui_jobs *jobs, const qgui_download_request_t *req)
public | include/qgui/desktop.h:79 | qgui_jobs_enqueue_contact | qgui_job_id_t qgui_jobs_enqueue_contact(struct qgui_jobs *jobs, qgui_load_kind_t kind, int popular, const qgui_contact_request_t *req)
public | include/qgui/desktop.h:83 | qgui_jobs_enqueue_page | qgui_job_id_t qgui_jobs_enqueue_page(struct qgui_jobs *jobs, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, int sort)
public | include/qgui/desktop.h:87 | qgui_jobs_enqueue_query | qgui_job_id_t qgui_jobs_enqueue_query(struct qgui_jobs *jobs, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, int sort, const qgui_mail_query_t *query, const char *text)
public | include/qgui/desktop.h:93 | qgui_sse_start | struct qgui_sse *qgui_sse_start(int http_port)
public | include/qgui/desktop.h:94 | qgui_sse_stop | void qgui_sse_stop(struct qgui_sse *sse)
public | include/qgui/desktop.h:95 | qgui_sse_translate | int qgui_sse_translate(struct qgui_sse *sse, const void *sdl_event, qgui_event_t *out)
public | include/qgui/desktop.h:96 | qgui_sse_parse | int qgui_sse_parse(const char *event_name, const char *data, int connected, qgui_event_t *out)
public | include/qgui/desktop.h:99 | qgui_sse_start_local | struct qgui_sse *qgui_sse_start_local(void)
public | include/qgui/desktop.h:100 | qgui_sse_post_new_mail | void qgui_sse_post_new_mail(struct qgui_sse *sse, const char *guid_hex, long long sender_sn)
public | include/qgui/desktop.h:103 | qgui_titlebar_colorref | unsigned qgui_titlebar_colorref(qgui_color_t c)
public | include/qgui/desktop.h:104 | qgui_titlebar_apply | int qgui_titlebar_apply(void *sdl_window, const qgui_theme_t *theme)
public | include/qgui/desktop.h:105 | qgui_titlebar_setup | void qgui_titlebar_setup(void *sdl_window)
public | include/qgui/desktop.h:106 | qgui_titlebar_title | void qgui_titlebar_title(void *sdl_window, const char *address, int fake)
public | include/qgui/desktop.h:107 | qgui_host_apply_theme_extras | void qgui_host_apply_theme_extras(qgui_app_t *app, qgui_renderer_t *rend)
public | include/qgui/desktop.h:108 | qgui_titlebar_apply_custom | int qgui_titlebar_apply_custom(void *sdl_window, const char *hex, const qgui_theme_t *theme)
public | include/qgui/desktop.h:110 | qgui_titlebar_pick_color | int qgui_titlebar_pick_color(void *sdl_window, const char *hex, char *out, size_t cap)
public | include/qgui/desktop.h:111 | qgui_host_free_port | int qgui_host_free_port(void)
public | include/qgui/desktop.h:123 | qgui_upgrade_helper_script | int qgui_upgrade_helper_script(const qgui_upgrade_plan_t *plan, char *out, size_t cap)
public | include/qgui/desktop.h:124 | qgui_upgrade_launch | int qgui_upgrade_launch(const qgui_upgrade_plan_t *plan)
public | include/qgui/desktop.h:126 | qgui_upgrade_recover_start | int qgui_upgrade_recover_start(void)
public | include/qgui/desktop.h:129 | qgui_powershell_run | int qgui_powershell_run(const char *script, int wait_ms)
public | include/qgui/desktop.h:130 | qgui_host_pid | long qgui_host_pid(void)
public | include/qgui/desktop.h:131 | qgui_host_exe_path | void qgui_host_exe_path(char *dst, size_t cap)
public | include/qgui/desktop.h:133 | qgui_host_play_sound | qgui_result_t qgui_host_play_sound(void *user, const char *file, int volume_pct)
public | include/qgui/desktop.h:134 | qgui_audio_probe | int qgui_audio_probe(const char *path, int *samples, int *hz, int *channels)
public | include/qgui/desktop.h:136 | qgui_audio_probe_embedded | int qgui_audio_probe_embedded(const char *file, int *samples, int *hz, int *channels)
public | include/qgui/desktop.h:137 | qgui_audio_shutdown | void qgui_audio_shutdown(void)
public | include/qgui/desktop.h:138 | qgui_jobs_enqueue_blob | qgui_job_id_t qgui_jobs_enqueue_blob(struct qgui_jobs *jobs, qgui_load_kind_t kind, const void *blob, size_t size)
public | include/qgui/desktop.h:140 | qgui_jobs_cancel | void qgui_jobs_cancel(struct qgui_jobs *jobs, qgui_job_id_t id)
public | include/qgui/desktop.h:143 | qgui_jobs_wake | void qgui_jobs_wake(struct qgui_jobs *jobs)
public | include/qgui/desktop.h:146 | qgui_jobs_progress | int qgui_jobs_progress(struct qgui_jobs *jobs, qgui_mailbox_t *mailbox)
public | include/qgui/desktop.h:148 | qgui_jobs_deliver | int qgui_jobs_deliver(struct qgui_jobs *jobs, qgui_mailbox_t *mailbox)
public | include/qgui/desktop.h:150 | qgui_jobs_release_delivered | void qgui_jobs_release_delivered(struct qgui_jobs *jobs)
public | include/qgui/desktop.h:152 | qgui_host_poll | int qgui_host_poll(qgui_app_t *app, qgui_event_t *out, int cap)
public | include/qgui/desktop.h:153 | qgui_host_fill_layout_input | void qgui_host_fill_layout_input(qgui_app_t *app)
public | include/qgui/desktop.h:155 | qgui_host_fill_pointer | void qgui_host_fill_pointer(qgui_app_t *app)
public | include/qgui/desktop.h:156 | qgui_host_size | void qgui_host_size(qgui_app_t *app, int *w, int *h)
public | include/qgui/desktop.h:157 | qgui_host_frame_limit | void qgui_host_frame_limit(qgui_app_t *app, double fps)
public | include/qgui/desktop.h:158 | qgui_host_run_desktop | qgui_result_t qgui_host_run_desktop(qgui_app_t *app)
public | include/qgui/host.h:36 | qgui_host_stub_ops | void qgui_host_stub_ops(qgui_host_ops_t *ops)
public | include/qgui/host.h:37 | qgui_host_desktop_ops | void qgui_host_desktop_ops(qgui_host_ops_t *ops)
public | include/qgui/host.h:45 | qgui_log_open | void qgui_log_open(const char *path)
public | include/qgui/host.h:46 | qgui_log_close | void qgui_log_close(void)
public | include/qgui/host.h:47 | qgui_log | void qgui_log(const char *fmt, ...)
public | include/qgui/host.h:48 | qgui_log_path | const char *qgui_log_path(void)
public | include/qgui/host.h:49 | qgui_log_set_quiet | void qgui_log_set_quiet(int quiet)
public | include/qgui/host.h:53 | qgui_core_reap_orphans | int qgui_core_reap_orphans(const char *data_dir)
public | include/qgui/host.h:57 | qgui_host_font_path | const char *qgui_host_font_path(void)
public | include/qgui/host.h:63 | qgui_host_setup_fonts | qgui_result_t qgui_host_setup_fonts(struct qgui_renderer *rend)
public | include/qgui/host.h:69 | qgui_host_setup_fonts_with | qgui_result_t qgui_host_setup_fonts_with(struct qgui_renderer *rend, const struct qgui_font_ref *regular_candidates, int count)
public | include/qgui/host.h:73 | qgui_host_asset_beside_exe | const char *qgui_host_asset_beside_exe(const char *rel)
public | include/qgui/host.h:78 | qgui_embedded_asset_bytes | const void *qgui_embedded_asset_bytes(const char *rel, size_t *size_out)
public | include/qgui/host.h:94 | qgui_host_core_bind | void qgui_host_core_bind(qgui_host_ops_t *ops, qgui_core_proc_t *proc)
public | include/qgui/host.h:96 | qgui_core_read_port_file | int qgui_core_read_port_file(const char *data_dir, int *out_port)
public | include/qgui/layout.h:28 | qgui_layout_create | qgui_result_t qgui_layout_create(qgui_measure_text_fn measure, void *measure_user, qgui_layout_t **out)
public | include/qgui/layout.h:30 | qgui_layout_destroy | void qgui_layout_destroy(qgui_layout_t *layout)
public | include/qgui/layout.h:39 | qgui_layout_set_pointer | void qgui_layout_set_pointer(qgui_layout_t *layout, const qgui_layout_input_t *in)
public | include/qgui/layout.h:40 | qgui_layout_take_hits | int qgui_layout_take_hits(qgui_layout_t *layout, qgui_event_t *out, int cap)
public | include/qgui/layout.h:43 | qgui_layout_element_box | int qgui_layout_element_box(qgui_layout_t *layout, const char *id, int index, float *x, float *y, float *w, float *h)
public | include/qgui/layout.h:45 | qgui_layout_build | qgui_result_t qgui_layout_build(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, const qgui_layout_input_t *in)
public | include/qgui/layout.h:50 | qgui_layout_region_bounds | int qgui_layout_region_bounds(const qgui_layout_t *layout, qgui_region_t region, qgui_rect_t *out)
public | include/qgui/layout.h:56 | qgui_layout_scroll_state | int qgui_layout_scroll_state(const qgui_layout_t *layout, const char *container_id, float *out_offset_y, float *out_content_h, float *out_view_h)
public | include/qgui/layout.h:69 | qgui_layout_scroll_by | int qgui_layout_scroll_by(qgui_layout_t *layout, const char *container_id, float dy)
public | include/qgui/layout.h:72 | qgui_layout_scroll_to_fraction | int qgui_layout_scroll_to_fraction(qgui_layout_t *layout, const char *container_id, float t)
public | include/qgui/layout.h:76 | qgui_layout_scrollbar_bounds | int qgui_layout_scrollbar_bounds(const qgui_layout_t *layout, const char *container_id, qgui_rect_t *out_track, float *out_thumb_h)
public | include/qgui/layout.h:80 | qgui_layout_reading_scrollbar_bounds | int qgui_layout_reading_scrollbar_bounds(const qgui_layout_t *layout, const qgui_viewmodel_t *vm, qgui_rect_t *out_track, float *out_thumb_h, float *out_thumb_y)
public | include/qgui/layout.h:92 | qgui_layout_scrollable_at | const char *qgui_layout_scrollable_at(const qgui_layout_t *layout, float x, float y)
public | include/qgui/layout.h:95 | qgui_layout_scroll_pane_count | int qgui_layout_scroll_pane_count(void)
public | include/qgui/layout.h:96 | qgui_layout_scroll_pane_at | const char *qgui_layout_scroll_pane_at(int i)
public | include/qgui/layout.h:99 | qgui_layout_virt_range | void qgui_layout_virt_range(int row_count, int row_h, float clip_h, float scroll_y, int *out_first, int *out_last)
public | include/qgui/layout.h:105 | qgui_layout_draw | qgui_result_t qgui_layout_draw(qgui_layout_t *layout, struct qgui_renderer *renderer)
public | include/qgui/layout.h:107 | qgui_layout_reading_metrics | void qgui_layout_reading_metrics(const qgui_layout_t *layout, float *content_h, float *view_h)
public | include/qgui/layout.h:115 | qgui_layout_field_caret_from_point | int qgui_layout_field_caret_from_point(const qgui_layout_t *layout, int focus_id, float x, float y, int *out_offset)
public | include/qgui/layout.h:117 | qgui_layout_field_caret_vertical | int qgui_layout_field_caret_vertical(const qgui_layout_t *layout, int focus_id, int offset, int dir, int *out_offset)
public | include/qgui/render.h:19 | qgui_draw_avatar | qgui_result_t qgui_draw_avatar(qgui_renderer_t *r, qgui_rect_t rect, const struct qgui_avatar *avatar)
public | include/qgui/render.h:39 | qgui_draw_texture | qgui_result_t qgui_draw_texture(qgui_renderer_t *r, qgui_rect_t rect, const qgui_tex_ref_t *tex, float radius)
public | include/qgui/render.h:52 | qgui_icon_ref | const qgui_icon_ref_t *qgui_icon_ref(const char *pua_literal)
public | include/qgui/render.h:53 | qgui_icon_count | int qgui_icon_count(void)
public | include/qgui/render.h:54 | qgui_icon_ref_at | const qgui_icon_ref_t *qgui_icon_ref_at(int index)
public | include/qgui/render.h:55 | qgui_icon_name | const char *qgui_icon_name(const qgui_icon_ref_t *ref)
public | include/qgui/render.h:56 | qgui_draw_icon | qgui_result_t qgui_draw_icon(qgui_renderer_t *r, qgui_rect_t rect, const qgui_icon_ref_t *ref, qgui_color_t tint)
public | include/qgui/render.h:61 | qgui_icon_rasterize | int qgui_icon_rasterize(const qgui_icon_ref_t *ref, int px, unsigned char *alpha, size_t cap)
public | include/qgui/render.h:63 | qgui_renderer_set_avatar_ball | void qgui_renderer_set_avatar_ball(qgui_renderer_t *r, int ball)
public | include/qgui/render.h:66 | qgui_renderer_create | qgui_result_t qgui_renderer_create(void *native_renderer, qgui_renderer_t **out)
public | include/qgui/render.h:67 | qgui_renderer_destroy | void qgui_renderer_destroy(qgui_renderer_t *r)
public | include/qgui/render.h:69 | qgui_renderer_load_font | qgui_result_t qgui_renderer_load_font(qgui_renderer_t *r, const char *ttf_path)
public | include/qgui/render.h:72 | qgui_renderer_set_font_family | qgui_result_t qgui_renderer_set_font_family(qgui_renderer_t *r, int family_index, const char *ttf_path)
public | include/qgui/render.h:81 | qgui_renderer_load_font_ex | qgui_result_t qgui_renderer_load_font_ex(qgui_renderer_t *r, const qgui_font_ref_t *font)
public | include/qgui/render.h:82 | qgui_renderer_set_font_family_ex | qgui_result_t qgui_renderer_set_font_family_ex(qgui_renderer_t *r, int family_index, const qgui_font_ref_t *font)
public | include/qgui/render.h:87 | qgui_renderer_set_fallback_fonts | qgui_result_t qgui_renderer_set_fallback_fonts(qgui_renderer_t *r, const qgui_font_ref_t *fonts, int count)
public | include/qgui/render.h:90 | qgui_renderer_notdef_count | int qgui_renderer_notdef_count(qgui_renderer_t *r, const char *text, int length, uint16_t font_id, uint16_t font_size_px)
public | include/qgui/render.h:94 | qgui_renderer_shaped_clusters | int qgui_renderer_shaped_clusters(qgui_renderer_t *r, const char *text, int length, uint16_t font_id, uint16_t font_size_px, uint32_t *clusters, unsigned char *from_fallback, int max)
public | include/qgui/render.h:98 | qgui_draw_rect_rounded | qgui_result_t qgui_draw_rect_rounded(qgui_renderer_t *r, qgui_rect_t rect, qgui_color_t color, float radius)
public | include/qgui/render.h:99 | qgui_renderer_measure_user | void *qgui_renderer_measure_user(qgui_renderer_t *r)
public | include/qgui/render.h:100 | qgui_renderer_measure_fn | qgui_measure_text_fn qgui_renderer_measure_fn(qgui_renderer_t *r)
public | include/qgui/render.h:102 | qgui_renderer_begin_frame | qgui_result_t qgui_renderer_begin_frame(qgui_renderer_t *r, qgui_color_t clear)
public | include/qgui/render.h:103 | qgui_draw_rect | qgui_result_t qgui_draw_rect(qgui_renderer_t *r, qgui_rect_t rect, qgui_color_t color)
public | include/qgui/render.h:108 | qgui_draw_border | qgui_result_t qgui_draw_border(qgui_renderer_t *r, qgui_rect_t rect, qgui_color_t color, float top, float right, float bottom, float left, float radius)
public | include/qgui/render.h:111 | qgui_draw_text | qgui_result_t qgui_draw_text(qgui_renderer_t *r, const char *text, int length, float x, float y, uint16_t font_id, uint16_t font_size_px, qgui_color_t color)
public | include/qgui/render.h:114 | qgui_scissor_begin | qgui_result_t qgui_scissor_begin(qgui_renderer_t *r, qgui_rect_t rect)
public | include/qgui/render.h:115 | qgui_scissor_end | qgui_result_t qgui_scissor_end(qgui_renderer_t *r)
public | include/qgui/render.h:116 | qgui_renderer_prim_count | int qgui_renderer_prim_count(const qgui_renderer_t *r)
public | include/qgui/render.h:118 | qgui_renderer_text_stats | void qgui_renderer_text_stats(const qgui_renderer_t *r, int *atlas_pages, int *glyphs)
public | include/qgui/render.h:119 | qgui_renderer_atlas_evictions | int qgui_renderer_atlas_evictions(const qgui_renderer_t *r)
public | include/qgui/render.h:129 | qgui_cbdf_open | qgui_cbdf_doc_t *qgui_cbdf_open(qgui_renderer_t *r, const uint8_t *bytes, size_t len, char *err, size_t err_sz)
public | include/qgui/render.h:133 | qgui_cbdf_open_text | qgui_cbdf_doc_t *qgui_cbdf_open_text(qgui_renderer_t *r, const char *subject, const char *utf8, qgui_color_t fg, qgui_color_t page_bg, int font_px, char *err, size_t err_sz)
public | include/qgui/render.h:136 | qgui_cbdf_close | void qgui_cbdf_close(qgui_renderer_t *r, qgui_cbdf_doc_t *doc)
public | include/qgui/render.h:139 | qgui_cbdf_notdef_count | int qgui_cbdf_notdef_count(qgui_cbdf_doc_t *doc, const char *text, int length, uint16_t font_id, uint16_t font_size_px)
public | include/qgui/render.h:145 | qgui_cbdf_open_file_themed | qgui_cbdf_doc_t *qgui_cbdf_open_file_themed(qgui_renderer_t *r, const char *path, qgui_color_t fg, qgui_color_t page_bg, char *err, size_t cap)
public | include/qgui/render.h:148 | qgui_cbdf_open_file | qgui_cbdf_doc_t *qgui_cbdf_open_file(qgui_renderer_t *r, const char *path, char *err, size_t cap)
public | include/qgui/render.h:153 | qgui_cbdf_set_page_alpha | void qgui_cbdf_set_page_alpha(qgui_cbdf_doc_t *doc, int alpha)
public | include/qgui/render.h:154 | qgui_draw_cbdf | qgui_result_t qgui_draw_cbdf(qgui_renderer_t *r, qgui_cbdf_doc_t *doc, qgui_rect_t rect, float scroll_y, float zoom, float *out_content_h)
public | include/qgui/render.h:156 | qgui_renderer_end_frame | qgui_result_t qgui_renderer_end_frame(qgui_renderer_t *r)
public | include/qgui/servers.h:145 | qgui_servers_dirty | int qgui_servers_dirty(const qgui_server_ui_t *s)
public | include/qgui/servers.h:146 | qgui_servers_init | void qgui_servers_init(qgui_server_ui_t *s)
public | include/qgui/servers.h:148 | qgui_servers_startup_missing | unsigned qgui_servers_startup_missing(const qgui_server_ui_t *)
public | include/qgui/servers.h:149 | qgui_servers_action | void qgui_servers_action(qgui_server_ui_t *s, qgui_server_action_t action, int index)
public | include/qgui/servers.h:150 | qgui_servers_poll | void qgui_servers_poll(qgui_server_ui_t *s)
public | include/qgui/servers.h:151 | qgui_servers_apply | void qgui_servers_apply(qgui_server_ui_t *s, const qgui_server_reply_t *reply)
public | include/qgui/servers.h:152 | qgui_servers_parse_uint | int qgui_servers_parse_uint(const char *text, int minimum, int maximum, int *out)
public | include/qgui/servers.h:153 | qgui_servers_order | int qgui_servers_order(const qgui_server_ui_t *s, int discovery, int position)
public | include/qgui/servers.h:154 | qgui_hosting_state_name | const char *qgui_hosting_state_name(qgui_hosting_status_t state)
public | include/qgui/state.h:19 | qgui_state_error_text | const char *qgui_state_error_text(const struct qgui_state *state)
public | include/qgui/state.h:431 | qgui_state_init_fake | void qgui_state_init_fake(qgui_state_t *state)
public | include/qgui/state.h:432 | qgui_reduce | void qgui_reduce(qgui_state_t *state, const qgui_event_t *event)
public | include/qgui/state.h:433 | qgui_viewmodel_build | void qgui_viewmodel_build(const qgui_state_t *state, qgui_viewmodel_t *out)
public | include/qgui/state.h:434 | qgui_state_clear_host_one_shots | void qgui_state_clear_host_one_shots(qgui_state_t *state)
public | include/qgui/state.h:435 | qgui_row_picked | int qgui_row_picked(const qgui_state_t *state, qgui_mail_id_t id)
public | include/qgui/state.h:436 | qgui_picked_clear | void qgui_picked_clear(qgui_state_t *state)
public | include/qgui/theme.h:93 | qgui_theme_nocturne | void qgui_theme_nocturne(qgui_theme_t *out)
public | include/qgui/theme.h:102 | qgui_theme_by_id | int qgui_theme_by_id(const char *id, qgui_theme_t *out)
public | include/qgui/theme.h:103 | qgui_theme_count | int qgui_theme_count(void)
public | include/qgui/theme.h:104 | qgui_theme_id_at | const char *qgui_theme_id_at(int i)
public | include/qgui/theme.h:105 | qgui_theme_label_at | const char *qgui_theme_label_at(int i)
public | include/qgui/theme.h:106 | qgui_theme_blurb_at | const char *qgui_theme_blurb_at(int i)
public | include/qgui/theme.h:108 | qgui_theme_scale | void qgui_theme_scale(qgui_theme_t *theme, float scale)
public | include/qgui/types.h:322 | qgui_text_field_init | void qgui_text_field_init(qgui_text_field_t *f, char *buf, int cap, int multiline)
public | include/qgui/types.h:323 | qgui_text_field_set_focus | void qgui_text_field_set_focus(qgui_text_field_t *f, int focused)
public | include/qgui/types.h:324 | qgui_text_field_sel_lo | int qgui_text_field_sel_lo(const qgui_text_field_t *f)
public | include/qgui/types.h:325 | qgui_text_field_sel_hi | int qgui_text_field_sel_hi(const qgui_text_field_t *f)
public | include/qgui/types.h:326 | qgui_text_field_insert | qgui_result_t qgui_text_field_insert(qgui_text_field_t *f, const char *bytes, int n)
public | include/qgui/types.h:327 | qgui_text_field_backspace | void qgui_text_field_backspace(qgui_text_field_t *f)
public | include/qgui/types.h:328 | qgui_text_field_delete | void qgui_text_field_delete(qgui_text_field_t *f)
public | include/qgui/types.h:329 | qgui_text_field_move | void qgui_text_field_move(qgui_text_field_t *f, int dir, int extend)
public | include/qgui/types.h:330 | qgui_text_field_home | void qgui_text_field_home(qgui_text_field_t *f, int extend)
public | include/qgui/types.h:331 | qgui_text_field_end | void qgui_text_field_end(qgui_text_field_t *f, int extend)
public | include/qgui/types.h:332 | qgui_text_field_select_all | void qgui_text_field_select_all(qgui_text_field_t *f)
public | include/qgui/types.h:333 | qgui_text_field_copy | int qgui_text_field_copy(const qgui_text_field_t *f, char *dest, int dest_sz)
public | include/qgui/types.h:335 | qgui_text_field_set_caret | void qgui_text_field_set_caret(qgui_text_field_t *f, int offset, int extend)
public | include/qgui/types.h:627 | qgui_setup_step_label | const char *qgui_setup_step_label(int step)
public | include/qgui/types.h:648 | qgui_parse_address | int qgui_parse_address(const char *text, long long *serial, int *denomination, char *class_name, size_t class_sz, char *err, size_t err_sz)
public | include/qgui/types.h:651 | qgui_format_address | void qgui_format_address(long long serial, int denomination, char *dst, size_t cap)
public | include/qgui/types.h:655 | qgui_dest_enabled | int qgui_dest_enabled(qgui_dest_id_t id)
public | include/qgui/types.h:805 | qgui_mailbox_init | void qgui_mailbox_init(qgui_mailbox_t *mb)
public | include/qgui/types.h:806 | qgui_mailbox_drain | int qgui_mailbox_drain(qgui_mailbox_t *mb, struct qgui_event *out, int cap)
public | include/qgui/types.h:807 | qgui_mailbox_post | qgui_result_t qgui_mailbox_post(qgui_mailbox_t *mb, const struct qgui_event *ev)
public | include/qgui/types.h:810 | qgui_str_set | qgui_result_t qgui_str_set(char *dest, size_t dest_sz, const char *src)
public | include/qgui/types.h:811 | qgui_sleep_ms | void qgui_sleep_ms(int ms)
public | include/qgui/types.h:813 | qgui_arena_create | qgui_arena_t *qgui_arena_create(size_t cap)
public | include/qgui/types.h:814 | qgui_arena_alloc | void *qgui_arena_alloc(qgui_arena_t *a, size_t n)
public | include/qgui/types.h:815 | qgui_arena_reset | void qgui_arena_reset(qgui_arena_t *a)
public | include/qgui/types.h:816 | qgui_arena_destroy | void qgui_arena_destroy(qgui_arena_t *a)
public | include/qgui/viewmodel.h:65 | qgui_menu_count | int qgui_menu_count(void)
public | include/qgui/viewmodel.h:66 | qgui_menu_title | const char *qgui_menu_title(int menu)
public | include/qgui/viewmodel.h:67 | qgui_menu_item_count | int qgui_menu_item_count(int menu)
public | include/qgui/viewmodel.h:68 | qgui_menu_item_cmd | qgui_menu_cmd_t qgui_menu_item_cmd(int menu, int i)
public | include/qgui/viewmodel.h:69 | qgui_menu_item_label | const char *qgui_menu_item_label(int menu, int i)
public | include/qgui/viewmodel.h:70 | qgui_menu_item_shortcut | const char *qgui_menu_item_shortcut(int menu, int i)
public | include/qgui/viewmodel.h:71 | qgui_menu_item_separator | int qgui_menu_item_separator(int menu, int i)
public | include/qgui/viewmodel.h:72 | qgui_menu_cmd_todo | int qgui_menu_cmd_todo(qgui_menu_cmd_t cmd)
public | include/qgui/viewmodel.h:73 | qgui_copy_text_at | const char *qgui_copy_text_at(int i)
public | include/qgui/viewmodel.h:74 | qgui_titlebar_preset_count | int qgui_titlebar_preset_count(void)
public | include/qgui/viewmodel.h:75 | qgui_titlebar_preset_at | const char *qgui_titlebar_preset_at(int i)
public | include/qgui/viewmodel.h:76 | qgui_titlebar_preset_name_at | const char *qgui_titlebar_preset_name_at(int i)
public | include/qgui/viewmodel.h:77 | qgui_titlebar_name_for_hex | const char *qgui_titlebar_name_for_hex(const char *hex)
public | include/qgui/viewmodel.h:78 | qgui_parse_hex_color | int qgui_parse_hex_color(const char *s, unsigned char *r, unsigned char *g, unsigned char *b)
public | include/qgui/viewmodel.h:80 | qgui_chip_count | int qgui_chip_count(void)
public | include/qgui/viewmodel.h:81 | qgui_chip_add_label | const char *qgui_chip_add_label(int chip)
public | include/qgui/viewmodel.h:82 | qgui_chip_label | const char *qgui_chip_label(int chip, qgui_chip_state_t state)
public | include/qgui/viewmodel.h:83 | qgui_sort_count | int qgui_sort_count(void)
public | include/qgui/viewmodel.h:84 | qgui_sort_label | const char *qgui_sort_label(int sort)
public | include/qgui/viewmodel.h:85 | qgui_sort_dir_label | const char *qgui_sort_dir_label(int sort, qgui_sort_dir_t dir)
public | include/qgui/viewmodel.h:86 | qgui_sort_default_dir | qgui_sort_dir_t qgui_sort_default_dir(int sort)
public | include/qgui/viewmodel.h:87 | qgui_mail_query_init | void qgui_mail_query_init(qgui_mail_query_t *q)
public | include/qgui/viewmodel.h:88 | qgui_mail_query_chip_count | int qgui_mail_query_chip_count(const qgui_mail_query_t *q)
public | include/qgui/viewmodel.h:89 | qgui_mail_query_is_default | int qgui_mail_query_is_default(const qgui_mail_query_t *q)
public | include/qgui/viewmodel.h:91 | qgui_mail_query_legacy_filter | qgui_filter_id_t qgui_mail_query_legacy_filter(const qgui_mail_query_t *q)
public | include/qgui/viewmodel.h:94 | qgui_sound_count | int qgui_sound_count(void)
public | include/qgui/viewmodel.h:95 | qgui_sound_file_at | const char *qgui_sound_file_at(int i)
public | include/qgui/viewmodel.h:96 | qgui_sound_label_at | const char *qgui_sound_label_at(int i)
public | include/qgui/viewmodel.h:97 | qgui_sound_index_of | int qgui_sound_index_of(const char *file)
public | include/qmail_sdk/qmail_sdk.h:38 | qmail_sdk_abi_version | uint32_t qmail_sdk_abi_version(void)
public | include/qmail_sdk/qmail_sdk.h:40 | qmail_sdk_create | qmail_sdk_result_t qmail_sdk_create(const qmail_sdk_config_t *config, qmail_sdk_t **out_sdk)
public | include/qmail_sdk/qmail_sdk.h:46 | qmail_sdk_set_http_provider | qmail_sdk_result_t qmail_sdk_set_http_provider(qmail_sdk_t *sdk, core_http_get_fn get, void *user_data)
public | include/qmail_sdk/qmail_sdk.h:49 | qmail_sdk_start | qmail_sdk_result_t qmail_sdk_start(qmail_sdk_t *sdk)
public | include/qmail_sdk/qmail_sdk.h:50 | qmail_sdk_stop | qmail_sdk_result_t qmail_sdk_stop(qmail_sdk_t *sdk)
public | include/qmail_sdk/qmail_sdk.h:51 | qmail_sdk_destroy | void qmail_sdk_destroy(qmail_sdk_t *sdk)
public | include/qmail_sdk/qmail_sdk.h:56 | qmail_sdk_execute | char *qmail_sdk_execute(qmail_sdk_t *sdk, const char *request_json)
public | include/qmail_sdk/qmail_sdk.h:57 | qmail_sdk_free_string | void qmail_sdk_free_string(char *string)
public | include/qmail_service/qmail_service.h:308 | qmail_svc_messages_list | qmail_svc_error_t qmail_svc_messages_list( const qmail_svc_messages_list_params_t *params, qmail_svc_messages_list_result_t *out)
public | include/qmail_service/qmail_service.h:311 | qmail_svc_messages_list_free | void qmail_svc_messages_list_free(qmail_svc_messages_list_result_t *result)
public | include/qmail_service/qmail_service.h:313 | qmail_svc_folders_list | qmail_svc_error_t qmail_svc_folders_list( qmail_svc_folders_list_result_t *out)
public | include/qmail_service/qmail_service.h:315 | qmail_svc_folder_counts | qmail_svc_error_t qmail_svc_folder_counts( qmail_svc_folder_counts_result_t *out)
public | include/qmail_service/qmail_service.h:318 | qmail_svc_message_get | qmail_svc_error_t qmail_svc_message_get( const char *email_id_hex, qmail_svc_message_get_result_t *out)
public | include/qmail_service/qmail_service.h:321 | qmail_svc_message_get_free | void qmail_svc_message_get_free(qmail_svc_message_get_result_t *result)
public | include/qmail_service/qmail_service.h:324 | qmail_svc_message_delete | qmail_svc_error_t qmail_svc_message_delete(const char *email_id_hex)
public | include/qmail_service/qmail_service.h:326 | qmail_svc_message_delete_permanent | qmail_svc_error_t qmail_svc_message_delete_permanent(const char *email_id_hex)
public | include/qmail_service/qmail_service.h:328 | qmail_svc_attachments_list | qmail_svc_error_t qmail_svc_attachments_list( const char *email_id_hex, qmail_svc_attachments_list_result_t *out)
public | include/qmail_service/qmail_service.h:331 | qmail_svc_attachments_list_free | void qmail_svc_attachments_list_free( qmail_svc_attachments_list_result_t *result)
public | include/qmail_service/qmail_service.h:333 | qmail_svc_attachment_export | qmail_svc_error_t qmail_svc_attachment_export( const char *email_id_hex, int64_t attachment_id, const char *dest_path, qmail_svc_attachment_export_result_t *out)
public | include/qmail_service/qmail_service.h:338 | qmail_svc_configure | qmail_svc_error_t qmail_svc_configure(const char *data_dir, core_transport_t *transport)
public | include/qmail_service/qmail_service.h:340 | qmail_svc_identity_status | qmail_svc_error_t qmail_svc_identity_status( qmail_svc_identity_status_result_t *out)
public | include/qmail_service/qmail_service.h:344 | qmail_svc_identity_install | qmail_svc_error_t qmail_svc_identity_install( const char *locker_code, bool overwrite, qmail_svc_identity_install_result_t *out)
public | include/qmail_service/qmail_service.h:349 | qmail_svc_wallet_balance | qmail_svc_error_t qmail_svc_wallet_balance( qmail_svc_wallet_balance_result_t *out)
public | include/qmail_service/qmail_service.h:352 | qmail_svc_wallet_add_funds | qmail_svc_error_t qmail_svc_wallet_add_funds( const char *locker_code, qmail_svc_wallet_add_funds_result_t *out)
public | include/qmail_service/qmail_service.h:361 | qmail_svc_wallet_export | qmail_svc_error_t qmail_svc_wallet_export( int amount_cc, qmail_svc_wallet_export_result_t *out)
public | include/qmail_service/qmail_service.h:363 | qmail_svc_sync_once | qmail_svc_error_t qmail_svc_sync_once( const qmail_svc_sync_once_params_t *params, qmail_svc_sync_once_result_t *out)
public | include/qmail_service/qmail_service.h:366 | qmail_svc_wallet_heal | qmail_svc_error_t qmail_svc_wallet_heal( const qmail_svc_wallet_heal_params_t *params, qmail_svc_wallet_heal_result_t *out)
public | include/qmail_service/qmail_service.h:369 | qmail_svc_send_email | qmail_svc_error_t qmail_svc_send_email( const qmail_svc_send_email_params_t *params, qmail_svc_send_email_result_t *out)
public | include/qmail_service/qmail_service.h:405 | qmail_svc_contacts_list | qmail_svc_error_t qmail_svc_contacts_list(qmail_svc_contacts_list_result_t *out)
public | include/qmail_service/qmail_service.h:406 | qmail_svc_contacts_list_free | void qmail_svc_contacts_list_free(qmail_svc_contacts_list_result_t *result)
public | include/qmail_service/qmail_service.h:407 | qmail_svc_contacts_popular | qmail_svc_error_t qmail_svc_contacts_popular( const qmail_svc_contacts_popular_params_t *params, qmail_svc_contacts_list_result_t *out)
public | include/qmail_service/qmail_service.h:410 | qmail_svc_contact_add | qmail_svc_error_t qmail_svc_contact_add( const qmail_svc_contact_add_params_t *params, qmail_svc_contact_add_result_t *out)
public | include/qmail_service/qmail_service.h:413 | qmail_svc_contact_delete | qmail_svc_error_t qmail_svc_contact_delete(uint32_t serial_number)
public | include/qmail_service/qmail_service.h:414 | qmail_svc_contact_set_favorite | qmail_svc_error_t qmail_svc_contact_set_favorite(uint32_t serial_number, bool favorite)
public | include/qmail_service/qmail_service.h:452 | qmail_svc_drafts_list | qmail_svc_error_t qmail_svc_drafts_list( const qmail_svc_drafts_list_params_t *params, qmail_svc_drafts_list_result_t *out)
public | include/qmail_service/qmail_service.h:455 | qmail_svc_drafts_list_free | void qmail_svc_drafts_list_free(qmail_svc_drafts_list_result_t *result)
public | include/qmail_service/qmail_service.h:456 | qmail_svc_draft_save | qmail_svc_error_t qmail_svc_draft_save( const qmail_svc_draft_save_params_t *params, qmail_svc_draft_save_result_t *out)
public | include/qmail_service/qmail_service.h:459 | qmail_svc_draft_update | qmail_svc_error_t qmail_svc_draft_update( const char *email_id_hex, const qmail_svc_draft_update_params_t *params)
public | include/qmail_service/qmail_service.h:463 | qmail_svc_draft_delete | qmail_svc_error_t qmail_svc_draft_delete(const char *email_id_hex)
public | include/qmail/asset_provider.h:19 | qmail_asset_open | int qmail_asset_open(unsigned int id, qmail_asset_view_t *out)
public | include/qmail/asset_provider.h:20 | qmail_asset_close | void qmail_asset_close(qmail_asset_view_t *view)
public | include/qmail/component.h:23 | qm_manifest_parse | int qm_manifest_parse(const char *json, size_t length, qm_manifest_t *out, char *error, size_t error_size)
public | include/qmail/component.h:26 | qm_component_safe_path | int qm_component_safe_path(const char *relative)
public | include/qmail/component.h:27 | qm_component_allowed_url | int qm_component_allowed_url(const char *url)
public | include/qmail/component.h:60 | qm_component_query | int qm_component_query(const char *root, const char *client_exe, qm_component_id id, qm_component_record_t *record)
public | include/qmail/component.h:64 | qm_update_plan | int qm_update_plan(const qm_manifest_t *, const qm_component_record_t records[3], int explicit_id, qm_update_plan_t *)
public | include/qmail/component.h:66 | qm_component_download | int qm_component_download(qm_update_plan_t *, const char *root, const qm_update_io_t *)
public | include/qmail/component.h:69 | qm_install_prepare | int qm_install_prepare(qm_update_plan_t *, const char *root, const char *client_exe)
public | include/qmail/component.h:73 | qm_install_launch | int qm_install_launch(const qm_update_plan_t *, const char *root, const char *client_exe, const char *data_dir, unsigned long parent_pid)
public | include/qmail/component.h:76 | qm_component_commit | int qm_component_commit(const char *root, const char *client_exe, const qm_component_record_t *record)
public | include/qmail/component.h:80 | qm_archive_admit | int qm_archive_admit(qm_owned_file_t *inventory, size_t *count, const char *path, uint64_t expanded_size, int ordinary_file)
public | include/qmail/component.h:83 | qm_archive_inspect | int qm_archive_inspect(const char *archive, qm_owned_file_t *inventory, size_t *count)
public | include/qmail/data_compat.h:28 | qmail_data_compat_inspect | int qmail_data_compat_inspect(const char *client_data_dir, qmail_data_compat_summary_t *summary)
public | include/qmail/desktop_api.h:217 | qmail_desktop_api_init | qmail_api_code_t qmail_desktop_api_init(qmail_desktop_api_t *api, const char *data_dir_override, int debug, qmail_api_event_fn event_fn, void *event_user, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:223 | qmail_desktop_api_shutdown | void qmail_desktop_api_shutdown(qmail_desktop_api_t *api)
public | include/qmail/desktop_api.h:227 | qmail_desktop_api_set_live_callback | void qmail_desktop_api_set_live_callback(qmail_desktop_api_t *api, qmail_api_live_fn fn, void *user)
public | include/qmail/desktop_api.h:236 | qmail_desktop_api_beacon_try_start | qmail_api_code_t qmail_desktop_api_beacon_try_start(qmail_desktop_api_t *api, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:247 | qmail_desktop_api_identity_lock | void qmail_desktop_api_identity_lock(qmail_desktop_api_t *api)
public | include/qmail/desktop_api.h:248 | qmail_desktop_api_identity_unlock | void qmail_desktop_api_identity_unlock(qmail_desktop_api_t *api)
public | include/qmail/desktop_api.h:250 | qmail_desktop_api_pown_identity | qmail_api_code_t qmail_desktop_api_pown_identity(qmail_desktop_api_t *api, const char *memo, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:257 | qmail_desktop_api_stop_receiving | void qmail_desktop_api_stop_receiving(qmail_desktop_api_t *api)
public | include/qmail/desktop_api.h:259 | qmail_desktop_api_status | qmail_api_code_t qmail_desktop_api_status(const qmail_desktop_api_t *api, int *has_identity_coin, int *has_window_settings, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:265 | qmail_desktop_api_folder_counts | qmail_api_code_t qmail_desktop_api_folder_counts(qmail_desktop_api_t *api, qmail_api_folder_count_t out[6], qmail_api_error_t *error)
public | include/qmail/desktop_api.h:269 | qmail_desktop_api_list_messages | qmail_api_code_t qmail_desktop_api_list_messages(qmail_desktop_api_t *api, int folder, int limit, int offset, qmail_api_message_row_t *rows, int rows_cap, int *row_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:312 | qmail_desktop_api_mail_query_init | void qmail_desktop_api_mail_query_init(qmail_api_mail_query_t *q)
public | include/qmail/desktop_api.h:316 | qmail_desktop_api_query_messages | qmail_api_code_t qmail_desktop_api_query_messages(qmail_desktop_api_t *api, const qmail_api_mail_query_t *query, qmail_api_message_row_t *rows, int rows_cap, int *row_count, int *total_out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:325 | qmail_desktop_api_search_messages | qmail_api_code_t qmail_desktop_api_search_messages(qmail_desktop_api_t *api, const char *query, int limit, qmail_api_message_row_t *rows, int rows_cap, int *row_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:334 | qmail_desktop_api_get_message | qmail_api_code_t qmail_desktop_api_get_message(qmail_desktop_api_t *api, const unsigned char email_id[16], qmail_api_message_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:359 | qmail_desktop_api_mail_action | qmail_api_code_t qmail_desktop_api_mail_action(qmail_desktop_api_t *api, const qmail_api_mail_action_t *action, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:367 | qmail_desktop_api_delete_sent_objects | qmail_api_code_t qmail_desktop_api_delete_sent_objects( qmail_desktop_api_t *api, const unsigned char email_id[16], int *deleted_stripes, int *total_stripes, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:390 | qmail_desktop_api_save_draft | qmail_api_code_t qmail_desktop_api_save_draft(qmail_desktop_api_t *api, const qmail_api_draft_request_t *request, qmail_api_draft_result_t *out, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:396 | qmail_desktop_api_update_draft | qmail_api_code_t qmail_desktop_api_update_draft(qmail_desktop_api_t *api, const unsigned char email_id[16], const qmail_api_draft_request_t *request, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:430 | qmail_desktop_api_list_contacts | qmail_api_code_t qmail_desktop_api_list_contacts(qmail_desktop_api_t *api, int popular, qmail_api_contact_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:437 | qmail_desktop_api_add_contact | qmail_api_code_t qmail_desktop_api_add_contact(qmail_desktop_api_t *api, const qmail_api_contact_request_t *request, qmail_api_contact_t *out, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:443 | qmail_desktop_api_delete_contact | qmail_api_code_t qmail_desktop_api_delete_contact(qmail_desktop_api_t *api, unsigned int serial_number, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:448 | qmail_desktop_api_favorite_contact | qmail_api_code_t qmail_desktop_api_favorite_contact(qmail_desktop_api_t *api, unsigned int serial_number, int favorite, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:471 | qmail_desktop_api_sync_once | qmail_api_code_t qmail_desktop_api_sync_once(qmail_desktop_api_t *api, const qmail_api_sync_request_t *request, qmail_api_sync_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:513 | qmail_desktop_api_health | qmail_api_code_t qmail_desktop_api_health(qmail_desktop_api_t *api, unsigned int echo_timeout_ms, qmail_api_health_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:530 | qmail_desktop_api_list_pending | qmail_api_code_t qmail_desktop_api_list_pending(qmail_desktop_api_t *api, qmail_api_pending_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:545 | qmail_desktop_api_download_attachment | qmail_api_code_t qmail_desktop_api_download_attachment( qmail_desktop_api_t *api, const unsigned char email_id[16], long long attachment_id, const char *dest_path, qmail_api_attachment_download_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:560 | qmail_desktop_api_download_attachment_ex | qmail_api_code_t qmail_desktop_api_download_attachment_ex( qmail_desktop_api_t *api, const unsigned char email_id[16], long long attachment_id, const char *dest_path, qmail_api_progress_fn progress, void *progress_user, qmail_api_attachment_download_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:571 | qmail_desktop_api_attachment_progress | qmail_api_code_t qmail_desktop_api_attachment_progress( qmail_desktop_api_t *api, const unsigned char email_id[16], long long *done_bytes, long long *total_bytes, int *active_out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:578 | qmail_desktop_api_cancel_attachment_download | qmail_api_code_t qmail_desktop_api_cancel_attachment_download( qmail_desktop_api_t *api, const unsigned char email_id[16], qmail_api_error_t *error)
public | include/qmail/desktop_api.h:629 | qmail_desktop_api_list_payments | qmail_api_code_t qmail_desktop_api_list_payments(qmail_desktop_api_t *api, qmail_api_payment_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:635 | qmail_desktop_api_payment_info | qmail_api_code_t qmail_desktop_api_payment_info(qmail_desktop_api_t *api, const unsigned char email_id[16], qmail_api_payment_info_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:640 | qmail_desktop_api_payment_send | qmail_api_code_t qmail_desktop_api_payment_send( qmail_desktop_api_t *api, const qmail_api_payment_send_request_t *request, qmail_api_payment_send_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:646 | qmail_desktop_api_payment_claim | qmail_api_code_t qmail_desktop_api_payment_claim( qmail_desktop_api_t *api, const unsigned char email_id[16], qmail_api_payment_claim_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:652 | qmail_desktop_api_payment_mark_refunded | qmail_api_code_t qmail_desktop_api_payment_mark_refunded( qmail_desktop_api_t *api, const unsigned char email_id[16], char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:703 | qmail_desktop_api_wallet_add_funds | qmail_api_code_t qmail_desktop_api_wallet_add_funds( qmail_desktop_api_t *api, const char *locker_code, qmail_api_wallet_add_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:709 | qmail_desktop_api_wallet_export | qmail_api_code_t qmail_desktop_api_wallet_export( qmail_desktop_api_t *api, int amount_cc, qmail_api_wallet_export_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:715 | qmail_desktop_api_wallet_heal | qmail_api_code_t qmail_desktop_api_wallet_heal( qmail_desktop_api_t *api, unsigned int deadline_ms, qmail_api_wallet_heal_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:741 | qmail_desktop_api_wallet_deposit | qmail_api_code_t qmail_desktop_api_wallet_deposit( qmail_desktop_api_t *api, const qmail_api_wallet_deposit_request_t *request, qmail_api_wallet_deposit_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:755 | qmail_desktop_api_wallet_locker_upload | qmail_api_code_t qmail_desktop_api_wallet_locker_upload( qmail_desktop_api_t *api, const char *locker_code, int amount_cc, qmail_api_wallet_locker_upload_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:767 | qmail_desktop_api_wallet_backup | qmail_api_code_t qmail_desktop_api_wallet_backup( qmail_desktop_api_t *api, const char *dest_path, qmail_api_wallet_backup_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:821 | qmail_desktop_api_profile_get | qmail_api_code_t qmail_desktop_api_profile_get( qmail_desktop_api_t *api, int denomination, unsigned int serial_number, qmail_api_profile_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:828 | qmail_desktop_api_profile_post | qmail_api_code_t qmail_desktop_api_profile_post( qmail_desktop_api_t *api, const qmail_api_profile_post_request_t *request, qmail_api_profile_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:834 | qmail_desktop_api_drd_search | qmail_api_code_t qmail_desktop_api_drd_search( qmail_desktop_api_t *api, const char *first_name, const char *last_name, qmail_api_drd_user_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:843 | qmail_desktop_api_drd_list_get | qmail_api_code_t qmail_desktop_api_drd_list_get( qmail_desktop_api_t *api, qmail_api_drd_list_entry_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:850 | qmail_desktop_api_drd_list_set | qmail_api_code_t qmail_desktop_api_drd_list_set( qmail_desktop_api_t *api, int denomination, unsigned int serial_number, const char *list_type, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:858 | qmail_desktop_api_drd_list_remove | qmail_api_code_t qmail_desktop_api_drd_list_remove( qmail_desktop_api_t *api, int denomination, unsigned int serial_number, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:921 | qmail_desktop_api_ot_capabilities | qmail_api_code_t qmail_desktop_api_ot_capabilities( qmail_desktop_api_t *api, int raida_id, qmail_api_ot_capabilities_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:927 | qmail_desktop_api_ot_upload | qmail_api_code_t qmail_desktop_api_ot_upload( qmail_desktop_api_t *api, const qmail_api_ot_upload_request_t *request, qmail_api_ot_record_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:933 | qmail_desktop_api_ot_download | qmail_api_code_t qmail_desktop_api_ot_download( qmail_desktop_api_t *api, const qmail_api_ot_download_request_t *request, qmail_api_ot_record_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:939 | qmail_desktop_api_ot_status | qmail_api_code_t qmail_desktop_api_ot_status( qmail_desktop_api_t *api, const char *operation_id_hex, qmail_api_ot_record_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:945 | qmail_desktop_api_ot_resume | qmail_api_code_t qmail_desktop_api_ot_resume( qmail_desktop_api_t *api, const char *operation_id_hex, qmail_api_ot_record_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:951 | qmail_desktop_api_ot_cancel | qmail_api_code_t qmail_desktop_api_ot_cancel( qmail_desktop_api_t *api, const char *operation_id_hex, qmail_api_ot_record_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:983 | qmail_desktop_api_list_wallets | qmail_api_code_t qmail_desktop_api_list_wallets(qmail_desktop_api_t *api, qmail_api_wallet_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:989 | qmail_desktop_api_list_transactions | qmail_api_code_t qmail_desktop_api_list_transactions( qmail_desktop_api_t *api, const char *wallet_path, int limit, qmail_api_transaction_t *out, int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:998 | qmail_desktop_api_list_receipts | qmail_api_code_t qmail_desktop_api_list_receipts(qmail_desktop_api_t *api, const char *wallet_path, char (*names)[80], int out_cap, int *out_count, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1005 | qmail_desktop_api_get_receipt | qmail_api_code_t qmail_desktop_api_get_receipt(qmail_desktop_api_t *api, const char *wallet_path, const char *filename, char *text, size_t text_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1027 | qmail_desktop_api_setup_action | qmail_api_code_t qmail_desktop_api_setup_action( qmail_desktop_api_t *api, const qmail_api_setup_request_t *request, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1048 | qmail_desktop_api_update_status | qmail_api_code_t qmail_desktop_api_update_status(qmail_desktop_api_t *api, qmail_api_update_status_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1053 | qmail_desktop_api_update_download | qmail_api_code_t qmail_desktop_api_update_download(qmail_desktop_api_t *api, char *task_id, size_t task_id_cap, char *message, size_t message_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1059 | qmail_desktop_api_support_zip | qmail_api_code_t qmail_desktop_api_support_zip(qmail_desktop_api_t *api, char *path_out, size_t path_cap, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1071 | qmail_desktop_api_task_status | qmail_api_code_t qmail_desktop_api_task_status(qmail_desktop_api_t *api, const char *task_id, qmail_api_task_status_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1078 | qmail_desktop_api_identity_status | qmail_api_code_t qmail_desktop_api_identity_status(qmail_desktop_api_t *api, qmail_api_identity_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1082 | qmail_desktop_api_wallet_balance | qmail_api_code_t qmail_desktop_api_wallet_balance(qmail_desktop_api_t *api, qmail_api_wallet_balance_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1087 | qmail_desktop_api_wallet_balance_at | qmail_api_code_t qmail_desktop_api_wallet_balance_at(qmail_desktop_api_t *api, const char *wallet_path, qmail_api_wallet_balance_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1106 | qmail_desktop_api_legacy_scan | qmail_api_code_t qmail_desktop_api_legacy_scan(qmail_desktop_api_t *api, qmail_api_legacy_folder_t *out, int out_cap, int *out_count, int *vault_file_count, int *programs_found, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1114 | qmail_desktop_api_send_email | qmail_api_code_t qmail_desktop_api_send_email(qmail_desktop_api_t *api, const qmail_api_send_request_t *request, qmail_api_send_result_t *out, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1119 | qmail_desktop_task_begin | qmail_api_code_t qmail_desktop_task_begin(qmail_desktop_api_t *api, const char *operation, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1123 | qmail_desktop_task_progress | qmail_api_code_t qmail_desktop_task_progress(qmail_desktop_api_t *api, qmail_api_task_t *task, unsigned int progress, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1127 | qmail_desktop_task_finish | qmail_api_code_t qmail_desktop_task_finish(qmail_desktop_api_t *api, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/desktop_api.h:1130 | qmail_desktop_task_cancel | qmail_api_code_t qmail_desktop_task_cancel(qmail_desktop_api_t *api, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/feature_catalog.h:30 | qmail_desktop_feature_catalog | size_t qmail_desktop_feature_catalog(const qmail_desktop_api_t *api, const qmail_feature_t **features)
public | include/qmail/font_locator.h:38 | qm_font_locate | int qm_font_locate(qm_font_role_t role, qm_font_file_t *out)
public | include/qmail/font_locator.h:44 | qm_font_locate_all | int qm_font_locate_all(qm_font_role_t role, qm_font_file_t *out, int max)
public | include/qmail/font_locator.h:49 | qm_font_fallbacks | int qm_font_fallbacks(qm_font_file_t *out, int max)
public | include/qmail/font_locator.h:55 | qm_font_fallback_for_codepoint | int qm_font_fallback_for_codepoint(unsigned long codepoint, qm_font_file_t *out)
public | include/qmail/font_locator.h:59 | qm_font_locate_report | const char *qm_font_locate_report(void)
public | include/qmail/font_locator.h:62 | qm_font_file_exists | int qm_font_file_exists(const char *path)
public | include/qmail/gui_client.h:14 | qmail_gui_client_attach | void qmail_gui_client_attach(qmail_gui_client_t *client, qmail_desktop_api_t *desktop)
public | include/qmail/gui_client.h:17 | qmail_gui_client_load_status | qmail_api_code_t qmail_gui_client_load_status(const qmail_gui_client_t *client, int *has_identity_coin, int *has_window_settings, qmail_api_error_t *error)
public | include/qmail/gui_client.h:22 | qmail_gui_client_begin_operation | qmail_api_code_t qmail_gui_client_begin_operation(qmail_gui_client_t *client, const char *operation, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/gui_client.h:26 | qmail_gui_client_report_progress | qmail_api_code_t qmail_gui_client_report_progress(qmail_gui_client_t *client, qmail_api_task_t *task, unsigned int progress, qmail_api_error_t *error)
public | include/qmail/gui_client.h:30 | qmail_gui_client_cancel | qmail_api_code_t qmail_gui_client_cancel(qmail_gui_client_t *client, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/gui_client.h:33 | qmail_gui_client_complete | qmail_api_code_t qmail_gui_client_complete(qmail_gui_client_t *client, qmail_api_task_t *task, qmail_api_error_t *error)
public | include/qmail/gui_inproc.h:13 | qgui_client_inproc_init | void qgui_client_inproc_init(qgui_client_ops_t *ops, qmail_desktop_api_t *api)
public | include/qmail/gui_inproc.h:15 | qgui_client_inproc_set_setup_progress | void qgui_client_inproc_set_setup_progress(qgui_client_ops_t *ops, void (*fn)(void *, int, int, int), void *user)
public | include/qmail/gui_server_adapter.h:22 | qmail_gui_server_adapter_bind | void qmail_gui_server_adapter_bind(qgui_client_ops_t *client, qmail_gui_server_adapter_t *adapter, qmail_desktop_api_t *api)
public | include/qmail/gui_server_adapter.h:24 | qmail_gui_server_request | qgui_result_t qmail_gui_server_request(void *context, const qgui_server_request_t *request, qgui_server_reply_t *reply)
public | include/qmail/hosting_adapter.h:4 | qmail_hosting_request | qgui_result_t qmail_hosting_request(const char *data_dir, const qgui_server_request_t *,qgui_server_reply_t *)
public | include/qmail/hosting_adapter.h:7 | qmail_hosting_maintenance | int qmail_hosting_maintenance(void)
public | include/qmail/hosting_adapter.h:8 | qmail_hosting_tick | int qmail_hosting_tick(const char *data_dir,int first_tick)
public | include/qmail/hosting_adapter.h:9 | qmail_hosting_background_start | int qmail_hosting_background_start(const char *data_dir)
public | include/qmail/hosting_adapter.h:10 | qmail_hosting_background_stop | void qmail_hosting_background_stop(void)
public | include/qmail/hosting_process.h:3 | qmail_host_autostart | int qmail_host_autostart(const char *root,int enabled)
public | include/qmail/hosting_process.h:8 | qmail_host_process_alive | int qmail_host_process_alive(const qmail_host_process_t *)
public | include/qmail/hosting_process.h:9 | qmail_host_process_start | int qmail_host_process_start(const char *executable,const char *config,qmail_host_process_t *)
public | include/qmail/hosting_process.h:10 | qmail_host_process_activate | int qmail_host_process_activate(qmail_host_process_t *)
public | include/qmail/hosting_process.h:11 | qmail_host_process_discard | void qmail_host_process_discard(qmail_host_process_t *)
public | include/qmail/hosting_process.h:12 | qmail_host_process_stop | int qmail_host_process_stop(const qmail_host_process_t *)
public | include/qmail/hosting_process.h:13 | qmail_host_sibling_path | int qmail_host_sibling_path(const char *leaf,char *out,size_t size)
public | include/qmail/hosting_process.h:14 | qmail_host_runtime_check | int qmail_host_runtime_check(char *error,size_t size)
public | include/qmail/hosting_process.h:15 | qmail_host_process_start_report | int qmail_host_process_start_report(const char *executable,const char *config,qmail_host_process_t *,char *error,size_t size)
public | include/qmail/hosting_services.h:5 | qmail_hosting_connectivity | int qmail_hosting_connectivity(qgui_hosting_config_t *,char *,size_t)
public | include/qmail/hosting_services.h:6 | qmail_hosting_detect_address | int qmail_hosting_detect_address(qgui_hosting_config_t *,char *,size_t)
public | include/qmail/hosting_services.h:7 | qmail_hosting_public_ipv4_valid | int qmail_hosting_public_ipv4_valid(const char *)
public | include/qmail/hosting_services.h:8 | qmail_hosting_local_ipv4 | int qmail_hosting_local_ipv4(char *,size_t)
public | include/qmail/hosting_services.h:10 | qmail_hosting_provision | int qmail_hosting_provision(const char *root,int dn,unsigned sn, qgui_hosting_config_t *config,char *error,size_t error_size)
public | include/qmail/hosting_services.h:12 | qmail_hosting_publish | int qmail_hosting_publish(int dn,unsigned sn,qgui_hosting_config_t *config, int withdraw,char *error,size_t error_size)
public | include/qmail/hosting_services.h:16 | qmail_hosting_publish_version | int qmail_hosting_publish_version(int dn,unsigned sn,qgui_hosting_config_t *config, uint32_t server_version,int withdraw,char *error,size_t error_size)
public | include/qmail/hosting_uptime.h:6 | qmail_hosting_uptime_sample | int qmail_hosting_uptime_sample(sqlite3 *db,int dn,uint32_t sn,uint32_t pid, uint64_t born,int running,int64_t now,int *percent)
public | include/qmail/migration.h:60 | qmail_migration_run | int qmail_migration_run(const qmail_migration_env_t *env, qmail_migration_report_t *report)
public | include/qmail/migration.h:62 | qmail_migration_step_done | int qmail_migration_step_done(const char *client_data, const char *step)
public | include/qmail/migration.h:67 | qmail_migration_stop_processes | int qmail_migration_stop_processes(const char *exe, void *user)
public | include/qmail/paths.h:22 | qmail_paths_set_data_dir | int qmail_paths_set_data_dir(const char *dir)
public | include/qmail/paths.h:25 | qmail_paths_set_client_data | int qmail_paths_set_client_data(const char *dir)
public | include/qmail/paths.h:28 | qmail_paths_publish | int qmail_paths_publish(void)
public | include/qmail/paths.h:32 | qmail_paths_publish_roots | int qmail_paths_publish_roots(const char *data_dir, const char *client_data)
public | include/qmail/paths.h:34 | qmail_paths_release | void qmail_paths_release(void)
public | include/qmail/paths.h:35 | qmail_paths_published | int qmail_paths_published(void)
public | include/qmail/paths.h:37 | qmail_paths_install_dir | int qmail_paths_install_dir(char *out, size_t cap)
public | include/qmail/paths.h:38 | qmail_paths_data_dir | int qmail_paths_data_dir(char *out, size_t cap)
public | include/qmail/paths.h:39 | qmail_paths_client_data | int qmail_paths_client_data(char *out, size_t cap)
public | include/qmail/paths.h:41 | qmail_paths_client_data_for | int qmail_paths_client_data_for(const char *data_dir, char *out, size_t cap)
public | include/qmail/paths.h:42 | qmail_paths_server_dir | int qmail_paths_server_dir(char *out, size_t cap)
public | include/qmail/paths.h:43 | qmail_paths_themes_dir | int qmail_paths_themes_dir(char *out, size_t cap)
public | include/qmail/paths.h:44 | qmail_paths_updates_dir | int qmail_paths_updates_dir(char *out, size_t cap)
public | include/qmail/paths.h:45 | qmail_paths_cache_dir | int qmail_paths_cache_dir(char *out, size_t cap)
public | include/qmail/paths.h:46 | qmail_paths_settings_file | int qmail_paths_settings_file(char *out, size_t cap)
public | include/qmail/paths.h:47 | qmail_paths_server_conf | int qmail_paths_server_conf(char *out, size_t cap)
public | include/qmail/paths.h:48 | qmail_paths_migration_file | int qmail_paths_migration_file(char *out, size_t cap)
public | include/qmail/paths.h:50 | qmail_paths_join | int qmail_paths_join(char *out, size_t cap, const char *dir, const char *leaf)
public | include/qmail/paths.h:56 | qmail_paths_fopen | FILE *qmail_paths_fopen(const char *path, const char *mode)
public | include/qmail/paths.h:57 | qmail_paths_flush | int qmail_paths_flush(FILE *file)
public | include/qmail/paths.h:58 | qmail_paths_mkdir | int qmail_paths_mkdir(const char *path)
public | include/qmail/paths.h:60 | qmail_paths_mkdir_exclusive | int qmail_paths_mkdir_exclusive(const char *path)
public | include/qmail/paths.h:61 | qmail_paths_mkdirs | int qmail_paths_mkdirs(const char *path)
public | include/qmail/paths.h:62 | qmail_paths_rmdir | int qmail_paths_rmdir(const char *path)
public | include/qmail/paths.h:64 | qmail_paths_exists | int qmail_paths_exists(const char *path, int *is_directory)
public | include/qmail/paths.h:66 | qmail_paths_is_reparse_point | int qmail_paths_is_reparse_point(const char *path)
public | include/qmail/paths.h:67 | qmail_paths_remove | int qmail_paths_remove(const char *path)
public | include/qmail/paths.h:69 | qmail_paths_rename | int qmail_paths_rename(const char *src, const char *dst)
public | include/qmail/paths.h:71 | qmail_paths_rename_noreplace | int qmail_paths_rename_noreplace(const char *src, const char *dst)
public | include/qmail/paths.h:73 | qmail_paths_canonical | int qmail_paths_canonical(const char *path, char *out, size_t cap)
public | include/qmail/paths.h:76 | qmail_paths_extended | int qmail_paths_extended(const char *path, char *out, size_t cap)
public | include/qmail/paths.h:79 | qmail_paths_sqlite_vfs | const char *qmail_paths_sqlite_vfs(void)
public | include/qmail/paths.h:82 | qmail_paths_to_native | int qmail_paths_to_native(const char *path, wchar_t *out, size_t cap)
public | include/qmail/paths.h:84 | qmail_paths_from_native | int qmail_paths_from_native(const wchar_t *path, char *out, size_t cap)
public | include/qmail/paths.h:86 | qmail_paths_utf8_to_wide | int qmail_paths_utf8_to_wide(const char *text, wchar_t *out, size_t cap)
public | include/qmail/paths.h:87 | qmail_paths_wide_to_utf8 | int qmail_paths_wide_to_utf8(const wchar_t *text, char *out, size_t cap)
public | include/qmail/qmail_amount.h:59 | qmail_fee_parse | result_t qmail_fee_parse(const char *str, uint64_t *units_out)
public | include/qmail/qmail_amount.h:65 | qmail_fee_format | void qmail_fee_format(uint64_t units, char *buf, size_t len)
public | include/qmail/qmail_amount.h:90 | qmail_upload_fee_for_stripe | uint64_t qmail_upload_fee_for_stripe(uint64_t stripe_bytes, uint64_t rate_units_per_mb, uint64_t welfare_bytes)
public | include/qmail/qmail_amount.h:98 | qmail_coins_per_locker | int qmail_coins_per_locker(uint64_t units)
public | include/qmail/qmail_amount.h:105 | qmail_units_to_digit_counts | bool qmail_units_to_digit_counts(uint64_t units, int counts[ ])
public | include/qmail/qmail_amount.h:111 | qmail_lowest_nonzero_denom | int8_t qmail_lowest_nonzero_denom(uint64_t units)
public | include/qmail/qmail_amount.h:117 | qmail_max_lockers_per_batch | int qmail_max_lockers_per_batch(uint64_t amount_units, int max_coins_per_batch)
public | include/qmail/qmail_amount.h:122 | qmail_units_to_floor_cc | int qmail_units_to_floor_cc(uint64_t units)
public | include/qmail/qmail_amount.h:128 | qmail_upload_stripe_bytes_for_file | uint64_t qmail_upload_stripe_bytes_for_file(uint64_t file_size_bytes, int data_stripes)
public | include/qmail/qmail_amount.h:139 | qmail_can_send_parse_files_csv | result_t qmail_can_send_parse_files_csv(const char *csv, uint64_t *sizes_out, int max_files, int *count_out)
public | include/qmail/qmail_amount.h:150 | qmail_can_send_fees_from_file_sizes | result_t qmail_can_send_fees_from_file_sizes(const uint64_t *file_sizes, int file_count, int server_count, uint64_t rate_units_per_mb, uint64_t welfare_bytes, uint64_t *fee_out)
public | include/qmail/qmail_beacon.h:20 | qmail_beacon_start | result_t qmail_beacon_start(qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:26 | qmail_beacon_stop | void qmail_beacon_stop(qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:31 | qmail_beacon_join | void qmail_beacon_join(qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:42 | qmail_beacon_redrive_tell | bool qmail_beacon_redrive_tell(qmail_beacon_state_t *state, const qmail_tell_notification_t *notif)
public | include/qmail/qmail_beacon.h:48 | qmail_beacon_is_running | bool qmail_beacon_is_running(const qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:53 | qmail_beacon_get_last_timestamp | uint32_t qmail_beacon_get_last_timestamp(const qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:62 | qmail_beacon_load_timestamp | result_t qmail_beacon_load_timestamp(const char *path, uint32_t *timestamp)
public | include/qmail/qmail_beacon.h:71 | qmail_beacon_save_timestamp | result_t qmail_beacon_save_timestamp(const char *path, uint32_t timestamp)
public | include/qmail/qmail_beacon.h:81 | qmail_beacon_load_state | result_t qmail_beacon_load_state(const char *path, qmail_beacon_state_t *state)
public | include/qmail/qmail_beacon.h:86 | qmail_beacon_save_state | result_t qmail_beacon_save_state(const char *path, const qmail_beacon_state_t *state)
public | include/qmail/qmail_cbdf.h:31 | qmail_cbdf_decode_compression | int qmail_cbdf_decode_compression(const uint8_t *value, size_t value_len, uint8_t *algo_out, uint64_t *orig_out, uint64_t *stored_out)
public | include/qmail/qmail_cbdf.h:95 | qmail_cbdf_encode | result_t qmail_cbdf_encode(const qmail_cbdf_params_t *params, uint8_t **data_out, size_t *size_out)
public | include/qmail/qmail_coin_select.h:37 | qmail_select_coins_for_units | int qmail_select_coins_for_units(const char *wallet_path, uint64_t amount_units, cloudcoin_t *selected, int max_selected, const cloudcoin_t *exclude, int exclude_count)
public | include/qmail/qmail_commands.h:25 | qmail_cmd_tell | result_t qmail_cmd_tell(const qmail_tell_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, raida_result_t *result)
public | include/qmail/qmail_commands.h:32 | qmail_cmd_tell_detailed | result_t qmail_cmd_tell_detailed( const qmail_tell_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, raida_result_t *result, qmail_tell_validation_failure_t *validation_failure_out)
public | include/qmail/qmail_commands.h:77 | qmail_tell_dispatch | result_t qmail_tell_dispatch(qmail_tell_context_t *ctx, uint8_t primary_beacon, const uint8_t (*sender_ans)[AN_LENGTH], core_transport_t *transport_iface, const volatile bool *cancel, qmail_tell_dispatch_outcome_t *out)
public | include/qmail/qmail_commands.h:96 | qmail_cmd_ping | result_t qmail_cmd_ping(const qmail_ping_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, uint32_t timeout_ms, qmail_ping_response_t *response)
public | include/qmail/qmail_commands.h:109 | qmail_cmd_peek | result_t qmail_cmd_peek(const qmail_ping_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, qmail_ping_response_t *response)
public | include/qmail/qmail_commands.h:116 | qmail_cmd_peek_timeout | result_t qmail_cmd_peek_timeout(const qmail_ping_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, uint32_t timeout_ms, qmail_ping_response_t *response)
public | include/qmail/qmail_commands.h:129 | qmail_cmd_download | result_t qmail_cmd_download(const qmail_download_context_t *ctx, uint8_t target_raida_id, core_transport_t *transport_iface, qmail_download_response_t *response)
public | include/qmail/qmail_compress.h:34 | qmail_compression_mode_from_string | qmail_compression_mode_t qmail_compression_mode_from_string(const char *s)
public | include/qmail/qmail_compress.h:57 | qmail_compress_file | result_t qmail_compress_file(const char *src_path, const char *out_path, qmail_compression_mode_t mode, const char *filename_for_ext, uint8_t *algo_out, uint64_t *orig_size_out, uint64_t *stored_size_out)
public | include/qmail/qmail_compress.h:69 | qmail_decompress_file | result_t qmail_decompress_file(const char *src_path, const char *out_path)
public | include/qmail/qmail_contacts.h:47 | qmail_address_parse | result_t qmail_address_parse(const char *address, uint32_t *serial_out, int8_t *denom_out)
public | include/qmail/qmail_contacts.h:64 | qmail_address_build | result_t qmail_address_build(const char *first_name, const char *last_name, uint32_t serial_number, int8_t denomination, char *address_out)
public | include/qmail/qmail_contacts.h:78 | qmail_base32_encode | result_t qmail_base32_encode(uint32_t value, char *output, size_t output_size)
public | include/qmail/qmail_contacts.h:87 | qmail_base32_decode | result_t qmail_base32_decode(const char *input, uint32_t *value)
public | include/qmail/qmail_contacts.h:97 | qmail_contact_resolve | result_t qmail_contact_resolve(const char *identifier, qmail_contact_t *contact_out)
public | include/qmail/qmail_contacts.h:117 | qmail_address_validate | result_t qmail_address_validate(const char *address, int8_t *denom_out, uint32_t *serial_out, char *err, size_t err_size)
public | include/qmail/qmail_contacts.h:137 | qmail_parse_recipients | int qmail_parse_recipients(const char *addresses, uint8_t type, recipient_with_beacon_t *entries, int max_entries)
public | include/qmail/qmail_crypto.h:48 | qmail_setup_encryption | result_t qmail_setup_encryption(const char *wallet_path, uint32_t mail_id_sn, exec_config_t *config, qmail_encryption_state_t *state)
public | include/qmail/qmail_crypto.h:63 | qmail_apply_encryption_key | void qmail_apply_encryption_key(const raida_encryption_key_t *key, exec_config_t *config, qmail_encryption_state_t *state)
public | include/qmail/qmail_crypto.h:72 | qmail_apply_encryption_key_pair_hv2 | void qmail_apply_encryption_key_pair_hv2(const raida_encryption_key_pair_t *pair, exec_config_t *config, qmail_encryption_state_t *state)
public | include/qmail/qmail_crypto.h:89 | qmail_crypto_derive_locker | void qmail_crypto_derive_locker(uint8_t raida_id, const uint8_t locker_code[QMAIL_LOCKER_CODE_SIZE], uint8_t derived_out[16])
public | include/qmail/qmail_crypto.h:98 | qmail_crypto_generate_locker_code | void qmail_crypto_generate_locker_code(uint8_t locker_code_out[QMAIL_LOCKER_CODE_SIZE])
public | include/qmail/qmail_crypto.h:105 | qmail_crypto_generate_guid | void qmail_crypto_generate_guid(uint8_t guid_out[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:31 | qmail_db_open | result_t qmail_db_open(const char *db_path)
public | include/qmail/qmail_db.h:38 | qmail_db_test_set_migration_fault | void qmail_db_test_set_migration_fault(const char *after_step)
public | include/qmail/qmail_db.h:46 | qmail_db_open_data_dir | result_t qmail_db_open_data_dir(const char *data_dir, char *db_path_out, size_t db_path_out_size)
public | include/qmail/qmail_db.h:52 | qmail_db_close | void qmail_db_close(void)
public | include/qmail/qmail_db.h:57 | qmail_db_is_open | bool qmail_db_is_open(void)
public | include/qmail/qmail_db.h:63 | qmail_db_contact_add | result_t qmail_db_contact_add(const qmail_contact_t *contact)
public | include/qmail/qmail_db.h:64 | qmail_db_contact_sync | result_t qmail_db_contact_sync(const qmail_contact_t *contact)
public | include/qmail/qmail_db.h:65 | qmail_db_contact_get | result_t qmail_db_contact_get(uint32_t serial_number, qmail_contact_t *contact_out)
public | include/qmail/qmail_db.h:66 | qmail_db_contact_get_by_address | result_t qmail_db_contact_get_by_address(const char *address, qmail_contact_t *contact_out)
public | include/qmail/qmail_db.h:67 | qmail_db_contact_delete | result_t qmail_db_contact_delete(uint32_t serial_number)
public | include/qmail/qmail_db.h:68 | qmail_db_contact_list | result_t qmail_db_contact_list(qmail_contact_t **contacts_out, int *count_out)
public | include/qmail/qmail_db.h:69 | qmail_db_contact_list_free | void qmail_db_contact_list_free(qmail_contact_t *contacts, int count)
public | include/qmail/qmail_db.h:83 | qmail_db_contact_record_send | result_t qmail_db_contact_record_send(uint32_t serial_number, int8_t denomination, const char *auto_address, int64_t sent_at)
public | include/qmail/qmail_db.h:95 | qmail_db_contact_list_popular | result_t qmail_db_contact_list_popular(int limit, qmail_contact_t **contacts_out, int *count_out)
public | include/qmail/qmail_db.h:103 | qmail_db_contact_set_favorite | result_t qmail_db_contact_set_favorite(uint32_t serial_number, bool is_favorite)
public | include/qmail/qmail_db.h:109 | qmail_db_email_insert | result_t qmail_db_email_insert(const qmail_email_t *email)
public | include/qmail/qmail_db.h:110 | qmail_db_email_get | result_t qmail_db_email_get(const uint8_t email_id[QMAIL_GUID_SIZE], qmail_email_t *email_out)
public | include/qmail/qmail_db.h:111 | qmail_db_email_delete | result_t qmail_db_email_delete(const uint8_t email_id[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:112 | qmail_db_email_mark_read | result_t qmail_db_email_mark_read(const uint8_t email_id[QMAIL_GUID_SIZE], bool is_read)
public | include/qmail/qmail_db.h:113 | qmail_db_email_mark_star | result_t qmail_db_email_mark_star(const uint8_t email_id[QMAIL_GUID_SIZE], bool is_starred)
public | include/qmail/qmail_db.h:114 | qmail_db_email_list | result_t qmail_db_email_list(int folder, int limit, int offset, qmail_email_t **emails_out, int *count_out)
public | include/qmail/qmail_db.h:129 | qmail_db_email_list_sorted | result_t qmail_db_email_list_sorted(int folder, int limit, int offset, int sort_mode, qmail_email_t **emails_out, int *count_out)
public | include/qmail/qmail_db.h:175 | qmail_db_email_query_init | void qmail_db_email_query_init(qmail_db_email_query_t *q)
public | include/qmail/qmail_db.h:183 | qmail_db_email_query | result_t qmail_db_email_query(const qmail_db_email_query_t *q, qmail_email_t **emails_out, int *count_out, int *total_out)
public | include/qmail/qmail_db.h:188 | qmail_db_email_list_free | void qmail_db_email_list_free(qmail_email_t *emails, int count)
public | include/qmail/qmail_db.h:194 | qmail_db_email_search | result_t qmail_db_email_search(const char *query, int limit, qmail_email_t **emails_out, int *count_out)
public | include/qmail/qmail_db.h:217 | qmail_db_tell_insert | result_t qmail_db_tell_insert(const qmail_tell_notification_t *tell)
public | include/qmail/qmail_db.h:218 | qmail_db_tell_is_downloaded | result_t qmail_db_tell_is_downloaded(const uint8_t file_guid[QMAIL_GUID_SIZE], bool *downloaded_out)
public | include/qmail/qmail_db.h:220 | qmail_db_tell_mark_downloaded | result_t qmail_db_tell_mark_downloaded(const uint8_t file_guid[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:221 | qmail_db_tell_get_pending | result_t qmail_db_tell_get_pending(qmail_tell_notification_t **tells_out, int *count_out)
public | include/qmail/qmail_db.h:227 | qmail_db_tell_try_claim | result_t qmail_db_tell_try_claim( const uint8_t file_guid[QMAIL_GUID_SIZE], const uint8_t claim_token[QMAIL_RECEIVE_CLAIM_TOKEN_SIZE], int64_t now_unix, int64_t lease_seconds, qmail_receive_claim_status_t *status_out)
public | include/qmail/qmail_db.h:237 | qmail_db_tell_finish_claim | result_t qmail_db_tell_finish_claim( const uint8_t file_guid[QMAIL_GUID_SIZE], const uint8_t claim_token[QMAIL_RECEIVE_CLAIM_TOKEN_SIZE], bool success)
public | include/qmail/qmail_db.h:245 | qmail_db_tell_renew_claim | result_t qmail_db_tell_renew_claim( const uint8_t file_guid[QMAIL_GUID_SIZE], const uint8_t claim_token[QMAIL_RECEIVE_CLAIM_TOKEN_SIZE], int64_t now_unix, int64_t lease_seconds)
public | include/qmail/qmail_db.h:251 | qmail_db_tell_get_receive_state | result_t qmail_db_tell_get_receive_state( const uint8_t file_guid[QMAIL_GUID_SIZE], qmail_receive_state_t *state_out, int64_t *lease_expires_at_out)
public | include/qmail/qmail_db.h:263 | qmail_db_tell_record_failed_attempt | result_t qmail_db_tell_record_failed_attempt( const uint8_t file_guid[QMAIL_GUID_SIZE], int max_attempts, int64_t max_age_seconds, int64_t now_unix, bool *gave_up_out)
public | include/qmail/qmail_db.h:273 | qmail_db_tell_get_by_guid | result_t qmail_db_tell_get_by_guid(const uint8_t file_guid[QMAIL_GUID_SIZE], qmail_tell_notification_t *notif_out)
public | include/qmail/qmail_db.h:275 | qmail_db_tell_list_free | void qmail_db_tell_list_free(qmail_tell_notification_t *tells, int count)
public | include/qmail/qmail_db.h:303 | qmail_db_sent_insert | result_t qmail_db_sent_insert(const uint8_t file_guid[QMAIL_GUID_SIZE], const char *subject, const char *recipients, const char *body_preview, const char *full_body, int64_t timestamp, uint32_t sender_sn, int8_t sender_denomination, const qmail_recipient_entry_t *entries, int entry_count)
public | include/qmail/qmail_db.h:315 | qmail_db_sent_folder_row_id | result_t qmail_db_sent_folder_row_id( const uint8_t file_guid[QMAIL_GUID_SIZE], int64_t *row_id_out)
public | include/qmail/qmail_db.h:335 | qmail_db_sent_list | result_t qmail_db_sent_list(int limit, int offset, qmail_sent_row_t **rows_out, int *count_out, int *total_out)
public | include/qmail/qmail_db.h:357 | qmail_db_locker_pool_list_consumed_for_guid | result_t qmail_db_locker_pool_list_consumed_for_guid( const uint8_t file_guid[QMAIL_GUID_SIZE], qmail_pool_consumed_row_t **rows_out, int *count_out)
public | include/qmail/qmail_db.h:369 | qmail_db_attachment_insert | result_t qmail_db_attachment_insert(const qmail_attachment_t *attachment)
public | include/qmail/qmail_db.h:375 | qmail_db_attachment_list | result_t qmail_db_attachment_list(const uint8_t email_id[QMAIL_GUID_SIZE], qmail_attachment_t **attachments_out, int *count_out)
public | include/qmail/qmail_db.h:382 | qmail_db_attachment_get | result_t qmail_db_attachment_get(int64_t attachment_id, qmail_attachment_t *attachment_out)
public | include/qmail/qmail_db.h:388 | qmail_db_attachment_update_storage | result_t qmail_db_attachment_update_storage(int64_t attachment_id, int storage_mode, const char *file_path, size_t size_bytes)
public | include/qmail/qmail_db.h:396 | qmail_db_attachment_list_free | void qmail_db_attachment_list_free(qmail_attachment_t *attachments, int count)
public | include/qmail/qmail_db.h:405 | qmail_db_email_move | result_t qmail_db_email_move(const uint8_t email_id[QMAIL_GUID_SIZE], int folder)
public | include/qmail/qmail_db.h:410 | qmail_db_email_trash | result_t qmail_db_email_trash(const uint8_t email_id[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:415 | qmail_db_email_delete_permanent | result_t qmail_db_email_delete_permanent(const uint8_t email_id[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:425 | qmail_db_folder_counts | result_t qmail_db_folder_counts(qmail_folder_count_t counts[6])
public | include/qmail/qmail_db.h:434 | qmail_db_tell_trash | result_t qmail_db_tell_trash(int64_t tell_id)
public | include/qmail/qmail_db.h:439 | qmail_db_tell_trash_by_guid | result_t qmail_db_tell_trash_by_guid(const uint8_t file_guid[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:448 | qmail_db_pending_tell_insert | result_t qmail_db_pending_tell_insert(const uint8_t file_guid[QMAIL_GUID_SIZE], uint32_t recipient_sn, int8_t recipient_denomination, uint8_t beacon_raida, const uint8_t *context_blob, size_t context_blob_size, const char *error_message)
public | include/qmail/qmail_db.h:461 | qmail_db_pending_tell_list | result_t qmail_db_pending_tell_list(const char *status_filter, qmail_pending_tell_row_t **rows_out, int *count_out)
public | include/qmail/qmail_db.h:469 | qmail_db_pending_tell_update_status | result_t qmail_db_pending_tell_update_status(int64_t tell_id, const char *new_status, const char *error_message)
public | include/qmail/qmail_db.h:480 | qmail_db_pending_tell_defer | result_t qmail_db_pending_tell_defer(int64_t tell_id, const char *error_message, const uint8_t *context_blob, size_t context_blob_size)
public | include/qmail/qmail_db.h:490 | qmail_db_pending_tell_update_by_file_beacon | result_t qmail_db_pending_tell_update_by_file_beacon( const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t beacon_raida, const char *new_status, const uint8_t *context_blob, size_t context_blob_size, const char *error_message, int *updated_count)
public | include/qmail/qmail_db.h:503 | qmail_db_pending_tell_reset_to_pending | result_t qmail_db_pending_tell_reset_to_pending(int64_t tell_id)
public | include/qmail/qmail_db.h:510 | qmail_db_pending_tell_clear_sent | result_t qmail_db_pending_tell_clear_sent(int *deleted_count)
public | include/qmail/qmail_db.h:516 | qmail_db_pending_tell_get_context | result_t qmail_db_pending_tell_get_context(int64_t tell_id, uint8_t **blob_out, size_t *blob_size_out)
public | include/qmail/qmail_db.h:524 | qmail_db_pending_attachment_download_insert | result_t qmail_db_pending_attachment_download_insert( int64_t attachment_id, const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t file_type)
public | include/qmail/qmail_db.h:527 | qmail_db_pending_attachment_download_list | result_t qmail_db_pending_attachment_download_list( qmail_pending_attachment_download_row_t **rows_out, int *count_out)
public | include/qmail/qmail_db.h:531 | qmail_db_attachment_retry_claim | result_t qmail_db_attachment_retry_claim(int64_t id, bool automatic, int64_t now)
public | include/qmail/qmail_db.h:532 | qmail_db_attachment_retry_finish | result_t qmail_db_attachment_retry_finish(int64_t id, int64_t now, const char *error)
public | include/qmail/qmail_db.h:533 | qmail_db_pending_attachment_download_delete | result_t qmail_db_pending_attachment_download_delete(int64_t attachment_id)
public | include/qmail/qmail_db.h:534 | qmail_db_pending_attachment_download_cleanup_orphans | result_t qmail_db_pending_attachment_download_cleanup_orphans( int *deleted_count)
public | include/qmail/qmail_db.h:541 | qmail_db_export_journal_insert | result_t qmail_db_export_journal_insert( const char *locker_code, const qmail_export_journal_coin_t *coins, int coin_count, int64_t *journal_id_out)
public | include/qmail/qmail_db.h:546 | qmail_db_export_journal_list | result_t qmail_db_export_journal_list( qmail_export_journal_row_t **rows_out, int *count_out)
public | include/qmail/qmail_db.h:549 | qmail_db_export_journal_delete | result_t qmail_db_export_journal_delete(int64_t journal_id)
public | include/qmail/qmail_db.h:550 | qmail_db_export_journal_list_free | void qmail_db_export_journal_list_free( qmail_export_journal_row_t *rows, int count)
public | include/qmail/qmail_db.h:562 | qmail_db_notifications_list | result_t qmail_db_notifications_list(qmail_notification_row_t **rows_out, int *count_out, int limit)
public | include/qmail/qmail_db.h:565 | qmail_db_payments_list | result_t qmail_db_payments_list(qmail_notification_row_t **rows_out, int *count_out, int limit)
public | include/qmail/qmail_db.h:576 | qmail_db_tell_get_payment_info | result_t qmail_db_tell_get_payment_info(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t locker_code_out[16], int *payment_status_out)
public | include/qmail/qmail_db.h:584 | qmail_db_tell_get_payment_details | result_t qmail_db_tell_get_payment_details(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t locker_code_out[16], int *payment_status_out, int64_t *amount_units_out, uint8_t *purpose_out)
public | include/qmail/qmail_db.h:593 | qmail_db_tell_update_payment_status | result_t qmail_db_tell_update_payment_status(const uint8_t file_guid[QMAIL_GUID_SIZE], int payment_status)
public | include/qmail/qmail_db.h:595 | qmail_db_tell_mark_payment_claimed | result_t qmail_db_tell_mark_payment_claimed( const uint8_t file_guid[QMAIL_GUID_SIZE], uint64_t amount_units)
public | include/qmail/qmail_db.h:597 | qmail_db_payment_send_receipt_insert | result_t qmail_db_payment_send_receipt_insert( const uint8_t guid[QMAIL_GUID_SIZE], uint32_t recipient_sn, int8_t recipient_denomination, uint64_t amount_units, uint8_t purpose, const uint8_t locker_key[16], uint8_t tell_status, int64_t timestamp)
public | include/qmail/qmail_db.h:610 | qmail_db_drafts_list | result_t qmail_db_drafts_list(int limit, int offset, qmail_email_t **emails_out, int *count_out, int *total_out)
public | include/qmail/qmail_db.h:618 | qmail_db_draft_save | result_t qmail_db_draft_save(qmail_email_t *email)
public | include/qmail/qmail_db.h:625 | qmail_db_draft_update | result_t qmail_db_draft_update(const uint8_t email_id[QMAIL_GUID_SIZE], const char *subject, const char *body, size_t body_len)
public | include/qmail/qmail_db.h:633 | qmail_db_draft_update_recipients | result_t qmail_db_draft_update_recipients(const uint8_t email_id[QMAIL_GUID_SIZE], const qmail_recipient_entry_t *recipients, int recipient_count)
public | include/qmail/qmail_db.h:643 | qmail_db_draft_delete | result_t qmail_db_draft_delete(const uint8_t email_id[QMAIL_GUID_SIZE])
public | include/qmail/qmail_db.h:649 | qmail_db_count_emails | int qmail_db_count_emails(int folder)
public | include/qmail/qmail_db.h:650 | qmail_db_count_unread | int qmail_db_count_unread(void)
public | include/qmail/qmail_db.h:651 | qmail_db_count_contacts | int qmail_db_count_contacts(void)
public | include/qmail/qmail_db.h:681 | qmail_db_locker_pool_insert | result_t qmail_db_locker_pool_insert(const char *locker_key, int pool_type, int funded_amount, uint64_t funded_units, int initial_status)
public | include/qmail/qmail_db.h:689 | qmail_db_locker_pool_acquire_exact_units | result_t qmail_db_locker_pool_acquire_exact_units( int pool_type, uint64_t funded_units, int max_count, char keys_out[][QMAIL_LOCKER_KEY_MAX_LEN], int *count_out)
public | include/qmail/qmail_db.h:698 | qmail_db_locker_pool_acquire | result_t qmail_db_locker_pool_acquire(int pool_type, uint64_t min_units, int max_count, char keys_out[][QMAIL_LOCKER_KEY_MAX_LEN], int *count_out)
public | include/qmail/qmail_db.h:712 | qmail_db_locker_pool_stamp_file_guid | result_t qmail_db_locker_pool_stamp_file_guid(const char *locker_key, const uint8_t *file_guid)
public | include/qmail/qmail_db.h:718 | qmail_db_locker_pool_consume | result_t qmail_db_locker_pool_consume(const char *locker_key)
public | include/qmail/qmail_db.h:725 | qmail_db_locker_pool_mark_limbo | result_t qmail_db_locker_pool_mark_limbo(const char *locker_key)
public | include/qmail/qmail_db.h:730 | qmail_db_locker_pool_release | result_t qmail_db_locker_pool_release(const char *locker_key)
public | include/qmail/qmail_db.h:736 | qmail_db_locker_pool_move_reserved_to_limbo | result_t qmail_db_locker_pool_move_reserved_to_limbo(int *count_out)
public | include/qmail/qmail_db.h:741 | qmail_db_locker_pool_count | int qmail_db_locker_pool_count(int pool_type, int status)
public | include/qmail/qmail_db.h:746 | qmail_db_locker_pool_count_min_amount | int qmail_db_locker_pool_count_min_amount(int pool_type, int status, uint64_t min_units)
public | include/qmail/qmail_db.h:752 | qmail_db_locker_pool_value | int64_t qmail_db_locker_pool_value(int pool_type, int status)
public | include/qmail/qmail_db.h:757 | qmail_db_locker_pool_cleanup | result_t qmail_db_locker_pool_cleanup(int max_age_seconds)
public | include/qmail/qmail_document.h:35 | qmail_compose_init | void qmail_compose_init(qmail_compose_t *model)
public | include/qmail/qmail_document.h:36 | qmail_compose_replace | void qmail_compose_replace(qmail_compose_t *model, int length, int start, int removed, int inserted)
public | include/qmail/qmail_document.h:38 | qmail_compose_format | int qmail_compose_format(qmail_compose_t *model, int start, int end, int action)
public | include/qmail/qmail_document.h:40 | qmail_document_compose | int qmail_document_compose(const char *subject, const char *text, const qmail_compose_t *model, uint8_t **bytes, size_t *length, char *error, size_t cap)
public | include/qmail/qmail_document.h:44 | qmail_document_read | int qmail_document_read(const uint8_t *bytes, size_t length, char **text, size_t *text_length, char *error, size_t cap)
public | include/qmail/qmail_document.h:46 | qmail_document_store | int qmail_document_store(const uint8_t guid[16], const uint8_t *bytes, size_t length)
public | include/qmail/qmail_document.h:47 | qmail_document_path | int qmail_document_path(const uint8_t guid[16], char *path, size_t cap)
public | include/qmail/qmail_document.h:48 | qmail_document_load | int qmail_document_load(const char *path, uint8_t **bytes, size_t *length)
public | include/qmail/qmail_document.h:55 | qmail_document_retheme | int qmail_document_retheme(const uint8_t *bytes, size_t length, uint16_t text_rgb565, uint16_t page_rgb565, uint8_t **out, size_t *out_length)
public | include/qmail/qmail_document.h:58 | qmail_document_edit | int qmail_document_edit(const char *path, char *text, size_t cap, qmail_compose_t *model, char *error, size_t error_cap)
public | include/qmail/qmail_document.h:61 | qmail_document_body_format | int qmail_document_body_format(const uint8_t *bytes, size_t length)
public | include/qmail/qmail_document.h:62 | qmail_document_render_source | int qmail_document_render_source(const uint8_t *bytes, size_t length, uint8_t **out, size_t *out_length)
public | include/qmail/qmail_endpoint.h:252 | qmail_endpoint_init | void qmail_endpoint_init(qmail_endpoint_t *ep)
public | include/qmail/qmail_endpoint.h:266 | qmail_endpoint_init_raida | result_t qmail_endpoint_init_raida(qmail_endpoint_t *ep, uint8_t raida_index, const char *literal, uint16_t port)
public | include/qmail/qmail_endpoint.h:294 | qmail_endpoint_init_independent | result_t qmail_endpoint_init_independent(qmail_endpoint_t *ep, const char *address, const char *host, uint16_t port, char *err, size_t err_size)
public | include/qmail/qmail_endpoint.h:308 | qmail_endpoint_set_identity | result_t qmail_endpoint_set_identity(qmail_endpoint_t *ep, int8_t denomination, uint32_t serial)
public | include/qmail/qmail_endpoint.h:320 | qmail_endpoint_set_resolved_literal | result_t qmail_endpoint_set_resolved_literal(qmail_endpoint_t *ep, const char *literal)
public | include/qmail/qmail_endpoint.h:331 | qmail_endpoint_is_sendable | bool qmail_endpoint_is_sendable(const qmail_endpoint_t *ep)
public | include/qmail/qmail_endpoint.h:336 | qmail_endpoint_raida_index | uint8_t qmail_endpoint_raida_index(const qmail_endpoint_t *ep)
public | include/qmail/qmail_endpoint.h:343 | qmail_endpoint_provider_key | result_t qmail_endpoint_provider_key(const qmail_endpoint_t *ep, qmail_provider_key_t *out)
public | include/qmail/qmail_endpoint.h:360 | qmail_endpoint_same_provider | bool qmail_endpoint_same_provider(const qmail_endpoint_t *a, const qmail_endpoint_t *b)
public | include/qmail/qmail_endpoint.h:364 | qmail_provider_key_equal | bool qmail_provider_key_equal(const qmail_provider_key_t *a, const qmail_provider_key_t *b)
public | include/qmail/qmail_endpoint.h:383 | qmail_identity_pack | result_t qmail_identity_pack(int8_t denomination, uint32_t serial, uint8_t out[QMAIL_ENTRY_IDENTITY_LEN])
public | include/qmail/qmail_endpoint.h:387 | qmail_identity_unpack | result_t qmail_identity_unpack(const uint8_t identity[QMAIL_ENTRY_IDENTITY_LEN], int8_t *denomination_out, uint32_t *serial_out)
public | include/qmail/qmail_endpoint.h:401 | qmail_cs_id_from_identity | result_t qmail_cs_id_from_identity(const uint8_t identity[QMAIL_ENTRY_IDENTITY_LEN], uint8_t out[QMAIL_CS_ID_LEN])
public | include/qmail/qmail_endpoint.h:405 | qmail_cs_id_derive | result_t qmail_cs_id_derive(int8_t denomination, uint32_t serial, uint8_t out[QMAIL_CS_ID_LEN])
public | include/qmail/qmail_endpoint.h:422 | qmail_endpoint_to_location | result_t qmail_endpoint_to_location(const qmail_endpoint_t *ep, uint8_t stripe_index, uint8_t stripe_type, qmail_server_location_t *out)
public | include/qmail/qmail_endpoint.h:443 | qmail_endpoint_from_location | result_t qmail_endpoint_from_location(qmail_endpoint_t *ep, const qmail_server_location_t *loc, const char *literal, uint16_t port)
public | include/qmail/qmail_endpoint.h:460 | qmail_endpoint_next_local_id | qmail_endpoint_id_t qmail_endpoint_next_local_id(void)
public | include/qmail/qmail_endpoint.h:464 | qmail_endpoint_store_encode | result_t qmail_endpoint_store_encode(const qmail_endpoint_t *, uint8_t out[QMAIL_ENDPOINT_STORE_SIZE])
public | include/qmail/qmail_endpoint.h:465 | qmail_endpoint_store_decode | result_t qmail_endpoint_store_decode(const uint8_t in[QMAIL_ENDPOINT_STORE_SIZE], qmail_endpoint_t *)
public | include/qmail/qmail_funding_journal.h:26 | qmail_db_funding_prepare_paths | result_t qmail_db_funding_prepare_paths(const char *wallet, const qmail_funding_intent_t *intent, const qmail_funding_coin_path_t *paths, const uint8_t parent_guid[16], int slot)
public | include/qmail/qmail_funding_journal.h:28 | qmail_db_funding_get | result_t qmail_db_funding_get(const char *wallet, const char *key, qmail_funding_intent_t *out)
public | include/qmail/qmail_funding_journal.h:29 | qmail_db_funding_paths | result_t qmail_db_funding_paths(const char *wallet, const char *key, qmail_funding_coin_path_t **out, int *count)
public | include/qmail/qmail_funding_journal.h:31 | qmail_db_funding_path_moved | result_t qmail_db_funding_path_moved(const char *wallet, const char *key, const core_token_id_t *coin)
public | include/qmail/qmail_funding_journal.h:32 | qmail_db_funding_dispatch_paths | result_t qmail_db_funding_dispatch_paths(const char *wallet, const char *key)
public | include/qmail/qmail_funding_journal.h:33 | qmail_db_funding_dispatch_path_batch | result_t qmail_db_funding_dispatch_path_batch(const char *wallet, const char (*keys)[16], int count)
public | include/qmail/qmail_funding_journal.h:36 | qmail_db_funding_work | result_t qmail_db_funding_work(qmail_funding_work_t *out, int capacity, int *count)
public | include/qmail/qmail_funding_journal.h:37 | qmail_db_funding_attempt | result_t qmail_db_funding_attempt(const char *wallet, const char *key)
public | include/qmail/qmail_funding_journal.h:38 | qmail_funding_path_valid | bool qmail_funding_path_valid(const char *path, bool source)
public | include/qmail/qmail_funding_journal.h:40 | qmail_db_funding_prepare | result_t qmail_db_funding_prepare(const char *wallet, const qmail_funding_intent_t *intent)
public | include/qmail/qmail_funding_journal.h:43 | qmail_db_funding_prepare_owned | result_t qmail_db_funding_prepare_owned(const char *wallet, const qmail_funding_intent_t *intent, const uint8_t parent_guid[16], int slot)
public | include/qmail/qmail_funding_journal.h:45 | qmail_db_funding_get_owned | result_t qmail_db_funding_get_owned(const char *wallet, const uint8_t parent_guid[16], int pool_type, int slot, qmail_funding_intent_t *intent)
public | include/qmail/qmail_funding_journal.h:47 | qmail_db_funding_dispatch_owned | result_t qmail_db_funding_dispatch_owned(const char *wallet, const uint8_t parent_guid[16], int pool_type, int slot)
public | include/qmail/qmail_funding_journal.h:56 | qmail_db_funding_reserve_owned | result_t qmail_db_funding_reserve_owned(const char *wallet, const uint8_t parent_guid[16], int pool_type, int slot, uint64_t required_units, qmail_funding_reservation_t *out)
public | include/qmail/qmail_funding_journal.h:58 | qmail_db_funding_pending | result_t qmail_db_funding_pending(const char *wallet, qmail_funding_intent_t **rows, int *count)
public | include/qmail/qmail_funding_journal.h:60 | qmail_db_funding_dispatch | result_t qmail_db_funding_dispatch(const char *wallet, int expected_count)
public | include/qmail/qmail_funding_journal.h:61 | qmail_db_funding_discard_unstarted | result_t qmail_db_funding_discard_unstarted(const char *wallet)
public | include/qmail/qmail_funding_journal.h:63 | qmail_db_funding_complete | result_t qmail_db_funding_complete(const char *wallet, const qmail_funding_intent_t *intent)
public | include/qmail/qmail_funding_journal.h:67 | qmail_funding_peek_matches | bool qmail_funding_peek_matches(const qmail_funding_intent_t *intent, const core_peek_locker_result_t *peek)
public | include/qmail/qmail_funding_runtime.h:6 | qmail_funding_prepare_locked | result_t qmail_funding_prepare_locked(const char *wallet, const qmail_funding_intent_t *intent, const cloudcoin_t *coins, const uint8_t parent_guid[16], int slot)
public | include/qmail/qmail_funding_runtime.h:8 | qmail_funding_quarantine_locked | result_t qmail_funding_quarantine_locked(const char *wallet, const char *key)
public | include/qmail/qmail_funding_runtime.h:9 | qmail_funding_load_locked | result_t qmail_funding_load_locked(const char *wallet, const char *key, coin_t *coins, int capacity)
public | include/qmail/qmail_funding_runtime.h:11 | qmail_funding_reconcile_locked | result_t qmail_funding_reconcile_locked(const char *wallet, const char *key, bool allow_dispatch)
public | include/qmail/qmail_funding_runtime.h:13 | qmail_funding_recover | result_t qmail_funding_recover(int limit)
public | include/qmail/qmail_health.h:23 | qmail_health_init | void qmail_health_init(void)
public | include/qmail/qmail_health.h:26 | qmail_health_update | void qmail_health_update(int raida_count, const bool *success, const bool *timed_out, const uint32_t *response_time_ms)
public | include/qmail/qmail_health.h:32 | qmail_health_is_reachable | bool qmail_health_is_reachable(uint8_t raida_id)
public | include/qmail/qmail_health.h:44 | qmail_health_get_fastest_raidas | int qmail_health_get_fastest_raidas(uint8_t *indices_out, int max_count)
public | include/qmail/qmail_health.h:54 | qmail_health_get_healthy_servers | int qmail_health_get_healthy_servers(uint8_t *indices_out, int max_count)
public | include/qmail/qmail_health.h:57 | qmail_health_cleanup | void qmail_health_cleanup(void)
public | include/qmail/qmail_locker_pool.h:98 | qmail_pool_generate_key | void qmail_pool_generate_key(char *out, size_t size)
public | include/qmail/qmail_locker_pool.h:105 | qmail_pool_upload_locker_fee_cc | int qmail_pool_upload_locker_fee_cc(void)
public | include/qmail/qmail_locker_pool.h:106 | qmail_pool_default_inbox_fee_units | uint64_t qmail_pool_default_inbox_fee_units(void)
public | include/qmail/qmail_locker_pool.h:115 | qmail_pool_required_inbox_fee_for_recipients | result_t qmail_pool_required_inbox_fee_for_recipients( const qmail_recipient_entry_t *recipients, int recipient_count, uint64_t *required_fee_units_out)
public | include/qmail/qmail_locker_pool.h:136 | qmail_pool_acquire_for_send | result_t qmail_pool_acquire_for_send(const char *wallet_path, int server_count, const uint64_t *upload_fee_units, uint64_t inbox_fee_units, qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:145 | qmail_pool_confirm | void qmail_pool_confirm(const qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:150 | qmail_pool_release | void qmail_pool_release(const qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:177 | qmail_pool_stamp_file_guid | void qmail_pool_stamp_file_guid(const qmail_pool_acquire_result_t *result, const uint8_t *file_guid)
public | include/qmail/qmail_locker_pool.h:184 | qmail_pool_confirm_storage_only | void qmail_pool_confirm_storage_only(const qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:190 | qmail_pool_confirm_inbox_fee | void qmail_pool_confirm_inbox_fee(const qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:197 | qmail_pool_release_inbox_fee | void qmail_pool_release_inbox_fee(const qmail_pool_acquire_result_t *result)
public | include/qmail/qmail_locker_pool.h:204 | qmail_pool_replenish | result_t qmail_pool_replenish(const char *wallet_path)
public | include/qmail/qmail_locker_pool.h:209 | qmail_pool_status | result_t qmail_pool_status(const char *wallet_path, qmail_pool_status_t *out)
public | include/qmail/qmail_locker_pool.h:226 | qmail_pool_check_can_send | result_t qmail_pool_check_can_send(const char *wallet_path, int server_count, const uint64_t *upload_fee_units, uint64_t required_inbox_fee_units, qmail_pool_send_check_t *out)
public | include/qmail/qmail_locker_pool.h:240 | qmail_pool_wallet_total_value_units | uint64_t qmail_pool_wallet_total_value_units(const char *wallet_path)
public | include/qmail/qmail_locker_pool.h:246 | qmail_pool_wallet_total_value | double qmail_pool_wallet_total_value(const char *wallet_path)
public | include/qmail/qmail_locker_pool.h:251 | qmail_pool_init | result_t qmail_pool_init(const char *wallet_path)
public | include/qmail/qmail_locker_pool.h:253 | qmail_pool_acquire_for_parent | result_t qmail_pool_acquire_for_parent(const char *wallet_path, const uint8_t guid[16], int server_count, const uint64_t *fees, uint64_t inbox_fee, qmail_pool_acquire_result_t *out)
public | include/qmail/qmail_locker_runtime.h:22 | transport_adapter_get | core_transport_t *transport_adapter_get(void)
public | include/qmail/qmail_locker_runtime.h:23 | qmail_pool_runtime_upload_fee_cc | int qmail_pool_runtime_upload_fee_cc(void)
public | include/qmail/qmail_locker_runtime.h:25 | qmail_pool_runtime_default_inbox_fee_units | uint64_t qmail_pool_runtime_default_inbox_fee_units(void)
public | include/qmail/qmail_locker_runtime.h:27 | qmail_pool_runtime_upload_fee_per_mb_units | uint64_t qmail_pool_runtime_upload_fee_per_mb_units(void)
public | include/qmail/qmail_locker_runtime.h:28 | qmail_pool_runtime_upload_welfare_bytes | uint64_t qmail_pool_runtime_upload_welfare_bytes(void)
public | include/qmail/qmail_locker_runtime.h:29 | qmail_pool_runtime_prebreak_dn1_target | int qmail_pool_runtime_prebreak_dn1_target(void)
public | include/qmail/qmail_locker_runtime.h:30 | qmail_pool_runtime_prebreak_dn2_target | int qmail_pool_runtime_prebreak_dn2_target(void)
public | include/qmail/qmail_locker_runtime.h:34 | qmail_pool_runtime_locker_funding_enabled | bool qmail_pool_runtime_locker_funding_enabled(void)
public | include/qmail/qmail_locker_runtime.h:36 | qmail_pool_runtime_max_attachment_bytes | uint64_t qmail_pool_runtime_max_attachment_bytes(void)
public | include/qmail/qmail_locker_runtime.h:37 | list_bin_files | int list_bin_files(const char *dir_path, char ***filenames, int max_files)
public | include/qmail/qmail_locker_runtime.h:38 | free_file_list | void free_file_list(char **filenames, int count)
public | include/qmail/qmail_locker_runtime.h:39 | coin_read_first | result_t coin_read_first(const char *dir_path, const char *filename, cloudcoin_t *coin_out)
public | include/qmail/qmail_locker_runtime.h:41 | find_breakable_denom_for_gap | int8_t find_breakable_denom_for_gap(const char *wallet_path, uint64_t gap_units)
public | include/qmail/qmail_locker_runtime.h:42 | create_directory | result_t create_directory(const char *path)
public | include/qmail/qmail_locker_runtime.h:43 | calculate_wallet_balance | double calculate_wallet_balance(const char *wallet_path)
public | include/qmail/qmail_locker_runtime.h:44 | calculate_wallet_balance_units | uint64_t calculate_wallet_balance_units(const char *wallet_path)
public | include/qmail/qmail_locker_runtime.h:45 | result_to_string | const char *result_to_string(result_t result)
public | include/qmail/qmail_object_transfer.h:361 | qmail_ot_request_header_size | size_t qmail_ot_request_header_size(uint8_t command)
public | include/qmail/qmail_object_transfer.h:362 | qmail_ot_response_header_size | size_t qmail_ot_response_header_size(uint8_t command)
public | include/qmail/qmail_object_transfer.h:363 | qmail_ot_max_response_packet_size | size_t qmail_ot_max_response_packet_size(uint8_t command, const void *request)
public | include/qmail/qmail_object_transfer.h:366 | qmail_ot_serialize_request_header | result_t qmail_ot_serialize_request_header(uint8_t command, const void *request, uint8_t *out, size_t out_size)
public | include/qmail/qmail_object_transfer.h:371 | qmail_ot_build_request_body | result_t qmail_ot_build_request_body(uint8_t command, const qmail_ot_identity_t *identity, const void *request, const uint8_t *data, size_t data_size, uint8_t **body, size_t *body_size)
public | include/qmail/qmail_object_transfer.h:379 | qmail_ot_parse_response | result_t qmail_ot_parse_response(uint8_t command, const uint8_t *plaintext, size_t plaintext_size, qmail_ot_response_t *response)
public | include/qmail/qmail_object_transfer.h:384 | qmail_ot_parse_range_entry | result_t qmail_ot_parse_range_entry(const uint8_t *data, size_t data_size, size_t index, qmail_ot_range_entry_t *entry)
public | include/qmail/qmail_object_transfer.h:389 | qmail_ot_parse_storage_class_entry | result_t qmail_ot_parse_storage_class_entry( const uint8_t *data, size_t data_size, size_t index, qmail_ot_storage_class_entry_t *entry)
public | include/qmail/qmail_object_transfer.h:395 | qmail_ot_serialize_manifest_v2_entry | result_t qmail_ot_serialize_manifest_v2_entry( const qmail_ot_manifest_v2_entry_t *entry, uint8_t out[QMAIL_OT_MANIFEST_V2_ENTRY_SIZE])
public | include/qmail/qmail_object_transfer.h:399 | qmail_ot_parse_manifest_v2_entry | result_t qmail_ot_parse_manifest_v2_entry( const uint8_t data[QMAIL_OT_MANIFEST_V2_ENTRY_SIZE], qmail_ot_manifest_v2_entry_t *entry)
public | include/qmail/qmail_object_transfer.h:407 | qmail_ot_command_result_init | void qmail_ot_command_result_init(qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:408 | qmail_ot_command_result_reset | result_t qmail_ot_command_result_reset(qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:409 | qmail_ot_command_result_free | void qmail_ot_command_result_free(qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:411 | qmail_ot_execute_command | result_t qmail_ot_execute_command( const qmail_ot_command_context_t *context, uint8_t command, const void *request, const uint8_t *data, size_t data_size, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:421 | qmail_ot_cmd_object_begin | result_t qmail_ot_cmd_object_begin( const qmail_ot_command_context_t *context, const qmail_ot_object_begin_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:428 | qmail_ot_cmd_object_put_range | result_t qmail_ot_cmd_object_put_range( const qmail_ot_command_context_t *context, const qmail_ot_object_put_range_request_t *request, const uint8_t *data, size_t data_size, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:437 | qmail_ot_cmd_object_transfer_status | result_t qmail_ot_cmd_object_transfer_status( const qmail_ot_command_context_t *context, const qmail_ot_object_transfer_status_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:444 | qmail_ot_cmd_object_commit | result_t qmail_ot_cmd_object_commit( const qmail_ot_command_context_t *context, const qmail_ot_object_commit_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:451 | qmail_ot_cmd_object_abort | result_t qmail_ot_cmd_object_abort( const qmail_ot_command_context_t *context, const qmail_ot_object_abort_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:458 | qmail_ot_cmd_object_info | result_t qmail_ot_cmd_object_info( const qmail_ot_command_context_t *context, const qmail_ot_object_info_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:465 | qmail_ot_cmd_object_get_range | result_t qmail_ot_cmd_object_get_range( const qmail_ot_command_context_t *context, const qmail_ot_object_get_range_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:472 | qmail_ot_cmd_object_capabilities | result_t qmail_ot_cmd_object_capabilities( const qmail_ot_command_context_t *context, const qmail_ot_object_capabilities_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_object_transfer.h:479 | qmail_ot_cmd_object_delete | result_t qmail_ot_cmd_object_delete( const qmail_ot_command_context_t *context, const qmail_ot_object_delete_request_t *request, uint8_t target_raida_id, core_transport_t *transport, qmail_ot_command_result_t *result)
public | include/qmail/qmail_parent_send.h:8 | qmail_parent_send | result_t qmail_parent_send(const qmail_upload_files_options_t *upload, const qmail_send_tells_options_t *tell, core_transport_t *transport, qmail_upload_artifacts_t *artifacts, qmail_send_tells_result_t *result)
public | include/qmail/qmail_parent_send.h:11 | qmail_parent_recover_one | result_t qmail_parent_recover_one(core_transport_t *transport)
public | include/qmail/qmail_parent_send.h:12 | qmail_parent_worker_start | result_t qmail_parent_worker_start(core_transport_t *transport)
public | include/qmail/qmail_parent_send.h:13 | qmail_parent_worker_stop | void qmail_parent_worker_stop(void)
public | include/qmail/qmail_parent_send.h:14 | qmail_parent_worker_join | void qmail_parent_worker_join(void)
public | include/qmail/qmail_parent_send.h:15 | qmail_parent_stopping | bool qmail_parent_stopping(void)
public | include/qmail/qmail_parent_send.h:17 | qmail_parent_endpoint_layout_restore | result_t qmail_parent_endpoint_layout_restore(const uint8_t guid[16], qmail_endpoint_t endpoints[QMAIL_MAX_SERVERS], int *count)
public | include/qmail/qmail_parent_send.h:18 | qmail_parent_endpoint_layout_freeze | result_t qmail_parent_endpoint_layout_freeze(const uint8_t guid[16], const qmail_endpoint_t *endpoints, int count, int8_t denomination, uint32_t sn, const size_t *sizes, int file_count, uint64_t *fees, uint64_t *inbox)
public | include/qmail/qmail_parent_send.h:20 | qmail_parent_layout_restore | result_t qmail_parent_layout_restore(const uint8_t guid[16], uint8_t servers[QMAIL_MAX_SERVERS], int *count)
public | include/qmail/qmail_parent_send.h:21 | qmail_parent_layout_freeze | result_t qmail_parent_layout_freeze(const uint8_t guid[16], const uint8_t *servers, int count, int8_t denomination, uint32_t sn, const size_t *sizes, int file_count, uint64_t *fees, uint64_t *inbox_fee)
public | include/qmail/qmail_parent_send.h:24 | qmail_parent_stage_load | result_t qmail_parent_stage_load(const qmail_send_object_upload_options_t *options, char paths[QMAIL_MAX_SERVERS][QMAIL_TRANSFER_PATH_MAX], qmail_send_object_upload_result_t *prepared)
public | include/qmail/qmail_parent_send.h:26 | qmail_parent_stage_save | result_t qmail_parent_stage_save(const qmail_send_object_upload_options_t *options, char paths[QMAIL_MAX_SERVERS][QMAIL_TRANSFER_PATH_MAX], const qmail_send_object_upload_result_t *prepared)
public | include/qmail/qmail_parent_send.h:28 | qmail_parent_stage_adopt | result_t qmail_parent_stage_adopt(const qmail_send_object_upload_options_t *options, char paths[QMAIL_MAX_SERVERS][QMAIL_TRANSFER_PATH_MAX], qmail_transfer_record_t *records, bool *created)
public | include/qmail/qmail_parent_store.h:12 | qmail_parent_task_id_valid | bool qmail_parent_task_id_valid(const char *task)
public | include/qmail/qmail_parent_store.h:13 | qmail_parent_db_create | result_t qmail_parent_db_create(const uint8_t guid[16], const char *task, const void *payload, size_t length)
public | include/qmail/qmail_parent_store.h:15 | qmail_parent_db_put | result_t qmail_parent_db_put(const uint8_t guid[16], int slot, const void *payload, size_t length)
public | include/qmail/qmail_parent_store.h:16 | qmail_parent_db_get | result_t qmail_parent_db_get(const uint8_t guid[16], int slot, void **payload, size_t *length)
public | include/qmail/qmail_parent_store.h:17 | qmail_parent_db_work | result_t qmail_parent_db_work(qmail_parent_work_t **rows, int *count)
public | include/qmail/qmail_parent_store.h:18 | qmail_parent_db_attempt | result_t qmail_parent_db_attempt(const uint8_t guid[16])
public | include/qmail/qmail_parent_store.h:19 | qmail_parent_db_handoff | result_t qmail_parent_db_handoff(const uint8_t guid[16])
public | include/qmail/qmail_payment_claim.h:26 | qmail_payment_claim | result_t qmail_payment_claim(const char *wallet_path, const uint8_t file_guid[16], qmail_payment_claim_result_t *out)
public | include/qmail/qmail_payment_send.h:25 | qmail_send_payment | result_t qmail_send_payment(const char *wallet_path, int8_t to_denom, uint32_t to_sn, uint64_t amount_units, uint8_t purpose, qmail_payment_send_result_t *out)
public | include/qmail/qmail_preamble.h:49 | qmail_write_preamble | static inline size_t qmail_write_preamble(uint8_t *buf, int8_t denomination, uint32_t serial_number, uint8_t device_id, const uint8_t an[AN_LENGTH])
public | include/qmail/qmail_receipt.h:59 | qmail_rcpt_status_to_string | const char *qmail_rcpt_status_to_string(qmail_rcpt_status_t s)
public | include/qmail/qmail_receipt.h:60 | qmail_rcpt_status_from_string | qmail_rcpt_status_t qmail_rcpt_status_from_string(const char *s)
public | include/qmail/qmail_receipt.h:184 | qmail_receipt_get_mail_wallet_path | result_t qmail_receipt_get_mail_wallet_path(char *out, size_t out_size)
public | include/qmail/qmail_receipt.h:199 | qmail_receipt_path | result_t qmail_receipt_path(const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], char *out, size_t out_size)
public | include/qmail/qmail_receipt.h:206 | qmail_receipt_ensure_dir | result_t qmail_receipt_ensure_dir(const char *wallet_path)
public | include/qmail/qmail_receipt.h:212 | qmail_receipt_exists | bool qmail_receipt_exists(const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE])
public | include/qmail/qmail_receipt.h:222 | qmail_receipt_load | result_t qmail_receipt_load(const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], qmail_receipt_t *out)
public | include/qmail/qmail_receipt.h:232 | qmail_receipt_save | result_t qmail_receipt_save(const qmail_receipt_t *receipt)
public | include/qmail/qmail_receipt.h:245 | qmail_receipt_mark_upload_failed | result_t qmail_receipt_mark_upload_failed( const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], const char *expected_parent_task_id, const char *message)
public | include/qmail/qmail_receipt.h:263 | qmail_receipt_reconcile_interrupted | int qmail_receipt_reconcile_interrupted( const char *wallet_path, const char *const *protected_task_ids, int protected_count)
public | include/qmail/qmail_receipt.h:274 | qmail_receipt_init | void qmail_receipt_init(qmail_receipt_t *receipt, const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], const char *request_id)
public | include/qmail/qmail_receipt.h:284 | qmail_receipt_load_raw | result_t qmail_receipt_load_raw(const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], char **out_bytes, size_t *out_len)
public | include/qmail/qmail_receipt.h:297 | qmail_receipt_apply_upload_artifacts | void qmail_receipt_apply_upload_artifacts(qmail_receipt_t *receipt, const qmail_upload_artifacts_t *art, bool upload_succeeded)
public | include/qmail/qmail_receipt.h:310 | qmail_receipt_update_recipient | result_t qmail_receipt_update_recipient(const char *wallet_path, const uint8_t file_guid[QMAIL_GUID_SIZE], uint32_t serial_number, int beacon_raida, qmail_rcpt_status_t new_status, const char *last_error)
public | include/qmail/qmail_receive_object_transfer.h:27 | qmail_receive_object_release | void qmail_receive_object_release(const qmail_receive_object_result_t *result)
public | include/qmail/qmail_receive_object_transfer.h:29 | qmail_receive_object_download | result_t qmail_receive_object_download( const qmail_tell_notification_t *notification, const qmail_ot_manifest_v2_entry_t *entry, const char *wallet_path, const char *destination_path, qmail_receive_object_result_t *result, char *error_out, size_t error_out_size)
public | include/qmail/qmail_receive_object_transfer.h:45 | qmail_receive_object_reconstruct | result_t qmail_receive_object_reconstruct( const char *const stripe_paths[QMAIL_MAX_SERVERS], int data_stripe_count, int parity_stripe_index, uint64_t original_size, const uint8_t expected_hash[QMAIL_OT_HASH_SIZE], const char *destination_path, int *stripes_recovered_out, char *error_out, size_t error_out_size)
public | include/qmail/qmail_receive.h:36 | qmail_receive_email | result_t qmail_receive_email(const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const char *wallet_path, qmail_receive_result_t *result)
public | include/qmail/qmail_receive.h:57 | qmail_receive_attachment_on_demand | result_t qmail_receive_attachment_on_demand(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t file_type, core_transport_t *transport_iface, int64_t attachment_id, char *error_out, size_t error_out_size)
public | include/qmail/qmail_receive.h:64 | qmail_receive_attachment_retry | result_t qmail_receive_attachment_retry(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t file_type, core_transport_t *transport_iface, int64_t attachment_id, char *error_out, size_t error_out_size)
public | include/qmail/qmail_retention.h:60 | qmail_retention_decode | int qmail_retention_decode(uint8_t code, uint64_t *seconds_out, int *forever_out)
public | include/qmail/qmail_retention.h:69 | qmail_retention_encode_floor | uint8_t qmail_retention_encode_floor(uint64_t seconds)
public | include/qmail/qmail_retention.h:77 | qmail_retention_code_to_wire | uint8_t qmail_retention_code_to_wire(uint8_t code)
public | include/qmail/qmail_retention.h:83 | qmail_retention_code_from_wire | int qmail_retention_code_from_wire(uint8_t wire, uint8_t *code_out)
public | include/qmail/qmail_send_log.h:75 | qmail_send_log_init | result_t qmail_send_log_init(const char *client_data_dir, bool enabled)
public | include/qmail/qmail_send_log.h:78 | qmail_send_log_close | void qmail_send_log_close(void)
public | include/qmail/qmail_send_log.h:81 | qmail_send_log_is_active | bool qmail_send_log_is_active(void)
public | include/qmail/qmail_send_log.h:87 | qmail_send_log_set_enabled | result_t qmail_send_log_set_enabled(bool enabled)
public | include/qmail/qmail_send_log.h:98 | qmail_send_log_new_id | void qmail_send_log_new_id(char *out)
public | include/qmail/qmail_send_log.h:107 | qmail_send_log_key_prefix | void qmail_send_log_key_prefix(const char *key, char *out)
public | include/qmail/qmail_send_log.h:140 | qmail_send_log_write | void qmail_send_log_write(const char *send_id, const char *phase, const char *fmt, ...)
public | include/qmail/qmail_send_log.h:149 | qmail_send_log_escape | void qmail_send_log_escape(const char *in, char *out, size_t out_size)
public | include/qmail/qmail_send_object_transfer.h:60 | qmail_send_object_upload | result_t qmail_send_object_upload( const qmail_send_object_upload_options_t *options, qmail_send_object_upload_result_t *result)
public | include/qmail/qmail_send_tells.h:113 | qmail_send_tells | result_t qmail_send_tells(const qmail_send_tells_options_t *options, core_transport_t *transport_iface, qmail_send_tells_result_t *out_result)
public | include/qmail/qmail_send.h:20 | qmail_send_email | result_t qmail_send_email(const qmail_send_options_t *options, core_transport_t *transport_iface, qmail_send_result_t *result)
public | include/qmail/qmail_send.h:55 | qmail_upload_orchestrator | result_t qmail_upload_orchestrator(const qmail_upload_options_t *options, core_transport_t *transport_iface, qmail_send_result_t *result)
public | include/qmail/qmail_sent_archive.h:31 | qmail_sent_snapshot_capture | result_t qmail_sent_snapshot_capture(const uint8_t guid[QMAIL_GUID_SIZE], const char *source, char out[MAX_PATH_LEN])
public | include/qmail/qmail_sent_archive.h:33 | qmail_sent_snapshot_is_owned | bool qmail_sent_snapshot_is_owned(const uint8_t guid[QMAIL_GUID_SIZE], const char *path)
public | include/qmail/qmail_sent_archive.h:54 | qmail_sent_archive_store | result_t qmail_sent_archive_store( const uint8_t file_guid[QMAIL_GUID_SIZE], const char *full_body, size_t full_body_len, const uint8_t *cbdf, size_t cbdf_len, const char *const *attachment_paths, int attachment_path_count)
public | include/qmail/qmail_sent_archive.h:67 | qmail_sent_make_body_preview | void qmail_sent_make_body_preview(const char *body, size_t body_len, char *out, size_t out_size)
public | include/qmail/qmail_server_registry.h:294 | qmail_server_registry_snapshot_free | void qmail_server_registry_snapshot_free(qmail_server_snapshot_t *snapshot)
public | include/qmail/qmail_server_registry.h:299 | qmail_server_registry_import_discovered | result_t qmail_server_registry_import_discovered(const qmail_endpoint_t *endpoint, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:311 | qmail_server_registry_import_discovered_reported | result_t qmail_server_registry_import_discovered_reported( const qmail_endpoint_t *endpoint, const qmail_server_reported_t *reported, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:319 | qmail_server_registry_refresh_reported | result_t qmail_server_registry_refresh_reported(const qmail_endpoint_t *endpoints, const qmail_server_reported_t *reported, size_t count, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:387 | qmail_server_registry_init | result_t qmail_server_registry_init(const char *data_dir)
public | include/qmail/qmail_server_registry.h:390 | qmail_server_registry_close | void qmail_server_registry_close(void)
public | include/qmail/qmail_server_registry.h:394 | qmail_server_registry_is_open | bool qmail_server_registry_is_open(void)
public | include/qmail/qmail_server_registry.h:433 | qmail_server_registry_parse_port | result_t qmail_server_registry_parse_port(const char *text, uint16_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:470 | qmail_server_registry_add | result_t qmail_server_registry_add(const qmail_server_add_request_t *request, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:514 | qmail_server_registry_update | result_t qmail_server_registry_update(const qmail_server_update_request_t *request, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:536 | qmail_server_registry_test_with_probe | result_t qmail_server_registry_test_with_probe(const qmail_server_test_request_t *, qmail_server_record_t *, qmail_server_test_result_t *, qmail_server_error_t *, qmail_server_probe_fn, void *)
public | include/qmail/qmail_server_registry.h:559 | qmail_server_registry_test | result_t qmail_server_registry_test(const qmail_server_test_request_t *request, qmail_server_record_t *out_record, qmail_server_test_result_t *out_result, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:590 | qmail_server_registry_set_selected | result_t qmail_server_registry_set_selected( const qmail_server_set_selected_request_t *request, qmail_server_record_t *out, qmail_removal_impact_t *out_impact, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:605 | qmail_server_registry_record_placement | result_t qmail_server_registry_record_placement(const uint8_t message[16],uint8_t file_type, const qmail_endpoint_t *endpoints,const bool *present,int count)
public | include/qmail/qmail_server_registry.h:607 | qmail_server_registry_observe_placement | result_t qmail_server_registry_observe_placement(const uint8_t message[16],uint8_t file_type, const qmail_endpoint_t *endpoint,bool present)
public | include/qmail/qmail_server_registry.h:609 | qmail_server_registry_set_selected_confirmed | result_t qmail_server_registry_set_selected_confirmed(const qmail_server_set_selected_request_t *, uint64_t impact_revision,bool acknowledge,qmail_server_record_t *,qmail_removal_impact_t *,qmail_server_error_t *)
public | include/qmail/qmail_server_registry.h:612 | qmail_server_registry_removal_impact | result_t qmail_server_registry_removal_impact(qmail_server_id_t server_id, qmail_removal_impact_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:643 | qmail_server_registry_remove | result_t qmail_server_registry_remove(const qmail_server_remove_request_t *request, qmail_registry_revision_t *out_revision, qmail_removal_impact_t *out_impact, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:662 | qmail_server_registry_list | result_t qmail_server_registry_list(bool include_retired, qmail_server_snapshot_t *out, qmail_server_capabilities_t *out_caps, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:669 | qmail_server_registry_get | result_t qmail_server_registry_get(qmail_server_id_t server_id, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:674 | qmail_server_registry_revision | qmail_registry_revision_t qmail_server_registry_revision(void)
public | include/qmail/qmail_server_registry.h:699 | qmail_server_registry_import_tell | result_t qmail_server_registry_import_tell(const qmail_server_location_t *loc, const char *literal, uint16_t port, qmail_server_record_t *out, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:724 | qmail_server_registry_seed_topology | result_t qmail_server_registry_seed_topology(void)
public | include/qmail/qmail_server_registry.h:725 | qmail_server_registry_upload_endpoints | result_t qmail_server_registry_upload_endpoints(qmail_endpoint_t *out, int capacity, int *count)
public | include/qmail/qmail_server_registry.h:727 | qmail_server_registry_refresh_raida | result_t qmail_server_registry_refresh_raida(const qmail_endpoint_t *endpoints, int count, int *out_added, int *out_updated, qmail_server_error_t *err)
public | include/qmail/qmail_server_registry.h:783 | qmail_server_registry_lookup_request | result_t qmail_server_registry_lookup_request(const char *request_id, qmail_server_request_record_t *out)
public | include/qmail/qmail_server_registry.h:797 | qmail_server_registry_force_readonly | result_t qmail_server_registry_force_readonly(bool readonly)
public | include/qmail/qmail_servers.h:47 | qmail_servers_init | result_t qmail_servers_init(const char *data_dir)
public | include/qmail/qmail_servers.h:53 | qmail_servers_get_count | int qmail_servers_get_count(void)
public | include/qmail/qmail_servers.h:59 | qmail_servers_get_data_stripe_count | int qmail_servers_get_data_stripe_count(void)
public | include/qmail/qmail_servers.h:67 | qmail_servers_get_indices | void qmail_servers_get_indices(uint8_t *indices_out, int *count_out)
public | include/qmail/qmail_servers.h:76 | qmail_servers_get_raida_for_stripe | uint8_t qmail_servers_get_raida_for_stripe(int stripe_index)
public | include/qmail/qmail_servers.h:84 | qmail_servers_is_qmail_server | bool qmail_servers_is_qmail_server(uint8_t raida_id)
public | include/qmail/qmail_servers.h:92 | qmail_servers_get_stripe_for_raida | int qmail_servers_get_stripe_for_raida(uint8_t raida_id)
public | include/qmail/qmail_servers.h:100 | qmail_servers_get_info | void qmail_servers_get_info(qmail_server_info_t *info_out, int *count_out)
public | include/qmail/qmail_session_coordinator.h:27 | qmail_session_coordinator_open | result_t qmail_session_coordinator_open(const char *directory, const cloudcoin_t *identity, bool persistent, qmail_session_coordinator_t **out)
public | include/qmail/qmail_session_coordinator.h:30 | qmail_session_coordinator_open_lane | result_t qmail_session_coordinator_open_lane(const char *directory, const cloudcoin_t *identity, bool persistent, const char *lane, qmail_session_coordinator_t **out)
public | include/qmail/qmail_session_coordinator.h:35 | qmail_session_coordinator_drain | result_t qmail_session_coordinator_drain(qmail_session_coordinator_t *, const qmail_endpoint_t *, int timeout_ms)
public | include/qmail/qmail_session_coordinator.h:41 | qmail_session_coordinator_authorize_retry | result_t qmail_session_coordinator_authorize_retry(qmail_session_coordinator_t *, const qmail_endpoint_t *, const char *operation_id, const char *query_id, uint8_t query_command, const uint8_t *query_body, size_t query_length)
public | include/qmail/qmail_session_coordinator.h:44 | qmail_session_coordinator_close | void qmail_session_coordinator_close(qmail_session_coordinator_t *c)
public | include/qmail/qmail_session_coordinator.h:45 | qmail_session_coordinator_logout | result_t qmail_session_coordinator_logout(qmail_session_coordinator_t *c)
public | include/qmail/qmail_session_coordinator.h:49 | qmail_session_coordinator_forget_identity | result_t qmail_session_coordinator_forget_identity(const char *directory, const cloudcoin_t *identity)
public | include/qmail/qmail_session_coordinator.h:51 | qmail_session_coordinator_transport | void qmail_session_coordinator_transport(qmail_session_coordinator_t *c, qmail_session_open_fn open_fn, qmail_session_exchange_fn exchange_fn, void *user)
public | include/qmail/qmail_session_coordinator.h:60 | qmail_session_coordinator_command | result_t qmail_session_coordinator_command(qmail_session_coordinator_t *c, const qmail_endpoint_t *endpoint, const char *operation_id, bool recovery, uint8_t cg, uint8_t cm, const uint8_t *body, size_t body_len, int timeout_ms, qmail_command_outcome_t *outcome, int *status, uint8_t **reply, size_t *reply_len)
public | include/qmail/qmail_striping.h:21 | qmail_stripe_size | result_t qmail_stripe_size(uint64_t logical_bytes, int data_stripes, uint64_t *size_out)
public | include/qmail/qmail_striping.h:37 | qmail_stripe_split | result_t qmail_stripe_split(const uint8_t *data, size_t data_len, int num_stripes, uint8_t **stripes_out, size_t *stripe_sizes)
public | include/qmail/qmail_striping.h:53 | qmail_stripe_reassemble | result_t qmail_stripe_reassemble(const uint8_t **stripes, const size_t *stripe_sizes, int num_stripes, size_t original_len, uint8_t **data_out, size_t *data_len_out)
public | include/qmail/qmail_striping.h:69 | qmail_stripe_parity | result_t qmail_stripe_parity(const uint8_t **stripes, const size_t *stripe_sizes, int num_stripes, uint8_t **parity_out, size_t *parity_size)
public | include/qmail/qmail_striping.h:89 | qmail_stripe_recover | result_t qmail_stripe_recover(const uint8_t **stripes, const size_t *stripe_sizes, int num_stripes, const uint8_t *parity, size_t parity_size, int missing_index, uint8_t **recovered_out, size_t *recovered_size)
public | include/qmail/qmail_striping.h:99 | qmail_stripe_free | void qmail_stripe_free(uint8_t *stripe)
public | include/qmail/qmail_subscribe.h:51 | core_qmail_subscribe | result_t core_qmail_subscribe(const raida_encryption_key_t *vendor, const qmail_subscribe_entry_t *entries, size_t entry_count, core_transport_t *transport_iface, transport_type_t transport, drd_fanout_result_t *out)
public | include/qmail/qmail_tell_outbox.h:18 | qmail_tell_outbox_lock | void qmail_tell_outbox_lock(void)
public | include/qmail/qmail_tell_outbox.h:19 | qmail_tell_outbox_try_lock | bool qmail_tell_outbox_try_lock(void)
public | include/qmail/qmail_tell_outbox.h:20 | qmail_tell_outbox_unlock | void qmail_tell_outbox_unlock(void)
public | include/qmail/qmail_tell_outbox.h:27 | qmail_db_tell_outbox_prepare | result_t qmail_db_tell_outbox_prepare(qmail_tell_outbox_item_t *items, int count)
public | include/qmail/qmail_tell_outbox.h:40 | qmail_db_tell_outbox_prepare_with_sent | result_t qmail_db_tell_outbox_prepare_with_sent(qmail_tell_outbox_item_t *items, int count, const qmail_sent_intent_t *sent)
public | include/qmail/qmail_tell_outbox.h:43 | qmail_db_sent_intents_recover | result_t qmail_db_sent_intents_recover(void)
public | include/qmail/qmail_tell_outbox.h:44 | qmail_db_sent_intent_exists | result_t qmail_db_sent_intent_exists(const uint8_t guid[QMAIL_GUID_SIZE], bool *exists)
public | include/qmail/qmail_tell_outbox.h:53 | qmail_db_send_tasks_list | result_t qmail_db_send_tasks_list(qmail_send_task_state_t **rows, int *count)
public | include/qmail/qmail_tell_outbox.h:54 | qmail_db_send_task_owned | result_t qmail_db_send_task_owned(const char *task_id, bool *owned)
public | include/qmail/qmail_tell_outbox.h:55 | qmail_db_send_task_published | result_t qmail_db_send_task_published(const char *task_id)
public | include/qmail/qmail_tell_outbox.h:57 | qmail_send_recover | result_t qmail_send_recover(void)
public | include/qmail/qmail_tell_retry.h:21 | qmail_tell_retry_start | result_t qmail_tell_retry_start(core_transport_t *transport)
public | include/qmail/qmail_tell_retry.h:23 | qmail_tell_retry_start_with_wallet | result_t qmail_tell_retry_start_with_wallet(core_transport_t *transport, const char *payment_wallet_path)
public | include/qmail/qmail_tell_retry.h:30 | qmail_tell_retry_stop | void qmail_tell_retry_stop(void)
public | include/qmail/qmail_tell_retry.h:35 | qmail_tell_retry_join | void qmail_tell_retry_join(void)
public | include/qmail/qmail_transfer_manager.h:155 | qmail_transfer_manager_init | result_t qmail_transfer_manager_init(const char *db_path, core_transport_t *transport)
public | include/qmail/qmail_transfer_manager.h:165 | qmail_transfer_manager_prepare | result_t qmail_transfer_manager_prepare(const char *db_path, core_transport_t *transport)
public | include/qmail/qmail_transfer_manager.h:174 | qmail_transfer_manager_protected_task_ids | result_t qmail_transfer_manager_protected_task_ids(char (**out)[64], int *count_out)
public | include/qmail/qmail_transfer_manager.h:182 | qmail_transfer_manager_resume_prepared | result_t qmail_transfer_manager_resume_prepared(void)
public | include/qmail/qmail_transfer_manager.h:187 | qmail_transfer_operation_active | bool qmail_transfer_operation_active(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_manager.h:190 | qmail_transfer_list_parent | result_t qmail_transfer_list_parent(const char *parent_task_id, qmail_transfer_record_t **records_out, int *count_out)
public | include/qmail/qmail_transfer_manager.h:193 | qmail_transfer_manager_shutdown | void qmail_transfer_manager_shutdown(void)
public | include/qmail/qmail_transfer_manager.h:196 | qmail_transfer_manager_request_stop | void qmail_transfer_manager_request_stop(void)
public | include/qmail/qmail_transfer_manager.h:197 | qmail_transfer_manager_is_stopping | bool qmail_transfer_manager_is_stopping(void)
public | include/qmail/qmail_transfer_manager.h:198 | qmail_transfer_release_download_cache | result_t qmail_transfer_release_download_cache(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_manager.h:206 | qmail_transfer_manager_pause | void qmail_transfer_manager_pause(void)
public | include/qmail/qmail_transfer_manager.h:207 | qmail_transfer_manager_resume | void qmail_transfer_manager_resume(void)
public | include/qmail/qmail_transfer_manager.h:209 | qmail_transfer_create_upload | result_t qmail_transfer_create_upload( const qmail_transfer_upload_options_t *options, qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_manager.h:212 | qmail_transfer_create_download | result_t qmail_transfer_create_download( const qmail_transfer_download_options_t *options, qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_manager.h:215 | qmail_transfer_create_delete | result_t qmail_transfer_create_delete( const qmail_transfer_delete_options_t *options, qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_manager.h:219 | qmail_transfer_get | result_t qmail_transfer_get( const uint8_t operation_id[QMAIL_OT_ID_SIZE], qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_manager.h:222 | qmail_transfer_resume | result_t qmail_transfer_resume( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_manager.h:227 | qmail_transfer_pause | result_t qmail_transfer_pause( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_manager.h:229 | qmail_transfer_cancel | result_t qmail_transfer_cancel( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_manager.h:232 | qmail_transfer_query_capabilities | result_t qmail_transfer_query_capabilities( const char *wallet_path, uint8_t raida_id, qmail_transfer_capabilities_t *capabilities_out)
public | include/qmail/qmail_transfer_manager.h:237 | qmail_transfer_state_string | const char *qmail_transfer_state_string(qmail_transfer_state_t state)
public | include/qmail/qmail_transfer_manager.h:238 | qmail_transfer_direction_string | const char *qmail_transfer_direction_string(qmail_transfer_direction_t direction)
public | include/qmail/qmail_transfer_manager.h:245 | qmail_transfer_async_commit_poll_interval_ms | uint32_t qmail_transfer_async_commit_poll_interval_ms(uint64_t total_size)
public | include/qmail/qmail_transfer_manager.h:246 | qmail_transfer_async_commit_budget_ms | uint64_t qmail_transfer_async_commit_budget_ms(uint64_t total_size)
public | include/qmail/qmail_transfer_store.h:10 | qmail_transfer_store_open | result_t qmail_transfer_store_open(const char *db_path)
public | include/qmail/qmail_transfer_store.h:11 | qmail_transfer_store_close | void qmail_transfer_store_close(void)
public | include/qmail/qmail_transfer_store.h:13 | qmail_transfer_store_insert | result_t qmail_transfer_store_insert(const qmail_transfer_record_t *record)
public | include/qmail/qmail_transfer_store.h:15 | qmail_transfer_store_insert_owned | result_t qmail_transfer_store_insert_owned(const qmail_transfer_record_t *record, const char *parent_task_id)
public | include/qmail/qmail_transfer_store.h:19 | qmail_transfer_store_list_parent | result_t qmail_transfer_store_list_parent(const char *parent_task_id, qmail_transfer_record_t **records_out, int *count_out)
public | include/qmail/qmail_transfer_store.h:21 | qmail_transfer_store_get | result_t qmail_transfer_store_get( const uint8_t operation_id[QMAIL_OT_ID_SIZE], qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_store.h:24 | qmail_transfer_store_find_download | result_t qmail_transfer_store_find_download(const char *destination, qmail_transfer_record_t *record_out)
public | include/qmail/qmail_transfer_store.h:26 | qmail_transfer_store_save | result_t qmail_transfer_store_save(const qmail_transfer_record_t *record)
public | include/qmail/qmail_transfer_store.h:27 | qmail_transfer_store_set_state | result_t qmail_transfer_store_set_state( const uint8_t operation_id[QMAIL_OT_ID_SIZE], qmail_transfer_state_t state, int last_result, uint8_t last_status, const char *error_message)
public | include/qmail/qmail_transfer_store.h:33 | qmail_transfer_store_request_cancel | result_t qmail_transfer_store_request_cancel( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_transfer_store.h:37 | qmail_transfer_store_set_pause | result_t qmail_transfer_store_set_pause( const uint8_t operation_id[QMAIL_OT_ID_SIZE], bool paused)
public | include/qmail/qmail_transfer_store.h:39 | qmail_transfer_store_list_resumable | result_t qmail_transfer_store_list_resumable( qmail_transfer_record_t **records_out, int *count_out)
public | include/qmail/qmail_transfer_store.h:44 | qmail_transfer_store_list_object | result_t qmail_transfer_store_list_object( const uint8_t object_id[QMAIL_OT_ID_SIZE], int direction, qmail_transfer_record_t **records_out, int *count_out)
public | include/qmail/qmail_transfer_store.h:50 | qmail_transfer_store_replace_ranges | result_t qmail_transfer_store_replace_ranges( const uint8_t operation_id[QMAIL_OT_ID_SIZE], const qmail_transfer_range_t *ranges, size_t range_count, uint64_t completed_bytes)
public | include/qmail/qmail_transfer_store.h:61 | qmail_transfer_store_list_interrupted_ranges | result_t qmail_transfer_store_list_interrupted_ranges( const uint8_t operation_id[QMAIL_OT_ID_SIZE], qmail_transfer_range_t **ranges_out, size_t *count_out)
public | include/qmail/qmail_transfer_store.h:65 | qmail_transfer_store_list_pending_ranges | result_t qmail_transfer_store_list_pending_ranges( const uint8_t operation_id[QMAIL_OT_ID_SIZE], qmail_transfer_range_t **ranges_out, size_t *count_out)
public | include/qmail/qmail_transfer_store.h:69 | qmail_transfer_store_mark_range_inflight | result_t qmail_transfer_store_mark_range_inflight( const uint8_t operation_id[QMAIL_OT_ID_SIZE], uint64_t offset)
public | include/qmail/qmail_transfer_store.h:72 | qmail_transfer_store_mark_range_complete | result_t qmail_transfer_store_mark_range_complete( const uint8_t operation_id[QMAIL_OT_ID_SIZE], uint64_t offset, uint64_t length)
public | include/qmail/qmail_transfer_store.h:76 | qmail_transfer_store_mark_range_failed | result_t qmail_transfer_store_mark_range_failed( const uint8_t operation_id[QMAIL_OT_ID_SIZE], uint64_t offset, int retries, const char *error_message)
public | include/qmail/qmail_transfer_store.h:81 | qmail_transfer_store_reset_inflight | result_t qmail_transfer_store_reset_inflight( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
public | include/qmail/qmail_types.h:60 | qmail_phase1_beacon_valid | static inline bool qmail_phase1_beacon_valid(uint8_t beacon_id)
public | include/qmail/qmail_types.h:65 | qmail_phase1_primary_beacon | static inline uint8_t qmail_phase1_primary_beacon(void)
public | include/qmail/qmail_types.h:69 | qmail_phase1_secondary_beacon | static inline uint8_t qmail_phase1_secondary_beacon(void)
public | include/qmail/qmail_types.h:331 | qmail_server_location_encode | result_t qmail_server_location_encode(const qmail_server_location_t *loc, const uint8_t *ip4, uint16_t port, uint8_t *out32)
public | include/qmail/qmail_types.h:347 | qmail_server_location_decode | result_t qmail_server_location_decode(const uint8_t *in32, qmail_server_location_t *loc, uint8_t *ip4, uint16_t *port)
public | include/qmail/qmail_types.h:593 | qmail_tell_context_from_blob | result_t qmail_tell_context_from_blob(const uint8_t *blob, size_t blob_size, qmail_tell_context_t *out)
public | include/qmail/qmail_types.h:603 | qmail_tell_context_to_blob | result_t qmail_tell_context_to_blob(const qmail_tell_context_t *ctx, uint8_t *out, size_t out_cap, size_t *out_len)
public | include/qmail/qmail_types.h:768 | qmail_beacon_state_init_mutex | static inline void qmail_beacon_state_init_mutex(qmail_beacon_state_t *state)
public | include/qmail/qmail_types.h:779 | qmail_beacon_state_lock | static inline void qmail_beacon_state_lock(qmail_beacon_state_t *state)
public | include/qmail/qmail_types.h:789 | qmail_beacon_state_unlock | static inline void qmail_beacon_state_unlock(qmail_beacon_state_t *state)
public | include/qmail/qmail_types.h:811 | qmail_beacon_state_snapshot | static inline void qmail_beacon_state_snapshot(qmail_beacon_state_t *state, qmail_ping_context_t *ctx)
public | include/qmail/qmail_types.h:829 | qmail_beacon_state_snapshot_full | static inline void qmail_beacon_state_snapshot_full(qmail_beacon_state_t *state, qmail_ping_context_t *ctx, uint8_t *beacon_raida_out)
public | include/qmail/qmail_types.h:861 | qmail_weeks_to_duration | static inline qmail_storage_duration_t qmail_weeks_to_duration(int weeks)
public | include/qmail/qmail_types.h:875 | qmail_email_free | static inline void qmail_email_free(qmail_email_t *email)
public | include/qmail/qmail_types.h:883 | qmail_attachment_free | static inline void qmail_attachment_free(qmail_attachment_t *att)
public | include/qmail/qmail_types.h:891 | qmail_ping_response_free | static inline void qmail_ping_response_free(qmail_ping_response_t *resp)
public | include/qmail/qmail_types.h:899 | qmail_download_response_free | static inline void qmail_download_response_free(qmail_download_response_t *resp)
public | include/qmail/qmail_types.h:907 | qmail_receive_result_free | static inline void qmail_receive_result_free(qmail_receive_result_t *res)
public | include/qmail/qmail_upload_files.h:150 | qmail_upload_legacy_max_file_bytes | size_t qmail_upload_legacy_max_file_bytes(void)
public | include/qmail/qmail_upload_files.h:151 | qmail_upload_file_uses_large_pages | bool qmail_upload_file_uses_large_pages(int file_index, size_t file_size)
public | include/qmail/qmail_upload_files.h:152 | qmail_upload_preplan_attachment_size | result_t qmail_upload_preplan_attachment_size( size_t attachment_size, qmail_attachment_page_plan_t *plan)
public | include/qmail/qmail_upload_files.h:155 | qmail_upload_preplan_attachment_path | result_t qmail_upload_preplan_attachment_path( const char *path, qmail_attachment_page_plan_t *plan, size_t *size_out)
public | include/qmail/qmail_upload_files.h:178 | qmail_upload_files | result_t qmail_upload_files(const qmail_upload_files_options_t *options, core_transport_t *transport_iface, qmail_upload_artifacts_t *artifacts)
public | include/qmail/qmail_upload_files.h:195 | qmail_upload_artifacts_confirm | void qmail_upload_artifacts_confirm(qmail_upload_artifacts_t *artifacts, const char *wallet_path_for_replenish)
public | include/qmail/qmail_users.h:52 | qmail_identity_error_string | const char *qmail_identity_error_string(qmail_identity_error_t code)
public | include/qmail/qmail_users.h:68 | qmail_identity_detect | result_t qmail_identity_detect(const char *wallets_path)
public | include/qmail/qmail_users.h:83 | qmail_identity_get_mail_wallet_path | result_t qmail_identity_get_mail_wallet_path(const char *wallets_path, char *out, size_t out_size)
public | include/qmail/qmail_users.h:94 | qmail_identity_mail_wallet_has_coin | bool qmail_identity_mail_wallet_has_coin(const char *wallets_path)
public | include/qmail/qmail_users.h:110 | qmail_identity_load_key | result_t qmail_identity_load_key(const char *wallets_path, raida_encryption_key_t *key_out, qmail_identity_t *identity_out)
public | include/qmail/qmail_users.h:127 | qmail_identity_refresh | result_t qmail_identity_refresh(const char *wallets_path)
public | include/qmail/qmail_users.h:137 | qmail_identity_seed | void qmail_identity_seed(const qmail_identity_t *src)
public | include/qmail/qmail_users.h:152 | qmail_identity_get | const qmail_identity_t *qmail_identity_get(void)
public | include/qmail/qmail_users.h:166 | qmail_identity_snapshot | void qmail_identity_snapshot(qmail_identity_t *out)
public | include/qmail/startup.h:38 | qmail_startup_begin | qmail_startup_result_t qmail_startup_begin(qmail_startup_t *startup, const char *data_dir_override, int debug)
public | include/qmail/startup.h:41 | qmail_startup_end | void qmail_startup_end(qmail_startup_t *startup)
public | include/qmail/startup.h:44 | qmail_startup_probe_identity | int qmail_startup_probe_identity(const char *client_data_dir)
public | include/qmail/startup.h:45 | qmail_startup_file_exists | int qmail_startup_file_exists(const char *path)
public | include/qmail/startup.h:46 | qmail_startup_directory_exists | int qmail_startup_directory_exists(const char *path)
public | include/qmail/startup.h:47 | qmail_startup_folder_writable | int qmail_startup_folder_writable(const char *directory)
public | include/qmail/startup.h:49 | qmail_startup_result_message | const char *qmail_startup_result_message(qmail_startup_result_t result)
public | include/qmail/startup.h:53 | qmail_startup_migrate | int qmail_startup_migrate(const char *data_dir_override, qmail_migration_report_t *report)
public | include/qmail/startup.h:57 | qmail_startup_parse_args | int qmail_startup_parse_args(int *debug_out, char *data_dir_out, size_t data_dir_cap)
public | include/qmail/update_progress.h:7 | qm_update_monitor | int qm_update_monitor(int mode,int *component,uint64_t *done,uint64_t *total)
public | include/qmail/update_progress.h:8 | qm_update_cancelled | int qm_update_cancelled(void *context)
public | include/qmail/update_progress.h:9 | qm_update_progress | void qm_update_progress(void *context,int component,uint64_t done,uint64_t total)
public | include/qmail/update_progress.h:12 | qgui_jobs_set_update_monitor | void qgui_jobs_set_update_monitor(qm_update_monitor_fn monitor)
public | include/qmail/update_quiescence.h:4 | qmail_update_transfers_idle | int qmail_update_transfers_idle(void)
public | include/qmail/update.h:19 | qmail_update_validate | qmail_update_result_t qmail_update_validate(const char *target_exe, const char *staged_exe)
public | include/qmail/update.h:23 | qmail_update_sha256_file | qmail_update_result_t qmail_update_sha256_file(const char *path, char *out_hex, size_t out_hex_cap)
public | include/qmail/update.h:28 | qmail_update_verify_sha256 | qmail_update_result_t qmail_update_verify_sha256(const char *staged_exe, const char *expected_hex)
public | include/qmail/update.h:32 | qmail_update_write_helper | qmail_update_result_t qmail_update_write_helper(const char *target_exe, const char *staged_exe, unsigned long parent_pid, char *script_path, size_t script_path_size)
public | include/qmail/update.h:39 | qmail_update_launch_helper | qmail_update_result_t qmail_update_launch_helper(const char *script_path)
public | include/qmail/update.h:45 | qmail_update_apply | qmail_update_result_t qmail_update_apply(const char *target_exe, const char *staged_exe, const char *expected_sha256_hex, unsigned long parent_pid, char *script_path, size_t script_path_size)
static | src/app/client_inproc.c:30 | set_err | static void set_err(inproc_ctx_t *c, const char *msg)
static | src/app/client_inproc.c:36 | class_from_denom | static qgui_class_t class_from_denom(int denomination)
static | src/app/client_inproc.c:49 | id_from_guid | static qgui_mail_id_t id_from_guid(const unsigned char guid[16])
static | src/app/client_inproc.c:58 | remember_guid | static void remember_guid(inproc_ctx_t *c, qgui_mail_id_t id, const unsigned char guid[16])
static | src/app/client_inproc.c:79 | lookup_guid | static const unsigned char *lookup_guid(inproc_ctx_t *c, qgui_mail_id_t id)
static | src/app/client_inproc.c:89 | human_size | static void human_size(long long bytes, char *dst, size_t cap)
static | src/app/client_inproc.c:99 | fill_time_label | static void fill_time_label(char *dst, size_t cap, long long unix_ts)
static | src/app/client_inproc.c:113 | fill_expiry_label | static void fill_expiry_label(char *dst, size_t cap, long long unix_ts)
static | src/app/client_inproc.c:130 | fmt_cc | static void fmt_cc(char *dst, size_t cap, const char *prefix, double cc)
static | src/app/client_inproc.c:147 | inproc_health | static qgui_result_t inproc_health(void *user, qgui_health_t *out)
static | src/app/client_inproc.c:237 | inproc_get_identity | static qgui_result_t inproc_get_identity(void *user, qgui_identity_t *out)
static | src/app/client_inproc.c:259 | folder_label | static const char *folder_label(qgui_folder_id_t id)
static | src/app/client_inproc.c:272 | inproc_list_folders | static qgui_result_t inproc_list_folders(void *user, qgui_folder_info_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:301 | row_from_api | static void row_from_api(inproc_ctx_t *c, qgui_mail_row_t *dst, const qmail_api_message_row_t *src)
static | src/app/client_inproc.c:319 | inproc_list_mail_page | static qgui_result_t inproc_list_mail_page(void *user, qgui_folder_id_t folder, int offset, int sort, qgui_mail_row_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:346 | inproc_mail_action | static qgui_result_t inproc_mail_action(void *user, const qgui_mail_action_request_t *req, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:406 | inproc_get_message | static qgui_result_t inproc_get_message(void *user, qgui_mail_id_t id, qgui_message_t *out)
static | src/app/client_inproc.c:490 | inproc_list_mail | static qgui_result_t inproc_list_mail(void *user, qgui_folder_id_t folder, qgui_mail_row_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:497 | chip_to_api | static int chip_to_api(unsigned char chip)
static | src/app/client_inproc.c:504 | inproc_query_mail_page | static qgui_result_t inproc_query_mail_page(void *user, qgui_folder_id_t folder, int offset, const qgui_mail_query_t *query, const char *text, qgui_mail_row_t *out, int cap, int *out_n, int *total_out)
static | src/app/client_inproc.c:554 | contact_to_qgui | static void contact_to_qgui(qgui_contact_t *dst, const qmail_api_contact_t *src)
static | src/app/client_inproc.c:574 | inproc_list_contacts | static qgui_result_t inproc_list_contacts(void *user, int popular, qgui_contact_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:598 | inproc_add_contact | static qgui_result_t inproc_add_contact(void *user, const qgui_contact_request_t *req, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:624 | inproc_delete_contact | static qgui_result_t inproc_delete_contact(void *user, long long serial, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:641 | inproc_favorite_contact | static qgui_result_t inproc_favorite_contact(void *user, long long serial, int value, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:659 | inproc_download_attachment | static qgui_result_t inproc_download_attachment(void *user, qgui_mail_id_t id, long long attachment_id, const char *dest_dir, const char *name, qgui_progress_fn progress, void *progress_user, char *out_path, size_t out_path_sz, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:720 | inproc_sync_once | static qgui_result_t inproc_sync_once(void *user, int *new_mail_out)
static | src/app/client_inproc.c:750 | inproc_list_pending | static qgui_result_t inproc_list_pending(void *user, qgui_pending_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:781 | inproc_save_draft | static qgui_result_t inproc_save_draft(void *user, const struct qgui_send_request *req, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:812 | inproc_save_draft_text | static qgui_result_t inproc_save_draft_text(void *user, const char *subject, const char *body, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:823 | inproc_send_message | static qgui_result_t inproc_send_message(void *user, const struct qgui_send_request *req, char *task_id, size_t task_id_sz, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:934 | inproc_step | static void inproc_step(inproc_ctx_t *c, int step)
static | src/app/client_inproc.c:945 | inproc_setup_status | static qgui_result_t inproc_setup_status(void *user, qgui_setup_status_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:981 | inproc_wallet_balance | static qgui_result_t inproc_wallet_balance(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/app/client_inproc.c:1016 | inproc_legacy_scan | static qgui_result_t inproc_legacy_scan(void *user, qgui_legacy_folder_t *out, int cap, int *out_n, int *vault_files, int *programs_found)
static | src/app/client_inproc.c:1043 | inproc_wallet_coins | static qgui_result_t inproc_wallet_coins(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/app/client_inproc.c:1070 | inproc_wallet_action | static qgui_result_t inproc_wallet_action(void *user, const qgui_wallet_request_t *req, qgui_wallet_outcome_t *out)
static | src/app/client_inproc.c:1244 | profile_from_api | static void profile_from_api(qgui_profile_t *out, const qmail_api_profile_t *src)
static | src/app/client_inproc.c:1262 | inproc_get_profile | static qgui_result_t inproc_get_profile(void *user, int denomination, long long serial, qgui_profile_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1290 | inproc_post_profile | static qgui_result_t inproc_post_profile(void *user, const qgui_profile_t *p, int *pass_count, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1321 | inproc_search_drd | static qgui_result_t inproc_search_drd(void *user, const char *first, const char *last, qgui_drd_user_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1357 | inproc_list_get | static qgui_result_t inproc_list_get(void *user, qgui_list_entry_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1388 | inproc_list_set | static qgui_result_t inproc_list_set(void *user, int denomination, long long serial, const char *list_type, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1405 | inproc_list_remove | static qgui_result_t inproc_list_remove(void *user, int denomination, long long serial, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1422 | transfer_from_api | static void transfer_from_api(qgui_transfer_record_t *out, const qmail_api_ot_record_t *src)
static | src/app/client_inproc.c:1441 | map_ot_error | static qgui_result_t map_ot_error(inproc_ctx_t *c, const qmail_api_error_t *error, char *msg, size_t msg_sz, const char *fallback)
static | src/app/client_inproc.c:1451 | inproc_object_capabilities | static qgui_result_t inproc_object_capabilities(void *user, int raida_id, qgui_transfer_caps_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1485 | inproc_object_upload | static qgui_result_t inproc_object_upload(void *user, const qgui_object_upload_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1509 | inproc_object_download | static qgui_result_t inproc_object_download(void *user, const qgui_object_download_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1533 | inproc_transfer_status | static qgui_result_t inproc_transfer_status(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1549 | inproc_transfer_resume | static qgui_result_t inproc_transfer_resume(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1565 | inproc_transfer_cancel | static qgui_result_t inproc_transfer_cancel(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1581 | inproc_search_mail | static qgui_result_t inproc_search_mail(void *user, const char *query, qgui_mail_row_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:1605 | inproc_list_wallets | static qgui_result_t inproc_list_wallets(void *user, qgui_wallet_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:1630 | inproc_list_transactions | static qgui_result_t inproc_list_transactions(void *user, const qgui_wallet_t *wallet, int limit, qgui_transaction_t *out, int cap, int *out_n)
static | src/app/client_inproc.c:1669 | inproc_list_receipts | static qgui_result_t inproc_list_receipts(void *user, const char *wallet_path, char (*names)[80], int cap, int *out_n)
static | src/app/client_inproc.c:1684 | inproc_get_receipt | static qgui_result_t inproc_get_receipt(void *user, const char *wallet_path, const char *filename, char *text, size_t text_sz, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1701 | inproc_setup_action | static qgui_result_t inproc_setup_action(void *user, const qgui_setup_request_t *req, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1730 | inproc_update_status | static qgui_result_t inproc_update_status(void *user, qgui_update_status_t *out, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1759 | inproc_update_download | static qgui_result_t inproc_update_download(void *user, char *task_id, size_t task_sz, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1774 | inproc_support_zip | static qgui_result_t inproc_support_zip(void *user, char *path, size_t path_sz, char *msg, size_t msg_sz)
static | src/app/client_inproc.c:1789 | inproc_task_status | static qgui_result_t inproc_task_status(void *user, const char *task_id, qgui_task_status_t *out)
static | src/app/client.c:6 | invalid | static qmail_api_code_t invalid(qmail_api_error_t *error)
static | src/app/data_compat.c:11 | directory_exists | static int directory_exists(const char *path)
static | src/app/data_compat.c:23 | file_exists | static int file_exists(const char *path)
static | src/app/data_compat.c:37 | path_exists | static int path_exists(const char *root, const char *suffix, int want_dir)
static | src/app/desktop_api_more.c:37 | clear_error | static void clear_error(qmail_api_error_t *error)
static | src/app/desktop_api_more.c:45 | fail | static qmail_api_code_t fail(qmail_api_error_t *error, qmail_api_code_t code, const char *message)
static | src/app/desktop_api_more.c:54 | copy_trunc | static void copy_trunc(char *dst, size_t dst_cap, const char *src)
static | src/app/desktop_api_more.c:64 | format_sn_address | static void format_sn_address(char *dst, size_t dst_cap, uint32_t sn, int denomination)
static | src/app/desktop_api_more.c:82 | fill_row_from_email | static void fill_row_from_email(qmail_api_message_row_t *row, const qmail_email_t *email)
static | src/app/desktop_api_more.c:176 | tx_line_cb | static bool tx_line_cb(const char *line, void *ctx)
static | src/app/desktop_api_more.c:282 | receipt_name_cb | static bool receipt_name_cb(const char *name, void *ctx)
static | src/app/desktop_api_more.c:365 | provision_find_best_coin | static result_t provision_find_best_coin(const char *wallet_path, provision_coin_t *out)
static | src/app/desktop_api_more.c:413 | provision_move_coin | static result_t provision_move_coin(const char *from_wallet, const char *to_wallet, const provision_coin_t *coin)
static | src/app/desktop_api_more.c:441 | provision_rename_to_address | static void provision_rename_to_address(const char *mail_path, folder_type_t folder)
static | src/app/desktop_api_more.c:479 | provision_identity_from_default | static qmail_api_code_t provision_identity_from_default(qmail_desktop_api_t *api, char *message, size_t message_cap, qmail_api_error_t *error)
static | src/app/desktop_api_more.c:615 | health_count_folder | static void health_count_folder(const char *wallet_path, folder_type_t folder, int *encrypted, int *plaintext)
static | src/app/desktop_api_more.c:641 | health_count_coin_files | static void health_count_coin_files(const char *wallet_path, int *encrypted, int *plaintext)
static | src/app/desktop_api_more.c:792 | legacy_count_files | static int legacy_count_files(const char *dir, int depth)
static | src/app/desktop_api_more.c:816 | legacy_dir_exists | static int legacy_dir_exists(const char *dir)
static | src/app/desktop_api.c:90 | run_send_worker | static void run_send_worker(qmail_send_worker_t *worker)
static | src/app/desktop_api.c:134 | send_worker_main | static unsigned __stdcall send_worker_main(void *arg)
static | src/app/desktop_api.c:145 | clear_error | static void clear_error(qmail_api_error_t *error)
static | src/app/desktop_api.c:153 | fail | static qmail_api_code_t fail(qmail_api_error_t *error, qmail_api_code_t code, const char *message)
static | src/app/desktop_api.c:163 | emit | static void emit(qmail_desktop_api_t *api, qmail_api_task_t *task, const char *name)
static | src/app/desktop_api.c:175 | copy_trunc | static void copy_trunc(char *dst, size_t dst_cap, const char *src)
static | src/app/desktop_api.c:191 | format_sn_address | static void format_sn_address(char *dst, size_t dst_cap, uint32_t sn, int denomination)
static | src/app/desktop_api.c:204 | guid_to_hex | static void guid_to_hex(const unsigned char guid[16], char hex[33])
static | src/app/desktop_api.c:215 | hex_to_guid | static int hex_to_guid(const char *hex, unsigned char guid[16])
static | src/app/desktop_api.c:235 | locker_to_ascii | static void locker_to_ascii(const unsigned char locker[16], char out[17])
static | src/app/desktop_api.c:245 | locker_present | static int locker_present(const unsigned char locker[16])
static | src/app/desktop_api.c:253 | payment_wallet_path | static void payment_wallet_path(const qmail_desktop_api_t *api, char *out, size_t out_cap)
static | src/app/desktop_api.c:299 | health_skip_hold | static void health_skip_hold(void)
static | src/app/desktop_api.c:308 | health_skip_release | static void health_skip_release(void)
static | src/app/desktop_api.c:329 | change_pw_file_path | static void change_pw_file_path(const qmail_desktop_api_t *api, char *out, size_t cap)
static | src/app/desktop_api.c:335 | change_pw_file_read | static int change_pw_file_read(const qmail_desktop_api_t *api)
static | src/app/desktop_api.c:358 | change_pw_file_write | static void change_pw_file_write(const qmail_desktop_api_t *api, int enabled)
static | src/app/desktop_api.c:378 | mail_coin_folder_path | static int mail_coin_folder_path(const qmail_desktop_api_t *api, int index, char *out, size_t cap)
static | src/app/desktop_api.c:389 | mail_coin_folders | static int mail_coin_folders(const qmail_desktop_api_t *api)
static | src/app/desktop_api.c:483 | env_disabled | static int env_disabled(const char *name)
static | src/app/desktop_api.c:489 | boot_pown_if_requested | static void boot_pown_if_requested(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:509 | wallet_import_root_has_coins | static int wallet_import_root_has_coins(const char *wallet_path, char *folder_out, size_t cap)
static | src/app/desktop_api.c:520 | set_recovery_status | static void set_recovery_status(qmail_desktop_api_t *api, int state, const char *text)
static | src/app/desktop_api.c:526 | recovery_thread_main | static void *recovery_thread_main(void *arg)
static | src/app/desktop_api.c:627 | start_recovery_thread | static void start_recovery_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:639 | join_recovery_thread | static void join_recovery_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:656 | boot_health_thread_main | static void *boot_health_thread_main(void *arg)
static | src/app/desktop_api.c:719 | start_boot_health_thread | static void start_boot_health_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:731 | join_boot_health_thread | static void join_boot_health_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:743 | reconcile_orphans | static void reconcile_orphans(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:812 | post_discovery_start | static void post_discovery_start(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:860 | discovery_thread_main | static void *discovery_thread_main(void *arg)
static | src/app/desktop_api.c:890 | start_discovery_thread | static void start_discovery_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:904 | join_discovery_thread | static void join_discovery_thread(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:932 | identity_guard_acquire | static int identity_guard_acquire(qmail_desktop_api_t *api, int8_t den, uint32_t sn)
static | src/app/desktop_api.c:955 | identity_guard_release | static void identity_guard_release(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:970 | beacon_on_new_mail | static void beacon_on_new_mail(const qmail_tell_notification_t *notif, void *user_data)
static | src/app/desktop_api.c:1018 | dl_retry_thread_main | static void *dl_retry_thread_main(void *arg)
static | src/app/desktop_api.c:1179 | dl_retry_stop | static void dl_retry_stop(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:1195 | beacon_stop | static void beacon_stop(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:1226 | bootstrap_wallets | static void bootstrap_wallets(qmail_desktop_api_t *api)
static | src/app/desktop_api.c:1255 | copy_body | static void copy_body(char *dst, size_t dst_cap, const char *src, size_t src_len)
static | src/app/desktop_api.c:1269 | build_to_line | static void build_to_line(char *dst, size_t dst_cap, const qmail_email_t *email)
static | src/app/desktop_api.c:1300 | parse_recipient_token | static int parse_recipient_token(const char *tok, uint32_t *sn_out)
static | src/app/desktop_api.c:1376 | split_recipient_list | static int split_recipient_list(const char *in, char out[][QMAIL_MAX_ADDRESS_LEN], int max_out)
static | src/app/desktop_api.c:1405 | recipients_to_serial_csv | static void recipients_to_serial_csv(const char *in, char *out, size_t out_cap)
static | src/app/desktop_api.c:1670 | map_service_error | static qmail_api_code_t map_service_error(qmail_api_error_t *error, qmail_svc_error_t code, const char *fallback)
static | src/app/desktop_api.c:1696 | copy_wallet_balance | static void copy_wallet_balance(qmail_api_wallet_balance_t *dst, const qmail_svc_wallet_balance_result_t *src)
static | src/app/desktop_api.c:1959 | row_from_email | static void row_from_email(qmail_api_message_row_t *row, const qmail_email_t *email)
static | src/app/desktop_api.c:2197 | map_db_result | static qmail_api_code_t map_db_result(qmail_api_error_t *error, result_t result, const char *fallback)
static | src/app/desktop_api.c:2208 | set_action_message | static void set_action_message(char *message, size_t message_cap, const char *text)
static | src/app/desktop_api.c:2214 | id_is_zero | static int id_is_zero(const uint8_t id[QMAIL_OT_ID_SIZE])
static | src/app/desktop_api.c:2561 | contact_from_svc | static void contact_from_svc(qmail_api_contact_t *dst, const qmail_contact_t *src)
static | src/app/desktop_api.c:2913 | download_poll_main | static void *download_poll_main(void *arg)
static | src/app/desktop_api.c:3292 | archive_uploaded_coins | static void archive_uploaded_coins(const char *wallet, const cloudcoin_t *coins, int count)
static | src/app/desktop_api.c:3494 | drd_load_auth | static int drd_load_auth(const qmail_desktop_api_t *api, drd_auth_coin_t *auth, raida_encryption_key_t *enc)
static | src/app/desktop_api.c:3537 | drd_load_read_enc | static int drd_load_read_enc(const qmail_desktop_api_t *api, raida_encryption_key_t *enc)
static | src/app/desktop_api.c:3554 | fill_profile_from_user | static void fill_profile_from_user(qmail_api_profile_t *out, const drd_user_t *u, int pass_count)
static | src/app/desktop_api.c:3574 | fill_drd_user | static void fill_drd_user(qmail_api_drd_user_t *out, const drd_user_t *u)
static | src/app/desktop_api.c:3883 | fill_ot_record | static void fill_ot_record(qmail_api_ot_record_t *out, const qmail_transfer_record_t *src)
static | src/app/desktop_api.c:3913 | require_transfer_manager | static qmail_api_code_t require_transfer_manager(const qmail_desktop_api_t *api, qmail_api_error_t *error)
static | src/app/main.c:38 | inproc_live_new_mail | static void inproc_live_new_mail(void *user, const char *guid_hex, unsigned sender_sn)
static | src/app/main.c:47 | print_version | static void print_version(void)
static | src/app/main.c:52 | print_help | static void print_help(void)
static | src/app/main.c:79 | file_exists | static int file_exists(const char *p)
static | src/app/main.c:89 | dir_of | static void dir_of(const char *path, char *dst, size_t cap)
static | src/app/main.c:103 | resolve_exe_dir | static void resolve_exe_dir(char *dst, size_t cap, const char *argv0)
static | src/app/main.c:122 | resolve_core_exe | static void resolve_core_exe(qgui_app_t *app, const char *flag, const char *argv0)
static | src/app/main.c:150 | core_answers | static int core_answers(qgui_transport_ops_t *t, qgui_arena_t *arena)
static | src/app/main.c:167 | setup_progress_cb | static void setup_progress_cb(void *user, int done, int step_count, int step)
static | src/app/main.c:186 | connect_core | static int connect_core(qgui_app_t *app, int flag_port, const char *flag_token)
static | src/app/main.c:241 | disconnect_core | static void disconnect_core(qgui_app_t *app)
static | src/app/startup.c:23 | join_path | static int join_path(char *out, size_t cap, const char *left, const char *right)
static | src/app/startup.c:37 | ensure_directory | static int ensure_directory(const char *path)
static | src/app/startup.c:83 | is_junk_name | static int is_junk_name(const char *name)
static | src/app/startup.c:103 | contains_coin_file | static int contains_coin_file(const char *directory)
static | src/app/startup.c:170 | resolve_executable_dir | static int resolve_executable_dir(char *out, size_t cap)
static | src/app/startup.c:328 | release_instance_lock | static void release_instance_lock(qmail_startup_t *startup)
static | src/cbdf/annotations.c:11 | is_ann | static int is_ann(uint8_t k)
static | src/cbdf/display.c:60 | nv_ensure | static cbdf_status nv_ensure(node_vec *v, size_t need)
static | src/cbdf/display.c:95 | nv_add | static cbdf_status nv_add(node_vec *v, const cbdf_disp_node *n, int *out_idx)
static | src/cbdf/display.c:109 | link_child | static void link_child(node_vec *v, int parent, int child)
static | src/cbdf/display.c:132 | style_default | static void style_default(cbdf_disp_style *s)
static | src/cbdf/display.c:141 | sign_extend_6 | static int8_t sign_extend_6(unsigned v6)
static | src/cbdf/display.c:150 | resolve_text_style | static void resolve_text_style(const cbdf_styles *styles, uint8_t index, cbdf_disp_style *out)
static | src/cbdf/display.c:188 | add_panes | static cbdf_status add_panes(node_vec *v, int doc_idx, const cbdf_styles *styles, cbdf_display *out)
static | src/cbdf/display.c:262 | find_main_pane | static int find_main_pane(const node_vec *v, int doc_idx)
static | src/cbdf/display.c:292 | add_text_under | static cbdf_status add_text_under(node_vec *v, int parent, const cbdf_disp_style *sty, cbdf_slice text)
static | src/cbdf/display.c:316 | top_content | static int top_content(const open_frame *stack, size_t depth, int pane)
static | src/cbdf/encode.c:30 | wbuf_init | static cbdf_status wbuf_init(wbuf *w, cbdf_arena *arena, size_t cap)
static | src/cbdf/encode.c:45 | wbuf_ensure | static cbdf_status wbuf_ensure(wbuf *w, size_t need)
static | src/cbdf/encode.c:80 | wbuf_bytes | static cbdf_status wbuf_bytes(wbuf *w, const uint8_t *p, size_t n)
static | src/cbdf/encode.c:93 | wbuf_u8 | static cbdf_status wbuf_u8(wbuf *w, uint8_t v)
static | src/cbdf/encode.c:98 | wbuf_u16le | static cbdf_status wbuf_u16le(wbuf *w, uint16_t v)
static | src/cbdf/encode.c:106 | wbuf_u32le | static cbdf_status wbuf_u32le(wbuf *w, uint32_t v)
static | src/cbdf/encode.c:117 | wbuf_section_len | static cbdf_status wbuf_section_len(wbuf *w, size_t len)
static | src/cbdf/encode.c:125 | check_section_cap | static cbdf_status check_section_cap(size_t len, size_t cap)
static | src/cbdf/encode.c:171 | feature_mask_encode | static size_t feature_mask_encode(uint32_t mask, uint8_t out[4])
static | src/cbdf/encode.c:289 | copy_slice | static cbdf_status copy_slice(cbdf_arena *mem, cbdf_slice src, cbdf_slice *dst)
static | src/cbdf/encode.c:407 | emit_styles_payload | static cbdf_status emit_styles_payload(const cbdf_doc *doc, wbuf *w)
static | src/cbdf/encode.c:476 | emit_text_norm_bytes | static cbdf_status emit_text_norm_bytes(wbuf *w, const uint8_t *p, size_t n)
static | src/cbdf/encode.c:504 | slice_has_cr | static int slice_has_cr(const uint8_t *p, size_t n)
static | src/cbdf/encode.c:524 | validate_encode_text_v1 | static cbdf_status validate_encode_text_v1(const uint8_t *text, size_t text_len, const uint8_t *styles, size_t styles_len, cbdf_arena *mem)
static | src/cbdf/encode.c:548 | validate_encode_runs | static cbdf_status validate_encode_runs(const cbdf_doc *doc)
static | src/cbdf/encode.c:653 | emit_text_from_runs | static cbdf_status emit_text_from_runs(const cbdf_doc *doc, wbuf *w, int v0)
static | src/cbdf/encode.c:878 | res_id_less | static int res_id_less(const cbdf_resource *a, const cbdf_resource *b)
static | src/cbdf/encode.c:883 | emit_resources_payload | static cbdf_status emit_resources_payload(const cbdf_doc *doc, wbuf *w, cbdf_arena *mem)
static | src/cbdf/encode.c:960 | is_annotation_key | static int is_annotation_key(uint8_t k)
static | src/cbdf/encode.c:966 | meta_only_forbidden_key | static int meta_only_forbidden_key(uint8_t k)
static | src/cbdf/encode.c:977 | meta_pairs_wire_size | static cbdf_status meta_pairs_wire_size(const meta_emit_pair *pairs, size_t np, size_t *out_sz)
static | src/cbdf/encode.c:1002 | emit_meta | static cbdf_status emit_meta(const meta_emit_pair *pairs, size_t np, wbuf *w)
static | src/cbdf/encode.c:1036 | sort_pairs_by_key | static void sort_pairs_by_key(meta_emit_pair *a, size_t n)
static | src/cbdf/hash.c:19 | rotr | static uint32_t rotr(uint32_t x, uint32_t n)
static | src/cbdf/hash.c:24 | sha256_transform | static void sha256_transform(sha256_ctx *ctx, const uint8_t data[])
static | src/cbdf/hash.c:84 | sha256_init | static void sha256_init(sha256_ctx *ctx)
static | src/cbdf/hash.c:98 | sha256_update | static void sha256_update(sha256_ctx *ctx, const uint8_t *data, size_t len)
static | src/cbdf/hash.c:111 | sha256_final | static void sha256_final(sha256_ctx *ctx, uint8_t hash[32])
static | src/cbdf/hash.c:157 | F | static uint32_t F(uint32_t x, uint32_t y, uint32_t z)
static | src/cbdf/hash.c:158 | G | static uint32_t G(uint32_t x, uint32_t y, uint32_t z)
static | src/cbdf/hash.c:159 | H | static uint32_t H(uint32_t x, uint32_t y, uint32_t z)
static | src/cbdf/hash.c:160 | I | static uint32_t I(uint32_t x, uint32_t y, uint32_t z)
static | src/cbdf/hash.c:161 | rotl | static uint32_t rotl(uint32_t x, uint32_t n)
static | src/cbdf/hash.c:163 | md5_transform | static void md5_transform(uint32_t state[4], const uint8_t block[64])
static | src/cbdf/hash.c:268 | md5_init | static void md5_init(md5_ctx *ctx)
static | src/cbdf/hash.c:277 | md5_update | static void md5_update(md5_ctx *ctx, const uint8_t *input, size_t len)
static | src/cbdf/hash.c:290 | md5_final | static void md5_final(md5_ctx *ctx, uint8_t digest[16])
static | src/cbdf/hash.c:312 | put_u32le | static void put_u32le(uint8_t *p, uint32_t v)
static | src/cbdf/meta.c:11 | key_is_known_sender | static int key_is_known_sender(uint8_t key)
static | src/cbdf/meta.c:48 | key_is_annotation | static int key_is_annotation(uint8_t key)
static | src/cbdf/meta.c:53 | key_is_known_annotation | static int key_is_known_annotation(uint8_t key)
static | src/cbdf/meta.c:135 | validate_known_value | static cbdf_status validate_known_value(uint8_t key, const cbdf_slice *val)
static | src/cbdf/meta.c:235 | grow_cap | static size_t grow_cap(size_t old_cap, size_t min_need)
static | src/cbdf/meta.c:247 | push_warn | static cbdf_status push_warn(cbdf_meta *out, cbdf_arena *arena, uint16_t code, size_t *warn_cap)
static | src/cbdf/meta.c:270 | append_pair | static cbdf_status append_pair(cbdf_meta_pair **arr, size_t *count, size_t *cap, cbdf_arena *arena, uint8_t key, cbdf_slice val)
static | src/cbdf/meta.c:294 | append_u8 | static cbdf_status append_u8(uint8_t **arr, size_t *count, size_t *cap, cbdf_arena *arena, uint8_t v)
static | src/cbdf/meta.c:314 | seen_known_singleton | static int seen_known_singleton(const cbdf_meta_pair *pairs, size_t n, uint8_t key)
static | src/cbdf/meta.c:617 | get_u8_key | static cbdf_status get_u8_key(const cbdf_meta *m, uint8_t key, uint8_t *out, int *present)
static | src/cbdf/meta.c:750 | utf8_seq_len | static size_t utf8_seq_len(uint8_t lead)
static | src/cbdf/resources.c:26 | push_warn | static cbdf_status push_warn(cbdf_resources *out, cbdf_arena *arena, uint16_t code)
static | src/cbdf/section.c:24 | sec_grow_cap | static size_t sec_grow_cap(size_t old_cap, size_t min_need)
static | src/cbdf/section.c:36 | push_sec_warn | static cbdf_status push_sec_warn(cbdf_sections *out, cbdf_arena *arena, uint16_t code, size_t *warn_cap)
static | src/cbdf/section.c:59 | merge_meta_warnings | static void merge_meta_warnings(cbdf_sections *out, cbdf_arena *arena, const cbdf_meta *meta, size_t *warn_cap)
static | src/cbdf/section.c:68 | fail | static cbdf_status fail(cbdf_sections *out, cbdf_status st, size_t off, const char *detail)
static | src/cbdf/section.c:78 | read_len_section | static cbdf_status read_len_section(cbdf_cur *cur, cbdf_slice *payload, size_t *payload_off, size_t *len_off, size_t max_len)
static | src/cbdf/section.c:109 | read_extensions | static cbdf_status read_extensions(cbdf_cur *cur, cbdf_sections *out, cbdf_arena *arena, size_t *warn_cap)
static | src/cbdf/section.c:153 | walk_v0 | static cbdf_status walk_v0(cbdf_cur *cur, cbdf_sections *out)
static | src/cbdf/section.c:214 | walk_v1_uncompressed | static cbdf_status walk_v1_uncompressed(cbdf_cur *cur, cbdf_sections *out, cbdf_arena *arena, size_t *warn_cap)
static | src/cbdf/section.c:275 | walk_v1_compressed | static cbdf_status walk_v1_compressed(cbdf_cur *cur, cbdf_sections *out, cbdf_arena *arena, size_t *warn_cap)
static | src/cbdf/styles.c:32 | subtable_is_tiered | static int subtable_is_tiered(int idx)
static | src/cbdf/styles.c:91 | fail_st | static cbdf_status fail_st(cbdf_styles *out, cbdf_status st, size_t off, const char *detail)
static | src/cbdf/styles.c:98 | check_font_effect_ids | static cbdf_status check_font_effect_ids(cbdf_styles *out, const cbdf_slice *recs, uint8_t count, uint16_t stride, size_t records_off)
static | src/cbdf/text.c:21 | run_push | static cbdf_status run_push(run_vec *v, cbdf_arena *arena, cbdf_text_run run)
static | src/cbdf/text.c:40 | fail_tx | static cbdf_status fail_tx(cbdf_text *out, cbdf_status st, size_t off, const char *detail)
static | src/cbdf/text.c:47 | style_count_for | static int style_count_for(const cbdf_styles *styles, uint8_t stack_kind)
static | src/cbdf/text.c:66 | check_style_index | static cbdf_status check_style_index(const cbdf_styles *styles, uint8_t sk, uint8_t idx, size_t off, cbdf_text *out)
static | src/cbdf/text.c:77 | check_border_index | static cbdf_status check_border_index(const cbdf_styles *styles, uint8_t idx, size_t off, cbdf_text *out)
static | src/cbdf/text.c:625 | bb_append | static cbdf_status bb_append(byte_buf *b, cbdf_arena *a, const uint8_t *p, size_t n)
static | src/cbdf/text.c:660 | bb_putc | static cbdf_status bb_putc(byte_buf *b, cbdf_arena *a, uint8_t c)
static | src/cbdf/types.c:58 | arena_clear | static void arena_clear(cbdf_arena *a)
static | src/cbdf/types.c:86 | chunk_create_owned | static cbdf_arena_chunk *chunk_create_owned(size_t capacity)
static | src/cbdf/types.c:171 | chunk_try_alloc | static void *chunk_try_alloc(cbdf_arena_chunk *ch, size_t size)
static | src/cbdf/types.c:208 | next_chunk_capacity | static size_t next_chunk_capacity(size_t prev_cap, size_t need)
static | src/cbdf/view/render.cpp:11 | set_draw_color | static void set_draw_color(SDL_Renderer *renderer, Clay_Color color)
static | src/cbdf/view/render.cpp:16 | to_frect | static SDL_FRect to_frect(const Clay_BoundingBox &b)
static | src/cbdf/view/render.cpp:20 | to_rect | static SDL_Rect to_rect(const Clay_BoundingBox &b)
static | src/cbdf/view/render.cpp:29 | intersect_rect | static SDL_Rect intersect_rect(SDL_Rect a, SDL_Rect b)
static | src/cbdf/view/render.cpp:40 | draw_border | static void draw_border(SDL_Renderer *renderer, const Clay_BoundingBox &box, const Clay_BorderRenderData &border)
static | src/cbdf/view/view.cpp:291 | count_text_commands | static int count_text_commands(Clay_RenderCommandArray commands)
static | src/coin/boot_encryption_check.c:21 | scan_folder_encryption | static void scan_folder_encryption(const char *wallet_path, folder_type_t folder, int *type10_out, int *legacy_out)
static | src/coin/coin_file.c:44 | plaintext_warn_seen | static bool plaintext_warn_seen(const char *filepath)
static | src/coin/coin_file.c:54 | plaintext_warn_remember | static void plaintext_warn_remember(const char *filepath)
static | src/coin/coin_file.c:64 | validate_header | static result_t validate_header(const coin_file_header_raw_t *header)
static | src/coin/coin_file.c:80 | file_physical_size | static result_t file_physical_size(FILE *file, long *size_out)
static | src/coin/coin_file.c:121 | t10_parse | static result_t t10_parse(const uint8_t buf[CCEF_FILE_SIZE], t10_parsed_t *out)
static | src/coin/coin_file.c:191 | t10_serialize | static result_t t10_serialize(uint8_t out[CCEF_FILE_SIZE], const cloudcoin_t *coin, const uint8_t key[32], const uint8_t salt[16], const uint8_t nonce[12], const uint8_t future_use_1[CCEF_FUTURE_USE_1_SIZE], uint8_t future_use_2)
static | src/coin/coin_file.c:260 | t10_decrypt_to_coin | static result_t t10_decrypt_to_coin(const t10_parsed_t *parsed, const uint8_t key[32], cloudcoin_t *coin)
static | src/coin/coin_file.c:290 | t10_load_file | static result_t t10_load_file(const char *filepath, uint8_t buf[CCEF_FILE_SIZE])
static | src/coin/coin_file.c:945 | generate_temp_filename | static void generate_temp_filename(const char *filepath, char *temp_path, size_t size)
static | src/coin/coin_file.c:960 | t10_write_bytes | static result_t t10_write_bytes(const char *filepath, const uint8_t buf[CCEF_FILE_SIZE])
static | src/coin/coin_file.c:987 | t10_coins_semantically_equal | static bool t10_coins_semantically_equal(const cloudcoin_t *a, const cloudcoin_t *b)
static | src/coin/coin_file.c:1304 | coin_matches_disk | static bool coin_matches_disk(const char *filepath, const cloudcoin_t *coin, uint8_t target_format)
static | src/coin/coin_file.c:1603 | is_wallet_folder | static bool is_wallet_folder(const char *directory)
static | src/coin/coin_filename.c:39 | format_value_string | static void format_value_string(uint64_t microunits, char *buffer, size_t size)
static | src/coin/coin_filename.c:189 | parse_value_microunits | static uint64_t parse_value_microunits(const char *str, size_t len)
static | src/coin/coin_filename.c:232 | extract_quoted_tag | static char extract_quoted_tag(const char *start, char *tag_out, size_t tag_size)
static | src/coin/coin_filename.c:333 | coin_filename_parse_task | static result_t coin_filename_parse_task(const char *filename, uint32_t *serial_out, int8_t *denom_out, char *task_id_out, size_t task_id_size)
static | src/coin/commands/cmd_convert_credit.c:44 | credit_status_has_body | static bool credit_status_has_body(uint8_t status)
static | src/coin/commands/cmd_convert_credit.c:51 | credit_scaled_timeout | static uint32_t credit_scaled_timeout(int coin_count)
static | src/coin/commands/cmd_convert_credit.c:60 | ccv3_den_units | static uint64_t ccv3_den_units(int8_t den_code)
static | src/coin/commands/cmd_convert_credit.c:73 | credit_decompose | static void credit_decompose(uint64_t whole_cc, int counts[CONVERT_GETSNS_DENS])
static | src/coin/commands/cmd_convert_credit.c:84 | credit_spendable_whole_cc | static uint64_t credit_spendable_whole_cc(const uint64_t due_by_raida[RAIDA_COUNT])
static | src/coin/commands/cmd_convert_credit.c:98 | txid_is_zero | static int txid_is_zero(const uint8_t *txid)
static | src/coin/commands/cmd_convert_credit.c:132 | credit_setup_keys | static result_t credit_setup_keys(const convert_options_t *options, encryption_key_t ctx_keys[RAIDA_COUNT], uint8_t *enc_type_out)
static | src/coin/commands/cmd_convert_credit.c:158 | credit_log_raida | static void credit_log_raida(const char *cmd, const exec_results_t *er)
static | src/coin/commands/cmd_convert_credit.c:172 | credit_random_start | static result_t credit_random_start(uint32_t *out)
static | src/coin/commands/cmd_convert_credit.c:180 | credit_gen_ans | static result_t credit_gen_ans(cloudcoin_t *coins, int n)
static | src/coin/commands/cmd_convert_credit.c:202 | authenticate_raida_key | static encryption_key_t *authenticate_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:207 | authenticate_build_body | static result_t authenticate_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:232 | authenticate_run | static result_t authenticate_run(const convert_txn_t *txn, const legacy_coin_t *coins, int count, const convert_options_t *options, convert_authenticate_result_t *result)
static | src/coin/commands/cmd_convert_credit.c:374 | getsns_raida_key | static encryption_key_t *getsns_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:379 | getsns_build_body | static result_t getsns_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:400 | getsns_vote_cmp | static int getsns_vote_cmp(const void *a, const void *b)
static | src/coin/commands/cmd_convert_credit.c:409 | getsns_vote_add | static void getsns_vote_add(getsns_vote_t *arr, int *n, int cap, uint32_t sn)
static | src/coin/commands/cmd_convert_credit.c:604 | pickup_raida_key | static encryption_key_t *pickup_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:609 | pickup_build_body | static result_t pickup_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_convert_credit.c:765 | credit_journal_path | static void credit_journal_path(const char *wallet_path, const char *tag, char *out, size_t out_sz)
static | src/coin/commands/cmd_convert_credit.c:772 | credit_journal_live_path | static void credit_journal_live_path(const char *path, char *out, size_t out_sz)
static | src/coin/commands/cmd_convert_credit.c:780 | credit_fwrite | static int credit_fwrite(const void *buf, size_t n, FILE *f)
static | src/coin/commands/cmd_convert_credit.c:784 | credit_journal_write_at | static result_t credit_journal_write_at(const convert_txn_t *txn, const char *path, const cloudcoin_t *targets, int count)
static | src/coin/commands/cmd_convert_credit.c:871 | credit_journal_delete_at | static void credit_journal_delete_at(const char *path)
static | src/coin/commands/cmd_convert_credit.c:883 | credit_journal_read | static result_t credit_journal_read(const char *path, convert_txn_t *txn, cloudcoin_t **targets_out, int *count_out)
static | src/coin/commands/cmd_convert_credit.c:952 | credit_sn_set_has | static bool credit_sn_set_has(const credit_sn_set_t *set, int8_t den, uint32_t sn)
static | src/coin/commands/cmd_convert_credit.c:959 | credit_sn_set_add | static result_t credit_sn_set_add(credit_sn_set_t *set, int8_t den, uint32_t sn)
static | src/coin/commands/cmd_convert_credit.c:975 | credit_sn_set_free | static void credit_sn_set_free(credit_sn_set_t *set)
static | src/coin/commands/cmd_convert_credit.c:982 | credit_sn_set_load | static void credit_sn_set_load(const char *wallet_path, credit_sn_set_t *set)
static | src/coin/commands/cmd_convert_credit.c:1004 | credit_try_save | static result_t credit_try_save(const char *grade_path, cloudcoin_t *coin, const char *task_id, credit_sn_set_t *on_disk)
static | src/coin/commands/cmd_convert_credit.c:1014 | credit_auth_votes | static int credit_auth_votes(const cloudcoin_t *coin)
static | src/coin/commands/cmd_convert_credit.c:1022 | credit_fold_den | static void credit_fold_den(int counts[CONVERT_GETSNS_DENS], int k)
static | src/coin/commands/cmd_convert_credit.c:1042 | credit_target_used | static int credit_target_used(const cloudcoin_t *have, int n, int8_t dn, uint32_t sn)
static | src/coin/commands/cmd_convert_credit.c:1048 | credit_drain_due | static void credit_drain_due(convert_txn_t *txn, const convert_options_t *options, const char *journal_path, const char *grade_path, credit_sn_set_t *on_disk, cloudcoin_t *unsaved, int *unsaved_count, int *total_written, uint64_t *minted_value_units, uint64_t accepted_units, uint64_t *last_spendable_cc, int *raida_pass_count, bool *phase_error)
static | src/coin/commands/cmd_convert.c:100 | sn_map_key | static inline uint64_t sn_map_key(int8_t den, uint32_t sn)
static | src/coin/commands/cmd_convert.c:104 | sn_map_init | static bool sn_map_init(sn_hash_map_t *map, int initial_capacity)
static | src/coin/commands/cmd_convert.c:122 | sn_map_free | static void sn_map_free(sn_hash_map_t *map)
static | src/coin/commands/cmd_convert.c:131 | sn_map_grow | static bool sn_map_grow(sn_hash_map_t *map)
static | src/coin/commands/cmd_convert.c:164 | sn_map_find_or_insert | static int* sn_map_find_or_insert(sn_hash_map_t *map, uint64_t key, bool *is_new)
static | src/coin/commands/cmd_convert.c:186 | get_sns_raida_key | static encryption_key_t* get_sns_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_convert.c:192 | switch_shard_raida_key | static encryption_key_t* switch_shard_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_convert.c:201 | skip_whitespace | static const char *skip_whitespace(const char *p)
static | src/coin/commands/cmd_convert.c:206 | parse_json_string | static const char *parse_json_string(const char *p, char *out, size_t out_size)
static | src/coin/commands/cmd_convert.c:220 | hex_char_to_nibble | static int hex_char_to_nibble(char c)
static | src/coin/commands/cmd_convert.c:227 | hex_to_bytes | static bool hex_to_bytes(const char *hex, uint8_t *out, size_t out_len)
static | src/coin/commands/cmd_convert.c:255 | legacy_cc1_face_value | static int legacy_cc1_face_value(uint32_t sn)
static | src/coin/commands/cmd_convert.c:619 | decompose_value | static void decompose_value(int total_value, int counts[6])
static | src/coin/commands/cmd_convert.c:637 | get_sns_convert_build_body | static result_t get_sns_convert_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_convert.c:694 | convert_get_sns_once | static result_t convert_get_sns_once(uint8_t shard_id, int total_value, uint32_t session_id, const convert_options_t *options, cloudcoin_t **new_coins_out, int *new_count_out)
static | src/coin/commands/cmd_convert.c:1022 | convert_legacy_get_sns | static result_t convert_legacy_get_sns(uint8_t shard_id, int total_value, uint32_t session_id, const convert_options_t *options, cloudcoin_t **new_coins_out, int *new_count_out)
static | src/coin/commands/cmd_convert.c:1049 | switch_shard_no_sum_build_body | static result_t switch_shard_no_sum_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_convert.c:1134 | convert_switch_shard_no_sum | static result_t convert_switch_shard_no_sum(legacy_coin_t *legacy_coins, int legacy_count, cloudcoin_t *new_coins, int new_count, uint8_t shard_id, uint32_t session_id, const convert_options_t *options, const uint8_t raida_keys_in[RAIDA_COUNT][AN_LENGTH], int *actual_new_count_out, uint8_t *legacy_authentic_out, uint8_t *legacy_passed_out, int *pass_count_out)
static | src/coin/commands/cmd_convert.c:1563 | convert_write_recovery_journal | static result_t convert_write_recovery_journal(cloudcoin_t *coins, int count, const uint8_t pangs[RAIDA_COUNT][AN_LENGTH], const char *wallet_path, const char *task_id, const legacy_coin_t *sources, int source_count, uint8_t shard_id)
static | src/coin/commands/cmd_convert.c:1675 | convert_delete_recovery_journal | static void convert_delete_recovery_journal(const char *wallet_path, const char *task_id)
static | src/coin/commands/cmd_convert.c:1725 | convert_read_recovery_journal | static result_t convert_read_recovery_journal(const char *journal_path, cloudcoin_t **coins_out, int *count_out, uint8_t pangs_out[RAIDA_COUNT][AN_LENGTH], legacy_coin_t **sources_out, int *source_count_out, uint8_t *shard_out)
static | src/coin/commands/cmd_convert.c:1852 | convert_retire_staged_sources | static void convert_retire_staged_sources(const char *wallet_path, const char *journal_path)
static | src/coin/commands/cmd_convert.c:1918 | convert_recover_one_journal | static result_t convert_recover_one_journal(const char *wallet_path, const char *journal_path, int *recovered_out)
static | src/coin/commands/cmd_convert.c:2129 | convert_load_source_folder | static result_t convert_load_source_folder(const char *dir, legacy_coin_t **coins_out, int *count_out, char (**files_out)[MAX_PATH_LEN], int *file_count_out, uint8_t *shard_out)
static | src/coin/commands/cmd_convert.c:2678 | recovery_name_ends | static bool recovery_name_ends(const char *name, const char *suffix)
static | src/coin/commands/cmd_convert.c:2684 | recovery_file_exists | static bool recovery_file_exists(const char *path)
static | src/coin/commands/cmd_convert.c:2691 | recovery_cjournal_is_cj3 | static int recovery_cjournal_is_cj3(const char *path)
static | src/coin/commands/cmd_convert.c:2700 | recovery_delete_obsolete_cjournal | static void recovery_delete_obsolete_cjournal(const char *path)
static | src/coin/commands/cmd_convert.c:2707 | count_recovery_journals_in | static int count_recovery_journals_in(const char *recovery_dir)
static | src/coin/commands/cmd_convert.c:2776 | recover_credit_journals_in | static void recover_credit_journals_in(const char *wallet_path, const char *recovery_dir, int *journals, int *resolved)
static | src/coin/commands/cmd_convert.c:3015 | convert_write_new_coins | static result_t convert_write_new_coins(cloudcoin_t *coins, int count, const convert_options_t *options)
static | src/coin/commands/cmd_convert.c:3070 | convert_batch_value | static int convert_batch_value(const legacy_coin_t *coins, int count, uint8_t shard_id)
static | src/coin/commands/cmd_count.c:27 | count_build_body | static result_t count_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_count.c:49 | parse_count_response | static void parse_count_response(const raida_result_t *exec_result, count_result_t *cnt_result)
static | src/coin/commands/cmd_deposit.c:60 | deposit_mutex_init | static void deposit_mutex_init(void)
static | src/coin/commands/cmd_deposit.c:98 | report_progress | static void report_progress(const char *task_id, int percent, const char *phase, const char *message, deposit_progress_fn callback, void *ctx, const char *wallet_path)
static | src/coin/commands/cmd_deposit.c:1534 | strcasecmp | static int strcasecmp(const char *s1, const char *s2)
static | src/coin/commands/cmd_deposit.c:1547 | scan_folder_for_task | static void scan_folder_for_task(const char *folder_path, const char *task_id, folder_type_t folder_type, deposit_result_t *result)
static | src/coin/commands/cmd_deposit.c:1746 | recovery_mutex_init | static void recovery_mutex_init(void)
static | src/coin/commands/cmd_deposit.c:1752 | recovery_mutex_lock | static void recovery_mutex_lock(void)
static | src/coin/commands/cmd_deposit.c:1757 | recovery_mutex_unlock | static void recovery_mutex_unlock(void)
static | src/coin/commands/cmd_deposit.c:1763 | recovery_mutex_lock | static void recovery_mutex_lock(void)
static | src/coin/commands/cmd_deposit.c:1767 | recovery_mutex_unlock | static void recovery_mutex_unlock(void)
static | src/coin/commands/cmd_deposit.c:1789 | ensure_directory_exists | static void ensure_directory_exists(const char *path)
static | src/coin/commands/cmd_deposit.c:1801 | extract_task_id_from_filename | static bool extract_task_id_from_filename(const char *filename, char *task_id, size_t size)
static | src/coin/commands/cmd_deposit.c:1833 | find_or_create_recovery_task | static recovery_task_info_t* find_or_create_recovery_task(const char *task_id, const char *wallet_path, const char *wallet_name)
static | src/coin/commands/cmd_deposit.c:1875 | scan_wallet_suspect_folder | static void scan_wallet_suspect_folder(const char *wallet_path, const char *wallet_name)
static | src/coin/commands/cmd_detect_hash.c:134 | detect_hash_body_builder | static result_t detect_hash_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_detect_hash.c:144 | detect_hash_get_challenge | static result_t detect_hash_get_challenge(uint8_t raida_id, uint8_t challenge_out[CHALLENGE_LENGTH], void *user_data)
static | src/coin/commands/cmd_detect.c:129 | detect_primary_key | static const raida_encryption_key_t *detect_primary_key( const detect_options_t *options)
static | src/coin/commands/cmd_detect.c:226 | detect_body_builder | static result_t detect_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_detect.c:233 | detect_get_raida_key | static encryption_key_t* detect_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_drd.c:67 | drd_get_raida_key | static encryption_key_t *drd_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_drd.c:75 | drd_setup | static result_t drd_setup(drd_context_t *ctx, exec_config_t *config, const raida_encryption_key_t *enc_key)
static | src/coin/commands/cmd_drd.c:107 | drd_collect | static void drd_collect(const exec_results_t *exec_results, const char *cmd_name, drd_fanout_result_t *out)
static | src/coin/commands/cmd_drd.c:156 | drd_class_rejection_valid | static bool drd_class_rejection_valid(int8_t cr)
static | src/coin/commands/cmd_drd.c:160 | drd_name_valid | static bool drd_name_valid(const char *name)
static | src/coin/commands/cmd_drd.c:169 | drd_write_auth | static size_t drd_write_auth(uint8_t *p, const drd_auth_coin_t *auth, uint8_t raida_id)
static | src/coin/commands/cmd_drd.c:180 | drd_post_user_build_body | static result_t drd_post_user_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:216 | drd_get_user_build_body | static result_t drd_get_user_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:231 | drd_search_build_body | static result_t drd_search_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:262 | drd_auth_only_build_body | static result_t drd_auth_only_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:274 | drd_list_set_build_body | static result_t drd_list_set_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:295 | drd_list_remove_build_body | static result_t drd_list_remove_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:326 | drd_parse_user_record | static bool drd_parse_user_record(const uint8_t *body, size_t body_len, size_t *offset, drd_user_t *u)
static | src/coin/commands/cmd_drd.c:372 | drd_merge_user | static void drd_merge_user(drd_user_t *results, int max_results, int *count, const drd_user_t *u)
static | src/coin/commands/cmd_drd.c:739 | drd_parse_changes_response | static result_t drd_parse_changes_response(const uint8_t *body, size_t body_len, drd_changes_page_t *page_out)
static | src/coin/commands/cmd_drd.c:1106 | drd_server_get_raida_key | static encryption_key_t *drd_server_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_drd.c:1117 | drd_server_setup | static result_t drd_server_setup(drd_server_ctx_t *ctx, exec_config_t *config, const raida_encryption_key_pair_t *enc_pair)
static | src/coin/commands/cmd_drd.c:1153 | drd_srv_write_identity | static size_t drd_srv_write_identity(uint8_t *p, const drd_auth_coin_t *auth, uint8_t raida_id)
static | src/coin/commands/cmd_drd.c:1164 | drd_srv_emit_tlv | static size_t drd_srv_emit_tlv(uint8_t *p, uint8_t tag, const void *v, size_t len, int *fc)
static | src/coin/commands/cmd_drd.c:1173 | drd_srv_emit_u64 | static size_t drd_srv_emit_u64(uint8_t *p, uint8_t tag, uint64_t v, int *fc)
static | src/coin/commands/cmd_drd.c:1179 | drd_srv_emit_u32 | static size_t drd_srv_emit_u32(uint8_t *p, uint8_t tag, uint32_t v, int *fc)
static | src/coin/commands/cmd_drd.c:1185 | drd_srv_emit_u8 | static size_t drd_srv_emit_u8(uint8_t *p, uint8_t tag, uint8_t v, int *fc)
static | src/coin/commands/cmd_drd.c:1189 | drd_server_post_build_body | static result_t drd_server_post_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:1320 | drd_server_get_build_body | static result_t drd_server_get_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_drd.c:1351 | drd_srv_parse_record | static bool drd_srv_parse_record(const uint8_t *body, size_t body_len, size_t *offset, drd_server_desc_t *d)
static | src/coin/commands/cmd_drd.c:1526 | drd_srv_merge | static void drd_srv_merge(drd_server_desc_t *results, int max_results, int *count, const drd_server_desc_t *d)
static | src/coin/commands/cmd_drd.c:1544 | drd_srv_desc_valid | static bool drd_srv_desc_valid(const drd_server_desc_t *d)
static | src/coin/commands/cmd_echo.c:42 | echo_build_body | static result_t echo_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_echo.c:61 | display_echo_results | static void display_echo_results(const echo_results_t *task)
static | src/coin/commands/cmd_export.c:49 | ensure_dir_exists | static result_t ensure_dir_exists(const char *path)
static | src/coin/commands/cmd_export.c:90 | get_export_locations_path | static result_t get_export_locations_path(char *path_out, size_t size)
static | src/coin/commands/cmd_export.c:284 | scan_folder_coins | static result_t scan_folder_coins(const char *folder_path, folder_scan_internal_t *scan)
static | src/coin/commands/cmd_export.c:381 | free_folder_scan | static void free_folder_scan(folder_scan_internal_t *scan)
static | src/coin/commands/cmd_export.c:391 | compare_by_value_desc | static int compare_by_value_desc(const void *a, const void *b)
static | src/coin/commands/cmd_find.c:48 | find_get_raida_key | static encryption_key_t* find_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_find.c:63 | find_body_builder | static result_t find_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_find.c:122 | find_parse_response | static void find_parse_response(const raida_result_t *raida_result, int raida_id, cloudcoin_t *coins, int coin_count, find_coin_result_t *coin_results)
static | src/coin/commands/cmd_fix_encryption.c:24 | dump_single_result | static void dump_single_result(const raida_result_t *r, const char *label)
static | src/coin/commands/cmd_fix_encryption.c:581 | is_helper_eligible | static bool is_helper_eligible(uint8_t status_code)
static | src/coin/commands/cmd_fix_protocol.c:112 | fix_exec_body_builder | static result_t fix_exec_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_fix_protocol.c:124 | fix_parse_response | static result_t fix_parse_response(const protocol_response_t *response, int coin_count, bool *results_out)
static | src/coin/commands/cmd_fix.c:28 | collect_fracked_sns | static result_t collect_fracked_sns(const char *wallet_path, uint32_t **sns_out, size_t *count_out)
static | src/coin/commands/cmd_get_sns.c:28 | get_sns_build_body | static result_t get_sns_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_get_ticket.c:157 | ticket_batch_body_builder | static result_t ticket_batch_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_get_ticket.c:165 | ticket_batch_get_key | static encryption_key_t *ticket_batch_get_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_grade.c:114 | remove_coin_duplicates | static void remove_coin_duplicates(const char *wallet_path, const char *filename, folder_type_t dest_folder)
static | src/coin/commands/cmd_heal.c:44 | heal_try_reseat_helper | static result_t heal_try_reseat_helper(const char *wallet_path, const cloudcoin_t *coins, int coin_count, uint32_t rejected_sn, raida_encryption_key_t *out_key)
static | src/coin/commands/cmd_heal.c:100 | heal_outcome_tally | static void heal_outcome_tally(heal_outcome_t *groups, int *group_count, int fixed_count, int pass_before, int pass_after, heal_status_t status, uint32_t serial_number)
static | src/coin/commands/cmd_join.c:32 | join_build_body | static result_t join_build_body(uint8_t raida_id, uint8_t **body, size_t *body_len, void *user_data)
static | src/coin/commands/cmd_locker.c:27 | redact_locker_key | static void redact_locker_key(const char *key, char *out, size_t out_sz)
static | src/coin/commands/cmd_locker.c:136 | put_get_raida_key | static encryption_key_t* put_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_locker.c:149 | peek_get_raida_key | static encryption_key_t* peek_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_locker.c:163 | download_get_raida_key | static encryption_key_t* download_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_locker.c:172 | put_locker_build_body | static result_t put_locker_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_locker.c:221 | peek_locker_build_body | static result_t peek_locker_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_locker.c:238 | download_locker_build_body | static result_t download_locker_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_locker.c:260 | parse_put_response | static void parse_put_response(const raida_result_t *exec_result, core_put_locker_raida_result_t *put_result)
static | src/coin/commands/cmd_locker.c:293 | parse_peek_response | static void parse_peek_response(const raida_result_t *exec_result, core_peek_locker_raida_result_t *peek_result)
static | src/coin/commands/cmd_locker.c:909 | put_no_sum_get_raida_key | static encryption_key_t* put_no_sum_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_locker.c:914 | put_locker_no_sum_build_body | static result_t put_locker_no_sum_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_locker.c:955 | parse_put_no_sum_response | static bool parse_put_no_sum_response(const raida_result_t *exec_result, int coin_count, bool *passed_out)
static | src/coin/commands/cmd_locker.c:1146 | put_batch_get_raida_key | static encryption_key_t* put_batch_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_locker.c:1151 | put_locker_batch_build_body | static result_t put_locker_batch_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_make_change.c:94 | build_make_change_body | static result_t build_make_change_body( const cloudcoin_t *coin, uint8_t raida_id, uint32_t starting_sn, const uint8_t pans[MAKE_CHANGE_PAN_COUNT][AN_LENGTH], uint8_t body[MAKE_CHANGE_BODY_SIZE])
static | src/coin/commands/cmd_make_change.c:131 | make_change_body_builder | static result_t make_change_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_make_change.c:157 | make_change_get_raida_key | static encryption_key_t *make_change_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_make_change.c:176 | find_coin_in_folder | static result_t find_coin_in_folder(const char *wallet_path, folder_type_t folder, int8_t denomination, bool require_quorum, cloudcoin_t *coin_out, char *filename_out, size_t filename_size)
static | src/coin/commands/cmd_make_change.c:231 | find_coin_to_break | static result_t find_coin_to_break(const char *wallet_path, int8_t denomination, cloudcoin_t *coin_out, char *filename_out, size_t filename_size, folder_type_t *source_folder_out)
static | src/coin/commands/cmd_make_change.c:283 | create_new_coins | static int create_new_coins(const char *wallet_path, uint32_t starting_sn, int8_t new_denom, const uint8_t pans[RAIDA_COUNT][MAKE_CHANGE_PAN_COUNT][AN_LENGTH], const uint8_t raida_status[RAIDA_COUNT])
static | src/coin/commands/cmd_pown.c:104 | build_pown_body | static result_t build_pown_body(cloudcoin_t *coins, int coin_count, uint8_t raida_id, uint8_t **body_out, size_t *body_size_out)
static | src/coin/commands/cmd_pown.c:149 | build_pown_sum_body | static result_t build_pown_sum_body(cloudcoin_t *coins, int coin_count, uint8_t raida_id, const uint8_t ad[16], uint8_t **body_out, size_t *body_size_out)
static | src/coin/commands/cmd_pown.c:365 | pown_body_builder | static result_t pown_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_pown.c:378 | pown_get_raida_key | static encryption_key_t* pown_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/commands/cmd_pown.c:387 | pown_primary_key | static const raida_encryption_key_t *pown_primary_key( const pown_options_t *options)
static | src/coin/commands/cmd_unpack.c:37 | ensure_dir | static void ensure_dir(const char *path)
static | src/coin/commands/cmd_unpack.c:109 | sn_index_init | static void sn_index_init(coin_sn_index_t *idx)
static | src/coin/commands/cmd_unpack.c:115 | sn_index_free | static void sn_index_free(coin_sn_index_t *idx)
static | src/coin/commands/cmd_unpack.c:122 | sn_index_add | static bool sn_index_add(coin_sn_index_t *idx, uint32_t serial)
static | src/coin/commands/cmd_unpack.c:134 | sn_index_contains | static bool sn_index_contains(const coin_sn_index_t *idx, uint32_t serial)
static | src/coin/commands/cmd_unpack.c:145 | sn_index_load_folder | static void sn_index_load_folder(coin_sn_index_t *idx, const char *folder_path)
static | src/coin/commands/cmd_upgrade.c:65 | ensure_dir | static void ensure_dir(const char *path)
static | src/coin/commands/cmd_upgrade.c:76 | report_progress | static void report_progress(const char *task_id, int percent, const char *phase, const char *message, deposit_progress_fn callback, void *ctx, const char *wallet_path)
static | src/coin/commands/cmd_upgrade.c:95 | legacy_coin_is_expired | static bool legacy_coin_is_expired(const legacy_coin_t *coin)
static | src/coin/commands/cmd_upgrade.c:178 | upgrade_list_files | static result_t upgrade_list_files(const char *folder_path, char ***names_out, int *count_out)
static | src/coin/commands/cmd_upgrade.c:260 | upgrade_disposition_file | static upgrade_disposition_t upgrade_disposition_file( const char *file_path, const char *file_name, const char *imported_path, const char *counterfeit_sub, int valid_count, int counterfeit_count)
static | src/coin/commands/cmd_upgrade.c:292 | upgrade_bytes_to_hex | static void upgrade_bytes_to_hex(const uint8_t *bytes, int len, char *out)
static | src/coin/commands/cmd_upgrade.c:305 | upgrade_write_stack_file | static result_t upgrade_write_stack_file(const char *path, const legacy_coin_t *coins, int count)
static | src/coin/commands/cmd_upgrade.c:346 | upgrade_stack_within_caps | static bool upgrade_stack_within_caps(const legacy_coin_t *coins, int count)
static | src/coin/commands/cmd_upgrade.c:366 | upgrade_normalize_oversized_stacks | static void upgrade_normalize_oversized_stacks(const char *folder_path)
static | src/coin/commands/cmd_upgrade.c:444 | upgrade_incomplete_leftover_count | static int upgrade_incomplete_leftover_count(const char *import_folder)
static | src/coin/commands/cmd_upgrade.c:559 | upgrade_tally_convert_batch | static void upgrade_tally_convert_batch( uint8_t shard, int offset, int batch_size, const convert_result_t *conv_result, const int *chunk_file, const int *shard_to_chunk, int *file_processed_counts, int *file_counterfeit_counts, int *total_converted, int *total_counterfeit, upgrade_convert_stats_t *stats_out)
static | src/coin/commands/cmd_upgrade.c:604 | process_import_subfolder | static result_t process_import_subfolder(const char *folder_path, uint8_t shard_filter, const char *wallet_path, core_transport_t *transport, bool use_unencrypted, const char *task_id, deposit_progress_fn callback, void *ctx, int *converted_out, int *expired_out, int *counterfeit_out, upgrade_convert_stats_t *stats_out, int progress_base, int progress_span)
static | src/coin/commands/cmd_upgrade.c:2088 | upgrade_startup_progress | static void upgrade_startup_progress(const char *task_id, int percent, const char *phase, const char *message, void *ctx)
static | src/coin/commands/cmd_upgrade.c:2099 | upgrade_process_one_wallet | static bool upgrade_process_one_wallet(const char *wallet_path, const char *wallet_name, core_transport_t *transport, int *total_converted, int *total_counterfeit)
static | src/coin/commands/cmd_version.c:36 | version_build_body | static result_t version_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/commands/cmd_version.c:57 | parse_version_response | static void parse_version_response(const raida_result_t *exec_result, version_result_t *ver_result)
static | src/coin/commands/cmd_version.c:99 | display_version_results | static void display_version_results(const version_results_t *results)
static | src/coin/commands/cmd_wallet.c:43 | cmd_dir_exists | static bool cmd_dir_exists(const char *path)
static | src/coin/commands/cmd_wallet.c:53 | create_dir_single | static result_t create_dir_single(const char *path)
static | src/coin/commands/cmd_wallet.c:71 | create_dir_recursive | static result_t create_dir_recursive(const char *path)
static | src/coin/commands/cmd_wallet.c:91 | ensure_templates_dir | static result_t ensure_templates_dir(const char *wallet_path, char *templates_out, size_t len)
static | src/coin/commands/cmd_wallet.c:98 | read_active_template | static result_t read_active_template(const char *wallet_path, char *name_out, size_t len)
static | src/coin/commands/cmd_wallet.c:123 | write_active_template | static result_t write_active_template(const char *wallet_path, const char *name)
static | src/coin/commands/cmd_wallet.c:135 | remove_tree | static result_t remove_tree(const char *path)
static | src/coin/commands/cmd_wallet.c:207 | select_coins_for_amount | static int select_coins_for_amount(folder_scan_t *scan, uint64_t amount, int *selected_indices, uint64_t *selected_total)
static | src/coin/commands/cmd_wallet.c:245 | copy_tree | static result_t copy_tree(const char *src, const char *dst)
static | src/coin/commands/cmd_wallet.c:315 | try_make_change | static result_t try_make_change(const char *wallet_path, core_transport_t *transport, uint32_t timeout_ms, make_change_result_t *mc_result)
static | src/coin/commands/cmd_wallet.c:327 | format_units | static void format_units(uint64_t microunits, char *buf, size_t size)
static | src/coin/commands/cmd_wallet.c:334 | embed_cldc_into_png | static result_t embed_cldc_into_png(const uint8_t *template_data, size_t template_size, const uint8_t *cldc_data, size_t cldc_size, uint8_t **out_bytes, size_t *out_size)
static | src/coin/commands/cmd_wallet.c:382 | log_transaction | static result_t log_transaction(const char *wallet_path, const char *symbol, const char *remarks, uint64_t deposit_mu, uint64_t withdraw_mu, const char *description, uint64_t balance_mu)
static | src/coin/commands/transaction_log.c:53 | ensure_mutex_initialized | static void ensure_mutex_initialized(void)
static | src/coin/commands/transaction_log.c:61 | symbol_for_type | static const char *symbol_for_type(const char *type)
static | src/coin/commands/transaction_log.c:75 | compute_wallet_balance | static double compute_wallet_balance(const char *wallet_path)
static | src/coin/commands/transaction_log.c:92 | build_tx_path | static void build_tx_path(const char *wallet_path, char *out, size_t out_size)
static | src/coin/commands/transaction_log.c:97 | parse_csv_field | static const char *parse_csv_field(const char *ptr, char *out, size_t out_size)
static | src/coin/commands/transaction_log.c:141 | parse_amount_string | static int64_t parse_amount_string(const char *str)
static | src/coin/core_bootstrap.c:61 | is_server_only_key | static bool is_server_only_key(const char *key)
static | src/coin/core_bootstrap.c:68 | parse_bool | static bool parse_bool(const char *value)
static | src/coin/core_bootstrap.c:74 | parse_long_range | static bool parse_long_range(const char *value, long lo, long hi, long *out)
static | src/coin/core_bootstrap.c:87 | trim_value | static void trim_value(char *value)
static | src/coin/core_bootstrap.c:105 | apply_desktop_key | static bool apply_desktop_key(core_desktop_config_t *cfg, const char *key, const char *value)
static | src/coin/core_bootstrap.c:182 | ensure_one_directory | static result_t ensure_one_directory(const char *path)
static | src/coin/crypto.c:563 | crypto_aes256_gcm_crypt_windows | static result_t crypto_aes256_gcm_crypt_windows( bool encrypt, const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, uint8_t tag[16])
static | src/coin/drd_local_store.c:36 | store_lock | static void store_lock(void)
static | src/coin/drd_local_store.c:40 | store_unlock | static void store_unlock(void)
static | src/coin/drd_local_store.c:48 | map_sqlite_rc | static result_t map_sqlite_rc(int rc, const char *op)
static | src/coin/drd_local_store.c:70 | like_escape | static bool like_escape(const char *in, char *out, size_t out_size)
static | src/coin/drd_local_store.c:90 | str_nonempty | static bool str_nonempty(const char *s)
static | src/coin/drd_local_store.c:428 | where_append | static bool where_append(drd_where_t *w, const char *frag)
static | src/coin/drd_local_store.c:436 | where_push_int | static bool where_push_int(drd_where_t *w, int v)
static | src/coin/drd_local_store.c:444 | where_push_i64 | static bool where_push_i64(drd_where_t *w, int64_t v)
static | src/coin/drd_local_store.c:452 | where_push_text | static bool where_push_text(drd_where_t *w, const char *escaped)
static | src/coin/drd_local_store.c:461 | build_where | static bool build_where(const drd_local_search_params_t *p, drd_where_t *w)
static | src/coin/drd_local_store.c:593 | bind_where | static void bind_where(sqlite3_stmt *stmt, const drd_where_t *w, int *idx)
static | src/coin/drd_local_store.c:606 | sort_clause | static const char *sort_clause(int sort, bool desc)
static | src/coin/drd_local_store.c:639 | read_user_row | static void read_user_row(sqlite3_stmt *stmt, drd_user_t *user, bool *deleted)
static | src/coin/drd_sync.c:85 | sync_lock | static void sync_lock(void)
static | src/coin/drd_sync.c:89 | sync_unlock | static void sync_unlock(void)
static | src/coin/drd_sync.c:107 | normalize_config | static void normalize_config(drd_sync_config_t *cfg)
static | src/coin/drd_sync.c:119 | cfg_enabled | static bool cfg_enabled(void)
static | src/coin/drd_sync.c:123 | cfg_interval_minutes | static int cfg_interval_minutes(void)
static | src/coin/drd_sync.c:127 | cfg_shards_cap | static int cfg_shards_cap(void)
static | src/coin/drd_sync.c:131 | cfg_page_size | static uint16_t cfg_page_size(void)
static | src/coin/drd_sync.c:140 | sleep_interruptible_ms | static bool sleep_interruptible_ms(uint32_t total_ms)
static | src/coin/drd_sync.c:157 | sleep_backoff_sec | static bool sleep_backoff_sec(int seconds)
static | src/coin/drd_sync.c:167 | status_begin_cycle | static void status_begin_cycle(int K)
static | src/coin/drd_sync.c:180 | status_set_shard_raida | static void status_set_shard_raida(int shard_index, uint8_t raida_id)
static | src/coin/drd_sync.c:189 | status_complete_shard | static void status_complete_shard(int shard_index, int64_t cursor_updated_at, int64_t last_sync_at)
static | src/coin/drd_sync.c:202 | status_end_cycle | static void status_end_cycle(void)
static | src/coin/drd_sync.c:213 | status_is_non_drd | static bool status_is_non_drd(uint8_t status_code)
static | src/coin/drd_sync.c:228 | load_or_rebase_cursor | static void load_or_rebase_cursor(uint8_t raida_id, uint8_t K, uint8_t shard_index, drd_changes_cursor_t *cursor_out)
static | src/coin/drd_sync.c:263 | find_next_healthy_raida | static int find_next_healthy_raida(const uint8_t *healthy, int healthy_count, const bool *non_drd, uint8_t current_raida)
static | src/coin/drd_sync.c:290 | apply_page_entries | static result_t apply_page_entries(const drd_changes_page_t *page, int *live_out, int *tomb_out)
static | src/coin/drd_sync.c:347 | save_cursor_row | static result_t save_cursor_row(uint8_t raida_id, uint8_t K, uint8_t shard_index, const drd_changes_cursor_t *cursor, int64_t last_sync_at)
static | src/coin/drd_sync.c:373 | sync_one_shard | static bool sync_one_shard(uint8_t initial_raida, uint8_t K, uint8_t shard_index, const uint8_t *healthy, int healthy_count, bool *non_drd, const raida_encryption_key_t *enc_key, core_transport_t *transport, int *records_applied_inout, int *live_total_inout, int *tomb_total_inout)
static | src/coin/drd_sync.c:575 | run_sync_cycle | static void run_sync_cycle(void)
static | src/coin/drd_sync.c:795 | wait_for_kick_or_shutdown | static bool wait_for_kick_or_shutdown(void)
static | src/coin/drd_sync.c:802 | worker_loop | static void worker_loop(void)
static | src/coin/drd_sync.c:839 | worker_thread_proc | static unsigned __stdcall worker_thread_proc(void *arg)
static | src/coin/drd_sync.c:845 | worker_thread_proc | static void *worker_thread_proc(void *arg)
static | src/coin/encryption_key.c:54 | sn_is_excluded | static bool sn_is_excluded(uint32_t sn, const uint32_t *exclude_sns, size_t exclude_count)
static | src/coin/encryption_key.c:64 | id_is_excluded | static bool id_is_excluded(int8_t denomination, uint32_t serial_number, const encryption_key_id_t *exclude_ids, size_t exclude_count)
static | src/coin/encryption_key.c:77 | random_below | static uint32_t random_below(uint32_t limit)
static | src/coin/encryption_key.c:100 | sn_present_in_changed_folder | static bool sn_present_in_changed_folder(const char *wallet_path, uint32_t sn, int8_t denom)
static | src/coin/encryption_key.c:142 | scan_folder | static void scan_folder(const char *wallet_path, folder_type_t folder, const encryption_key_policy_t *policy, raida_encryption_key_t *key_out, int *best_passes, int *tie_count)
static | src/coin/encryption_key.c:260 | search_path_equal | static bool search_path_equal(const char *a, const char *b)
static | src/coin/encryption_key.c:269 | build_wallet_search_list | static const char **build_wallet_search_list(const encryption_key_policy_t *policy, const char *skip_path, size_t *out_count)
static | src/coin/encryption_key.c:306 | try_encryption_keys_wallet | static result_t try_encryption_keys_wallet( const encryption_key_policy_t *policy, raida_encryption_key_t *key_out, const char **attempted_path_out)
static | src/coin/encryption_key.c:476 | key_id_equal | static bool key_id_equal(encryption_key_id_t a, encryption_key_id_t b)
static | src/coin/executor.c:34 | thread_shared_release | static void thread_shared_release(thread_shared_t *shared)
static | src/coin/executor.c:227 | executor_run_single_impl | static result_t executor_run_single_impl( uint8_t raida_id, const qmail_endpoint_t *endpoint, uint8_t command_group, uint8_t command_code, const uint8_t *body, uint8_t **owned_body, size_t body_size, exec_config_t *config, raida_result_t *result)
static | src/coin/executor.c:615 | executor_thread_worker | static void* executor_thread_worker(void *arg)
static | src/coin/executor.c:668 | executor_dump_failure_headers | static void executor_dump_failure_headers(exec_results_t *results)
static | src/coin/executor.c:701 | executor_run_parallel | static result_t executor_run_parallel(uint8_t command_group, uint8_t command_code, body_builder_fn builder, void *builder_data, exec_config_t *config, exec_results_t *results)
static | src/coin/executor.c:989 | executor_run_serial | static result_t executor_run_serial(uint8_t command_group, uint8_t command_code, body_builder_fn builder, void *builder_data, exec_config_t *config, exec_results_t *results)
static | src/coin/executor.c:1095 | executor_command_name | static const char* executor_command_name(uint8_t command_group, uint8_t command_code)
static | src/coin/executor.c:1240 | async_wrapper_thread | static void* async_wrapper_thread(void *arg)
static | src/coin/filesystem_directories.inc:1 | fs_existing_directory | static bool fs_existing_directory(const char *path)
static | src/coin/filesystem_directories.inc:16 | fs_ensure_directory | static result_t fs_ensure_directory(const char *path, unsigned mode)
static | src/coin/filesystem.c:42 | fs_move_replace | static BOOL fs_move_replace(const char *src, const char *dst)
static | src/coin/filesystem.c:43 | fs_move_noreplace | static BOOL fs_move_noreplace(const char *src, const char *dst)
static | src/coin/filesystem.c:44 | fs_attributes | static DWORD fs_attributes(const char *path)
static | src/coin/filesystem.c:53 | fs_move_replace | static BOOL fs_move_replace(const char *src, const char *dst)
static | src/coin/filesystem.c:54 | fs_move_noreplace | static BOOL fs_move_noreplace(const char *src, const char *dst)
static | src/coin/filesystem.c:55 | fs_attributes | static DWORD fs_attributes(const char *path)
static | src/coin/filesystem.c:288 | fs_sync_ancestors | static result_t fs_sync_ancestors(const char *canonical_file)
static | src/coin/filesystem.c:590 | path_is_absolute_for_host | static bool path_is_absolute_for_host(const char *path)
static | src/coin/filesystem.c:605 | path_looks_absolute_any_platform | static bool path_looks_absolute_any_platform(const char *path)
static | src/coin/filesystem.c:614 | normalize_absolute_lexical | static result_t normalize_absolute_lexical(const char *path, char *out, size_t out_size)
static | src/coin/filesystem.c:668 | normalized_path_inside | static bool normalized_path_inside(const char *path, const char *root)
static | src/coin/filesystem.c:683 | canonical_existing_ancestor | static result_t canonical_existing_ancestor(const char *path, char *out, size_t out_size)
static | src/coin/filesystem.c:719 | current_client_data_paths | static result_t current_client_data_paths(char *lexical, size_t lexical_size, char *canonical, size_t canonical_size)
static | src/coin/folder_types.c:63 | strcasecmp_local | static int strcasecmp_local(const char *s1, const char *s2)
static | src/coin/header_v2.c:11 | hv2_secure_zero | static void hv2_secure_zero(void *data, size_t len)
static | src/coin/header_v2.c:16 | hv2_all_zero | static bool hv2_all_zero(const uint8_t *data, size_t len)
static | src/coin/header_v2.c:22 | hv2_en_known | static bool hv2_en_known(encryption_type_t en)
static | src/coin/header_v2.c:28 | hv2_en_gcm | static bool hv2_en_gcm(encryption_type_t en)
static | src/coin/header_v2.c:32 | hv2_expected_key_len | static size_t hv2_expected_key_len(encryption_type_t en)
static | src/coin/health_manager.c:62 | health_coin_batch_contains_sn | static bool health_coin_batch_contains_sn(const cloudcoin_t *coins, int coin_count, uint32_t sn)
static | src/coin/health_manager.c:72 | health_select_helper_excluding_batch | static result_t health_select_helper_excluding_batch( const char *wallet_path, const cloudcoin_t *coins, int coin_count, uint32_t blamed_sn, raida_encryption_key_t *key_out)
static | src/coin/health_manager.c:103 | get_current_time_str | static void get_current_time_str(char *buffer, size_t size)
static | src/coin/http_client.c:22 | http_timeout_ms | static int http_timeout_ms(long seconds)
static | src/coin/http_client.c:193 | http_ca_bundle_path | static const char *http_ca_bundle_path(void)
static | src/coin/http_client.c:222 | http_ca_dir_path | static const char *http_ca_dir_path(void)
static | src/coin/http_client.c:237 | WriteMemoryCallback | static size_t WriteMemoryCallback(void *contents, size_t size, size_t nmemb, void *userp)
static | src/coin/http_client.c:360 | stream_write | static size_t stream_write(void *bytes,size_t size,size_t count,void *user)
static | src/coin/instance_lock.c:35 | write_owner_stamp | static void write_owner_stamp(instance_lock_t *lock)
static | src/coin/logging.c:62 | lock | static void lock(void)
static | src/coin/logging.c:68 | unlock | static void unlock(void)
static | src/coin/logging.c:74 | normalize_hook_enabled | static bool normalize_hook_enabled(void)
static | src/coin/logging.c:85 | is_word_char_ascii | static bool is_word_char_ascii(char c)
static | src/coin/logging.c:89 | match_raida_word | static bool match_raida_word(const char *text, size_t index)
static | src/coin/logging.c:102 | normalize_log_message | static void normalize_log_message(const char *input, char *output, size_t output_size)
static | src/coin/logging.c:163 | default_handler | static void default_handler(const log_event_t *event, void *user_context)
static | src/coin/logging.c:212 | get_display_output | static FILE* get_display_output(void)
static | src/coin/logging.c:734 | log_hex_dump_internal | static void log_hex_dump_internal(FILE *out, const uint8_t *data, size_t len, const char *label)
static | src/coin/logging.c:907 | enc_type_to_string | static const char* enc_type_to_string(uint8_t enc)
static | src/coin/logging.c:914 | transport_type_to_string | static const char* transport_type_to_string(uint8_t transport)
static | src/coin/logging.c:1104 | log_json_pretty_print | static void log_json_pretty_print(FILE *out, const char *json)
static | src/coin/logging.c:1176 | debug_body_cap | static size_t debug_body_cap(void)
static | src/coin/protocol.c:48 | protocol_secure_zero | static void protocol_secure_zero(void *data, size_t len)
static | src/coin/protocol.c:53 | protocol_bytes_all_zero | static bool protocol_bytes_all_zero(const uint8_t *data, size_t len)
static | src/coin/protocol.c:59 | protocol_type8_key_valid | static bool protocol_type8_key_valid(const encryption_key_t *key)
static | src/coin/protocol.c:63 | protocol_hv2_default_flags | static uint8_t protocol_hv2_default_flags(const protocol_request_t *request)
static | src/coin/protocol.c:71 | protocol_hv2_fill_locators | static result_t protocol_hv2_fill_locators(const protocol_request_t *request, uint8_t loc_a[5], uint8_t loc_b[5], const uint8_t **key, size_t *key_len, uint8_t key32[32])
static | src/coin/protocol.c:116 | protocol_build_packet_hv2 | static result_t protocol_build_packet_hv2(protocol_request_t *request, uint8_t **packet, size_t *packet_size)
static | src/coin/qmail_funding_runtime.c:23 | funding_files | static result_t funding_files(const char *dir, char ***out, int *count)
static | src/coin/qmail_funding_runtime.c:71 | funding_file_state | static int funding_file_state(const char *path, bool directory)
static | src/coin/qmail_funding_runtime.c:87 | funding_path | static result_t funding_path(const char *wallet, const char *relative, bool source, char out[512])
static | src/coin/qmail_funding_runtime.c:98 | funding_bytes_match | static bool funding_bytes_match(const char *path, const qmail_funding_coin_path_t *p)
static | src/coin/qmail_locker_pool.c:91 | scan_breakable_denominations | static void scan_breakable_denominations(const char *wallet_path, int counts[DENOM_LEN])
static | src/coin/qmail_locker_pool.c:125 | ensure_scan_cb | static void ensure_scan_cb(int counts[ ], void *ud)
static | src/coin/qmail_locker_pool.c:130 | ensure_break_cb | static result_t ensure_break_cb(int8_t src_denom, void *ud)
static | src/coin/qmail_locker_pool.c:170 | ensure_denominations | static result_t ensure_denominations(const char *wallet_path, int8_t target_denom, int target_count)
static | src/coin/qmail_locker_pool.c:238 | fund_locker_batch | static int fund_locker_batch(const char *wallet_path, int count, uint64_t amount_units, int pool_type, int db_status, char (*keys_out)[QMAIL_LOCKER_KEY_MAX_LEN])
static | src/coin/qmail_locker_pool.c:314 | fund_locker_batch_once | static int fund_locker_batch_once(const char *wallet_path, int count, uint64_t amount_units, int pool_type, int db_status, char (*keys_out)[QMAIL_LOCKER_KEY_MAX_LEN], int fund_slot)
static | src/coin/qmail_locker_pool.c:470 | qmail_pool_set_acquire_failure | static void qmail_pool_set_acquire_failure(qmail_pool_acquire_result_t *result, const char *reason, const char *message)
static | src/coin/qmail_locker_pool.c:487 | qmail_pool_set_funding_failure | static void qmail_pool_set_funding_failure(const char *wallet, qmail_pool_acquire_result_t *out, const char *fallback_message)
static | src/coin/qmail_parent_funding.inc:2 | parent_funding_slot | static result_t parent_funding_slot(const char *wallet, const uint8_t guid[16], int purpose, int slot, uint64_t units, char key[QMAIL_LOCKER_KEY_MAX_LEN])
static | src/coin/raida_policy.c:13 | policy_lock_ensure | static void policy_lock_ensure(void)
static | src/coin/raida_policy.c:26 | policy_lock_init_once | static void policy_lock_init_once(void)
static | src/coin/raida_policy.c:27 | policy_lock_ensure | static void policy_lock_ensure(void)
static | src/coin/raida_policy.c:171 | policy_error | static result_t policy_error(char *error, uint32_t size, const char *message)
static | src/coin/raida_policy.c:278 | parse_u32 | static bool parse_u32(const char *key, const char *value, uint32_t min, uint32_t max, uint32_t *out, char *error, uint32_t size)
static | src/coin/raida_servers.c:54 | trim_whitespace | static char *trim_whitespace(char *value)
static | src/coin/raida_servers.c:80 | is_valid_server_host | static bool is_valid_server_host(const char *host)
static | src/coin/raida_servers.c:105 | parse_port_strict | static bool parse_port_strict(const char *value, int *port_out)
static | src/coin/raida_servers.c:130 | raida_servers_validate_consensus | static bool raida_servers_validate_consensus(char *data, size_t size, void *user_data)
static | src/coin/raida_servers.c:232 | parse_consensus_into_servers | static int parse_consensus_into_servers(const char *consensus_data, raida_server_info_t servers[RAIDA_COUNT])
static | src/coin/raida_servers.c:312 | file_has_qr_flags | static bool file_has_qr_flags(const char *filepath)
static | src/coin/raida_servers.c:337 | write_consensus_to_file_if_changed | static result_t write_consensus_to_file_if_changed(const char *filepath, const char *consensus_data)
static | src/coin/raida_servers.c:534 | write_servers_to_file | static result_t write_servers_to_file(const char *filepath, const raida_server_info_t servers[RAIDA_COUNT])
static | src/coin/raida_servers.c:551 | read_servers_from_file | static result_t read_servers_from_file(const char *filepath, raida_server_info_t servers[RAIDA_COUNT])
static | src/coin/raida_telemetry.c:44 | telemetry_init_mutex | static BOOL CALLBACK telemetry_init_mutex(PINIT_ONCE once, PVOID param, PVOID *context)
static | src/coin/raida_telemetry.c:51 | telemetry_lock | static void telemetry_lock(void)
static | src/coin/raida_telemetry.c:56 | telemetry_unlock | static void telemetry_unlock(void)
static | src/coin/raida_telemetry.c:62 | telemetry_lock | static void telemetry_lock(void)
static | src/coin/raida_telemetry.c:66 | telemetry_unlock | static void telemetry_unlock(void)
static | src/coin/raida_telemetry.c:82 | telemetry_file_size | static bool telemetry_file_size(const char *path, uint64_t *bytes)
static | src/coin/raida_telemetry.c:97 | telemetry_write_csv_locked | static int telemetry_write_csv_locked(const raida_telemetry_entry_t *entry)
static | src/coin/raida_telemetry.c:128 | telemetry_open_locked | static bool telemetry_open_locked(void)
static | src/coin/raida_telemetry.c:149 | telemetry_rotate_locked | static void telemetry_rotate_locked(void)
static | src/coin/raida_telemetry.c:270 | summary_next_rand | static uint32_t summary_next_rand(void)
static | src/coin/raida_telemetry.c:278 | summary_bucket_locked | static summary_bucket_t *summary_bucket_locked(uint8_t group, uint8_t code, uint8_t raida_id)
static | src/coin/raida_telemetry.c:297 | telemetry_summary_record | static void telemetry_summary_record(const raida_telemetry_entry_t *e)
static | src/coin/raida_telemetry.c:341 | summary_cmp_u32 | static int summary_cmp_u32(const void *a, const void *b)
static | src/coin/raida_telemetry.c:347 | summary_quantile | static uint32_t summary_quantile(uint32_t *buf, uint32_t count, double q)
static | src/coin/receipt_writer_stub.c:52 | receipt_kind_label | static const char *receipt_kind_label(receipt_kind_t k)
static | src/coin/receipt_writer_stub.c:62 | receipt_cc | static double receipt_cc(uint64_t microunits)
static | src/coin/receipt_writer_stub.c:66 | receipt_text_append | static void receipt_text_append(char **buf, size_t *len, size_t *cap, const char *fmt, ...)
static | src/coin/receipt_writer_stub.c:87 | receipt_build_text | static result_t receipt_build_text(const receipt_ctx_t *ctx, char **out, size_t *out_len)
static | src/coin/receipt_writer_stub.c:151 | receipt_uses_text | static bool receipt_uses_text(void)
static | src/coin/rke_client.c:37 | rke_cmd_build_body | static result_t rke_cmd_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/rke_client.c:62 | rke_cmd_get_raida_key | static encryption_key_t *rke_cmd_get_raida_key(uint8_t raida_id, void *user_data)
static | src/coin/rke_client.c:73 | rke_cmd_parse | static result_t rke_cmd_parse(const raida_result_t *rr, rke_cmd_ctx_t *ctx, rke_collect_result_t *result)
static | src/coin/rke_dns.c:11 | hex_nibble | static int hex_nibble(char c)
static | src/coin/rke_dns.c:22 | parse_hex32 | static int parse_hex32(const char *hex, uint8_t out[16])
static | src/coin/rke_dns.c:36 | apply_kv | static void apply_kv(rke_dns_txt_t *out, const char *k, const char *v)
static | src/coin/rke_sdk/rke_sdk.c:53 | secure_wipe | static void secure_wipe(void *data, size_t size)
static | src/coin/rke_sdk/rke_sdk.c:59 | fanout_cv_init | static result_t fanout_cv_init(rke_sdk_t *s)
static | src/coin/rke_sdk/rke_sdk.c:70 | fanout_cv_destroy | static void fanout_cv_destroy(rke_sdk_t *s)
static | src/coin/rke_sdk/rke_sdk.c:79 | fanout_cv_wait | static void fanout_cv_wait(rke_sdk_t *s)
static | src/coin/rke_sdk/rke_sdk.c:88 | fanout_cv_wake_all | static void fanout_cv_wake_all(rke_sdk_t *s)
static | src/coin/rke_sdk/rke_sdk.c:97 | random_below | static uint32_t random_below(uint32_t limit)
static | src/coin/rke_sdk/rke_sdk.c:105 | candidate_pass_bitmap | static uint32_t candidate_pass_bitmap(const rke_sdk_candidate_t *candidate)
static | src/coin/rke_sdk/rke_sdk.c:115 | bitmap_count | static int bitmap_count(uint32_t bitmap)
static | src/coin/rke_sdk/rke_sdk.c:125 | key_ids_equal | static int key_ids_equal(const raida_encryption_key_t *a, const raida_encryption_key_t *b)
static | src/coin/rke_sdk/rke_sdk.c:132 | fill_health | static void fill_health(rke_sdk_scored_pair_t *out, uint32_t bitmap, int duplicate)
static | src/coin/rke_sdk/rke_sdk.c:263 | sdk_send_packet | static result_t sdk_send_packet( uint8_t raida_id, transport_type_t type, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, size_t max_response_size, core_transport_result_t *result, void *user_context)
static | src/coin/rke_sdk/rke_sdk.c:296 | sdk_cancel | static void sdk_cancel(uint32_t call_id, void *user_context)
static | src/coin/rke_sdk/rke_sdk.c:302 | sdk_available | static bool sdk_available(uint8_t raida_id, void *user_context)
static | src/coin/rke_sdk/rke_sdk.c:308 | sdk_server_info | static result_t sdk_server_info(uint8_t raida_id, core_server_info_t *out, void *user_context)
static | src/coin/rke_sdk/rke_sdk.c:324 | transport_start | static result_t transport_start(rke_sdk_t *s)
static | src/coin/rke_sdk/rke_sdk.c:336 | load_candidate_pown | static int load_candidate_pown(const raida_encryption_key_t *key, uint8_t pown_status[RKE_V2_RAIDA_COUNT])
static | src/coin/rke_sdk/rke_sdk.c:364 | select_pair | static result_t select_pair(rke_sdk_t *s, rke_sdk_scored_pair_t *selection)
static | src/coin/rke_sdk/rke_sdk.c:425 | state_name | static const char *state_name(rke_sdk_state_t state)
static | src/coin/rke_sdk/rke_sdk.c:434 | apply_selection | static void apply_selection(rke_sdk_t *s, const rke_sdk_scored_pair_t *selection, int force_log)
static | src/coin/rke_sdk/rke_sdk.c:595 | fanout_begin | static result_t fanout_begin(rke_sdk_t *s, rke_sdk_fanout_frame_t *frame)
static | src/coin/rke_sdk/rke_sdk.c:636 | fanout_end | static void fanout_end(rke_sdk_t *s, rke_sdk_fanout_frame_t *frame)
static | src/coin/rke_sdk/rke_sdk.c:645 | fanout_get_key | static encryption_key_t *fanout_get_key(uint8_t raida_id, void *user_data)
static | src/coin/rke_sdk/rke_sdk.c:652 | init_failed_output | static void init_failed_output(rke_fanout_results_t *out)
static | src/coin/rke_server_ops.c:141 | redeem_body_builder | static result_t redeem_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/rke_server_ops.c:160 | preload_body_builder | static result_t preload_body_builder(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/coin/rke_server_ops.c:175 | validate_options | static result_t validate_options(const rke_fanout_options_t *opt, rke_fanout_results_t *out)
static | src/coin/rke_server_ops.c:194 | configure_executor | static result_t configure_executor(const rke_fanout_options_t *opt, exec_config_t *config)
static | src/coin/rke_server_ops.c:213 | init_fanout_results | static void init_fanout_results(rke_fanout_results_t *out)
static | src/coin/rke_session_client.c:15 | put_u32_be | static void put_u32_be(uint32_t v, uint8_t *p)
static | src/coin/rke_session_client.c:23 | put_u64_be | static void put_u64_be(uint64_t v, uint8_t *p)
static | src/coin/rke_session_client.c:29 | get_u64_be | static uint64_t get_u64_be(const uint8_t *p)
static | src/coin/rke_session_client.c:37 | put_u16_be | static void put_u16_be(uint16_t v, uint8_t *p)
static | src/coin/rke_session_client.c:183 | rke_ensure_wsa | static void rke_ensure_wsa(void)
static | src/coin/rke_session_client.c:199 | rke_ensure_wsa | static void rke_ensure_wsa(void)
static | src/coin/rke_session_client.c:202 | rke_send_all | static int rke_send_all(rke_sock_t s, const void *buf, size_t len)
static | src/coin/rke_session_client.c:215 | rke_recv_all | static int rke_recv_all(rke_sock_t s, void *buf, size_t len)
static | src/coin/rke_type9_client.c:22 | t9_start_wsa | static BOOL CALLBACK t9_start_wsa(PINIT_ONCE once,PVOID parameter,PVOID *context)
static | src/coin/rke_type9_client.c:28 | t9_socket_init | static int t9_socket_init(void)
static | src/coin/rke_type9_client.c:33 | t9_last_error_is_timeout | static int t9_last_error_is_timeout(void)
static | src/coin/rke_type9_client.c:48 | t9_socket_init | static int t9_socket_init(void)
static | src/coin/rke_type9_client.c:49 | t9_last_error_is_timeout | static int t9_last_error_is_timeout(void)
static | src/coin/rke_type9_client.c:55 | t9_get_u24_be | static uint32_t t9_get_u24_be(const uint8_t p[3])
static | src/coin/rke_type9_client.c:60 | t9_set_socket_timeout | static void t9_set_socket_timeout(t9_socket_t socket_fd, int timeout_ms)
static | src/coin/rke_type9_client.c:78 | t9_send_all | static result_t t9_send_all(t9_socket_t socket_fd, const uint8_t *data, size_t length)
static | src/coin/rke_type9_client.c:94 | t9_recv_all | static result_t t9_recv_all(t9_socket_t socket_fd, uint8_t *data, size_t length)
static | src/coin/rke_type9_client.c:112 | t9_nonblocking | static int t9_nonblocking(t9_socket_t fd)
static | src/coin/rke_type9_client.c:120 | t9_wait | static result_t t9_wait(t9_socket_t fd,int writing,uint64_t deadline)
static | src/coin/rke_type9_client.c:137 | t9_io_deadline | static result_t t9_io_deadline(t9_socket_t fd,uint8_t *data,size_t n,int writing,uint64_t deadline)
static | src/coin/rke_type9_client.c:160 | t9_tcp_call_flags | static result_t t9_tcp_call_flags(const char *host, uint16_t port, const uint8_t *request, size_t request_len, int timeout_ms, uint8_t **response_out, size_t *response_len_out, int numeric_only)
static | src/coin/rke_type9_client.c:259 | t9_tcp_call | static result_t t9_tcp_call(const char *host, uint16_t port, const uint8_t *request, size_t request_len, int timeout_ms, uint8_t **response, size_t *response_len)
static | src/coin/rke_type9_client.c:359 | t9_serialize_new_command | static result_t t9_serialize_new_command(rke_t9_session_t *sess, uint8_t cg, uint8_t cm, const uint8_t *cmd_data, size_t cmd_len)
static | src/coin/rke_type9.c:15 | t9_secure_zero | static void t9_secure_zero(void *data, size_t len)
static | src/coin/rke_type9.c:22 | t9_all_zero | static int t9_all_zero(const uint8_t *p, size_t len)
static | src/coin/rke_type9.c:30 | t9_failure_status | static int t9_failure_status(uint8_t status)
static | src/coin/rke_type9.c:38 | t9_get_u24_be | static uint32_t t9_get_u24_be(const uint8_t p[3])
static | src/coin/rke_type9.c:43 | t9_init_response_outputs | static void t9_init_response_outputs(int *status_out, int *is_failure_frame_out, uint8_t **plaintext_out, size_t *pt_len_out)
static | src/coin/rke_type9.c:58 | t9_write_established_header | static void t9_write_established_header(uint8_t *frame, uint8_t hv, uint8_t node_id, uint8_t cg, uint8_t cm, uint32_t body_len, const uint8_t handle[5], const uint8_t nonce[12], uint64_t counter, uint16_t echo)
static | src/coin/rke_type9.c:87 | t9_build_established | static result_t t9_build_established(uint8_t hv, uint8_t node_id, const uint8_t handle[5], const uint8_t k_sess[32], uint8_t cg, uint8_t cm, uint64_t counter, const uint8_t nonce[12], const uint8_t challenge[16], const uint8_t *cmd_data, size_t cmd_len, uint16_t echo, uint8_t **frame_out, size_t *frame_len_out)
static | src/coin/rke_v2_kdf.c:23 | rotr32 | static uint32_t rotr32(uint32_t x, int n)
static | src/coin/rke_v2_kdf.c:25 | sha256_transform | static void sha256_transform(rke_sha256_ctx *ctx, const uint8_t block[64])
static | src/coin/rke_v2_kdf.c:80 | sha256_init | static void sha256_init(rke_sha256_ctx *ctx)
static | src/coin/rke_v2_kdf.c:94 | sha256_update | static void sha256_update(rke_sha256_ctx *ctx, const uint8_t *data, size_t len)
static | src/coin/rke_v2_kdf.c:114 | sha256_final | static void sha256_final(rke_sha256_ctx *ctx, uint8_t out[32])
static | src/coin/rke_v2_kdf.c:139 | sha256 | static void sha256(const uint8_t *data, size_t len, uint8_t out[32])
static | src/coin/rke_v2_kdf.c:148 | hmac_sha256 | static void hmac_sha256(const uint8_t *key, size_t key_len, const uint8_t *data, size_t data_len, uint8_t out[32])
static | src/coin/t10_session.c:179 | sess_ensure_mutex | static result_t sess_ensure_mutex(void)
static | src/coin/t10_session.c:191 | wipe_password_unlocked | static void wipe_password_unlocked(void)
static | src/coin/t10_session.c:199 | wipe_salt_cache_unlocked | static void wipe_salt_cache_unlocked(void)
static | src/coin/t10_session.c:211 | bump_generation_unlocked | static void bump_generation_unlocked(void)
static | src/coin/t10_session.c:216 | authority_valid_unlocked | static bool authority_valid_unlocked(const t10_session_authority_t *auth)
static | src/coin/t10_session.c:234 | fill_login_out | static void fill_login_out(t10_login_result_t *out, t10_session_state_t st, int pass, int fail, int usable)
static | src/coin/t10_session.c:250 | salt_domain_add | static void salt_domain_add(uint8_t domains[][CCEF_SALT_SIZE], int *count, const uint8_t salt[CCEF_SALT_SIZE])
static | src/coin/t10_session.c:277 | classify_bin_file | static void classify_bin_file(const char *filepath, t10_scan_result_t *acc, uint8_t domains[][CCEF_SALT_SIZE], int *domain_count, char *first_type10_path, size_t first_cap)
static | src/coin/t10_session.c:380 | scan_folder_bins | static void scan_folder_bins(const char *wallet_path, folder_type_t folder, t10_scan_result_t *acc, uint8_t domains[][CCEF_SALT_SIZE], int *domain_count, char *first_type10_path, size_t first_cap, bool *folder_ok)
static | src/coin/t10_session.c:477 | scan_pd7 | static result_t scan_pd7(const char *wallet_path_filter, t10_scan_result_t *out, char *first_type10_path, size_t first_cap)
static | src/coin/t10_session.c:539 | apply_scan_cache_unlocked | static void apply_scan_cache_unlocked(const t10_scan_result_t *scan)
static | src/coin/t10_session.c:553 | read_type10_salt_raw | static result_t read_type10_salt_raw(const char *filepath, uint8_t salt[16])
static | src/coin/t10_session.c:594 | classify_detect_statuses | static void classify_detect_statuses(const uint8_t codes[RAIDA_COUNT], const coin_detect_status_t *status, int *pass_out, int *fail_out, int *usable_out)
static | src/coin/t10_session.c:652 | confirm_via_detect | static result_t confirm_via_detect(const cloudcoin_t *coin, int *pass_out, int *fail_out, int *usable_out)
static | src/coin/t10_session.c:1784 | wallet_matches_filter | static bool wallet_matches_filter(const char *wallet_path, const char *filter)
static | src/coin/t10_session.c:1796 | bulk_maybe_progress | static void bulk_maybe_progress(const char *task_id, t10_bulk_counts_t *c, t10_bulk_progress_fn progress_fn, void *progress_ud)
static | src/coin/t10_session.c:1808 | bulk_is_establishing | static bool bulk_is_establishing(const t10_session_authority_t *auth)
static | src/coin/t10_session.c:1812 | bulk_process_folder_encrypt | static result_t bulk_process_folder_encrypt(const char *wallet_path, folder_type_t folder, const t10_session_authority_t *auth, t10_bulk_counts_t *c, const char *task_id, t10_bulk_progress_fn progress_fn, void *progress_ud)
static | src/coin/t10_session.c:1974 | bulk_process_folder_decrypt | static result_t bulk_process_folder_decrypt(const char *wallet_path, folder_type_t folder, const t10_session_authority_t *auth, t10_bulk_counts_t *c, const char *task_id, t10_bulk_progress_fn progress_fn, void *progress_ud)
static | src/coin/task_manager.c:52 | task_write_lock | static void task_write_lock(void)
static | src/coin/task_manager.c:53 | task_write_unlock | static void task_write_unlock(void)
static | src/coin/task_manager.c:56 | task_write_lock | static void task_write_lock(void)
static | src/coin/task_manager.c:57 | task_write_unlock | static void task_write_unlock(void)
static | src/coin/task_manager.c:60 | task_open_temp | static FILE *task_open_temp(const char *path, char temp[MAX_PATH_LEN])
static | src/coin/task_manager.c:75 | task_publish | static result_t task_publish(FILE *fp, const char *temp, const char *path)
static | src/coin/task_manager.c:99 | task_filepath | static void task_filepath(const char *task_id, char *out, size_t size)
static | src/coin/task_manager.c:117 | json_escape | static void json_escape(const char *src, char *out, size_t size)
static | src/coin/task_manager.c:148 | find_data_object | static bool find_data_object(const char *json, const char **brace_open_out, const char **brace_close_out)
static | src/coin/task_manager.c:191 | read_task_file_alloc | static result_t read_task_file_alloc(const char *task_id, char **out, size_t *bytes_read_out)
static | src/coin/task_manager.c:311 | task_create_locked | static result_t task_create_locked(const char *task_id, const char *message)
static | src/coin/task_manager.c:405 | data_json_to_body_fragment | static bool data_json_to_body_fragment(const char *data_json, char *out, size_t out_size)
static | src/coin/task_manager.c:535 | next_json_field | static bool next_json_field(const char **cursor, const char **field_start, const char **field_end, char *key_out, size_t key_out_size)
static | src/coin/task_manager.c:603 | body_has_key | static bool body_has_key(const char *new_body, const char *key)
static | src/coin/task_manager.c:619 | append_field | static bool append_field(char *out, size_t out_size, size_t *out_len, const char *src, size_t len)
static | src/coin/task_manager.c:646 | merge_data_bodies | static void merge_data_bodies(const char *existing_body, const char *new_body, char *out, size_t out_size)
static | src/coin/task_manager.c:700 | rewrite_task_with_data_locked | static result_t rewrite_task_with_data_locked(const char *task_id, const char *status, int progress, const char *message, const char *new_data_body)
static | src/coin/task_manager.c:826 | rewrite_task_with_data | static result_t rewrite_task_with_data(const char *task_id, const char *status, int progress, const char *message, const char *new_data_body)
static | src/coin/task_manager.c:908 | extract_json_value | static void extract_json_value(const char *json, const char *key, char *out, size_t out_size)
static | src/coin/task_manager.c:1037 | task_id_is_protected | static bool task_id_is_protected(const char *task_id, const char *const *protected_task_ids, int protected_count)
static | src/coin/transport.c:50 | active_socket_register | static void active_socket_register(uint32_t call_id, socket_t sock)
static | src/coin/transport.c:73 | active_socket_unregister | static bool active_socket_unregister(uint32_t call_id, socket_t sock)
static | src/coin/transport.c:90 | active_socket_close | static void active_socket_close(uint32_t call_id, socket_t sock)
static | src/coin/transport.c:99 | active_socket_abort_locked | static void active_socket_abort_locked(active_socket_t *slot)
static | src/coin/transport.c:126 | transport_internal_call_id | static uint32_t transport_internal_call_id(void)
static | src/coin/transport.c:155 | transport_send_all | static bool transport_send_all(socket_t sock, const uint8_t *packet, size_t packet_size, size_t *bytes_sent)
static | src/coin/transport.c:187 | transport_get_echo_times_filepath | static void transport_get_echo_times_filepath(char *buffer, size_t size)
static | src/coin/transport.c:203 | transport_migrate_legacy_stats_file | static void transport_migrate_legacy_stats_file(void)
static | src/coin/transport.c:236 | transport_init_mode | static result_t transport_init_mode(bool discover)
static | src/coin/transport.c:494 | transport_read_available_from_file | static bool transport_read_available_from_file(uint8_t raida_id)
static | src/coin/utils_new.c:19 | init_crc32_table | static void init_crc32_table(void)
static | src/coin/wallet_funding_lock.c:71 | funding_lock_acquire | static int funding_lock_acquire(const char *wallet_path, bool wait)
static | src/coin/wallet.c:43 | normalize_registry_path_copy | static void normalize_registry_path_copy(const char *input, char *output, size_t size)
static | src/coin/wallet.c:77 | wallet_registry_paths_equal | static bool wallet_registry_paths_equal(const char *lhs, const char *rhs)
static | src/coin/wallet.c:88 | dir_exists | static bool dir_exists(const char *path)
static | src/coin/wallet.c:101 | create_dir | static result_t create_dir(const char *path)
static | src/coin/wallet.c:122 | create_dir_recursive | static result_t create_dir_recursive(const char *path)
static | src/coin/wallet.c:324 | registry_component_equal | static bool registry_component_equal(const char *start, size_t length, const char *component)
static | src/coin/wallet.c:340 | registry_find_wallet_data_component_end | static const char *registry_find_wallet_data_component_end( const char *path, const char *component)
static | src/gui/cbdf/cbdf.c:3 | stub_open | static qgui_result_t stub_open(void *user, const char *path, qgui_cbdf_doc_t **out)
static | src/gui/cbdf/cbdf.c:13 | stub_close | static qgui_result_t stub_close(void *user, qgui_cbdf_doc_t *doc)
static | src/gui/cbdf/cbdf.c:20 | stub_render | static qgui_result_t stub_render(void *user, qgui_cbdf_doc_t *doc, int width, int height, qgui_cbdf_view_t **out)
static | src/gui/cbdf/cbdf.c:33 | stub_texture | static void *stub_texture(void *user, qgui_cbdf_view_t *view)
static | src/gui/client/client_rest.c:37 | now_ts | static long long now_ts(void)
static | src/gui/client/client_rest.c:42 | call | static qgui_result_t call(rest_client_t *c, const char *op, const char *params, const char **out_json)
static | src/gui/client/client_rest.c:63 | remember_guid | static void remember_guid(void *user, qgui_mail_id_t id, const char *guid)
static | src/gui/client/client_rest.c:85 | lookup_guid | static const char *lookup_guid(rest_client_t *c, qgui_mail_id_t id)
static | src/gui/client/client_rest.c:96 | rest_get_identity | static qgui_result_t rest_get_identity(void *user, qgui_identity_t *out)
static | src/gui/client/client_rest.c:119 | rest_health | static qgui_result_t rest_health(void *user, qgui_health_t *out)
static | src/gui/client/client_rest.c:186 | rest_list_folders | static qgui_result_t rest_list_folders(void *user, qgui_folder_info_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:205 | rest_list_mail_page | static qgui_result_t rest_list_mail_page(void *user, qgui_folder_id_t folder, int offset, int sort, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:239 | rest_list_mail | static qgui_result_t rest_list_mail(void *user, qgui_folder_id_t folder, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:247 | rest_append_chip | static void rest_append_chip(char *buf, size_t cap, const char *name, unsigned char chip, int invert)
static | src/gui/client/client_rest.c:264 | rest_query_mail_page | static qgui_result_t rest_query_mail_page(void *user, qgui_folder_id_t folder, int offset, const qgui_mail_query_t *query, const char *text, qgui_mail_row_t *out, int cap, int *out_n, int *total_out)
static | src/gui/client/client_rest.c:325 | rest_search_mail | static qgui_result_t rest_search_mail(void *user, const char *query, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:350 | rest_save_draft_text | static qgui_result_t rest_save_draft_text(void *user, const char *subject, const char *body, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:386 | rest_update_status | static qgui_result_t rest_update_status(void *user, qgui_update_status_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:409 | rest_update_download | static qgui_result_t rest_update_download(void *user, char *task_id, size_t task_sz, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:432 | rest_list_pending | static qgui_result_t rest_list_pending(void *user, qgui_pending_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:455 | rest_mail_action | static qgui_result_t rest_mail_action(void *user, const qgui_mail_action_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:522 | rest_get_message | static qgui_result_t rest_get_message(void *user, qgui_mail_id_t id, qgui_message_t *out)
static | src/gui/client/client_rest.c:555 | rest_send_message | static qgui_result_t rest_send_message(void *user, const qgui_send_request_t *req, char *task_id, size_t task_id_sz, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:634 | rest_task_status | static qgui_result_t rest_task_status(void *user, const char *task_id, qgui_task_status_t *out)
static | src/gui/client/client_rest.c:651 | rest_save_draft | static qgui_result_t rest_save_draft(void *user, const qgui_send_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:687 | rest_download_attachment | static qgui_result_t rest_download_attachment(void *user, qgui_mail_id_t id, long long attachment_id, const char *dest_dir, const char *name, qgui_progress_fn progress, void *progress_user, char *out_path, size_t out_path_sz, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:735 | transfer_call | static qgui_result_t transfer_call(rest_client_t *c, const char *op, const char *params, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:751 | rest_object_capabilities | static qgui_result_t rest_object_capabilities(void *user, int raida_id, qgui_transfer_caps_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:774 | rest_object_upload | static qgui_result_t rest_object_upload(void *user, const qgui_object_upload_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:792 | rest_object_download | static qgui_result_t rest_object_download(void *user, const qgui_object_download_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:809 | rest_transfer_status | static qgui_result_t rest_transfer_status(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:821 | rest_transfer_resume | static qgui_result_t rest_transfer_resume(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:833 | rest_transfer_cancel | static qgui_result_t rest_transfer_cancel(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:847 | rest_list_contacts | static qgui_result_t rest_list_contacts(void *user, int popular, qgui_contact_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:867 | contact_result | static qgui_result_t contact_result(rest_client_t *c, const char *json, qgui_result_t rc, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:883 | rest_add_contact | static qgui_result_t rest_add_contact(void *user, const qgui_contact_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:903 | rest_delete_contact | static qgui_result_t rest_delete_contact(void *user, long long serial, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:917 | rest_favorite_contact | static qgui_result_t rest_favorite_contact(void *user, long long serial, int value, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:933 | rest_list_wallets | static qgui_result_t rest_list_wallets(void *user, qgui_wallet_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:952 | rest_list_transactions | static qgui_result_t rest_list_transactions(void *user, const qgui_wallet_t *wallet, int limit, qgui_transaction_t *out, int cap, int *out_n)
static | src/gui/client/client_rest.c:981 | rest_list_receipts | static qgui_result_t rest_list_receipts(void *user, const char *wallet_path, char (*names)[80], int cap, int *out_n)
static | src/gui/client/client_rest.c:999 | rest_get_receipt | static qgui_result_t rest_get_receipt(void *user, const char *wallet_path, const char *filename, char *text, size_t text_sz, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1024 | wallet_param | static void wallet_param(char *dst, size_t cap, const char *wallet_path)
static | src/gui/client/client_rest.c:1033 | rest_wallet_balance | static qgui_result_t rest_wallet_balance(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/gui/client/client_rest.c:1056 | rest_wallet_coins | static qgui_result_t rest_wallet_coins(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/gui/client/client_rest.c:1077 | form_add | static void form_add(char *dst, size_t cap, const char *key, const char *val)
static | src/gui/client/client_rest.c:1087 | rest_wallet_action | static qgui_result_t rest_wallet_action(void *user, const qgui_wallet_request_t *req, qgui_wallet_outcome_t *out)
static | src/gui/client/client_rest.c:1172 | rest_get_profile | static qgui_result_t rest_get_profile(void *user, int denomination, long long serial, qgui_profile_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1195 | rest_post_profile | static qgui_result_t rest_post_profile(void *user, const qgui_profile_t *p, int *pass_count, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1240 | rest_search_drd | static qgui_result_t rest_search_drd(void *user, const char *first, const char *last, qgui_drd_user_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1275 | rest_support_zip | static qgui_result_t rest_support_zip(void *user, char *path, size_t path_sz, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1289 | rest_list_get | static qgui_result_t rest_list_get(void *user, qgui_list_entry_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1303 | rest_list_set | static qgui_result_t rest_list_set(void *user, int denomination, long long serial, const char *list_type, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1326 | rest_list_remove | static qgui_result_t rest_list_remove(void *user, int denomination, long long serial, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1351 | step_done | static void step_done(rest_client_t *c, int step)
static | src/gui/client/client_rest.c:1358 | rest_setup_status | static qgui_result_t rest_setup_status(void *user, qgui_setup_status_t *out, char *msg, size_t msg_sz)
static | src/gui/client/client_rest.c:1404 | rest_setup_action | static qgui_result_t rest_setup_action(void *user, const qgui_setup_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/client.c:3 | stub_health | static qgui_result_t stub_health(void *user, qgui_health_t *out)
static | src/gui/client/client.c:10 | stub_identity | static qgui_result_t stub_identity(void *user, qgui_identity_t *out)
static | src/gui/client/client.c:17 | stub_folders | static qgui_result_t stub_folders(void *user, qgui_folder_info_t *out, int cap, int *out_n)
static | src/gui/client/client.c:28 | stub_list_mail | static qgui_result_t stub_list_mail(void *user, qgui_folder_id_t folder, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/client.c:41 | stub_get_message | static qgui_result_t stub_get_message(void *user, qgui_mail_id_t id, qgui_message_t *out)
static | src/gui/client/client.c:49 | stub_execute | static qgui_result_t stub_execute(void *user, const char *op, const char *params_json, qgui_arena_t *out_arena, const char **out_json, size_t *out_len)
static | src/gui/client/client.c:65 | stub_subscribe | static qgui_result_t stub_subscribe(void *user, const char *event_name, qgui_mailbox_t *sink)
static | src/gui/client/decode_contacts.c:12 | cstr | static const char *cstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode_contacts.c:18 | cint | static long long cint(yyjson_val *obj, const char *key, long long dflt)
static | src/gui/client/decode_contacts.c:28 | code_of_word | static int code_of_word(const char *w)
static | src/gui/client/decode_drd.c:16 | dstr | static const char *dstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode_drd.c:22 | dint | static long long dint(yyjson_val *obj, const char *key, long long dflt)
static | src/gui/client/decode_drd.c:32 | envelope_error | static int envelope_error(yyjson_val *root, char *msg, size_t msg_sz)
static | src/gui/client/decode_drd.c:76 | b64_val | static int b64_val(char c)
static | src/gui/client/decode_drd.c:110 | fill_user | static void fill_user(yyjson_val *u, qgui_drd_user_t *out)
static | src/gui/client/decode_setup.c:16 | sstr | static const char *sstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode_setup.c:22 | sint | static int sint(yyjson_val *obj, const char *key, int dflt)
static | src/gui/client/decode_setup.c:32 | root_of | static yyjson_val *root_of(yyjson_doc **doc, const char *json)
static | src/gui/client/decode_transfer.c:15 | tstr | static const char *tstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode_transfer.c:22 | tint | static long long tint(yyjson_val *obj, const char *key, long long dflt)
static | src/gui/client/decode_transfer.c:43 | tset | static void tset(char *dst, size_t cap, const char *s)
static | src/gui/client/decode_transfer.c:99 | transfer_error | static int transfer_error(yyjson_val *root, char *msg, size_t msg_sz)
static | src/gui/client/decode_transfer.c:206 | path_exists | static int path_exists(const char *p)
static | src/gui/client/decode_wallet.c:18 | wstr | static const char *wstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode_wallet.c:24 | is_error | static int is_error(yyjson_val *root, char *msg, size_t msg_sz)
static | src/gui/client/decode_wallet.c:47 | wint | static long long wint(yyjson_val *obj, const char *key, long long dflt)
static | src/gui/client/decode_wallet.c:58 | wnum | static double wnum(yyjson_val *obj, const char *key, double dflt)
static | src/gui/client/decode_wallet.c:67 | wallet_name_of | static const char *wallet_name_of(const char *path)
static | src/gui/client/decode_wallet.c:159 | add_count | static void add_count(char *dst, size_t cap, const char *label, long long n, int always)
static | src/gui/client/decode_wallet.c:168 | summarise_counters | static void summarise_counters(yyjson_val *obj, char *summary, size_t cap)
static | src/gui/client/decode_wallet.c:364 | csv_field | static const char *csv_field(const char *p, char *dst, size_t cap)
static | src/gui/client/decode.c:19 | str_ieq | static int str_ieq(const char *a, const char *b)
static | src/gui/client/decode.c:36 | jstr | static const char *jstr(yyjson_val *obj, const char *key)
static | src/gui/client/decode.c:42 | jint | static long long jint(yyjson_val *obj, const char *key, long long dflt)
static | src/gui/client/decode.c:60 | jnum | static double jnum(yyjson_val *obj, const char *key, double dflt)
static | src/gui/client/decode.c:66 | jbool | static int jbool(yyjson_val *obj, const char *key, int dflt)
static | src/gui/client/decode.c:72 | set_str | static void set_str(char *dst, size_t cap, const char *s)
static | src/gui/client/decode.c:78 | is_error_envelope | static int is_error_envelope(yyjson_val *root, char *msg, size_t msg_sz)
static | src/gui/client/decode.c:96 | class_from_code | static qgui_class_t class_from_code(long long code)
static | src/gui/client/decode.c:108 | class_from_name | static qgui_class_t class_from_name(const char *s)
static | src/gui/client/decode.c:175 | human_size | static void human_size(long long bytes, char *dst, size_t cap)
static | src/gui/client/decode.c:240 | folder_from_name | static int folder_from_name(const char *name, qgui_folder_id_t *out, const char **label)
static | src/gui/client/decode.c:312 | fill_common | static void fill_common(yyjson_val *e, long long now_ts, char *subject, size_t subject_sz, char *addr, size_t addr_sz, char *time_label, size_t time_sz, qgui_class_t *cls)
static | src/gui/client/decode.c:689 | form_append | static int form_append(char *dst, size_t cap, size_t *used, const char *key, const char *val)
static | src/gui/client/decode.c:733 | recipient_list | static void recipient_list(const char *src, char *dst, size_t cap)
static | src/gui/client/fake.c:23 | copy_row | static void copy_row(qgui_mail_row_t *dst, const qgui_mail_row_t *src)
static | src/gui/client/fake.c:28 | add_row | static void add_row(fake_folder_t *f, const qgui_mail_row_t *row, const qgui_message_t *msg)
static | src/gui/client/fake.c:40 | row_of | static qgui_mail_row_t row_of(qgui_mail_id_t id, const char *subject, const char *preview, const char *who, const char *addr, const char *time, qgui_class_t cls, int star, int seal, int attach, int draft)
static | src/gui/client/fake.c:61 | msg_of | static qgui_message_t msg_of(const qgui_mail_row_t *row, const char *from_name, const char *from_addr, const char *to_line, const char *body)
static | src/gui/client/fake.c:81 | ensure_fake | static void ensure_fake(void)
static | src/gui/client/fake.c:188 | fake_health | static qgui_result_t fake_health(void *user, qgui_health_t *out)
static | src/gui/client/fake.c:220 | fake_identity | static qgui_result_t fake_identity(void *user, qgui_identity_t *out)
static | src/gui/client/fake.c:233 | fake_folders | static qgui_result_t fake_folders(void *user, qgui_folder_info_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:255 | fake_list_mail | static qgui_result_t fake_list_mail(void *user, qgui_folder_id_t folder, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:282 | fake_list_mail_page | static qgui_result_t fake_list_mail_page(void *user, qgui_folder_id_t folder, int offset, int sort, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:316 | fake_row_is_contact | static int fake_row_is_contact(const qgui_mail_row_t *r)
static | src/gui/client/fake.c:321 | fake_chip_match | static int fake_chip_match(const qgui_mail_row_t *r, int chip, unsigned char state)
static | src/gui/client/fake.c:338 | fake_cmp | static int fake_cmp(const qgui_mail_row_t *a, const qgui_mail_row_t *b, const qgui_mail_query_t *q)
static | src/gui/client/fake.c:362 | fake_query_mail_page | static qgui_result_t fake_query_mail_page(void *user, qgui_folder_id_t folder, int offset, const qgui_mail_query_t *query, const char *text, qgui_mail_row_t *out, int cap, int *out_n, int *total_out)
static | src/gui/client/fake.c:409 | contains_ci | static int contains_ci(const char *hay, const char *needle)
static | src/gui/client/fake.c:428 | fake_search_mail | static qgui_result_t fake_search_mail(void *user, const char *query, qgui_mail_row_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:460 | fake_list_pending | static qgui_result_t fake_list_pending(void *user, qgui_pending_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:471 | fake_get_message | static qgui_result_t fake_get_message(void *user, qgui_mail_id_t id, qgui_message_t *out)
static | src/gui/client/fake.c:495 | fake_add_from_request | static void fake_add_from_request(qgui_folder_id_t folder, const qgui_send_request_t *req, int draft)
static | src/gui/client/fake.c:522 | fake_send_message | static qgui_result_t fake_send_message(void *user, const qgui_send_request_t *req, char *task_id, size_t task_id_sz, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:560 | fake_task_status | static qgui_result_t fake_task_status(void *user, const char *task_id, qgui_task_status_t *out)
static | src/gui/client/fake.c:574 | fake_save_draft | static qgui_result_t fake_save_draft(void *user, const qgui_send_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:588 | fake_download_attachment | static qgui_result_t fake_download_attachment(void *user, qgui_mail_id_t id, long long attachment_id, const char *dest_dir, const char *name, qgui_progress_fn progress, void *progress_user, char *out_path, size_t out_path_sz, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:661 | fake_record | static void fake_record(qgui_transfer_record_t *out, const char *dir, const char *path, long long total)
static | src/gui/client/fake.c:679 | fake_find_transfer | static qgui_transfer_record_t *fake_find_transfer(const char *operation_id)
static | src/gui/client/fake.c:690 | fake_object_capabilities | static qgui_result_t fake_object_capabilities(void *user, int raida_id, qgui_transfer_caps_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:714 | fake_object_upload | static qgui_result_t fake_object_upload(void *user, const qgui_object_upload_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:730 | fake_object_download | static qgui_result_t fake_object_download(void *user, const qgui_object_download_request_t *req, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:743 | fake_transfer_status | static qgui_result_t fake_transfer_status(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:768 | fake_transfer_resume | static qgui_result_t fake_transfer_resume(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:789 | fake_transfer_cancel | static qgui_result_t fake_transfer_cancel(void *user, const char *operation_id, qgui_transfer_record_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:814 | fake_contact | static void fake_contact(const char *first, const char *last, long long serial, int denom, const char *desc, int fav, int sends)
static | src/gui/client/fake.c:833 | ensure_contacts | static void ensure_contacts(void)
static | src/gui/client/fake.c:845 | fake_list_contacts | static qgui_result_t fake_list_contacts(void *user, int popular, qgui_contact_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:875 | fake_add_contact | static qgui_result_t fake_add_contact(void *user, const qgui_contact_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:899 | fake_delete_contact | static qgui_result_t fake_delete_contact(void *user, long long serial, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:918 | fake_favorite_contact | static qgui_result_t fake_favorite_contact(void *user, long long serial, int value, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:947 | fake_list_wallets | static qgui_result_t fake_list_wallets(void *user, qgui_wallet_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:969 | fake_list_transactions | static qgui_result_t fake_list_transactions(void *user, const qgui_wallet_t *wallet, int limit, qgui_transaction_t *out, int cap, int *out_n)
static | src/gui/client/fake.c:994 | fake_list_receipts | static qgui_result_t fake_list_receipts(void *user, const char *wallet_path, char (*names)[80], int cap, int *out_n)
static | src/gui/client/fake.c:1009 | fake_get_receipt | static qgui_result_t fake_get_receipt(void *user, const char *wallet_path, const char *filename, char *text, size_t text_sz, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1031 | fake_legacy_scan | static qgui_result_t fake_legacy_scan(void *user, qgui_legacy_folder_t *out, int cap, int *out_n, int *vault_files, int *programs_found)
static | src/gui/client/fake.c:1053 | fake_wallet_balance | static qgui_result_t fake_wallet_balance(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/gui/client/fake.c:1076 | fake_wallet_coins | static qgui_result_t fake_wallet_coins(void *user, const char *wallet_path, qgui_wallet_balance_t *out)
static | src/gui/client/fake.c:1094 | fake_wallet_action | static qgui_result_t fake_wallet_action(void *user, const qgui_wallet_request_t *req, qgui_wallet_outcome_t *out)
static | src/gui/client/fake.c:1191 | ensure_profile | static void ensure_profile(void)
static | src/gui/client/fake.c:1210 | fake_get_profile | static qgui_result_t fake_get_profile(void *user, int denomination, long long serial, qgui_profile_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1228 | fake_post_profile | static qgui_result_t fake_post_profile(void *user, const qgui_profile_t *p, int *pass_count, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1255 | fake_search_drd | static qgui_result_t fake_search_drd(void *user, const char *first, const char *last, qgui_drd_user_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1294 | ensure_setup | static void ensure_setup(void)
static | src/gui/client/fake.c:1320 | fake_setup_status | static qgui_result_t fake_setup_status(void *user, qgui_setup_status_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1330 | fake_setup_action | static qgui_result_t fake_setup_action(void *user, const qgui_setup_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1391 | ensure_lists | static void ensure_lists(void)
static | src/gui/client/fake.c:1407 | fake_support_zip | static qgui_result_t fake_support_zip(void *user, char *path, size_t path_sz, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1415 | fake_list_get | static qgui_result_t fake_list_get(void *user, qgui_list_entry_t *out, int cap, int *out_n, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1428 | fake_list_set | static qgui_result_t fake_list_set(void *user, int denomination, long long serial, const char *list_type, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1452 | fake_list_remove | static qgui_result_t fake_list_remove(void *user, int denomination, long long serial, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1471 | fake_starred_mirror | static void fake_starred_mirror(qgui_mail_id_t id, const fake_row_t *source, int starred)
static | src/gui/client/fake.c:1494 | fake_mail_action | static qgui_result_t fake_mail_action(void *user, const qgui_mail_action_request_t *req, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1565 | ensure_update | static void ensure_update(void)
static | src/gui/client/fake.c:1584 | fake_update_status | static qgui_result_t fake_update_status(void *user, qgui_update_status_t *out, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1594 | fake_update_download | static qgui_result_t fake_update_download(void *user, char *task_id, size_t task_sz, char *msg, size_t msg_sz)
static | src/gui/client/fake.c:1616 | fake_save_draft_text | static qgui_result_t fake_save_draft_text(void *user, const char *subject, const char *body, char *msg, size_t msg_sz)
static | src/gui/client/load.c:12 | note_error | static void note_error(qgui_load_result_t *out, const qgui_client_ops_t *client, const char *what)
static | src/gui/client/load.c:22 | load_rows_query | static qgui_result_t load_rows_query(const qgui_client_ops_t *client, qgui_folder_id_t folder, int page, int sort, const qgui_mail_query_t *query, const char *text, qgui_load_result_t *out)
static | src/gui/client/load.c:54 | load_rows | static qgui_result_t load_rows(const qgui_client_ops_t *client, qgui_folder_id_t folder, int page, int sort, qgui_load_result_t *out)
static | src/gui/client/load.c:62 | do_send | static qgui_result_t do_send(const qgui_client_ops_t *client, const qgui_send_request_t *req, qgui_progress_t *progress, qgui_load_result_t *out)
static | src/gui/client/load.c:125 | download_progress | static int download_progress(void *user, long long done_bytes, long long total_bytes)
static | src/gui/client/load.c:229 | warn_append | static void warn_append(qgui_load_result_t *out, const char *wallet, const char *what)
static | src/gui/client/load.c:408 | wallet_op_is_task | static int wallet_op_is_task(qgui_wallet_op_t op)
static | src/gui/client/rest.c:36 | hexval | static int hexval(char *dst, unsigned char c)
static | src/gui/client/rest.c:45 | url_append | static int url_append(char *dst, size_t cap, size_t *used, const char *s, size_t n)
static | src/gui/client/rest.c:73 | params_to_query | static int params_to_query(const char *json, char *dst, size_t cap)
static | src/gui/client/rest.c:165 | widen | static wchar_t *widen(const char *s)
static | src/gui/client/rest.c:184 | rest_execute_winhttp | static qgui_result_t rest_execute_winhttp(rest_user_t *ru, const char *method, const char *path, const char *params_json, qgui_arena_t *arena, const char **out_json, size_t *out_len)
static | src/gui/client/rest.c:392 | rest_download_winhttp | static qgui_result_t rest_download_winhttp(rest_user_t *ru, const char *path, const char *params_json, const char *dest_path, qgui_progress_fn progress, void *progress_user, qgui_arena_t *arena, const char **err_json)
static | src/gui/client/rest.c:551 | rest_download | static qgui_result_t rest_download(void *user, const char *op, const char *params_json, const char *dest_path, qgui_progress_fn progress, void *progress_user, qgui_arena_t *out_arena, const char **err_json)
static | src/gui/client/rest.c:577 | rest_execute | static qgui_result_t rest_execute(void *user, const char *op, const char *params_json, qgui_arena_t *out_arena, const char **out_json, size_t *out_len)
static | src/gui/client/rest.c:603 | rest_subscribe | static qgui_result_t rest_subscribe(void *user, const char *event_name, qgui_mailbox_t *sink)
static | src/gui/host/audio.c:44 | embedded_sound_id | static int embedded_sound_id(const char *file)
static | src/gui/host/audio.c:55 | embedded_sound_open | static int embedded_sound_open(const char *file, qgui_sound_bytes_t *out)
static | src/gui/host/audio.c:76 | decode_sound_memory | static int decode_sound_memory(const unsigned char *data, size_t size, mp3dec_file_info_t *info)
static | src/gui/host/core_proc.c:28 | read_port_file | static int read_port_file(const char *data_dir, int *out_port)
static | src/gui/host/core_proc.c:61 | make_token | static void make_token(char *dst, size_t dst_sz)
static | src/gui/host/core_proc.c:87 | core_spawn | static qgui_result_t core_spawn(void *user, int *out_port, char *token, size_t token_sz)
static | src/gui/host/core_proc.c:170 | core_attach | static qgui_result_t core_attach(void *user, int port, const char *token)
static | src/gui/host/core_proc.c:185 | core_reap | static qgui_result_t core_reap(void *user)
static | src/gui/host/core_proc.c:208 | core_port | static int core_port(void *user)
static | src/gui/host/core_proc.c:214 | core_token | static const char *core_token(void *user)
static | src/gui/host/host_ops.c:14 | stub_clipboard_set | static qgui_result_t stub_clipboard_set(void *user, const char *utf8)
static | src/gui/host/host_ops.c:21 | stub_clipboard_get | static qgui_result_t stub_clipboard_get(void *user, char *dest, size_t dest_sz)
static | src/gui/host/host_ops.c:30 | stub_open_folder | static qgui_result_t stub_open_folder(void *user, const char *path)
static | src/gui/host/host_ops.c:37 | stub_data_dir | static const char *stub_data_dir(void *user)
static | src/gui/host/host_ops.c:43 | stub_now_ms | static uint64_t stub_now_ms(void *user)
static | src/gui/host/host_ops.c:49 | stub_spawn | static qgui_result_t stub_spawn(void *user, int *out_port, char *token, size_t token_sz)
static | src/gui/host/host_ops.c:61 | stub_attach | static qgui_result_t stub_attach(void *user, int port, const char *token)
static | src/gui/host/host_ops.c:69 | stub_reap | static qgui_result_t stub_reap(void *user)
static | src/gui/host/host_ops.c:75 | stub_port | static int stub_port(void *user)
static | src/gui/host/host_ops.c:81 | stub_token | static const char *stub_token(void *user)
static | src/gui/host/host_ops.c:105 | desktop_clipboard_set | static qgui_result_t desktop_clipboard_set(void *user, const char *utf8)
static | src/gui/host/host_ops.c:117 | desktop_clipboard_get | static qgui_result_t desktop_clipboard_get(void *user, char *dest, size_t dest_sz)
static | src/gui/host/host_ops.c:149 | desktop_now_ms | static uint64_t desktop_now_ms(void *user)
static | src/gui/host/host_ops.c:158 | desktop_open_folder | static qgui_result_t desktop_open_folder(void *user, const char *path)
static | src/gui/host/host_ops.c:199 | desktop_downloads_dir | static const char *desktop_downloads_dir(void *user)
static | src/gui/host/host_ops.c:224 | settings_path | static const char *settings_path(void)
static | src/gui/host/host_ops.c:245 | settings_open | static FILE *settings_open(const char *mode)
static | src/gui/host/host_ops.c:254 | desktop_settings_get | static qgui_result_t desktop_settings_get(void *user, const char *key, char *dest, size_t dest_sz)
static | src/gui/host/host_ops.c:282 | desktop_settings_set | static qgui_result_t desktop_settings_set(void *user, const char *key, const char *value)
static | src/gui/host/host_ops.c:383 | role_label | static const char *role_label(qm_font_role_t role)
static | src/gui/host/jobs.c:64 | worker | static int worker(void *user)
static | src/gui/host/jobs.c:72 | worker_body | static int worker_body(struct qgui_jobs *j)
static | src/gui/host/jobs.c:300 | enqueue_common | static qgui_job_id_t enqueue_common(struct qgui_jobs *j, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, int sort, const qgui_send_request_t *req)
static | src/gui/host/jobs.c:307 | enqueue_query_common | static qgui_job_id_t enqueue_query_common(struct qgui_jobs *j, qgui_load_kind_t kind, qgui_folder_id_t folder, int page, qgui_mail_id_t message_id, int sort, const qgui_send_request_t *req, const qgui_mail_query_t *query, const char *text)
static | src/gui/host/log.c:74 | rotate_locked | static void rotate_locked(void)
static | src/gui/host/loop.c:20 | files_picked_cb | static void SDLCALL files_picked_cb(void *userdata, const char * const *filelist, int filter)
static | src/gui/host/loop.c:53 | console_ctrl | static BOOL WINAPI console_ctrl(DWORD kind)
static | src/gui/host/loop.c:65 | install_quit_handler | static void install_quit_handler(void)
static | src/gui/host/loop.c:73 | posix_quit | static void posix_quit(int sig)
static | src/gui/host/loop.c:81 | install_quit_handler | static void install_quit_handler(void)
static | src/gui/host/loop.c:89 | usable_area | static int usable_area(SDL_Window *window, SDL_Rect *area)
static | src/gui/host/loop.c:95 | move_window | static void move_window(SDL_Window *window, int dx)
static | src/gui/host/loop.c:112 | zoom_window | static void zoom_window(qgui_app_t *app, int direction)
static | src/gui/host/loop.c:431 | startup_failed | static void startup_failed(const qgui_app_t *app, const char *what, const char *why)
static | src/gui/host/sse.c:59 | post | static void post(struct qgui_sse *s, int connected, const char *event, const char *data)
static | src/gui/host/sse.c:80 | connect_core | static sock_t connect_core(struct qgui_sse *s, int port)
static | src/gui/host/sse.c:142 | pump | static void pump(struct qgui_sse *s, sock_t fd)
static | src/gui/host/sse.c:200 | sse_thread | static int sse_thread(void *user)
static | src/gui/host/upgrade.c:13 | ps_quote | static void ps_quote(const char *s, char *dst, size_t cap)
static | src/gui/host/upgrade.c:32 | ps_quote_path | static void ps_quote_path(const char *path,char *out,size_t cap)
static | src/gui/host/upgrade.c:82 | launch_recovery_file | static int launch_recovery_file(const char *path, int recover)
static | src/gui/layout/editor.c:34 | send_bar | static void send_bar(const qgui_theme_t *theme, const char *label, int pct)
static | src/gui/layout/editor.c:64 | field_line_height | static float field_line_height(qgui_layout_t *layout, int font, int px)
static | src/gui/layout/editor.c:169 | line_of_offset | static int line_of_offset(const struct qgui_field_cache *fc, int offset)
static | src/gui/layout/editor.c:186 | x_of_offset | static float x_of_offset(qgui_layout_t *layout, const struct qgui_field_cache *fc, int line, int offset)
static | src/gui/layout/layout_internal.h:146 | qgui_error_inline | static inline int qgui_error_inline(const qgui_viewmodel_t *vm, const char *text)
static | src/gui/layout/layout.c:14 | qgui_clay_trace | static void qgui_clay_trace(void)
static | src/gui/layout/layout.c:39 | qgui_clay_error | static void qgui_clay_error(Clay_ErrorData error)
static | src/gui/layout/layout.c:49 | qgui_clay_measure | static Clay_Dimensions qgui_clay_measure(Clay_StringSlice text, Clay_TextElementConfig *config, void *user)
static | src/gui/layout/layout.c:106 | capture_region | static void capture_region(qgui_layout_t *layout, qgui_region_t region, const char *id)
static | src/gui/layout/layout.c:536 | clay_col | static qgui_color_t clay_col(Clay_Color c)
static | src/gui/layout/layout.c:546 | clay_box | static qgui_rect_t clay_box(Clay_BoundingBox b)
static | src/gui/layout/layout.c:558 | field_cache | static const struct qgui_field_cache *field_cache(const qgui_layout_t *layout, int focus_id)
static | src/gui/layout/layout.c:567 | line_offset_at_x | static int line_offset_at_x(qgui_layout_t *layout, const struct qgui_field_cache *fc, int line, float x)
static | src/gui/layout/panes.c:30 | pane_header_begin | static void pane_header_begin(const qgui_theme_t *theme)
static | src/gui/layout/panes.c:35 | small_button | static void small_button(const qgui_theme_t *theme, Clay_ElementId id, const char *glyph, int hit_kind, int hit_index, qgui_color_t color)
static | src/gui/layout/panes.c:51 | mode_tab | static void mode_tab(const qgui_theme_t *theme, const char *id, const char *label, int popular, int selected)
static | src/gui/layout/panes.c:65 | contact_row | static void contact_row(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, int n)
static | src/gui/layout/panes.c:119 | contacts_pane | static void contacts_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:241 | class_rejection_label | static const char *class_rejection_label(int v)
static | src/gui/layout/panes.c:253 | profile_field | static void profile_field(qgui_layout_t *layout, const qgui_theme_t *theme, const char *label, const char *id, int focus, const char *text, int caret, int sel, int focused, const char *placeholder, float w, float h, int multiline)
static | src/gui/layout/panes.c:265 | list_column | static void list_column(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, int k, float col_w)
static | src/gui/layout/panes.c:323 | lists_overlay | static void lists_overlay(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:380 | class_rejection_control | static void class_rejection_control(const qgui_theme_t *theme, int current)
static | src/gui/layout/panes.c:404 | profile_pane | static void profile_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:710 | settings_appearance_card | static void settings_appearance_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float popup_width)
static | src/gui/layout/panes.c:825 | settings_sound_card | static void settings_sound_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float popup_width)
static | src/gui/layout/panes.c:889 | settings_update_card | static void settings_update_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float popup_width)
static | src/gui/layout/panes.c:961 | settings_card_begin_title | static void settings_card_begin_title(const qgui_theme_t *theme, const char *title, const char *blurb)
static | src/gui/layout/panes.c:969 | server_strip | static void server_strip(const qgui_theme_t *theme, unsigned int bits, int total, int ok_count, int known)
static | src/gui/layout/panes.c:984 | settings_security_card | static void settings_security_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float w)
static | src/gui/layout/panes.c:1035 | server_grid | static void server_grid(qgui_layout_t *layout, const qgui_theme_t *theme, const char *label, unsigned int bits, int total, int ok_count, int known)
static | src/gui/layout/panes.c:1056 | settings_network_card | static void settings_network_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float w)
static | src/gui/layout/panes.c:1098 | settings_about_card | static void settings_about_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, float w)
static | src/gui/layout/panes.c:1126 | settings_pane | static void settings_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1211 | tx_cell | static void tx_cell(const qgui_theme_t *theme, float w, const char *s, qgui_color_t color, int right, int font)
static | src/gui/layout/panes.c:1219 | tx_header_cell | static void tx_header_cell(const qgui_theme_t *theme, float w, const char *s, int right)
static | src/gui/layout/panes.c:1227 | transactions_pane | static void transactions_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1452 | denom_text | static void denom_text(char *dst, size_t cap, double v)
static | src/gui/layout/panes.c:1474 | cc_text | static void cc_text(qgui_layout_t *layout, char *dst, size_t cap, double v)
static | src/gui/layout/panes.c:1486 | wallet_tab | static void wallet_tab(const qgui_theme_t *theme, const char *id, const char *glyph, const char *label, int tab, int selected)
static | src/gui/layout/panes.c:1505 | method_tab | static void method_tab(const qgui_theme_t *theme, const char *id, const char *label, int method, int selected)
static | src/gui/layout/panes.c:1528 | wallet_card_begin_label | static void wallet_card_begin_label(const qgui_theme_t *theme, const char *label)
static | src/gui/layout/panes.c:1533 | folder_row | static void folder_row(qgui_layout_t *layout, const qgui_theme_t *theme, const char *id, const char *label, const char *path, qgui_pick_target_t target, int busy)
static | src/gui/layout/panes.c:1547 | submit_button | static void submit_button(const qgui_theme_t *theme, const char *label, const char *glyph, int busy)
static | src/gui/layout/panes.c:1567 | outcome_card | static void outcome_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1654 | wallet_overview | static void wallet_overview(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1725 | wallet_add | static void wallet_add(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1855 | wallet_withdraw | static void wallet_withdraw(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1883 | wallet_pane | static void wallet_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/panes.c:1970 | help_pane | static void help_pane(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/server_panes.c:14 | panel_busy | static int panel_busy(const qgui_server_ui_t *s)
static | src/gui/layout/server_panes.c:16 | required_dot | static void required_dot(const char *id, int missing)
static | src/gui/layout/server_panes.c:40 | action | static void action(const qgui_theme_t *t, const char *id, const char *label, int op, int index, int enabled)
static | src/gui/layout/server_panes.c:48 | group_title | static void group_title(const qgui_theme_t *t, const char *label)
static | src/gui/layout/server_panes.c:55 | state_color | static qgui_color_t state_color(const qgui_theme_t *t, qgui_hosting_status_t state)
static | src/gui/layout/server_panes.c:68 | status_dot | static void status_dot(const qgui_theme_t *t, qgui_hosting_status_t state)
static | src/gui/layout/server_panes.c:78 | field_label | static void field_label(const qgui_theme_t *t, const char *label)
static | src/gui/layout/server_panes.c:83 | body_text | static void body_text(const qgui_theme_t *t, const char *s, qgui_color_t c)
static | src/gui/layout/server_panes.c:90 | section_decl | static Clay_ElementDeclaration section_decl(const qgui_theme_t *t, const char *id)
static | src/gui/layout/server_panes.c:109 | control_row_decl | static Clay_ElementDeclaration control_row_decl(const qgui_theme_t *t)
static | src/gui/layout/server_panes.c:121 | status_label | static void status_label(const qgui_theme_t *t,const char *label)
static | src/gui/layout/server_panes.c:130 | button_primary | static void button_primary(const qgui_theme_t *t, const char *id, const char *label, int op)
static | src/gui/layout/server_panes.c:143 | drd_radio | static void drd_radio(const qgui_theme_t *t, const char *id, const char *label, int value, int selected, int enabled, int op)
static | src/gui/layout/server_panes.c:167 | field_w | static void field_w(qgui_layout_t *layout, const qgui_theme_t *t, const qgui_server_ui_t *s, int n, const char *label, const char *hint, float width)
static | src/gui/layout/server_panes.c:181 | field | static void field(qgui_layout_t *layout, const qgui_theme_t *t, const qgui_server_ui_t *s, int n, const char *label, const char *hint)
static | src/gui/layout/server_panes.c:194 | sort_button | static void sort_button(const qgui_theme_t *t, const char *id, const char *label, int op, int order, const qgui_server_ui_t *s, int enabled)
static | src/gui/layout/server_panes.c:214 | rate_text | static const char *rate_text(qgui_layout_t *layout, uint64_t bps)
static | src/gui/layout/server_panes.c:222 | size_text | static const char *size_text(qgui_layout_t *layout, uint64_t bytes)
static | src/gui/layout/server_panes.c:231 | detail_line | static void detail_line(const qgui_theme_t *t, const char *label, const char *value)
static | src/gui/layout/server_panes.c:243 | cell | static void cell(const qgui_theme_t *t, const char *text, qgui_color_t c, float width, int strong)
static | src/gui/layout/server_panes.c:254 | rows | static void rows(qgui_layout_t *layout, const qgui_theme_t *t, const qgui_server_ui_t *s, int discovered)
static | src/gui/layout/setup.c:27 | para | static void para(const qgui_theme_t *theme, const char *s, qgui_color_t color, int size)
static | src/gui/layout/setup.c:35 | primary_button | static void primary_button(const qgui_theme_t *theme, const char *id, const char *glyph, const char *label, qgui_setup_button_t b, int busy)
static | src/gui/layout/setup.c:53 | secondary_button | static void secondary_button(const qgui_theme_t *theme, const char *id, const char *glyph, const char *label, qgui_setup_button_t b)
static | src/gui/layout/setup.c:59 | message_rows | static void message_rows(const qgui_theme_t *theme, const qgui_viewmodel_t *vm)
static | src/gui/layout/setup.c:78 | field_block | static void field_block(qgui_layout_t *layout, const qgui_theme_t *theme, const char *label, const char *id, int focus, const char *text, int caret, int sel, int focused, const char *placeholder, const char *glyph)
static | src/gui/layout/setup.c:88 | setup_check_body | static void setup_check_body(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/setup.c:130 | import_tab | static void import_tab(const qgui_theme_t *theme, const char *id, const char *label, qgui_setup_button_t b, int selected)
static | src/gui/layout/setup.c:153 | buy_coins_row | static void buy_coins_row(const qgui_theme_t *theme)
static | src/gui/layout/setup.c:183 | setup_identity_card | static void setup_identity_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/setup.c:297 | setup_check_card | static void setup_check_card(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/theme.c:11 | rgb | static qgui_color_t rgb(uint8_t r, uint8_t g, uint8_t b)
static | src/gui/layout/theme.c:129 | hex | static qgui_color_t hex(unsigned v)
static | src/gui/layout/theme.c:135 | mix | static qgui_color_t mix(qgui_color_t c, qgui_color_t d, float t)
static | src/gui/layout/theme.c:148 | palette | static void palette(qgui_theme_t *t, unsigned bg, unsigned surface, unsigned nav, unsigned text, unsigned text2, unsigned text3, unsigned accent, unsigned accent2, unsigned warn, unsigned ok, int light)
static | src/gui/layout/widgets.c:35 | class_color | static Clay_Color class_color(const qgui_theme_t *theme, qgui_class_t id)
static | src/gui/layout/widgets.c:47 | class_letter | static const char *class_letter(qgui_class_t id)
static | src/gui/layout/widgets.c:75 | text_line | static void text_line(const qgui_theme_t *theme, const char *s, qgui_color_t color, int size, int weight_font)
static | src/gui/layout/widgets.c:88 | subject_one_line | static const char *subject_one_line(qgui_layout_t *layout, const char *s, int max_chars)
static | src/gui/layout/widgets.c:346 | button_outline | static void button_outline(const qgui_theme_t *theme, const char *id, const char *label, int hit_kind, int hit_index, qgui_color_t color, int font_size)
static | src/gui/layout/widgets.c:366 | status_label_c | static void status_label_c(const qgui_theme_t *theme, qgui_layout_t *layout, const char *s, qgui_color_t number_color)
static | src/gui/layout/widgets.c:402 | status_label | static void status_label(const qgui_theme_t *theme, qgui_layout_t *layout, const char *s)
static | src/gui/layout/widgets.c:409 | bulk_pack | static int bulk_pack(qgui_bulk_action_t action, qgui_bulk_op_t op, int folder)
static | src/gui/layout/widgets.c:414 | bulk_item | static void bulk_item(const qgui_theme_t *theme, const char *id, const char *label, qgui_bulk_op_t op, int folder)
static | src/gui/layout/widgets.c:429 | nav_row | static void nav_row(qgui_layout_t *layout, const qgui_theme_t *theme, const char *id_base, int idx, int hit_kind, int hit_index, const char *glyph, const char *label, int count, int selected, int bulk_folder)
static | src/gui/layout/widgets.c:692 | mail_row | static void mail_row(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, int i)
static | src/gui/layout/widgets.c:840 | query_hit | static int query_hit(qgui_query_action_t action, int target, int value)
static | src/gui/layout/widgets.c:845 | chip_glyph | static const char *chip_glyph(int chip, qgui_chip_state_t state)
static | src/gui/layout/widgets.c:863 | query_menu_title | static void query_menu_title(const qgui_theme_t *theme, const char *s)
static | src/gui/layout/widgets.c:872 | query_menu_item | static void query_menu_item(const qgui_theme_t *theme, const char *id, int index, const char *glyph, const char *label, int selected, qgui_query_action_t action, int target, int value)
static | src/gui/layout/widgets.c:920 | query_add_menu | static void query_add_menu(const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/widgets.c:943 | query_chip_menu | static void query_chip_menu(const qgui_viewmodel_t *vm, const qgui_theme_t *theme, int chip)
static | src/gui/layout/widgets.c:960 | query_sort_menu | static void query_sort_menu(const qgui_viewmodel_t *vm, const qgui_theme_t *theme)
static | src/gui/layout/widgets.c:978 | query_toolbar | static void query_toolbar(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, qgui_color_t lmuted)
static | src/gui/layout/widgets.c:1159 | checkbox | static void checkbox(const qgui_theme_t *theme, const char *id, uint32_t idx, int on, int hit, int hit_index)
static | src/gui/layout/widgets.c:1181 | icon_button | static void icon_button(const qgui_theme_t *theme, const char *id, uint32_t idx, const char *glyph, qgui_color_t color, int hit, int hit_index, int enabled)
static | src/gui/layout/widgets.c:1200 | select_bar | static void select_bar(qgui_layout_t *layout, const qgui_viewmodel_t *vm, const qgui_theme_t *theme, qgui_color_t ltext, qgui_color_t lmuted)
static | src/gui/layout/widgets.c:1702 | status_strip | static void status_strip(const qgui_theme_t *theme, unsigned int bits, int total, int ok_count)
static | src/gui/layout/widgets.c:1720 | status_divider | static void status_divider(const qgui_theme_t *theme)
static | src/gui/logic/address.c:19 | word_to_code | static int word_to_code(const char *w, size_t n)
static | src/gui/logic/address.c:38 | set_err | static void set_err(char *err, size_t sz, const char *msg)
static | src/gui/logic/address.c:46 | parse_groups | static int parse_groups(const char *s, size_t n, int *groups)
static | src/gui/logic/load.c:11 | apply_health | static void apply_health(qgui_state_t *state, const qgui_health_t *h)
static | src/gui/logic/load.c:48 | apply_rows | static void apply_rows(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:11 | want_folder | static void want_folder(qgui_state_t *state, qgui_folder_id_t f, int page)
static | src/gui/logic/reduce.c:25 | want_message | static void want_message(qgui_state_t *state)
static | src/gui/logic/reduce.c:39 | focused_field | static qgui_text_field_t *focused_field(qgui_state_t *state)
static | src/gui/logic/reduce.c:73 | field_by_id | static qgui_text_field_t *field_by_id(qgui_state_t *state, qgui_focus_t id)
static | src/gui/logic/reduce.c:109 | receipt_pretty | static void receipt_pretty(char *dst, size_t cap, const char *json)
static | src/gui/logic/reduce.c:173 | set_focus | static void set_focus(qgui_state_t *state, qgui_focus_t id)
static | src/gui/logic/reduce.c:207 | want_contacts | static void want_contacts(qgui_state_t *state)
static | src/gui/logic/reduce.c:215 | contact_mutation | static void contact_mutation(qgui_state_t *state, qgui_load_kind_t kind, const qgui_contact_request_t *req)
static | src/gui/logic/reduce.c:227 | contact_action | static void contact_action(qgui_state_t *state, int index, qgui_contact_action_t action)
static | src/gui/logic/reduce.c:294 | stage_contact_add | static int stage_contact_add(qgui_state_t *state)
static | src/gui/logic/reduce.c:335 | apply_contacts_result | static void apply_contacts_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:399 | clear_field | static void clear_field(qgui_text_field_t *f)
static | src/gui/logic/reduce.c:410 | stage_send | static int stage_send(qgui_state_t *state, int for_draft)
static | src/gui/logic/reduce.c:470 | human_size | static void human_size(long long bytes, char *dst, size_t cap)
static | src/gui/logic/reduce.c:481 | base_name | static const char *base_name(const char *path)
static | src/gui/logic/reduce.c:490 | transfer_label | static void transfer_label(qgui_transfer_t *t)
static | src/gui/logic/reduce.c:519 | transfer_for | static qgui_transfer_t *transfer_for(qgui_state_t *state, qgui_mail_id_t mail_id, int attach_index)
static | src/gui/logic/reduce.c:531 | transfer_by_job | static qgui_transfer_t *transfer_by_job(qgui_state_t *state, qgui_job_id_t job_id)
static | src/gui/logic/reduce.c:547 | transfer_slot | static qgui_transfer_t *transfer_slot(qgui_state_t *state, qgui_mail_id_t mail_id, int attach_index)
static | src/gui/logic/reduce.c:567 | selected_message | static const qgui_message_t *selected_message(const qgui_state_t *state)
static | src/gui/logic/reduce.c:579 | begin_pending_attachment_download | static void begin_pending_attachment_download(qgui_state_t *state, const char *dest_dir)
static | src/gui/logic/reduce.c:605 | attach_action | static void attach_action(qgui_state_t *state, int index, qgui_attach_action_t action)
static | src/gui/logic/reduce.c:660 | apply_download_result | static void apply_download_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:686 | want_transactions | static void want_transactions(qgui_state_t *state)
static | src/gui/logic/reduce.c:693 | amount_text | static void amount_text(double v, char *dst, size_t cap)
static | src/gui/logic/reduce.c:708 | tone_of_type | static int tone_of_type(const char *type)
static | src/gui/logic/reduce.c:729 | apply_transactions_result | static void apply_transactions_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:772 | open_receipt | static void open_receipt(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:797 | open_receipt_path | static void open_receipt_path(qgui_state_t *state, const char *path, const char *title)
static | src/gui/logic/reduce.c:835 | want_wallet | static void want_wallet(qgui_state_t *state)
static | src/gui/logic/reduce.c:842 | wallet_pick | static void wallet_pick(qgui_state_t *state, qgui_pick_target_t target)
static | src/gui/logic/reduce.c:855 | parse_amount | static double parse_amount(const char *s)
static | src/gui/logic/reduce.c:884 | stage_wallet_action | static int stage_wallet_action(qgui_state_t *state)
static | src/gui/logic/reduce.c:970 | apply_wallet_result | static void apply_wallet_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:1037 | want_lists | static void want_lists(qgui_state_t *state)
static | src/gui/logic/reduce.c:1044 | want_profile | static void want_profile(qgui_state_t *state)
static | src/gui/logic/reduce.c:1053 | contact_known | static int contact_known(const qgui_state_t *state, long long serial)
static | src/gui/logic/reduce.c:1062 | contact_prompt_end | static void contact_prompt_end(qgui_state_t *state)
static | src/gui/logic/reduce.c:1080 | contact_prompt_show | static void contact_prompt_show(qgui_state_t *state)
static | src/gui/logic/reduce.c:1103 | contact_prompt_next | static void contact_prompt_next(qgui_state_t *state)
static | src/gui/logic/reduce.c:1114 | contact_prompt_begin | static void contact_prompt_begin(qgui_state_t *state, const char *to)
static | src/gui/logic/reduce.c:1157 | set_field_text | static void set_field_text(qgui_text_field_t *f, const char *s)
static | src/gui/logic/reduce.c:1165 | profile_to_fields | static void profile_to_fields(qgui_state_t *state)
static | src/gui/logic/reduce.c:1174 | apply_profile_result | static void apply_profile_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:1210 | stage_profile_save_scope | static int stage_profile_save_scope(qgui_state_t *state, int scope)
static | src/gui/logic/reduce.c:1261 | stage_profile_save | static int stage_profile_save(qgui_state_t *state)
static | src/gui/logic/reduce.c:1266 | apply_lookup_result | static void apply_lookup_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:1284 | setup_first_time | static int setup_first_time(const qgui_state_t *state)
static | src/gui/logic/reduce.c:1290 | setup_needs_password | static int setup_needs_password(const qgui_state_t *state)
static | src/gui/logic/reduce.c:1297 | setup_decide | static void setup_decide(qgui_state_t *state)
static | src/gui/logic/reduce.c:1338 | setup_mask | static void setup_mask(const qgui_text_field_t *f, char *mask, size_t cap)
static | src/gui/logic/reduce.c:1346 | setup_run | static void setup_run(qgui_state_t *state, qgui_setup_op_t op)
static | src/gui/logic/reduce.c:1369 | setup_stage_deposit | static int setup_stage_deposit(qgui_state_t *state, const char *folder, const char *memo)
static | src/gui/logic/reduce.c:1413 | setup_button | static void setup_button(qgui_state_t *state, qgui_setup_button_t b)
static | src/gui/logic/reduce.c:1537 | sync_has_identity | static int sync_has_identity(const qgui_state_t *state)
static | src/gui/logic/reduce.c:1542 | apply_setup_result | static void apply_setup_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:1628 | mail_run | static void mail_run(qgui_state_t *state, qgui_mail_op_t op, qgui_mail_id_t id, qgui_folder_id_t folder, qgui_folder_id_t target, int value)
static | src/gui/logic/reduce.c:1646 | pending_shown | static int pending_shown(const qgui_state_t *state)
static | src/gui/logic/reduce.c:1652 | want_search_message | static void want_search_message(qgui_state_t *state)
static | src/gui/logic/reduce.c:1666 | current_row | static qgui_mail_row_t *current_row(qgui_state_t *state, qgui_folder_id_t *folder, qgui_message_t **msg)
static | src/gui/logic/reduce.c:1689 | remove_row | static void remove_row(qgui_state_t *state, qgui_folder_id_t f, int r)
static | src/gui/logic/reduce.c:1711 | remove_search_row | static void remove_search_row(qgui_state_t *state, int r)
static | src/gui/logic/reduce.c:1727 | remove_current | static void remove_current(qgui_state_t *state)
static | src/gui/logic/reduce.c:1736 | mark_read_on_open | static void mark_read_on_open(qgui_state_t *state)
static | src/gui/logic/reduce.c:1751 | toggle_star_row | static void toggle_star_row(qgui_state_t *state, qgui_mail_row_t *row, qgui_folder_id_t f)
static | src/gui/logic/reduce.c:1769 | picked_find | static int picked_find(const qgui_state_t *state, qgui_mail_id_t id)
static | src/gui/logic/reduce.c:1788 | picked_add | static void picked_add(qgui_state_t *state, qgui_mail_id_t id)
static | src/gui/logic/reduce.c:1796 | picked_remove | static void picked_remove(qgui_state_t *state, qgui_mail_id_t id)
static | src/gui/logic/reduce.c:1811 | list_row_at | static qgui_mail_row_t *list_row_at(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:1829 | list_row_folder | static qgui_folder_id_t list_row_folder(const qgui_state_t *state, const qgui_mail_row_t *row)
static | src/gui/logic/reduce.c:1835 | row_actionable | static int row_actionable(const qgui_mail_row_t *row)
static | src/gui/logic/reduce.c:1840 | row_pick | static void row_pick(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:1853 | row_read_toggle | static void row_read_toggle(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:1868 | row_trash | static void row_trash(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:1886 | pick_all | static void pick_all(qgui_state_t *state, int on)
static | src/gui/logic/reduce.c:1904 | picked_bulk | static void picked_bulk(qgui_state_t *state, qgui_bulk_op_t op)
static | src/gui/logic/reduce.c:1924 | row_star | static void row_star(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:1939 | search_exit | static void search_exit(qgui_state_t *state)
static | src/gui/logic/reduce.c:1952 | has_prefix_ci | static int has_prefix_ci(const char *s, const char *p)
static | src/gui/logic/reduce.c:1964 | compose_from | static void compose_from(qgui_state_t *state, const qgui_message_t *m, int forward)
static | src/gui/logic/reduce.c:2007 | reading_action | static void reading_action(qgui_state_t *state, qgui_reading_action_t id)
static | src/gui/logic/reduce.c:2134 | live_new_mail | static void live_new_mail(qgui_state_t *state, const char *guid)
static | src/gui/logic/reduce.c:2171 | update_transfers_active | static int update_transfers_active(const qgui_state_t *state)
static | src/gui/logic/reduce.c:2178 | update_action | static void update_action(qgui_state_t *state, qgui_update_action_t a)
static | src/gui/logic/reduce.c:2218 | apply_update_result | static void apply_update_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2248 | apply_search_result | static void apply_search_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2270 | apply_pending_result | static void apply_pending_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2295 | apply_mail_action_result | static void apply_mail_action_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2362 | bulk_close | static void bulk_close(qgui_state_t *state)
static | src/gui/logic/reduce.c:2369 | bulk_confirm_text | static const char *bulk_confirm_text(qgui_bulk_op_t op, qgui_folder_id_t folder, const char *who)
static | src/gui/logic/reduce.c:2399 | sender_quick_action | static void sender_quick_action(qgui_state_t *state, qgui_bulk_op_t op)
static | src/gui/logic/reduce.c:2446 | bulk_pick | static void bulk_pick(qgui_state_t *state, qgui_bulk_op_t op, qgui_folder_id_t folder)
static | src/gui/logic/reduce.c:2485 | bulk_event | static void bulk_event(qgui_state_t *state, qgui_bulk_action_t action, qgui_bulk_op_t op, int folder)
static | src/gui/logic/reduce.c:2528 | apply_bulk_result | static void apply_bulk_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2545 | go_dest | static void go_dest(qgui_state_t *state, qgui_dest_id_t d)
static | src/gui/logic/reduce.c:2556 | open_settings | static void open_settings(qgui_state_t *state, int section)
static | src/gui/logic/reduce.c:2564 | open_symbol_modal | static void open_symbol_modal(qgui_state_t *state)
static | src/gui/logic/reduce.c:2571 | synth_key | static void synth_key(qgui_state_t *state, qgui_key_t k, int mods)
static | src/gui/logic/reduce.c:2581 | toast | static void toast(qgui_state_t *state, const char *text, int ms)
static | src/gui/logic/reduce.c:2587 | security_can_encrypt | static int security_can_encrypt(const qgui_state_t *state)
static | src/gui/logic/reduce.c:2592 | security_needs_password | static int security_needs_password(const qgui_state_t *state)
static | src/gui/logic/reduce.c:2600 | security_open | static void security_open(qgui_state_t *state, int mode)
static | src/gui/logic/reduce.c:2621 | security_submit | static void security_submit(qgui_state_t *state)
static | src/gui/logic/reduce.c:2656 | security_event | static void security_event(qgui_state_t *state, qgui_security_action_t a)
static | src/gui/logic/reduce.c:2685 | list_add | static void list_add(qgui_state_t *state, int kind)
static | src/gui/logic/reduce.c:2727 | list_event | static void list_event(qgui_state_t *state, qgui_list_action_t a, int kind, int index)
static | src/gui/logic/reduce.c:2750 | apply_lists_result | static void apply_lists_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2775 | help_send_form | static void help_send_form(qgui_state_t *state, int idea)
static | src/gui/logic/reduce.c:2800 | help_event | static void help_event(qgui_state_t *state, qgui_help_action_t a, int index)
static | src/gui/logic/reduce.c:2843 | apply_support_result | static void apply_support_result(qgui_state_t *state, const qgui_load_result_t *r)
static | src/gui/logic/reduce.c:2859 | menu_command | static void menu_command(qgui_state_t *state, qgui_menu_cmd_t cmd)
static | src/gui/logic/reduce.c:3070 | insert_maybe_upper | static void insert_maybe_upper(qgui_state_t *state, qgui_text_field_t *field, const char *text, int len)
static | src/gui/logic/reduce.c:3094 | titlebar_apply_valid_field | static void titlebar_apply_valid_field(qgui_state_t *state)
static | src/gui/logic/reduce.c:3104 | titlebar_event | static void titlebar_event(qgui_state_t *state, int index)
static | src/gui/logic/reduce.c:3145 | reduce_event | static void reduce_event(qgui_state_t *state, const qgui_event_t *event)
static | src/gui/logic/reduce.c:4764 | error_buffer | static char *error_buffer(qgui_state_t *state, int kind)
static | src/gui/logic/servers.c:19 | field_set | static void field_set(qgui_server_ui_t *s, int i, int value)
static | src/gui/logic/servers.c:59 | capture_saved | static void capture_saved(qgui_server_ui_t *s)
static | src/gui/logic/servers.c:263 | run_pending_test | static void run_pending_test(qgui_server_ui_t *s)
static | src/gui/logic/text_field.c:5 | utf8_next | static int utf8_next(const char *s, int i, int len)
static | src/gui/logic/text_field.c:28 | utf8_prev | static int utf8_prev(const char *s, int i)
static | src/gui/logic/text_field.c:85 | delete_range | static void delete_range(qgui_text_field_t *f, int lo, int hi)
static | src/gui/logic/viewmodel.c:12 | avatar_for | static qgui_avatar_t avatar_for(const char *address)
static | src/gui/logic/viewmodel.c:44 | description_for | static const char *description_for(const char *address, const char *own, int slot)
static | src/gui/logic/viewmodel.c:65 | file_name_of | static const char *file_name_of(const char *path)
static | src/gui/logic/viewmodel.c:73 | find_transfer | static const qgui_transfer_t *find_transfer(const qgui_state_t *state, qgui_mail_id_t mail_id, int index)
static | src/gui/logic/viewmodel.c:86 | lower_c | static int lower_c(int c)
static | src/gui/logic/viewmodel.c:91 | str_contains_ci | static int str_contains_ci(const char *hay, const char *needle)
static | src/gui/logic/viewmodel.c:106 | class_of_code | static qgui_class_t class_of_code(int code)
static | src/gui/logic/viewmodel.c:118 | class_label | static const char *class_label(qgui_class_t id)
static | src/gui/render/cbdf_doc.cpp:33 | set_err | static void set_err(char *err, size_t err_sz, const char *msg)
static | src/gui/render/cbdf_doc.cpp:40 | rgb565 | static uint16_t rgb565(qgui_color_t c)
static | src/gui/render/render.cpp:126 | resolve_family | static const char *resolve_family(void *user, uint16_t family_index)
static | src/gui/render/render.cpp:136 | resolve_family_face | static void resolve_family_face(void *user, uint16_t family_index, int *face_index, int *weight)
static | src/gui/render/render.cpp:171 | fill_rounded | static void fill_rounded(SDL_Renderer *sdl, SDL_FRect rc, SDL_FColor col, float radius)
static | src/gui/render/render.cpp:241 | measure_tramp | static qgui_text_metrics_t measure_tramp(const char *text, int length, uint16_t font_id, uint16_t font_size_px, void *user)
static | src/gui/render/render.cpp:259 | to_clip | static SDL_Rect to_clip(qgui_rect_t rect)
static | src/gui/render/render.cpp:275 | intersect_rect | static SDL_Rect intersect_rect(SDL_Rect a, SDL_Rect b)
static | src/gui/render/render.cpp:296 | texture_for | static SDL_Texture *texture_for(qgui_renderer_t *r, const char *rel)
static | src/gui/render/render.cpp:598 | icon_refs_init | static void icon_refs_init()
static | src/gui/render/render.cpp:608 | icon_index | static int icon_index(uint32_t codepoint)
static | src/gui/render/render.cpp:618 | utf8_first | static uint32_t utf8_first(const char *s)
static | src/gui/render/render.cpp:694 | icon_texture | static SDL_Texture *icon_texture(qgui_renderer_t *r, const qgui_icon_ref_t *ref, int px)
static | src/gui/render/render.cpp:968 | stroke_arc | static void stroke_arc(SDL_Renderer *sdl, float cx, float cy, float radius, float thick, float a0, SDL_FColor col)
static | src/gui/server_adapter.c:13 | failure | static qgui_result_t failure(qgui_server_reply_t *r, const char *message)
static | src/gui/server_adapter.c:19 | parse_id | static int parse_id(const char *s, uint64_t *id)
static | src/gui/server_adapter.c:35 | display_name | static void display_name(const qmail_endpoint_t *ep, char *out, size_t size)
static | src/gui/server_adapter.c:41 | map_record | static void map_record(const qmail_server_record_t *in, qgui_server_record_t *out)
static | src/gui/server_adapter.c:61 | snapshot | static qgui_result_t snapshot(qgui_server_reply_t *reply)
static | src/gui/server_adapter.c:77 | has_type9 | static int has_type9(const char *types)
static | src/gui/server_adapter.c:89 | map_discovery | static int map_discovery(const drd_server_desc_t *d, qmail_endpoint_t *ep, qgui_server_record_t *row)
static | src/gui/server_adapter.c:125 | discover | static qgui_result_t discover(qmail_gui_server_adapter_t *a, qgui_server_reply_t *r)
static | src/gui/server_adapter.c:203 | authenticated_probe | static void authenticated_probe(void *context, const qmail_endpoint_t *ep, uint32_t timeout, qmail_server_test_result_t *out)
static | src/mail/commands/cmd_download_parallel.c:54 | download_parallel_build_body | static result_t download_parallel_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/mail/commands/cmd_download_parallel.c:107 | download_parallel_parse | static result_t download_parallel_parse(const raida_result_t *rr, uint8_t **out_bytes, size_t *out_len)
static | src/mail/qmail_amount.c:58 | ceil_rem_times_rate_over_mib | static uint64_t ceil_rem_times_rate_over_mib(uint64_t rem, uint64_t rate)
static | src/mail/qmail_beacon.c:87 | beacon_sleep_ms | static void beacon_sleep_ms(uint32_t ms)
static | src/mail/qmail_beacon.c:97 | beacon_sleep_interruptible | static void beacon_sleep_interruptible(qmail_beacon_state_t *state, uint32_t total_ms)
static | src/mail/qmail_beacon.c:108 | beacon_runtime_locks_init | static void beacon_runtime_locks_init(void)
static | src/mail/qmail_beacon.c:121 | beacon_inflight_lock | static void beacon_inflight_lock(void)
static | src/mail/qmail_beacon.c:130 | beacon_inflight_unlock | static void beacon_inflight_unlock(void)
static | src/mail/qmail_beacon.c:138 | beacon_receive_lock | static void beacon_receive_lock(void)
static | src/mail/qmail_beacon.c:147 | beacon_receive_unlock | static void beacon_receive_unlock(void)
static | src/mail/qmail_beacon.c:155 | beacon_guid_inflight_acquire | static bool beacon_guid_inflight_acquire(const uint8_t guid[QMAIL_GUID_SIZE])
static | src/mail/qmail_beacon.c:185 | beacon_guid_inflight_release | static void beacon_guid_inflight_release(const uint8_t guid[QMAIL_GUID_SIZE])
static | src/mail/qmail_beacon.c:200 | beacon_default_secondary | static uint8_t beacon_default_secondary(uint8_t primary)
static | src/mail/qmail_beacon.c:205 | beacon_configure_peers | static void beacon_configure_peers(qmail_beacon_state_t *state)
static | src/mail/qmail_beacon.c:229 | beacon_build_context | static void beacon_build_context(qmail_beacon_state_t *state, qmail_beacon_peer_state_t *peer, qmail_ping_context_t *ctx, raida_encryption_key_t *key_copy)
static | src/mail/qmail_beacon.c:256 | beacon_note_success | static void beacon_note_success(qmail_beacon_state_t *state, qmail_beacon_peer_state_t *peer)
static | src/mail/qmail_beacon.c:270 | beacon_note_error | static void beacon_note_error(qmail_beacon_state_t *state, qmail_beacon_peer_state_t *peer)
static | src/mail/qmail_beacon.c:297 | beacon_advance_timestamp | static void beacon_advance_timestamp(qmail_beacon_state_t *state, qmail_beacon_peer_state_t *peer, const qmail_ping_response_t *response)
static | src/mail/qmail_beacon.c:365 | process_notification | static bool process_notification(qmail_beacon_state_t *state, const qmail_tell_notification_t *notif, uint8_t source_beacon, bool *durably_stored)
static | src/mail/qmail_beacon.c:486 | beacon_try_rekey | static bool beacon_try_rekey(qmail_beacon_state_t *state)
static | src/mail/qmail_beacon.c:556 | beacon_loop | static void beacon_loop(qmail_beacon_thread_arg_t *thread_arg)
static | src/mail/qmail_beacon.c:784 | beacon_max_timestamp_unlocked | static uint32_t beacon_max_timestamp_unlocked(const qmail_beacon_state_t *state)
static | src/mail/qmail_beacon.c:795 | beacon_key_matches_id | static bool beacon_key_matches_id(const char *key, uint8_t beacon_id)
static | src/mail/qmail_beacon.c:804 | beacon_trim | static void beacon_trim(char **start, char **end)
static | src/mail/qmail_beacon.c:820 | beacon_thread_proc | static unsigned __stdcall beacon_thread_proc(void *arg)
static | src/mail/qmail_beacon.c:825 | beacon_thread_proc | static void *beacon_thread_proc(void *arg)
static | src/mail/qmail_cbdf.c:25 | write_mailbox | static void write_mailbox(uint8_t *p, int8_t denomination, uint32_t serial_number)
static | src/mail/qmail_cbdf.c:35 | qmail_cbdf_encode_legacy | static result_t qmail_cbdf_encode_legacy(const qmail_cbdf_params_t *params, uint8_t **data_out, size_t *size_out)
static | src/mail/qmail_coin_select.c:35 | qcs_list_bin_files | static int qcs_list_bin_files(const char *dir_path, char ***filenames, int max_files)
static | src/mail/qmail_coin_select.c:83 | qcs_free_file_list | static void qcs_free_file_list(char **filenames, int count)
static | src/mail/qmail_coin_select.c:89 | qcs_coin_read_first | static result_t qcs_coin_read_first(const char *dir_path, const char *filename, cloudcoin_t *coin_out)
static | src/mail/qmail_coin_select.c:98 | qcs_coin_is_excluded | static bool qcs_coin_is_excluded(const cloudcoin_t *coin, const cloudcoin_t *exclude, int exclude_count)
static | src/mail/qmail_coin_select.c:111 | qcs_largest_breakable_in_wallet | static int8_t qcs_largest_breakable_in_wallet(const char *wallet_path)
static | src/mail/qmail_coin_select.c:134 | qcs_find_breakable_denom_for_gap | static int8_t qcs_find_breakable_denom_for_gap(const char *wallet_path, uint64_t gap_units)
static | src/mail/qmail_coin_select.c:160 | qcs_snapshot_bank_fracked_denom_counts | static void qcs_snapshot_bank_fracked_denom_counts(const char *wallet_path, int counts[COIN_DENOM_COUNT])
static | src/mail/qmail_command_validate.c:10 | qmail_invalid | static result_t qmail_invalid(const char *cmd_name, const char *reason)
static | src/mail/qmail_command_validate.c:21 | qmail_invalid_reason | static result_t qmail_invalid_reason(const char *cmd_name, const char *reason, char *out_reason, size_t out_reason_size)
static | src/mail/qmail_command_validate.c:31 | qmail_tell_invalid | static result_t qmail_tell_invalid( const char *cmd_name, const char *reason, qmail_tell_validation_failure_t failure, char *out_reason, size_t out_reason_size, qmail_tell_validation_failure_t *out_failure)
static | src/mail/qmail_command_validate.c:40 | qmail_bytes_all_zero | static bool qmail_bytes_all_zero(const uint8_t *bytes, size_t len)
static | src/mail/qmail_command_validate.c:48 | qmail_validate_identity_fields | static result_t qmail_validate_identity_fields(const char *cmd_name, int8_t denomination, uint32_t serial_number, const uint8_t an[AN_LENGTH])
static | src/mail/qmail_command_validate.c:64 | qmail_validate_identity_fields_reason | static result_t qmail_validate_identity_fields_reason( const char *cmd_name, int8_t denomination, uint32_t serial_number, const uint8_t an[AN_LENGTH], char *out_reason, size_t out_reason_size, qmail_tell_validation_failure_t *out_failure)
static | src/mail/qmail_compress.c:49 | ext_is_precompressed | static int ext_is_precompressed(const char *filename)
static | src/mail/qmail_compress.c:68 | deflate_stream | static int deflate_stream(const char *src_path, const char *out_path, uint64_t orig_size, qmail_compression_mode_t mode, uint64_t *stored_out)
static | src/mail/qmail_contacts.c:45 | is_all_digits | static bool is_all_digits(const char *s)
static | src/mail/qmail_contacts.c:53 | qmail_contact_normalize_beacons | static void qmail_contact_normalize_beacons(qmail_contact_t *contact)
static | src/mail/qmail_contacts.c:137 | qmail_address_parse_core | static result_t qmail_address_parse_core(const char *address, uint32_t *serial_out, int8_t *denom_out, const char **err_msg)
static | src/mail/qmail_crypto.c:22 | qmail_enc_key_callback | static encryption_key_t *qmail_enc_key_callback(uint8_t raida_id, void *data)
static | src/mail/qmail_crypto.c:29 | wire_encryption | static void wire_encryption(const raida_encryption_key_t *key, exec_config_t *config, qmail_encryption_state_t *state)
static | src/mail/qmail_crypto.c:40 | select_mail_id_fallback | static result_t select_mail_id_fallback(uint32_t mail_id_sn, raida_encryption_key_t *key_out)
static | src/mail/qmail_db.c:324 | copy_text_column | static void copy_text_column(char *dest, size_t dest_size, sqlite3_stmt *stmt, int col)
static | src/mail/qmail_db.c:334 | copy_blob_column | static void copy_blob_column(uint8_t *dest, size_t dest_size, sqlite3_stmt *stmt, int col)
static | src/mail/qmail_db.c:349 | resolve_attachment_path | static result_t resolve_attachment_path(const char *stored, int kind, char *out, size_t out_size)
static | src/mail/qmail_db.c:385 | read_contact_row | static void read_contact_row(sqlite3_stmt *stmt, qmail_contact_t *c)
static | src/mail/qmail_db.c:423 | read_email_row | static void read_email_row(sqlite3_stmt *stmt, qmail_email_t *e)
static | src/mail/qmail_db.c:466 | load_email_recipients | static void load_email_recipients(qmail_email_t *e)
static | src/mail/qmail_db.c:494 | backfill_recipient_denominations | static void backfill_recipient_denominations(void)
static | src/mail/qmail_db.c:545 | backfill_sent_folder_rows | static void backfill_sent_folder_rows(void)
static | src/mail/qmail_db.c:1389 | qmail_db_remove_external_attachment_files | static void qmail_db_remove_external_attachment_files( const uint8_t email_id[QMAIL_GUID_SIZE])
static | src/mail/qmail_db.c:1739 | query_text_is_safe | static bool query_text_is_safe(const char *q)
static | src/mail/qmail_db.c:1749 | query_add_bool | static void query_add_bool(char *sql, size_t cap, int value, const char *expr)
static | src/mail/qmail_db.c:1759 | query_build_where | static void query_build_where(const qmail_db_email_query_t *q, char *sql, size_t cap)
static | src/mail/qmail_db.c:1802 | query_bind_where | static int query_bind_where(sqlite3_stmt *stmt, const qmail_db_email_query_t *q)
static | src/mail/qmail_db.c:1815 | query_build_order | static void query_build_order(const qmail_db_email_query_t *q, char *out, size_t cap)
static | src/mail/qmail_db.c:2008 | qmail_db_tell_manifest_valid | static bool qmail_db_tell_manifest_valid(const qmail_tell_notification_t *tell)
static | src/mail/qmail_db.c:2021 | qmail_db_tell_manifest_data | static const void *qmail_db_tell_manifest_data( const qmail_tell_notification_t *tell)
static | src/mail/qmail_db.c:2472 | tell_row_to_notification | static void tell_row_to_notification(sqlite3_stmt *stmt, qmail_tell_notification_t *t)
static | src/mail/qmail_db.c:2663 | sent_insert_rows | static result_t sent_insert_rows(const uint8_t file_guid[QMAIL_GUID_SIZE], const char *subject, const char *recipients, const char *body_preview, const char *full_body, int64_t timestamp, uint32_t sender_sn, int8_t sender_denomination, const qmail_recipient_entry_t *entries, int entry_count)
static | src/mail/qmail_db.c:2880 | attachment_insert_rows | static result_t attachment_insert_rows(const qmail_attachment_t *attachment)
static | src/mail/qmail_db.c:4023 | qmail_db_export_journal_load_coins | static result_t qmail_db_export_journal_load_coins( int64_t journal_id, qmail_export_journal_coin_t **coins_out, int *count_out)
static | src/mail/qmail_db.c:4630 | qmail_db_table_has_column | static bool qmail_db_table_has_column(const char *table, const char *col)
static | src/mail/qmail_db.c:4648 | qmail_db_exec_checked | static result_t qmail_db_exec_checked(const char *sql, const char *ctx)
static | src/mail/qmail_db.c:4662 | qmail_db_backfill_units_column | static result_t qmail_db_backfill_units_column(const char *table, const char *legacy_col, const char *units_col)
static | src/mail/qmail_db.c:4803 | qmail_db_mig_maybe_fault | static result_t qmail_db_mig_maybe_fault(const char *step)
static | src/mail/qmail_db.c:4813 | qmail_db_rollback_checked | static result_t qmail_db_rollback_checked(void)
static | src/mail/qmail_db.c:4826 | qmail_db_read_user_version | static result_t qmail_db_read_user_version(int *version_out)
static | src/mail/qmail_db.c:4852 | qmail_db_sql_normalize | static void qmail_db_sql_normalize(const char *in, char *out, size_t out_sz)
static | src/mail/qmail_db.c:4876 | qmail_db_master_sql_exact | static bool qmail_db_master_sql_exact(const char *type, const char *name, const char *expected_sql)
static | src/mail/qmail_db.c:4901 | qmail_db_index_exact | static bool qmail_db_index_exact(void)
static | src/mail/qmail_db.c:4906 | qmail_db_fts_au_exact | static bool qmail_db_fts_au_exact(void)
static | src/mail/qmail_db.c:4912 | qmail_db_legacy_au_triggers_exact | static bool qmail_db_legacy_au_triggers_exact(void)
static | src/mail/qmail_db.c:4925 | qmail_db_install_fts_au_trigger | static result_t qmail_db_install_fts_au_trigger(void)
static | src/mail/qmail_db.c:4937 | qmail_db_install_units_triggers | static result_t qmail_db_install_units_triggers(void)
static | src/mail/qmail_db.c:4969 | qmail_db_rebuild_locker_index | static result_t qmail_db_rebuild_locker_index(void)
static | src/mail/qmail_db.c:4988 | qmail_db_migrate_units_schema | static result_t qmail_db_migrate_units_schema(void)
static | src/mail/qmail_db.c:5115 | qmail_db_units_consistency_check | static void qmail_db_units_consistency_check(void)
static | src/mail/qmail_db.c:5388 | copy_text_column_bounded | static void copy_text_column_bounded(char *dst, size_t dst_size, sqlite3_stmt *stmt, int col)
static | src/mail/qmail_document.c:14 | document_error | static int document_error(char *error, size_t cap, const char *message)
static | src/mail/qmail_download.c:31 | parse_download_response | static result_t parse_download_response(const raida_result_t *exec_result, qmail_download_response_t *response)
static | src/mail/qmail_download.c:66 | download_build_body | static result_t download_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/mail/qmail_endpoint.c:29 | set_err | static void set_err(char *err, size_t err_size, const char *msg)
static | src/mail/qmail_endpoint.c:38 | copy_bounded | static bool copy_bounded(char *dst, size_t dst_size, const char *src)
static | src/mail/qmail_funding_journal.inc:2 | funding_wallet | static result_t funding_wallet(const char *wallet, char stored[4096], int *kind)
static | src/mail/qmail_funding_journal.inc:10 | funding_valid | static bool funding_valid(const qmail_funding_intent_t *row)
static | src/mail/qmail_funding_journal.inc:48 | funding_finish_stmt | static int funding_finish_stmt(sqlite3_stmt *stmt, int rc)
static | src/mail/qmail_funding_journal.inc:56 | funding_owner_valid | static bool funding_owner_valid(const uint8_t guid[16], int purpose, int slot)
static | src/mail/qmail_funding_journal.inc:120 | funding_list | static result_t funding_list(const char *wallet, const char *key_filter, qmail_funding_intent_t **out, int *count)
static | src/mail/qmail_funding_journal.inc:302 | funding_transition_unstarted | static result_t funding_transition_unstarted(const char *wallet, int expected, bool discard)
static | src/mail/qmail_funding_paths.inc:114 | funding_path_transition | static result_t funding_path_transition(const char *wallet, const char *key, const core_token_id_t *coin, bool attempt)
static | src/mail/qmail_object_transfer.c:22 | bytes_all_zero | static bool bytes_all_zero(const uint8_t *value, size_t size)
static | src/mail/qmail_object_transfer.c:31 | range_is_valid | static bool range_is_valid(uint64_t offset, uint64_t length)
static | src/mail/qmail_object_transfer.c:35 | write_common | static result_t write_common(uint8_t *out, size_t out_size, size_t header_size, const qmail_ot_common_t *common)
static | src/mail/qmail_object_transfer.c:101 | serialize_begin | static result_t serialize_begin(const qmail_ot_object_begin_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:139 | serialize_put_range | static result_t serialize_put_range( const qmail_ot_object_put_range_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:161 | serialize_transfer_status | static result_t serialize_transfer_status( const qmail_ot_object_transfer_status_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:182 | serialize_commit | static result_t serialize_commit( const qmail_ot_object_commit_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:206 | serialize_abort | static result_t serialize_abort( const qmail_ot_object_abort_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:221 | serialize_info | static result_t serialize_info( const qmail_ot_object_info_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:238 | serialize_get_range | static result_t serialize_get_range( const qmail_ot_object_get_range_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:261 | serialize_capabilities | static result_t serialize_capabilities( const qmail_ot_object_capabilities_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:271 | serialize_delete | static result_t serialize_delete( const qmail_ot_object_delete_request_t *request, uint8_t *out, size_t out_size)
static | src/mail/qmail_object_transfer.c:385 | parse_common | static result_t parse_common(uint8_t command, const uint8_t *plaintext, size_t plaintext_size, qmail_ot_response_t *response, size_t *header_size)
static | src/mail/qmail_object_transfer.c:416 | require_zero | static result_t require_zero(const uint8_t *data, size_t size)
static | src/mail/qmail_object_transfer.c:704 | command_name | static const char *command_name(uint8_t command)
static | src/mail/qmail_object_transfer.c:797 | reconcile_session_mutation | static result_t reconcile_session_mutation(qmail_session_coordinator_t *c, const qmail_endpoint_t *ep,const char *op,uint8_t command,const uint8_t *body,int timeout)
static | src/mail/qmail_object_transfer.c:844 | execute_session_command | static result_t execute_session_command(const qmail_ot_command_context_t *context, uint8_t command,const void *request,const uint8_t *data,size_t data_size, qmail_ot_command_result_t *result)
static | src/mail/qmail_parent_checkpoints.c:6 | checkpoint_load | static result_t checkpoint_load(const uint8_t guid[16], int slot, parent_codec_t *c)
static | src/mail/qmail_parent_codec.h:8 | pc_write | static void pc_write(parent_codec_t *c, const void *p, size_t n)
static | src/mail/qmail_parent_codec.h:19 | pc_u64 | static void pc_u64(parent_codec_t *c, uint64_t v)
static | src/mail/qmail_parent_codec.h:22 | pc_blob | static void pc_blob(parent_codec_t *c, const void *p, size_t n)
static | src/mail/qmail_parent_codec.h:23 | pc_string | static void pc_string(parent_codec_t *c, const char *s)
static | src/mail/qmail_parent_codec.h:24 | pc_read | static void pc_read(parent_codec_t *c, void *p, size_t n)
static | src/mail/qmail_parent_codec.h:28 | pc_number | static uint64_t pc_number(parent_codec_t *c)
static | src/mail/qmail_parent_codec.h:32 | pc_text | static void pc_text(parent_codec_t *c, char *out, size_t capacity)
static | src/mail/qmail_parent_codec.h:38 | pc_alloc_blob | static void *pc_alloc_blob(parent_codec_t *c, size_t *size)
static | src/mail/qmail_parent_codec.h:45 | pc_header | static void pc_header(parent_codec_t *c, uint64_t kind)
static | src/mail/qmail_parent_codec.h:46 | pc_check_header | static bool pc_check_header(parent_codec_t *c, uint64_t kind)
static | src/mail/qmail_parent_codec.h:50 | pc_finished | static bool pc_finished(const parent_codec_t *c)
static | src/mail/qmail_parent_paths.h:7 | pp_capture | static result_t pp_capture(const char *path, parent_path_t *p)
static | src/mail/qmail_parent_paths.h:14 | pp_resolve | static result_t pp_resolve(const parent_path_t *p, char *path, size_t capacity, bool verify)
static | src/mail/qmail_parent_paths.h:23 | pp_write | static void pp_write(parent_codec_t *c, const parent_path_t *p)
static | src/mail/qmail_parent_paths.h:26 | pp_read | static void pp_read(parent_codec_t *c, parent_path_t *p)
static | src/mail/qmail_parent_send.c:21 | parent_try_lock | static bool parent_try_lock(void)
static | src/mail/qmail_parent_send.c:22 | parent_unlock | static void parent_unlock(void)
static | src/mail/qmail_parent_send.c:31 | parent_try_lock | static bool parent_try_lock(void)
static | src/mail/qmail_parent_send.c:32 | parent_unlock | static void parent_unlock(void)
static | src/mail/qmail_parent_send.c:36 | parent_task_ensure | static void parent_task_ensure(const char *id, const char *message)
static | src/mail/qmail_parent_send.c:54 | parent_free | static void parent_free(parent_request_t *p)
static | src/mail/qmail_parent_send.c:57 | parent_parse_list | static result_t parent_parse_list(const char *list, uint8_t type, recipient_with_beacon_t *recipients, int *count)
static | src/mail/qmail_parent_send.c:72 | parent_recipient_valid | static bool parent_recipient_valid(const recipient_with_beacon_t *r)
static | src/mail/qmail_parent_send.c:79 | parent_snapshot | static result_t parent_snapshot(const uint8_t guid[16], const char *source, parent_path_t *ref)
static | src/mail/qmail_parent_send.c:92 | parent_prepare | static result_t parent_prepare(const qmail_upload_files_options_t *u, const qmail_send_tells_options_t *t, char task[64])
static | src/mail/qmail_parent_send.c:160 | parent_decode | static result_t parent_decode(const qmail_parent_work_t *work, parent_request_t **out)
static | src/mail/qmail_parent_send.c:202 | parent_run | static result_t parent_run(const qmail_parent_work_t *work, core_transport_t *transport, qmail_upload_artifacts_t *artifacts, qmail_send_tells_result_t *result)
static | src/mail/qmail_parent_send.c:330 | parent_loop | static void parent_loop(void)
static | src/mail/qmail_parent_send.c:337 | parent_entry | static unsigned __stdcall parent_entry(void *unused)
static | src/mail/qmail_parent_send.c:339 | parent_entry | static void *parent_entry(void *unused)
static | src/mail/qmail_parent_store.inc:12 | parent_guid_valid | static bool parent_guid_valid(const uint8_t guid[16])
static | src/mail/qmail_parent_store.inc:106 | parent_transition | static result_t parent_transition(const uint8_t guid[16], bool handoff)
static | src/mail/qmail_payment_claim.c:13 | payment_has_locker | static bool payment_has_locker(const uint8_t locker[16])
static | src/mail/qmail_payment_claim.c:20 | payment_locker_ascii | static void payment_locker_ascii(const uint8_t locker[16], char key[17])
static | src/mail/qmail_payment_send.c:17 | payment_copy_key | static void payment_copy_key(uint8_t out[16], const char *key)
static | src/mail/qmail_ping.c:38 | set_legacy_body_manifest | static void set_legacy_body_manifest(qmail_tell_notification_t *n)
static | src/mail/qmail_ping.c:50 | ping_peek_build_body | static result_t ping_peek_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/mail/qmail_ping.c:91 | parse_ping_response | static result_t parse_ping_response(const char *cmd_name, const raida_result_t *exec_result, qmail_ping_response_t *response)
static | src/mail/qmail_pool_acquire.inc:3 | pool_acquire_checked | static result_t pool_acquire_checked(int purpose, uint64_t units, bool exact, int limit, char out[][QMAIL_LOCKER_KEY_MAX_LEN], int *count)
static | src/mail/qmail_receipt.c:88 | guid_to_hex | static void guid_to_hex(const uint8_t guid[QMAIL_GUID_SIZE], char *hex33)
static | src/mail/qmail_receipt.c:131 | write_escaped | static void write_escaped(FILE *f, const char *s)
static | src/mail/qmail_receipt.c:153 | receipt_bytes_zero | static bool receipt_bytes_zero(const uint8_t *value, size_t size)
static | src/mail/qmail_receipt.c:161 | write_stripe | static void write_stripe(FILE *f, const qmail_receipt_stripe_t *s)
static | src/mail/qmail_receipt.c:192 | write_file_entry | static void write_file_entry(FILE *f, const qmail_receipt_file_t *fe)
static | src/mail/qmail_receipt.c:210 | write_manifest_file_entry | static void write_manifest_file_entry(FILE *f, const qmail_file_manifest_entry_t *entry)
static | src/mail/qmail_receipt.c:221 | write_manifest_v2_file_entry | static void write_manifest_v2_file_entry( FILE *f, const uint8_t bytes[QMAIL_TELL_MANIFEST_V2_ENTRY_SIZE])
static | src/mail/qmail_receipt.c:244 | write_upload_manifest | static void write_upload_manifest(FILE *f, const qmail_receipt_t *receipt)
static | src/mail/qmail_receipt.c:267 | write_recipient | static void write_recipient(FILE *f, const qmail_receipt_recipient_t *r)
static | src/mail/qmail_receipt.c:414 | jp_skip_ws | static void jp_skip_ws(jp_t *j)
static | src/mail/qmail_receipt.c:418 | jp_eat | static bool jp_eat(jp_t *j, char c)
static | src/mail/qmail_receipt.c:424 | jp_string | static bool jp_string(jp_t *j, char *out, size_t out_size)
static | src/mail/qmail_receipt.c:465 | jp_int64 | static bool jp_int64(jp_t *j, int64_t *out)
static | src/mail/qmail_receipt.c:475 | jp_uint64 | static bool jp_uint64(jp_t *j, uint64_t *out)
static | src/mail/qmail_receipt.c:485 | jp_int | static bool jp_int(jp_t *j, int *out)
static | src/mail/qmail_receipt.c:494 | jp_skip_value | static bool jp_skip_value(jp_t *j)
static | src/mail/qmail_receipt.c:531 | hex_nibble | static int hex_nibble(char c)
static | src/mail/qmail_receipt.c:538 | guid_from_hex | static bool guid_from_hex(const char *hex, uint8_t guid[QMAIL_GUID_SIZE])
static | src/mail/qmail_receipt.c:554 | jp_walk_object | static bool jp_walk_object(jp_t *j, key_handler_fn handler, void *ctx)
static | src/mail/qmail_receipt.c:572 | stripe_handler | static bool stripe_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:627 | file_handler | static bool file_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:664 | manifest_file_handler | static bool manifest_file_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:689 | manifest_v2_file_handler | static bool manifest_v2_file_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:735 | manifest_handler | static bool manifest_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:812 | recipient_handler | static bool recipient_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:842 | sender_handler | static bool sender_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:860 | upload_handler | static bool upload_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:949 | tell_handler | static bool tell_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:995 | top_handler | static bool top_handler(jp_t *j, const char *key, void *ctx)
static | src/mail/qmail_receipt.c:1154 | receipt_phase1_beacon_for_match | static int receipt_phase1_beacon_for_match(int beacon_raida)
static | src/mail/qmail_receipt.c:1259 | receipt_task_is_protected | static bool receipt_task_is_protected(const char *task_id, const char *const *protected_task_ids, int protected_count)
static | src/mail/qmail_receive_object_reconstruct.c:37 | set_error | static void set_error(char *out, size_t out_size, const char *message)
static | src/mail/qmail_receive_object_reconstruct.c:43 | ensure_directory | static result_t ensure_directory(const char *path)
static | src/mail/qmail_receive_object_reconstruct.c:46 | ensure_parent_directory | static result_t ensure_parent_directory(const char *path)
static | src/mail/qmail_receive_object_reconstruct.c:66 | stripe_bytes_for_logical_chunk | static size_t stripe_bytes_for_logical_chunk(size_t logical_size, int data_stripe_count)
static | src/mail/qmail_receive_object_reconstruct.c:73 | read_exact | static result_t read_exact(FILE *file, uint8_t *data, size_t size)
static | src/mail/qmail_receive_object_transfer.c:44 | set_error | static void set_error(char *out, size_t out_size, const char *message)
static | src/mail/qmail_receive_object_transfer.c:50 | ensure_directory | static result_t ensure_directory(const char *path)
static | src/mail/qmail_receive_object_transfer.c:53 | transfer_finished | static bool transfer_finished(const qmail_transfer_record_t *record)
static | src/mail/qmail_receive_object_transfer.c:68 | stripe_bytes_for_logical_chunk | static size_t stripe_bytes_for_logical_chunk(size_t logical_size, int data_stripe_count)
static | src/mail/qmail_receive_object_transfer.c:81 | expected_staged_stripe_size | static uint64_t expected_staged_stripe_size(uint64_t original_size, int data_stripe_count)
static | src/mail/qmail_receive_object_transfer.c:96 | recoverable | static bool recoverable(const bool completed[QMAIL_MAX_SERVERS], int data_stripe_count, int parity_stripe_index)
static | src/mail/qmail_receive.c:52 | append_bytes | static result_t append_bytes(uint8_t **buf, size_t *len, size_t *cap, const uint8_t *data, size_t data_len)
static | src/mail/qmail_receive.c:79 | notification_data_stripe_count | static int notification_data_stripe_count(const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:107 | notification_has_manifest_v1 | static bool notification_has_manifest_v1(const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:117 | notification_has_revised_manifest | static bool notification_has_revised_manifest( const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:131 | notification_revised_entry | static bool notification_revised_entry( const qmail_tell_notification_t *notification, int index, qmail_ot_manifest_v2_entry_t *entry)
static | src/mail/qmail_receive.c:145 | revised_entry_is_meta_or_body | static bool revised_entry_is_meta_or_body( const qmail_ot_manifest_v2_entry_t *entry)
static | src/mail/qmail_receive.c:154 | notification_find_revised_entry | static bool notification_find_revised_entry( const qmail_tell_notification_t *notification, uint8_t required_flag, uint8_t fallback_file_type, qmail_ot_manifest_v2_entry_t *entry_out)
static | src/mail/qmail_receive.c:200 | receive_finish | static result_t receive_finish(qmail_receive_result_t *result, result_t code)
static | src/mail/qmail_receive.c:212 | notification_object_entry_from_v1 | static void notification_object_entry_from_v1( const qmail_tell_notification_t *notification, const qmail_file_manifest_entry_t *v1_entry, qmail_ot_manifest_v2_entry_t *out)
static | src/mail/qmail_receive.c:226 | reassembled_crc_ok | static bool reassembled_crc_ok(const uint8_t *data, size_t len, bool crc_present, uint32_t expected_crc)
static | src/mail/qmail_receive.c:234 | file_crc32_matches | static bool file_crc32_matches(const char *path, uint32_t expected_crc)
static | src/mail/qmail_receive.c:256 | object_error_may_fall_back | static bool object_error_may_fall_back(result_t object_res)
static | src/mail/qmail_receive.c:266 | utf8_text_plausible | static bool utf8_text_plausible(const uint8_t *s, size_t n)
static | src/mail/qmail_receive.c:284 | notification_has_locker | static bool notification_has_locker(const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:299 | download_v1_entry_to_memory | static result_t download_v1_entry_to_memory( const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const raida_encryption_key_t *enc_key, const char *receive_wallet, const qmail_file_manifest_entry_t *v1_entry, bool crc_present, int *object_storage, uint8_t **data_out, size_t *data_size_out, int *stripes_downloaded_out, int *stripes_recovered_out, char *error_out, size_t error_out_size)
static | src/mail/qmail_receive.c:374 | notification_body_entry | static const qmail_file_manifest_entry_t *notification_body_entry( const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:395 | notification_meta_entry | static const qmail_file_manifest_entry_t *notification_meta_entry( const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:408 | notification_entry_is_meta_or_body | static bool notification_entry_is_meta_or_body( const qmail_file_manifest_entry_t *entry)
static | src/mail/qmail_receive.c:417 | notification_manifest_attachment_count | static int notification_manifest_attachment_count( const qmail_tell_notification_t *notification)
static | src/mail/qmail_receive.c:443 | qmail_receive_invalid_filename_char | static bool qmail_receive_invalid_filename_char(char ch)
static | src/mail/qmail_receive.c:460 | qmail_receive_apply_attachment_filename | static void qmail_receive_apply_attachment_filename(const char *metadata_name, char *name, size_t name_size, char *extension, size_t extension_size)
static | src/mail/qmail_receive.c:496 | qmail_receive_sanitize_extension | static void qmail_receive_sanitize_extension(const char *extension, char *out, size_t out_size)
static | src/mail/qmail_receive.c:525 | qmail_receive_external_attachment_path | static result_t qmail_receive_external_attachment_path( const qmail_attachment_t *att, char file_path[QMAIL_ATTACHMENT_PATH_LEN])
static | src/mail/qmail_receive.c:560 | qmail_receive_write_external_attachment | static result_t qmail_receive_write_external_attachment(qmail_attachment_t *att, const uint8_t *data, size_t data_len)
static | src/mail/qmail_receive.c:614 | download_reassemble_file | static result_t download_reassemble_file(const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const raida_encryption_key_t *enc_key, uint8_t file_type, size_t original_len, bool verify_crc, uint32_t expected_crc, uint8_t **out_data, size_t *out_len, int *stripes_downloaded_out, int *stripes_recovered_out, char *error_out, size_t error_out_size)
static | src/mail/qmail_receive.c:897 | download_one_page | static result_t download_one_page(const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const raida_encryption_key_t *enc_key, uint8_t file_type, uint32_t page_number, int data_stripe_count, size_t page_original_len, uint8_t **out_page, size_t *out_page_len)
static | src/mail/qmail_receive.c:1031 | download_paged_attachment_to_file | static result_t download_paged_attachment_to_file( const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const raida_encryption_key_t *enc_key, qmail_attachment_t *att, uint8_t file_type, size_t original_len, bool verify_crc, uint32_t expected_crc)
static | src/mail/qmail_receive.c:1146 | download_revised_object_to_memory | static result_t download_revised_object_to_memory( const qmail_tell_notification_t *notification, const qmail_ot_manifest_v2_entry_t *entry, const char *wallet_path, uint8_t **data_out, size_t *data_size_out, int *stripes_downloaded_out, int *stripes_recovered_out, char *error_out, size_t error_out_size)
static | src/mail/qmail_receive.c:1234 | qmail_receive_email_unclaimed | static result_t qmail_receive_email_unclaimed( const qmail_tell_notification_t *notification, core_transport_t *transport_iface, const char *wallet_path, qmail_receive_result_t *result)
static | src/mail/qmail_receive.c:1936 | qmail_receive_lease_seconds | static int64_t qmail_receive_lease_seconds(void)
static | src/mail/qmail_receive.c:1949 | qmail_receive_lease_heartbeat | static void *qmail_receive_lease_heartbeat(void *opaque)
static | src/mail/qmail_receive.c:2098 | qmail_receive_maybe_decompress | static result_t qmail_receive_maybe_decompress(qmail_attachment_t *att, const char *file_path)
static | src/mail/qmail_receive.c:2113 | receive_attachment_attempt | static result_t receive_attachment_attempt(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t file_type, core_transport_t *transport_iface, int64_t attachment_id, char *error_out, size_t error_out_size)
static | src/mail/qmail_receive.c:2447 | receive_attachment_scheduled | static result_t receive_attachment_scheduled(const uint8_t file_guid[QMAIL_GUID_SIZE], uint8_t file_type, core_transport_t *transport_iface, int64_t attachment_id, char *error_out, size_t error_out_size, bool automatic)
static | src/mail/qmail_send_log.c:47 | send_log_lock | static void send_log_lock(void)
static | src/mail/qmail_send_log.c:54 | send_log_unlock | static void send_log_unlock(void)
static | src/mail/qmail_send_log.c:60 | send_log_lock | static void send_log_lock(void)
static | src/mail/qmail_send_log.c:64 | send_log_unlock | static void send_log_unlock(void)
static | src/mail/qmail_send_log.c:79 | send_log_rotate_if_needed | static void send_log_rotate_if_needed(const char *path)
static | src/mail/qmail_send_log.c:103 | send_log_open_locked | static result_t send_log_open_locked(void)
static | src/mail/qmail_send_object_transfer.c:56 | destination_matches | static bool destination_matches(const qmail_transfer_record_t *r, const qmail_send_object_upload_options_t *o,int i)
static | src/mail/qmail_send_object_transfer.c:65 | ensure_directory | static result_t ensure_directory(const char *path)
static | src/mail/qmail_send_object_transfer.c:68 | close_files | static result_t close_files(FILE *files[QMAIL_MAX_SERVERS], int count, bool seal)
static | src/mail/qmail_send_object_transfer.c:80 | remove_files | static void remove_files(char paths[QMAIL_MAX_SERVERS][QMAIL_TRANSFER_PATH_MAX], int count)
static | src/mail/qmail_send_object_transfer.c:87 | stage_stripes | static result_t stage_stripes( const qmail_send_object_upload_options_t *options, char paths[QMAIL_MAX_SERVERS][QMAIL_TRANSFER_PATH_MAX], qmail_send_object_upload_result_t *prepared)
static | src/mail/qmail_send_object_transfer.c:328 | transfer_finished | static bool transfer_finished(const qmail_transfer_record_t *record)
static | src/mail/qmail_send_object_transfer.c:337 | capture_transfer_record | static void capture_transfer_record( qmail_send_object_upload_result_t *result, int server_index, const qmail_transfer_record_t *record)
static | src/mail/qmail_send.c:28 | select_identity_coin | static result_t select_identity_coin(int8_t *denom_out, uint32_t *sn_out, uint8_t an_out[RAIDA_COUNT][AN_LENGTH])
static | src/mail/qmail_sent_archive.c:22 | guid_to_hex_lower | static void guid_to_hex_lower(const uint8_t guid[QMAIL_GUID_SIZE], char *hex33)
static | src/mail/qmail_sent_archive.c:54 | sanitize_filename | static void sanitize_filename(const char *name, char *out, size_t out_size)
static | src/mail/qmail_sent_archive.c:79 | split_name_ext | static void split_name_ext(const char *filename, char *name, size_t name_sz, char *ext, size_t ext_sz)
static | src/mail/qmail_sent_archive.c:113 | archive_temp_path | static result_t archive_temp_path(const char *path, char temp[MAX_PATH_LEN])
static | src/mail/qmail_sent_archive.c:123 | write_bytes_file | static result_t write_bytes_file(const char *path, const void *data, size_t len)
static | src/mail/qmail_sent_archive.c:138 | snapshot_root | static result_t snapshot_root(const uint8_t guid[QMAIL_GUID_SIZE], char out[MAX_PATH_LEN])
static | src/mail/qmail_sent_archive.c:201 | archive_one_attachment | static result_t archive_one_attachment( const uint8_t file_guid[QMAIL_GUID_SIZE], const char *msg_dir, const char *src_path, int attachment_index)
static | src/mail/qmail_server_registry.c:62 | reg_lock | static void reg_lock(void)
static | src/mail/qmail_server_registry.c:63 | reg_unlock | static void reg_unlock(void)
static | src/mail/qmail_server_registry.c:65 | now_unix | static int64_t now_unix(void)
static | src/mail/qmail_server_registry.c:80 | reason_is_retryable | static bool reason_is_retryable(qmail_server_reason_t reason)
static | src/mail/qmail_server_registry.c:97 | set_err | static result_t set_err(qmail_server_error_t *err, qmail_server_reason_t reason, qmail_server_field_t field, qmail_server_id_t conflicting, result_t rc, const char *fmt, ...)
static | src/mail/qmail_server_registry.c:120 | clear_err | static void clear_err(qmail_server_error_t *err)
static | src/mail/qmail_server_registry.c:201 | meta_get | static result_t meta_get(const char *key, int64_t *out, int64_t fallback)
static | src/mail/qmail_server_registry.c:215 | meta_set | static result_t meta_set(const char *key, int64_t value)
static | src/mail/qmail_server_registry.c:233 | migrate_reported_columns | static result_t migrate_reported_columns(void)
static | src/mail/qmail_server_registry.c:381 | tx_begin | static result_t tx_begin(void)
static | src/mail/qmail_server_registry.c:386 | tx_commit | static result_t tx_commit(void)
static | src/mail/qmail_server_registry.c:391 | tx_rollback | static void tx_rollback(void)
static | src/mail/qmail_server_registry.c:397 | bump_registry_revision | static result_t bump_registry_revision(qmail_registry_revision_t *out)
static | src/mail/qmail_server_registry.c:438 | fp_init | static uint64_t fp_init(void)
static | src/mail/qmail_server_registry.c:440 | fp_bytes | static uint64_t fp_bytes(uint64_t h, const void *p, size_t n)
static | src/mail/qmail_server_registry.c:450 | fp_str | static uint64_t fp_str(uint64_t h, const char *s)
static | src/mail/qmail_server_registry.c:455 | fp_u64 | static uint64_t fp_u64(uint64_t h, uint64_t v)
static | src/mail/qmail_server_registry.c:461 | request_lookup_locked | static result_t request_lookup_locked(const char *request_id, qmail_server_request_record_t *out, int *out_op, uint64_t *out_fp)
static | src/mail/qmail_server_registry.c:504 | request_record_locked | static result_t request_record_locked(const char *request_id, req_op_t op, uint64_t fingerprint, result_t outcome, qmail_server_reason_t reason, qmail_server_id_t server_id, uint64_t revision)
static | src/mail/qmail_server_registry.c:545 | copy_text | static void copy_text(char *dst, size_t cap, const unsigned char *src)
static | src/mail/qmail_server_registry.c:552 | row_to_record | static void row_to_record(sqlite3_stmt *st, qmail_server_record_t *r)
static | src/mail/qmail_server_registry.c:625 | load_record_locked | static result_t load_record_locked(qmail_server_id_t id, qmail_server_record_t *out, bool *out_retired)
static | src/mail/qmail_server_registry.c:659 | validate_host | static result_t validate_host(const char *host, qmail_server_error_t *err)
static | src/mail/qmail_server_registry.c:693 | validate_port | static result_t validate_port(uint16_t port, qmail_server_error_t *err)
static | src/mail/qmail_server_registry.c:769 | resolve_literal | static result_t resolve_literal(const char *host, uint16_t port, char *out, size_t out_size, qmail_server_error_t *err)
static | src/mail/qmail_server_registry.c:813 | alloc_server_id_locked | static result_t alloc_server_id_locked(qmail_server_id_t *out)
static | src/mail/qmail_server_registry.c:827 | find_duplicate_locked | static qmail_server_id_t find_duplicate_locked(const qmail_endpoint_t *ep)
static | src/mail/qmail_server_registry.c:849 | insert_row_locked | static result_t insert_row_locked(const qmail_endpoint_t *ep, bool selected, int64_t resolved_at, qmail_server_id_t *out_id)
static | src/mail/qmail_server_registry.c:1451 | provider_bytes | static int provider_bytes(const qmail_endpoint_t *ep,uint8_t out[6])
static | src/mail/qmail_server_registry.c:1458 | placement_schema | static int placement_schema(void)
static | src/mail/qmail_server_registry.c:1462 | fill_unknown_impact | static void fill_unknown_impact(qmail_removal_impact_t *out)
static | src/mail/qmail_server_registry.c:1476 | placement_impact_locked | static result_t placement_impact_locked(const qmail_endpoint_t *ep,qmail_removal_impact_t *out)
static | src/mail/qmail_server_registry.c:1559 | set_selected_impl | static result_t set_selected_impl( const qmail_server_set_selected_request_t *request, qmail_server_record_t *out, qmail_removal_impact_t *out_impact, qmail_server_error_t *err, bool guard, uint64_t impact_revision, bool acknowledge)
static | src/mail/qmail_server_registry.c:2001 | find_raida_locked | static qmail_server_id_t find_raida_locked(uint8_t raida_index, int *out_source)
static | src/mail/qmail_server_registry.c:2106 | valid_report | static bool valid_report(const qmail_server_reported_t *r)
static | src/mail/qmail_server_registry.c:2117 | save_report_locked | static result_t save_report_locked(qmail_server_id_t id, const qmail_endpoint_t *ep, const qmail_server_reported_t *r)
static | src/mail/qmail_session_coordinator.c:40 | wipe | static void wipe(void *p, size_t n)
static | src/mail/qmail_session_coordinator.c:41 | put64 | static void put64(uint8_t *p,uint64_t n)
static | src/mail/qmail_session_coordinator.c:42 | get64 | static uint64_t get64(const uint8_t *p)
static | src/mail/qmail_session_coordinator.c:43 | put32 | static void put32(uint8_t *p,uint32_t n)
static | src/mail/qmail_session_coordinator.c:44 | get32 | static uint32_t get32(const uint8_t *p)
static | src/mail/qmail_session_coordinator.c:45 | session_encode | static void session_encode(const rke_t9_session_t *s,uint8_t p[SESSION_BYTES])
static | src/mail/qmail_session_coordinator.c:51 | session_decode | static int session_decode(const uint8_t *p,rke_t9_session_t *s)
static | src/mail/qmail_session_coordinator.c:58 | sql | static int sql(qmail_session_coordinator_t *c,const char *s)
static | src/mail/qmail_session_coordinator.c:62 | private_path | static int private_path(const char *path,int directory)
static | src/mail/qmail_session_coordinator.c:106 | write_blob | static int write_blob(qmail_session_coordinator_t *c,const char *table,const char *id, const uint8_t *plain,size_t n,const char *pending)
static | src/mail/qmail_session_coordinator.c:122 | read_blob | static int read_blob(qmail_session_coordinator_t *c,const char *table,const char *id, uint8_t **plain,size_t *n,char pending[129])
static | src/mail/qmail_session_coordinator.c:143 | read_only | static int read_only(uint8_t cg,uint8_t cm)
static | src/mail/qmail_session_coordinator.c:146 | delete_session | static int delete_session(qmail_session_coordinator_t *c,const char *key)
static | src/mail/qmail_session_coordinator.c:154 | abandon | static int abandon(qmail_session_coordinator_t *c,const char *key,const char *id, const uint8_t fingerprint[32],unsigned state)
static | src/mail/qmail_session_coordinator.c:163 | production_open | static result_t production_open(void *user,const qmail_endpoint_t *ep, const cloudcoin_t *identity,rke_t9_session_t *s,int *status)
static | src/mail/qmail_session_coordinator.c:177 | production_exchange | static result_t production_exchange(void *user,const qmail_endpoint_t *ep, const uint8_t *wire,size_t n,int timeout,uint8_t **out,size_t *len)
static | src/mail/qmail_source_render.c:44 | append_raw | static int append_raw(source_view *v, const char *s, size_t n)
static | src/mail/qmail_source_render.c:63 | at_line_start | static int at_line_start(const source_view *v)
static | src/mail/qmail_source_render.c:65 | append | static int append(source_view *v, const char *s, size_t n)
static | src/mail/qmail_source_render.c:71 | newline | static int newline(source_view *v)
static | src/mail/qmail_source_render.c:73 | blank | static int blank(source_view *v)
static | src/mail/qmail_source_render.c:79 | entity | static int entity(source_view *v, const char *s, size_t n)
static | src/mail/qmail_source_render.c:102 | list_item | static int list_item(source_view *v, const MD_BLOCK_LI_DETAIL *li)
static | src/mail/qmail_source_render.c:115 | rule | static int rule(source_view *v)
static | src/mail/qmail_source_render.c:121 | block_enter | static int block_enter(MD_BLOCKTYPE t, void *detail, void *data)
static | src/mail/qmail_source_render.c:143 | block_leave | static int block_leave(MD_BLOCKTYPE t, void *detail, void *data)
static | src/mail/qmail_source_render.c:160 | span_enter | static int span_enter(MD_SPANTYPE t, void *d, void *data)
static | src/mail/qmail_source_render.c:175 | span_leave | static int span_leave(MD_SPANTYPE t, void *d, void *data)
static | src/mail/qmail_source_render.c:190 | md_text | static int md_text(MD_TEXTTYPE t, const MD_CHAR *s, MD_SIZE n, void *data)
static | src/mail/qmail_source_render.c:200 | html | static int html(source_view *v, const char *s)
static | src/mail/qmail_subscribe.c:42 | subscribe_build_body | static result_t subscribe_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/mail/qmail_subscribe.c:71 | subscribe_collect | static void subscribe_collect(const exec_results_t *exec_results, drd_fanout_result_t *out)
static | src/mail/qmail_tell_outbox_store.inc:3 | outbox_context_valid | static bool outbox_context_valid(const qmail_tell_context_t *ctx)
static | src/mail/qmail_tell_outbox_store.inc:10 | outbox_same_payload | static bool outbox_same_payload(const qmail_tell_context_t *a, const qmail_tell_context_t *b)
static | src/mail/qmail_tell_outbox_store.inc:42 | outbox_prepare_one | static result_t outbox_prepare_one(qmail_tell_outbox_item_t *item)
static | src/mail/qmail_tell_outbox_store.inc:122 | send_task_id_valid | static bool send_task_id_valid(const char *id)
static | src/mail/qmail_tell_outbox_store.inc:130 | send_task_owner_prepare | static result_t send_task_owner_prepare(const uint8_t *guid, const char *task_id)
static | src/mail/qmail_tell_outbox_store.inc:150 | sent_intent_prepare | static result_t sent_intent_prepare(qmail_tell_outbox_item_t *items, int count, const qmail_sent_intent_t *sent)
static | src/mail/qmail_tell_outbox_store.inc:300 | sent_intent_recover_one | static result_t sent_intent_recover_one(bool *found)
static | src/mail/qmail_tell_outbox.c:10 | recovery_lock | static void recovery_lock(void)
static | src/mail/qmail_tell_outbox.c:11 | recovery_unlock | static void recovery_unlock(void)
static | src/mail/qmail_tell_outbox.c:19 | recovery_lock | static void recovery_lock(void)
static | src/mail/qmail_tell_outbox.c:20 | recovery_unlock | static void recovery_unlock(void)
static | src/mail/qmail_tell_outbox.c:26 | recover_task | static result_t recover_task(const qmail_send_task_state_t *row)
static | src/mail/qmail_tell_retry.c:64 | retry_sleep_ms | static void retry_sleep_ms(uint32_t ms)
static | src/mail/qmail_tell_retry.c:75 | tell_retry_locker_is_empty | static bool tell_retry_locker_is_empty(const uint8_t locker[QMAIL_LOCKER_CODE_SIZE])
static | src/mail/qmail_tell_retry.c:83 | tell_retry_copy_locker_key | static void tell_retry_copy_locker_key(uint8_t out[QMAIL_LOCKER_CODE_SIZE], const char *locker_key)
static | src/mail/qmail_tell_retry.c:93 | tell_retry_required_inbox_fee | static result_t tell_retry_required_inbox_fee(qmail_tell_context_t *ctx, uint64_t *required_fee_out)
static | src/mail/qmail_tell_retry.c:109 | tell_retry_update_receipt_queued | static void tell_retry_update_receipt_queued(const qmail_pending_tell_row_t *row, const char *message)
static | src/mail/qmail_tell_retry.c:123 | tell_retry_defer | static result_t tell_retry_defer(const qmail_pending_tell_row_t *row, const qmail_tell_context_t *ctx, bool persist_context, const char *message)
static | src/mail/qmail_tell_retry.c:158 | tell_retry_load_identity | static result_t tell_retry_load_identity(const qmail_tell_context_t *ctx, raida_encryption_key_t *key)
static | src/mail/qmail_tell_retry.c:174 | tell_retry_fund_inbox_fee_locker | static result_t tell_retry_fund_inbox_fee_locker(qmail_tell_context_t *ctx, char *message, size_t message_size)
static | src/mail/qmail_tell_retry.c:241 | process_pending_tells_locked | static void process_pending_tells_locked(void)
static | src/mail/qmail_tell_retry.c:514 | process_pending_tells | static void process_pending_tells(void)
static | src/mail/qmail_tell_retry.c:530 | retry_loop | static void retry_loop(void)
static | src/mail/qmail_tell_retry.c:564 | retry_thread_proc | static unsigned __stdcall retry_thread_proc(void *arg)
static | src/mail/qmail_tell_retry.c:570 | retry_thread_proc | static void *retry_thread_proc(void *arg)
static | src/mail/qmail_tell.c:169 | tell_build_body | static result_t tell_build_body(uint8_t raida_id, uint8_t **body, size_t *body_size, void *user_data)
static | src/mail/qmail_transfer_manager.c:122 | bytes_zero | static bool bytes_zero(const uint8_t *value, size_t size)
static | src/mail/qmail_transfer_manager.c:130 | random_nonzero | static void random_nonzero(uint8_t out[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:136 | random_request_id | static uint64_t random_request_id(void)
static | src/mail/qmail_transfer_manager.c:144 | id_to_hex | static void id_to_hex(const uint8_t id[QMAIL_OT_ID_SIZE], char out[33])
static | src/mail/qmail_transfer_manager.c:148 | transfer_progress | static int transfer_progress(const qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_manager.c:157 | status_retryable | static bool status_retryable(uint8_t status)
static | src/mail/qmail_transfer_manager.c:167 | status_object_missing | static bool status_object_missing(uint8_t status)
static | src/mail/qmail_transfer_manager.c:178 | transfer_server_in_cooldown | static bool transfer_server_in_cooldown(uint8_t raida_id)
static | src/mail/qmail_transfer_manager.c:186 | object_missing_error | static void object_missing_error(char *out, size_t out_size, const char *operation, uint8_t raida_id, uint8_t status)
static | src/mail/qmail_transfer_manager.c:196 | update_task | static void update_task(const qmail_transfer_record_t *record, const char *message)
static | src/mail/qmail_transfer_manager.c:233 | active_register | static bool active_register(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:261 | active_unregister | static void active_unregister(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:276 | active_count | static int active_count(void)
static | src/mail/qmail_transfer_manager.c:284 | operation_cancelled | static bool operation_cancelled(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:292 | operation_should_stop | static bool operation_should_stop( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:330 | transfer_wait_while_paused | static void transfer_wait_while_paused( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:343 | setup_execution | static result_t setup_execution(qmail_transfer_record_t *record, transfer_execution_t *execution)
static | src/mail/qmail_transfer_manager.c:409 | command_ok | static bool command_ok(result_t result, const qmail_ot_command_result_t *command_result)
static | src/mail/qmail_transfer_manager.c:417 | command_error | static void command_error(char *out, size_t out_size, result_t result, const qmail_ot_command_result_t *command_result, const char *operation)
static | src/mail/qmail_transfer_manager.c:435 | command_indicates_helper_rejection | static bool command_indicates_helper_rejection( result_t result, const qmail_ot_command_result_t *command_result)
static | src/mail/qmail_transfer_manager.c:452 | repair_helper_and_rekey | static result_t repair_helper_and_rekey(qmail_transfer_record_t *record, transfer_execution_t *execution, uint8_t failed_raida, const char *operation)
static | src/mail/qmail_transfer_manager.c:479 | query_capabilities | static result_t query_capabilities( const char *wallet_path, uint8_t raida_id, qmail_transfer_capabilities_t *capabilities_out, const qmail_transfer_record_t *source_record)
static | src/mail/qmail_transfer_manager.c:553 | set_record_state | static result_t set_record_state(qmail_transfer_record_t *record, qmail_transfer_state_t state, int last_result, uint8_t last_status, const char *error)
static | src/mail/qmail_transfer_manager.c:576 | make_ranges | static result_t make_ranges(uint64_t total_size, uint32_t chunk_size, qmail_transfer_range_t **ranges_out, size_t *count_out)
static | src/mail/qmail_transfer_manager.c:603 | append_split_range | static result_t append_split_range(qmail_transfer_range_t **ranges, size_t *count, size_t *capacity, uint64_t offset, uint64_t length, uint32_t chunk_size)
static | src/mail/qmail_transfer_manager.c:635 | reconcile_upload_ranges | static result_t reconcile_upload_ranges( transfer_execution_t *execution, qmail_transfer_range_t **ranges_out, size_t *range_count_out, uint64_t *completed_out, bool *committed_out, uint8_t *status_out)
static | src/mail/qmail_transfer_manager.c:747 | seek_file | static bool seek_file(FILE *file, uint64_t offset)
static | src/mail/qmail_transfer_manager.c:756 | read_file_range | static result_t read_file_range(const char *path, uint64_t offset, uint32_t length, uint8_t **data_out)
static | src/mail/qmail_transfer_manager.c:778 | write_file_range | static result_t write_file_range(const char *path, uint64_t offset, const uint8_t *data, uint32_t length)
static | src/mail/qmail_transfer_manager.c:794 | batch_fail | static void batch_fail(transfer_batch_t *batch, int result, uint8_t status, const char *message)
static | src/mail/qmail_transfer_manager.c:809 | batch_next | static bool batch_next(transfer_batch_t *batch, qmail_transfer_range_t *range_out)
static | src/mail/qmail_transfer_manager.c:822 | batch_note_cancelled | static void batch_note_cancelled(transfer_batch_t *batch)
static | src/mail/qmail_transfer_manager.c:828 | upload_one_range | static result_t upload_one_range(transfer_execution_t *execution, const qmail_transfer_range_t *range, int *retries_out, uint8_t *status_out, char *error, size_t error_size)
static | src/mail/qmail_transfer_manager.c:910 | download_one_range | static result_t download_one_range(transfer_execution_t *execution, const qmail_transfer_range_t *range, int *retries_out, uint8_t *status_out, char *error, size_t error_size)
static | src/mail/qmail_transfer_manager.c:992 | range_worker | static void *range_worker(void *arg)
static | src/mail/qmail_transfer_manager.c:1057 | run_range_batch | static result_t run_range_batch(transfer_execution_t *execution, qmail_transfer_range_t *ranges, size_t range_count, bool upload, bool *cancelled_out, int *last_result_out, uint8_t *last_status_out, char *error_out, size_t error_size)
static | src/mail/qmail_transfer_manager.c:1163 | finish_failed | static void finish_failed(qmail_transfer_record_t *record, qmail_transfer_state_t state, result_t result, uint8_t status, const char *message)
static | src/mail/qmail_transfer_manager.c:1183 | abort_upload | static result_t abort_upload(transfer_execution_t *execution)
static | src/mail/qmail_transfer_manager.c:1199 | finish_stopped | static result_t finish_stopped(qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_manager.c:1251 | await_async_commit | static result_t await_async_commit(transfer_execution_t *execution, qmail_transfer_record_t *record, char *error, size_t error_size, uint8_t *status_out)
static | src/mail/qmail_transfer_manager.c:1355 | retry_base_v1_commit | static bool retry_base_v1_commit(result_t result, const qmail_ot_command_result_t *response, qmail_ot_object_commit_request_t *commit)
static | src/mail/qmail_transfer_manager.c:1366 | run_upload | static result_t run_upload(qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_manager.c:1911 | query_object_info | static result_t query_object_info(transfer_execution_t *execution, qmail_ot_object_info_response_t *info_out, uint8_t *status_out, char *error, size_t error_size)
static | src/mail/qmail_transfer_manager.c:1950 | run_download | static result_t run_download(qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_manager.c:2134 | run_delete | static result_t run_delete(qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_manager.c:2210 | operation_worker | static void *operation_worker(void *arg)
static | src/mail/qmail_transfer_manager.c:2280 | operation_worker_windows | static unsigned __stdcall operation_worker_windows(void *arg)
static | src/mail/qmail_transfer_manager.c:2287 | spawn_registered_operation | static result_t spawn_registered_operation( const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:2315 | spawn_operation | static result_t spawn_operation(const uint8_t operation_id[QMAIL_OT_ID_SIZE])
static | src/mail/qmail_transfer_manager.c:2320 | initialize_new_record | static result_t initialize_new_record(qmail_transfer_record_t *record, qmail_transfer_direction_t direction, uint8_t raida_id, uint8_t file_type, const char *wallet_path)
static | src/mail/qmail_transfer_manager.c:2471 | adopt_download | static result_t adopt_download(const qmail_transfer_download_options_t *options, qmail_transfer_record_t *out)
static | src/mail/qmail_transfer_manager.c:2727 | staged_source_is_regular_file | static bool staged_source_is_regular_file(const char *path)
static | src/mail/qmail_transfer_store.c:35 | store_lock | static void store_lock(void)
static | src/mail/qmail_transfer_store.c:39 | store_unlock | static void store_unlock(void)
static | src/mail/qmail_transfer_store.c:43 | u64_to_text | static void u64_to_text(uint64_t value, char out[32])
static | src/mail/qmail_transfer_store.c:51 | text_to_u64 | static uint64_t text_to_u64(const unsigned char *text)
static | src/mail/qmail_transfer_store.c:62 | bind_u64 | static int bind_u64(sqlite3_stmt *stmt, int index, uint64_t value)
static | src/mail/qmail_transfer_store.c:68 | copy_text | static void copy_text(char *out, size_t out_size, sqlite3_stmt *stmt, int column)
static | src/mail/qmail_transfer_store.c:74 | copy_blob | static void copy_blob(uint8_t *out, size_t out_size, sqlite3_stmt *stmt, int column)
static | src/mail/qmail_transfer_store.c:85 | resolve_stored_path | static result_t resolve_stored_path(const char *stored, int kind, char *out, size_t out_size)
static | src/mail/qmail_transfer_store.c:94 | read_transfer | static result_t read_transfer(sqlite3_stmt *stmt, qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_store.c:177 | encode_record_path | static result_t encode_record_path(const char *runtime, int kind, char *stored, size_t stored_size)
static | src/mail/qmail_transfer_store.c:187 | bind_transfer | static result_t bind_transfer(sqlite3_stmt *stmt, const qmail_transfer_record_t *record)
static | src/mail/qmail_transfer_store.c:1001 | update_range_state | static result_t update_range_state( const uint8_t operation_id[QMAIL_OT_ID_SIZE], uint64_t offset, int state, int retries, const char *error_message)
static | src/mail/qmail_upload_orchestrator.c:85 | upload_progress | static void upload_progress(const char *task_id, int percent, const char *fmt, ...)
static | src/mail/qmail_upload_orchestrator.c:95 | receipt_kind_from_recipient_type | static const char *receipt_kind_from_recipient_type(uint8_t recipient_type)
static | src/mail/qmail_upload_orchestrator.c:103 | qmail_recipient_primary_beacon | static uint8_t qmail_recipient_primary_beacon(const recipient_with_beacon_t *recipient)
static | src/mail/qmail_upload_orchestrator.c:108 | qmail_recipient_secondary_beacon | static uint8_t qmail_recipient_secondary_beacon(const recipient_with_beacon_t *recipient)
static | src/mail/qmail_upload_orchestrator.c:118 | receipt_row_matches_recipient | static bool receipt_row_matches_recipient(const qmail_receipt_recipient_t *row, const recipient_with_beacon_t *recipient)
static | src/mail/qmail_upload_orchestrator.c:130 | upload_manifest_flags_for_file_type | static uint8_t upload_manifest_flags_for_file_type(uint8_t file_type)
static | src/mail/qmail_upload_orchestrator.c:137 | upload_file_type_uses_large_pages | static bool upload_file_type_uses_large_pages(uint8_t file_type, size_t file_size)
static | src/mail/qmail_upload_orchestrator.c:143 | fill_manifest_entry | static void fill_manifest_entry(qmail_file_manifest_entry_t *entry, uint8_t file_type, uint64_t original_size, uint32_t crc32)
static | src/mail/qmail_upload_orchestrator.c:155 | receipt_recount_tell_summary | static void receipt_recount_tell_summary(qmail_receipt_t *receipt)
static | src/mail/qmail_upload_orchestrator.c:182 | pool_replenish_thread | static unsigned __stdcall pool_replenish_thread(void *arg)
static | src/mail/qmail_upload_orchestrator.c:190 | pool_replenish_thread | static void *pool_replenish_thread(void *arg)
static | src/mail/qmail_upload_orchestrator.c:198 | trigger_background_replenish | static void trigger_background_replenish(const char *wallet_path)
static | src/mail/qmail_upload_orchestrator.c:217 | update_max_inbox_fee_for_list | static result_t update_max_inbox_fee_for_list(const char *addresses, uint8_t type, uint64_t *max_fee_units)
static | src/mail/qmail_upload_orchestrator.c:248 | select_identity | static result_t select_identity(int8_t *denom_out, uint32_t *sn_out, uint8_t an_out[RAIDA_COUNT][AN_LENGTH], raida_encryption_key_t *key_out)
static | src/mail/qmail_upload_orchestrator.c:280 | read_file_to_buffer | static uint8_t *read_file_to_buffer(const char *path, size_t *size_out)
static | src/mail/qmail_upload_orchestrator.c:301 | upload_free_inputs | static void upload_free_inputs(char *att_buf, uint8_t *email_file_data)
static | src/mail/qmail_upload_orchestrator.c:306 | upload_split_cbdf_document | static result_t upload_split_cbdf_document(const uint8_t *data, size_t data_len, const uint8_t **meta_data, size_t *meta_len, const uint8_t **body_data, size_t *body_len)
static | src/mail/qmail_upload_orchestrator.c:350 | upload_stripe_size_for | static size_t upload_stripe_size_for(size_t file_size, int data_stripes)
static | src/mail/qmail_upload_orchestrator.c:359 | upload_legacy_capacity_for_data_stripes | static size_t upload_legacy_capacity_for_data_stripes(size_t data_stripes)
static | src/mail/qmail_upload_orchestrator.c:427 | required_data_stripes_for_files | static int required_data_stripes_for_files(const size_t *file_sizes, int file_count)
static | src/mail/qmail_upload_orchestrator.c:448 | required_data_stripes_for_upload_plan | static int required_data_stripes_for_upload_plan(const uint8_t *file_types, const size_t *file_sizes, int file_count)
static | src/mail/qmail_upload_orchestrator.c:464 | upload_server_list_contains | static bool upload_server_list_contains(const uint8_t *indices, int count, uint8_t raida_id)
static | src/mail/qmail_upload_orchestrator.c:473 | append_configured_servers | static int append_configured_servers(uint8_t *selected, int selected_count, int target_count)
static | src/mail/qmail_upload_orchestrator.c:490 | skip_recently_unavailable_servers | static int skip_recently_unavailable_servers(uint8_t *selected, int selected_count, int minimum_count, uint32_t cooldown_ms)
static | src/mail/qmail_upload_orchestrator.c:540 | object_upload_count_enabled | static int object_upload_count_enabled(const bool *enabled, int count)
static | src/mail/qmail_upload_orchestrator.c:549 | object_upload_count_successes | static int object_upload_count_successes(const bool *server_ok, int count)
static | src/mail/qmail_upload_orchestrator.c:558 | object_upload_refresh_counts | static void object_upload_refresh_counts( qmail_send_object_upload_result_t *result, int server_count)
static | src/mail/qmail_upload_orchestrator.c:567 | object_upload_merge_result | static void object_upload_merge_result( qmail_send_object_upload_result_t *merged, const qmail_send_object_upload_result_t *attempt, const bool *attempt_enabled, int server_count)
static | src/mail/qmail_upload_orchestrator.c:605 | object_upload_build_retry_enabled | static int object_upload_build_retry_enabled( bool retry_enabled[QMAIL_MAX_SERVERS], const bool *eligible, const bool *file_server_ok, int server_count)
static | src/mail/qmail_upload_orchestrator.c:624 | object_upload_common_failure_status | static uint8_t object_upload_common_failure_status( const qmail_send_object_upload_result_t *result, int server_count)
static | src/mail/qmail_upload_orchestrator.c:1715 | tell_verdict | static const char *tell_verdict(bool accepted, result_t transport_res, uint8_t status, qmail_tell_validation_failure_t validation_failure)
static | src/mail/qmail_upload_orchestrator.c:1725 | build_tell_context | static void build_tell_context(qmail_tell_context_t *out, const qmail_upload_artifacts_t *art, const recipient_with_beacon_t *recipients, int total_recipients, uint8_t beacon_id, const qmail_file_header_t *file_hdr)
static | src/mail/qmail_users.c:40 | identity_lock_init | static void identity_lock_init(void)
static | src/mail/qmail_users.c:48 | identity_lock | static void identity_lock(void)
static | src/mail/qmail_users.c:53 | identity_unlock | static void identity_unlock(void)
static | src/mail/qmail_users.c:105 | first_bin_in_folder | static bool first_bin_in_folder(const char *mail_path, folder_type_t folder, char *out_path, size_t out_size)
static | src/mail/qmail_users.c:122 | path_basename_is | static bool path_basename_is(const char *path, const char *name)
static | src/mail/qmail_users.c:136 | copy_path_out | static result_t copy_path_out(char *out, size_t out_size, const char *fmt, const char *a, const char *b, const char *c)
static | src/mail/sdk/qmail_sdk_transport.c:12 | sdk_send_packet | static result_t sdk_send_packet( uint8_t raida_id, transport_type_t type, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, size_t max_response_size, core_transport_result_t *result, void *user_context)
static | src/mail/sdk/qmail_sdk_transport.c:55 | sdk_send_endpoint | static result_t sdk_send_endpoint( const void *endpoint, transport_type_t type, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, size_t max_response_size, core_transport_result_t *result, void *user_context)
static | src/mail/sdk/qmail_sdk_transport.c:100 | sdk_cancel | static void sdk_cancel(uint32_t call_id, void *user_context)
static | src/mail/sdk/qmail_sdk_transport.c:109 | sdk_record_result | static void sdk_record_result(uint8_t raida_id, uint32_t response_ms, bool success, bool timed_out, void *user_context)
static | src/mail/sdk/qmail_sdk_transport.c:116 | sdk_available | static bool sdk_available(uint8_t raida_id, void *user_context)
static | src/mail/sdk/qmail_sdk_transport.c:122 | sdk_server_info | static result_t sdk_server_info(uint8_t raida_id, core_server_info_t *out, void *user_context)
static | src/mail/sdk/qmail_sdk.c:195 | sdk_log | static void sdk_log(qmail_sdk_t *sdk, const char *message)
static | src/mail/sdk/qmail_sdk.c:200 | bounded_strlen | static size_t bounded_strlen(const char *text, size_t maximum)
static | src/mail/sdk/qmail_sdk.c:208 | json_space | static void json_space(json_reader_t *reader)
static | src/mail/sdk/qmail_sdk.c:217 | hex_digit | static int hex_digit(char value)
static | src/mail/sdk/qmail_sdk.c:225 | append_utf8 | static int append_utf8(char *out, size_t out_size, size_t *length, unsigned codepoint)
static | src/mail/sdk/qmail_sdk.c:253 | json_string | static int json_string(json_reader_t *reader, char *out, size_t out_size)
static | src/mail/sdk/qmail_sdk.c:328 | json_skip_number | static int json_skip_number(json_reader_t *reader)
static | src/mail/sdk/qmail_sdk.c:354 | json_skip_compound | static int json_skip_compound(json_reader_t *reader, int depth, char close)
static | src/mail/sdk/qmail_sdk.c:375 | json_skip_value | static int json_skip_value(json_reader_t *reader, int depth)
static | src/mail/sdk/qmail_sdk.c:388 | json_integer | static int json_integer(json_reader_t *reader, int *out)
static | src/mail/sdk/qmail_sdk.c:407 | json_int64 | static int json_int64(json_reader_t *reader, int64_t *out)
static | src/mail/sdk/qmail_sdk.c:427 | json_boolean | static int json_boolean(json_reader_t *reader, int *out)
static | src/mail/sdk/qmail_sdk.c:444 | json_string_array | static int json_string_array(json_reader_t *reader, char values[QMAIL_MAX_RECIPIENTS][QMAIL_MAX_ADDRESS_LEN], int *count)
static | src/mail/sdk/qmail_sdk.c:470 | sdk_path_is_absolute | static int sdk_path_is_absolute(const char *path)
static | src/mail/sdk/qmail_sdk.c:485 | json_attachment_array | static int json_attachment_array(json_reader_t *reader, operation_params_t *params)
static | src/mail/sdk/qmail_sdk.c:539 | parse_envelope | static int parse_envelope(const char *json, size_t length, int *version, char op[64], const char **params_begin, const char **params_end)
static | src/mail/sdk/qmail_sdk.c:579 | parse_params | static int parse_params(const char *begin, const char *end, const char *op, operation_params_t *params, const char **message)
static | src/mail/sdk/qmail_sdk.c:1193 | sb_reserve | static int sb_reserve(string_builder_t *builder, size_t extra)
static | src/mail/sdk/qmail_sdk.c:1210 | sb_raw_n | static void sb_raw_n(string_builder_t *builder, const char *text, size_t length)
static | src/mail/sdk/qmail_sdk.c:1218 | sb_raw | static void sb_raw(string_builder_t *builder, const char *text)
static | src/mail/sdk/qmail_sdk.c:1223 | sb_printf | static void sb_printf(string_builder_t *builder, const char *format, ...)
static | src/mail/sdk/qmail_sdk.c:1241 | sb_json_string_n | static void sb_json_string_n(string_builder_t *builder, const char *text, size_t length)
static | src/mail/sdk/qmail_sdk.c:1263 | sb_json_string | static void sb_json_string(string_builder_t *builder, const char *text)
static | src/mail/sdk/qmail_sdk.c:1268 | sb_finish | static char *sb_finish(string_builder_t *builder)
static | src/mail/sdk/qmail_sdk.c:1309 | add_heal_step_counts | static void add_heal_step_counts( string_builder_t *builder, const qmail_svc_heal_step_counts_t *counts)
static | src/mail/sdk/qmail_sdk.c:1366 | error_response | static char *error_response(const char *domain, const char *code, int retryable, const char *message)
static | src/mail/sdk/qmail_sdk.c:1379 | guid_hex | static void guid_hex(const uint8_t guid[QMAIL_GUID_SIZE], char out[33])
static | src/mail/sdk/qmail_sdk.c:1389 | add_party_fields | static void add_party_fields(string_builder_t *builder, const qmail_email_t *email)
static | src/mail/sdk/qmail_sdk.c:1424 | add_email | static void add_email(string_builder_t *builder, const qmail_email_t *email, int include_body)
static | src/mail/sdk/qmail_sdk.c:1465 | service_error | static char *service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1506 | contacts_service_error | static char *contacts_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1520 | drafts_service_error | static char *drafts_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1535 | add_contact | static void add_contact(string_builder_t *builder, const qmail_contact_t *c)
static | src/mail/sdk/qmail_sdk.c:1560 | add_draft | static void add_draft(string_builder_t *builder, const qmail_email_t *email)
static | src/mail/sdk/qmail_sdk.c:1583 | attachment_service_error | static char *attachment_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1610 | identity_install_service_error | static char *identity_install_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1634 | wallet_add_funds_service_error | static char *wallet_add_funds_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1655 | wallet_export_service_error | static char *wallet_export_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1676 | wallet_heal_service_error | static char *wallet_heal_service_error(qmail_svc_error_t error)
static | src/mail/sdk/qmail_sdk.c:1691 | add_wallet_balance | static void add_wallet_balance(string_builder_t *builder, const qmail_svc_wallet_balance_result_t *balance)
static | src/mail/sdk/qmail_sdk.c:1703 | ensure_transfer_manager_started | static result_t ensure_transfer_manager_started(qmail_sdk_t *sdk)
static | src/mail/sdk/qmail_sdk.c:1720 | drd_denomination_valid | static int drd_denomination_valid(int den)
static | src/mail/sdk/qmail_sdk.c:1725 | drd_not_ready_error | static char *drd_not_ready_error(void)
static | src/mail/sdk/qmail_sdk.c:1731 | sdk_drd_ensure_transport | static int sdk_drd_ensure_transport(qmail_sdk_t *sdk)
static | src/mail/sdk/qmail_sdk.c:1743 | sdk_drd_resolve_identity_auth | static int sdk_drd_resolve_identity_auth(drd_auth_coin_t *coin, raida_encryption_key_t *key_out)
static | src/mail/sdk/qmail_sdk.c:1756 | sdk_drd_select_read_enc_key | static int sdk_drd_select_read_enc_key(raida_encryption_key_t *key_out)
static | src/mail/sdk/qmail_sdk.c:1768 | sdk_drd_add_user_json | static void sdk_drd_add_user_json(string_builder_t *builder, const drd_user_t *u)
static | src/mail/sdk/qmail_sdk.c:1801 | sdk_drd_add_address_json | static void sdk_drd_add_address_json(string_builder_t *builder, const drd_user_t *u)
static | src/mail/sdk/qmail_sdk.c:1817 | sdk_drd_add_fanout_json | static void sdk_drd_add_fanout_json(string_builder_t *builder, const drd_fanout_result_t *f)
static | src/mail/sdk/qmail_sdk.c:1840 | sdk_drd_count_status | static int sdk_drd_count_status(const drd_fanout_result_t *f, uint8_t status)
static | src/mail/sdk/qmail_sdk.c:1850 | sdk_drd_parse_one_entry | static bool sdk_drd_parse_one_entry(const char *item, bool with_type, drd_list_entry_t *entry, const char **err)
static | src/mail/sdk/qmail_sdk.c:1904 | sdk_drd_parse_entries | static char *sdk_drd_parse_entries(const operation_params_t *params, bool with_type, drd_list_entry_t *entries, int *count_out)
static | src/mail/sdk/qmail_sdk.c:1964 | execute_drd_operation | static char *execute_drd_operation(qmail_sdk_t *sdk, const char *op, const operation_params_t *params)
static | src/mail/sdk/qmail_sdk.c:2424 | execute_operation | static char *execute_operation(qmail_sdk_t *sdk, const char *op, const operation_params_t *params)
static | src/mail/sdk/qmail_sdk.c:3051 | qmail_sdk_execute_impl | static char *qmail_sdk_execute_impl(qmail_sdk_t *sdk, const char *request_json, operation_params_t *params)
static | src/mail/service/qmail_service.c:73 | qmail_svc_is_dangerous_extension | static bool qmail_svc_is_dangerous_extension(const char *extension)
static | src/mail/service/qmail_service.c:83 | qmail_svc_sanitize_attachment_name | static void qmail_svc_sanitize_attachment_name(char *name, size_t max_len)
static | src/mail/service/qmail_service.c:106 | qmail_svc_extension_to_mime | static const char *qmail_svc_extension_to_mime(const char *extension)
static | src/mail/service/qmail_service.c:127 | qmail_svc_copy_attachment_metadata | static void qmail_svc_copy_attachment_metadata( const qmail_attachment_t *source, qmail_svc_attachment_t *destination)
static | src/mail/service/qmail_service.c:151 | qmail_svc_same_path | static bool qmail_svc_same_path(const char *a, const char *b)
static | src/mail/service/qmail_service.c:167 | qmail_svc_path_is_absolute | static bool qmail_svc_path_is_absolute(const char *path)
static | src/mail/service/qmail_service.c:181 | qmail_svc_remaining_ms | static uint32_t qmail_svc_remaining_ms(uint64_t expires_at_ms)
static | src/mail/service/qmail_service.c:188 | qmail_svc_clamp_deadline_ms | static uint32_t qmail_svc_clamp_deadline_ms(uint32_t deadline_ms, uint32_t default_ms)
static | src/mail/service/qmail_service.c:199 | qmail_svc_deadline_send | static result_t qmail_svc_deadline_send( uint8_t raida_id, transport_type_t type, const uint8_t *packet, size_t packet_size, uint32_t timeout_ms, uint32_t call_id, size_t max_response_size, core_transport_result_t *result, void *user_context)
static | src/mail/service/qmail_service.c:223 | qmail_svc_deadline_cancel | static void qmail_svc_deadline_cancel(uint32_t call_id, void *user_context)
static | src/mail/service/qmail_service.c:232 | qmail_svc_deadline_available | static bool qmail_svc_deadline_available(uint8_t raida_id, void *user_context)
static | src/mail/service/qmail_service.c:246 | qmail_svc_hex_value | static int qmail_svc_hex_value(char c)
static | src/mail/service/qmail_service.c:255 | qmail_svc_parse_email_id | static qmail_svc_error_t qmail_svc_parse_email_id( const char *hex, uint8_t out[QMAIL_GUID_SIZE])
static | src/mail/service/qmail_service.c:395 | qmail_svc_parse_email_id_for_delete | static qmail_svc_error_t qmail_svc_parse_email_id_for_delete( const char *email_id_hex, uint8_t email_id[QMAIL_GUID_SIZE])
static | src/mail/service/qmail_service.c:643 | qmail_svc_rename_identity_coins | static void qmail_svc_rename_identity_coins(folder_type_t folder)
static | src/mail/service/qmail_service.c:791 | qmail_svc_wallet_balance_unlocked | static qmail_svc_error_t qmail_svc_wallet_balance_unlocked( qmail_svc_wallet_balance_result_t *out)
static | src/mail/service/qmail_service.c:830 | qmail_svc_wallet_balance_for_path_unlocked | static qmail_svc_error_t qmail_svc_wallet_balance_for_path_unlocked( const char *wallet_path, qmail_svc_wallet_balance_result_t *out)
static | src/mail/service/qmail_service.c:889 | qmail_svc_wallet_has_heal_work_unlocked | static qmail_svc_error_t qmail_svc_wallet_has_heal_work_unlocked( const char *wallet_path, bool *has_work_out)
static | src/mail/service/qmail_service.c:912 | qmail_svc_heal_deadline_hit | static bool qmail_svc_heal_deadline_hit(uint64_t expires_at_ms, qmail_svc_wallet_heal_result_t *out, qmail_svc_wallet_heal_wallet_result_t *wallet)
static | src/mail/service/qmail_service.c:922 | qmail_svc_heal_count_step | static void qmail_svc_heal_count_step( qmail_svc_wallet_heal_result_t *out, qmail_svc_wallet_heal_wallet_result_t *wallet)
static | src/mail/service/qmail_service.c:930 | qmail_svc_heal_record_step_error | static void qmail_svc_heal_record_step_error( const char *wallet_name, const char *step, result_t result, uint64_t expires_at_ms, qmail_svc_wallet_heal_result_t *out, qmail_svc_wallet_heal_wallet_result_t *wallet)
static | src/mail/service/qmail_service.c:944 | qmail_svc_heal_one_wallet_unlocked | static qmail_svc_error_t qmail_svc_heal_one_wallet_unlocked( const char *wallet_name, const char *wallet_path, core_transport_t *transport, uint64_t expires_at_ms, qmail_svc_wallet_heal_result_t *out, qmail_svc_wallet_heal_wallet_result_t *wallet)
static | src/mail/service/qmail_service.c:1243 | qmail_svc_export_coins_free | static void qmail_svc_export_coins_free(qmail_svc_export_coin_t *coins)
static | src/mail/service/qmail_service.c:1252 | qmail_svc_export_scan_locked | static qmail_svc_error_t qmail_svc_export_scan_locked( qmail_svc_export_coin_t **coins_out, int *count_out, uint64_t *value_out)
static | src/mail/service/qmail_service.c:1321 | qmail_svc_export_select | static int qmail_svc_export_select(qmail_svc_export_coin_t *coins, int count, uint64_t requested, uint64_t *remaining_out)
static | src/mail/service/qmail_service.c:1356 | qmail_svc_export_break_denom | static int8_t qmail_svc_export_break_denom( const qmail_svc_export_coin_t *coins, int count, uint64_t remaining)
static | src/mail/service/qmail_service.c:1373 | qmail_svc_export_generate_code | static result_t qmail_svc_export_generate_code( char out[QMAIL_SVC_LOCKER_CODE_MAX])
static | src/mail/service/qmail_service.c:1396 | qmail_svc_export_find_downloaded | static core_full_token_t *qmail_svc_export_find_downloaded( core_download_locker_result_t *download, const cloudcoin_t *coin)
static | src/mail/service/qmail_service.c:1414 | qmail_svc_export_recover_locked | static bool qmail_svc_export_recover_locked( const char *locker_code, qmail_svc_export_coin_t *coins, int coin_count, const core_put_locker_no_sum_result_t *put_result)
static | src/mail/service/qmail_service.c:1512 | qmail_svc_export_journal_find_local_locked | static bool qmail_svc_export_journal_find_local_locked( const qmail_export_journal_coin_t *needle, const folder_type_t *folders, int folder_count, folder_type_t *folder_out, char *filename_out, size_t filename_out_size, char *filepath_out, size_t filepath_out_size)
static | src/mail/service/qmail_service.c:1550 | qmail_svc_export_journal_all_bank_local_locked | static bool qmail_svc_export_journal_all_bank_local_locked( const qmail_export_journal_row_t *row)
static | src/mail/service/qmail_service.c:1563 | qmail_svc_export_journal_contains_coin | static bool qmail_svc_export_journal_contains_coin( const qmail_export_journal_row_t *row, uint32_t serial_number, int8_t denomination)
static | src/mail/service/qmail_service.c:1576 | qmail_svc_export_recover_download_locked | static bool qmail_svc_export_recover_download_locked( const qmail_export_journal_row_t *row, const core_download_locker_result_t *download)
static | src/mail/service/qmail_service.c:1860 | qmail_svc_retry_pending_attachments | static result_t qmail_svc_retry_pending_attachments( core_transport_t *transport, uint64_t expires_at_ms, qmail_svc_sync_once_result_t *out)
static | src/mail/service/qmail_service.c:1926 | qmail_svc_retry_export_journals | static result_t qmail_svc_retry_export_journals( core_transport_t *transport, uint64_t expires_at_ms, qmail_svc_sync_once_result_t *out)
static | src/mail/service/qmail_service.c:2164 | qmail_svc_append_recipient | static bool qmail_svc_append_recipient(char *list, size_t list_size, const char *address)
static | src/mail/service/qmail_service.c:2177 | qmail_svc_free_comp_temps | static void qmail_svc_free_comp_temps(char (*comp_temp)[MAX_PATH_LEN], int n)
static | src/mail/service/qmail_service.c:2185 | qmail_svc_send_email_impl | static qmail_svc_error_t qmail_svc_send_email_impl( const qmail_svc_send_email_params_t *params, qmail_svc_send_email_result_t *out, char (*fallback_names)[QMAIL_CBDF_ATTACHMENT_NAME_MAX + 1], char (*snapshot_paths)[MAX_PATH_LEN])
static | src/mail/service/qmail_service.c:2677 | qmail_svc_parse_recipients_csv | static int qmail_svc_parse_recipients_csv(const char *csv, qmail_recipient_type_t type, qmail_recipient_entry_t *out, int max_count)
static | src/mail/service/qmail_sync_notification.inc:1 | qmail_svc_advance_cursor | static void qmail_svc_advance_cursor(qmail_beacon_state_t *state, int peer_index, const qmail_ping_response_t *response)
static | src/mail/service/qmail_sync_notification.inc:40 | qmail_svc_download_tell | static bool qmail_svc_download_tell( const qmail_tell_notification_t *tell, core_transport_t *transport, qmail_svc_sync_once_result_t *out)
static | src/platform/font_locator_win.c:85 | wide_to_utf8 | static int wide_to_utf8(const wchar_t *w, char *out, size_t cap)
static | src/platform/font_locator_win.c:91 | utf8_to_wide | static int utf8_to_wide(const char *s, wchar_t *out, size_t cap)
static | src/platform/font_locator_win.c:99 | system_fonts_dir | static int system_fonts_dir(wchar_t *out, size_t cap)
static | src/platform/font_locator_win.c:109 | user_fonts_dir | static int user_fonts_dir(wchar_t *out, size_t cap)
static | src/platform/font_locator_win.c:119 | file_exists_w | static int file_exists_w(const wchar_t *path)
static | src/platform/font_locator_win.c:127 | registry_data_to_path | static int registry_data_to_path(const wchar_t *data, wchar_t *out, size_t cap)
static | src/platform/font_locator_win.c:146 | name_matches | static int name_matches(const wchar_t *value_name, const wchar_t *family)
static | src/platform/font_locator_win.c:174 | registry_lookup | static int registry_lookup(HKEY root, const wchar_t *family, wchar_t *path, size_t cap, int *face_index)
static | src/platform/font_locator.c:67 | role_name | static const char *role_name(qm_font_role_t role)
static | src/platform/font_locator.c:78 | resolve_logged | static int resolve_logged(const char *what, const qm_font_candidate_t *cand, qm_font_file_t *out)
static | src/platform/font_locator.c:134 | same_file | static int same_file(const qm_font_file_t *a, const qm_font_file_t *b)
static | src/platform/font_locator.c:168 | script_of | static unsigned script_of(unsigned long cp)
static | src/platform/migration.c:54 | set_error | static void set_error(qmail_migration_report_t *report, const char *what, const char *path)
static | src/platform/migration.c:61 | helper_index | static int helper_index(const char *name)
static | src/platform/migration.c:68 | journal_apply | static void journal_apply(journal_t *j, const char *key, const char *value)
static | src/platform/migration.c:87 | journal_read | static int journal_read(const char *path, journal_t *j)
static | src/platform/migration.c:106 | journal_write | static int journal_write(run_t *run, const char *key, const char *value)
static | src/platform/migration.c:118 | utc_stamp | static void utc_stamp(char *out, size_t cap)
static | src/platform/migration.c:130 | journal_done | static int journal_done(run_t *run, const char *step)
static | src/platform/migration.c:139 | transition | static int transition(run_t *run, const char *name)
static | src/platform/migration.c:160 | reject_reparse | static int reject_reparse(run_t *run, const char *path, const char *what)
static | src/platform/migration.c:169 | reject_reparse_chain | static int reject_reparse_chain(run_t *run, const char *full, const char *what)
static | src/platform/migration.c:198 | precheck_containment | static int precheck_containment(run_t *run)
static | src/platform/migration.c:212 | hash_file | static int hash_file(const char *path, char *hex)
static | src/platform/migration.c:220 | stage_copy | static int stage_copy(run_t *run, const char *src, const char *temp, char *hash_out)
static | src/platform/migration.c:245 | step_settings | static int step_settings(run_t *run)
static | src/platform/migration.c:270 | same_path | static int same_path(const char *a, const char *b)
static | src/platform/migration.c:278 | parse_run_command | static int parse_run_command(const char *command, char *exe, size_t exe_cap, char *root, size_t root_cap)
static | src/platform/migration.c:310 | scan_run_values | static int scan_run_values(run_t *run, const char *old_exe, run_value_t **values_out, int *owned, int *foreign)
static | src/platform/migration.c:355 | update_run_values | static int update_run_values(run_t *run, const char *old_exe, const char *new_exe)
static | src/platform/migration.c:429 | file_size | static long long file_size(const char *path)
static | src/platform/migration.c:443 | write_component_record | static int write_component_record(run_t *run, const char *server, const int *in_set, const char (*hashes)[65])
static | src/platform/migration.c:469 | step_helpers | static int step_helpers(run_t *run)
static | src/platform/migration.c:575 | lock_installation | static int lock_installation(run_t *run, locks_t *locks)
static | src/platform/migration.c:596 | locks_acquire | static int locks_acquire(run_t *run, locks_t *locks)
static | src/platform/migration.c:618 | locks_release | static void locks_release(locks_t *locks)
static | src/platform/paths.c:27 | init_lock | static BOOL CALLBACK init_lock(PINIT_ONCE once, PVOID param, PVOID *ctx)
static | src/platform/paths.c:33 | lock | static void lock(void)
static | src/platform/paths.c:34 | unlock | static void unlock(void)
static | src/platform/paths.c:37 | lock | static void lock(void)
static | src/platform/paths.c:38 | unlock | static void unlock(void)
static | src/platform/paths.c:41 | trim_separators | static void trim_separators(char *slot)
static | src/platform/paths.c:49 | set_root | static int set_root(char *slot, const char *value)
static | src/platform/paths.c:70 | normalize_root | static void normalize_root(char *out, const char *value)
static | src/platform/paths.c:97 | copy_out | static int copy_out(char *out, size_t cap, const char *value)
static | src/platform/paths.c:170 | under_client_data | static int under_client_data(char *out, size_t cap, const char *leaf)
static | src/platform/paths.c:194 | wide_alloc | static wchar_t *wide_alloc(void)
static | src/platform/paths.c:249 | native_alloc | static wchar_t *native_alloc(const char *path)
static | src/platform/paths.c:329 | attributes_of | static DWORD attributes_of(const char *path)
static | src/platform/paths.c:354 | directory_exists_w | static int directory_exists_w(const wchar_t *native)
static | src/platform/paths.c:433 | move_native | static int move_native(const char *src, const char *dst, DWORD flags)
static | src/platform/platform.c:111 | win_thread_proc | static unsigned __stdcall win_thread_proc(void *param)
static | src/server/cs_cmd.c:10 | put_u16_be | static void put_u16_be(uint16_t v, uint8_t *p)
static | src/server/cs_cmd.c:16 | get_u16_be | static uint16_t get_u16_be(const uint8_t *p)
static | src/server/cs_cmd.c:21 | put_u32_be | static void put_u32_be(uint32_t v, uint8_t *p)
static | src/server/cs_cmd.c:29 | get_u32_be | static uint32_t get_u32_be(const uint8_t *p)
static | src/server/cs_cmd.c:35 | put_u64_be | static void put_u64_be(uint64_t v, uint8_t *p)
static | src/server/cs_cmd.c:41 | get_u64_be | static uint64_t get_u64_be(const uint8_t *p)
static | src/server/cs_cmd.c:105 | handle_payload | static cs_cmd_err_t handle_payload(cs_cmd_ctx_t *ctx, cs_session_t *sess, uint16_t cmd, const uint8_t *pt, size_t pt_len, uint8_t *resp_pt, size_t resp_cap, size_t *resp_pt_len)
static | src/server/cs_crypto.c:23 | gcm_crypt | static int gcm_crypt(int encrypt, const uint8_t key[32], const uint8_t nonce[12], const uint8_t *aad, size_t aad_len, uint8_t *data, size_t data_len, uint8_t tag[16])
static | src/server/cs_daemon_config.c:30 | set_error | static void set_error(char *error, size_t error_len, const char *format, ...)
static | src/server/cs_daemon_config.c:68 | parse_long_range | static bool parse_long_range(const char *value, long lo, long hi, long *out)
static | src/server/cs_daemon_config.c:93 | parse_u64_range | static bool parse_u64_range(const char *value, unsigned long long lo, unsigned long long hi, unsigned long long *out)
static | src/server/cs_daemon_config.c:114 | parse_bool_strict | static bool parse_bool_strict(const char *value, bool *out)
static | src/server/cs_daemon_config.c:128 | trim_value | static void trim_value(char *value)
static | src/server/cs_daemon_config.c:147 | copy_bounded | static int copy_bounded(char *dest, size_t dest_len, const char *value, const char *key, char *error, size_t error_len)
static | src/server/cs_daemon_status.c:54 | copy_sanitised | static void copy_sanitised(char *dest, size_t dest_len, const char *src)
static | src/server/cs_daemon_status.c:196 | to_hex | static void to_hex(const uint8_t *bytes, size_t len, char *out)
static | src/server/cs_daemon_status.c:206 | secure_zero | static void secure_zero(void *data, size_t len)
static | src/server/cs_daemon_status.c:223 | windows_restrict_to_owner | static int windows_restrict_to_owner(const char *path)
static | src/server/cs_daemon_status.c:283 | windows_token_is_exposed | static int windows_token_is_exposed(const char *path)
static | src/server/cs_daemon_status.c:340 | token_is_exposed | static int token_is_exposed(const char *path)
static | src/server/cs_daemon_status.c:352 | write_token_file | static int write_token_file(const char *path, const char *hex)
static | src/server/cs_daemon.c:22 | daemon_mutex_init | static int daemon_mutex_init(daemon_mutex_t *m)
static | src/server/cs_daemon.c:27 | daemon_mutex_free | static void daemon_mutex_free(daemon_mutex_t *m)
static | src/server/cs_daemon.c:28 | daemon_mutex_lock | static void daemon_mutex_lock(daemon_mutex_t *m)
static | src/server/cs_daemon.c:29 | daemon_mutex_unlock | static void daemon_mutex_unlock(daemon_mutex_t *m)
static | src/server/cs_daemon.c:30 | daemon_mkdir | static int daemon_mkdir(const char *path)
static | src/server/cs_daemon.c:31 | daemon_pid | static uint32_t daemon_pid(void)
static | src/server/cs_daemon.c:32 | daemon_sleep_ms | static void daemon_sleep_ms(unsigned ms)
static | src/server/cs_daemon.c:40 | daemon_mutex_init | static int daemon_mutex_init(daemon_mutex_t *m)
static | src/server/cs_daemon.c:44 | daemon_mutex_free | static void daemon_mutex_free(daemon_mutex_t *m)
static | src/server/cs_daemon.c:45 | daemon_mutex_lock | static void daemon_mutex_lock(daemon_mutex_t *m)
static | src/server/cs_daemon.c:46 | daemon_mutex_unlock | static void daemon_mutex_unlock(daemon_mutex_t *m)
static | src/server/cs_daemon.c:47 | daemon_mkdir | static int daemon_mkdir(const char *path)
static | src/server/cs_daemon.c:48 | daemon_pid | static uint32_t daemon_pid(void)
static | src/server/cs_daemon.c:49 | daemon_sleep_ms | static void daemon_sleep_ms(unsigned ms)
static | src/server/cs_daemon.c:54 | now_unix | static uint64_t now_unix(void)
static | src/server/cs_daemon.c:56 | secure_zero | static void secure_zero(void *data, size_t len)
static | src/server/cs_daemon.c:132 | set_state | static void set_state(cs_daemon_t *daemon, cs_daemon_state_t state)
static | src/server/cs_daemon.c:146 | teardown | static void teardown(cs_daemon_t *daemon)
static | src/server/cs_daemon.c:192 | fail_start | static int fail_start(cs_daemon_t *daemon, const char *message)
static | src/server/cs_daemon.c:256 | daemon_collect_once | static void daemon_collect_once(cs_daemon_t *daemon, uint64_t now)
static | src/server/cs_daemon.c:292 | daemon_collector_start | static int daemon_collector_start(cs_daemon_t *daemon)
static | src/server/cs_daemon.c:324 | daemon_collector_stop | static void daemon_collector_stop(cs_daemon_t *daemon)
static | src/server/cs_daemon.c:357 | daemon_identity_free | static void daemon_identity_free(cs_daemon_t *daemon)
static | src/server/cs_daemon.c:383 | daemon_identity_start | static int daemon_identity_start(cs_daemon_t *daemon, char *error, size_t error_len)
static | src/server/cs_object_cmd.c:37 | rd_u16 | static uint16_t rd_u16(const uint8_t *p)
static | src/server/cs_object_cmd.c:41 | rd_u32 | static uint32_t rd_u32(const uint8_t *p)
static | src/server/cs_object_cmd.c:48 | rd_u64 | static uint64_t rd_u64(const uint8_t *p)
static | src/server/cs_object_cmd.c:55 | wr_u16 | static void wr_u16(uint16_t v, uint8_t *p)
static | src/server/cs_object_cmd.c:60 | wr_u32 | static void wr_u32(uint32_t v, uint8_t *p)
static | src/server/cs_object_cmd.c:67 | wr_u64 | static void wr_u64(uint64_t v, uint8_t *p)
static | src/server/cs_object_cmd.c:75 | bytes_zero | static int bytes_zero(const uint8_t *p, size_t len)
static | src/server/cs_object_cmd.c:88 | common_valid | static int common_valid(const uint8_t *body, size_t body_len, uint16_t expected_header_size)
static | src/server/cs_object_cmd.c:97 | common_fill | static void common_fill(uint8_t *out, uint16_t header_size, const uint8_t *request_body)
static | src/server/cs_object_cmd.c:108 | alloc_response | static uint8_t *alloc_response(size_t len)
static | src/server/cs_object_cmd.c:114 | fail | static void fail(cs_object_result_t *out, uint8_t status)
static | src/server/cs_object_cmd.c:136 | ranges_overlap_conflict | static int ranges_overlap_conflict(const cs_object_transfer_t *t, uint64_t offset, uint64_t length)
static | src/server/cs_object_cmd.c:153 | ranges_add | static int ranges_add(cs_object_store_t *store, cs_object_transfer_t *t, uint64_t offset, uint64_t length)
static | src/server/cs_object_cmd.c:186 | handle_begin | static void handle_begin(cs_object_store_t *store, const cs_object_identity_t *identity, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:411 | handle_put_range | static void handle_put_range(cs_object_store_t *store, const cs_object_identity_t *identity, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:569 | commit_precondition_status | static uint8_t commit_precondition_status(const cs_object_transfer_t *t, const cs_object_record_t *record)
static | src/server/cs_object_cmd.c:602 | handle_commit | static void handle_commit(cs_object_store_t *store, const cs_object_identity_t *identity, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:820 | handle_info | static void handle_info(cs_object_store_t *store, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:885 | handle_get_range | static void handle_get_range(cs_object_store_t *store, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:979 | handle_delete | static void handle_delete(cs_object_store_t *store, const cs_object_identity_t *identity, const uint8_t *body, size_t body_len, cs_object_result_t *out)
static | src/server/cs_object_cmd.c:1066 | range_order | static int range_order(const void *a,const void *b)
static | src/server/cs_object_cmd.c:1070 | handle_transfer_status | static void handle_transfer_status(cs_object_store_t *store,const cs_object_identity_t *identity, const uint8_t *body,size_t n,cs_object_result_t *out)
static | src/server/cs_object_cmd.c:1114 | handle_abort | static void handle_abort(cs_object_store_t *store,const cs_object_identity_t *identity, const uint8_t *body,size_t n,cs_object_result_t *out)
static | src/server/cs_object_cmd.c:1130 | handle_capabilities | static void handle_capabilities(cs_object_store_t *store,const uint8_t *body,size_t n,cs_object_result_t *out)
static | src/server/cs_object.c:81 | obj_mutex_init | static int obj_mutex_init(cs_obj_mutex_t *m)
static | src/server/cs_object.c:86 | obj_mutex_free | static void obj_mutex_free(cs_obj_mutex_t *m)
static | src/server/cs_object.c:87 | obj_mutex_lock | static void obj_mutex_lock(cs_obj_mutex_t *m)
static | src/server/cs_object.c:88 | obj_mutex_unlock | static void obj_mutex_unlock(cs_obj_mutex_t *m)
static | src/server/cs_object.c:89 | obj_mkdir | static int obj_mkdir(const char *path)
static | src/server/cs_object.c:101 | obj_mutex_init | static int obj_mutex_init(cs_obj_mutex_t *m)
static | src/server/cs_object.c:111 | obj_mutex_free | static void obj_mutex_free(cs_obj_mutex_t *m)
static | src/server/cs_object.c:112 | obj_mutex_lock | static void obj_mutex_lock(cs_obj_mutex_t *m)
static | src/server/cs_object.c:113 | obj_mutex_unlock | static void obj_mutex_unlock(cs_obj_mutex_t *m)
static | src/server/cs_object.c:114 | obj_mkdir | static int obj_mkdir(const char *path)
static | src/server/cs_object.c:147 | io_fault_fires | static bool io_fault_fires(cs_obj_io_fault_t f)
static | src/server/cs_object.c:167 | commit_step | static void commit_step(cs_obj_commit_step_t step, const char *path)
static | src/server/cs_object.c:179 | obj_flush_to_disk | static int obj_flush_to_disk(FILE *fp)
static | src/server/cs_object.c:207 | obj_sync_parent_dir | static int obj_sync_parent_dir(const char *path)
static | src/server/cs_object.c:240 | obj_rename_replace | static int obj_rename_replace(const char *from, const char *to)
static | src/server/cs_object.c:257 | hex16 | static void hex16(const uint8_t *in, char *out )
static | src/server/cs_object.c:267 | unhex16 | static int unhex16(const char *in, uint8_t out[16])
static | src/server/cs_object.c:286 | object_path | static int object_path(const cs_object_store_t *store, const uint8_t id[16], uint8_t file_type, uint64_t generation, const char *suffix, char *out, size_t out_len)
static | src/server/cs_object.c:298 | staging_path | static int staging_path(const cs_object_store_t *store, const uint8_t xid[16], char *out, size_t out_len)
static | src/server/cs_object.c:316 | put_u16 | static void put_u16(uint16_t v, uint8_t *p)
static | src/server/cs_object.c:321 | get_u16 | static uint16_t get_u16(const uint8_t *p)
static | src/server/cs_object.c:325 | put_u32 | static void put_u32(uint32_t v, uint8_t *p)
static | src/server/cs_object.c:332 | get_u32 | static uint32_t get_u32(const uint8_t *p)
static | src/server/cs_object.c:339 | put_u64 | static void put_u64(uint64_t v, uint8_t *p)
static | src/server/cs_object.c:346 | get_u64 | static uint64_t get_u64(const uint8_t *p)
static | src/server/cs_object.c:354 | record_serialise | static void record_serialise(const cs_object_record_t *r, uint8_t out[REC_SIZE])
static | src/server/cs_object.c:378 | record_parse | static int record_parse(const uint8_t in[REC_SIZE], cs_object_record_t *r)
static | src/server/cs_object.c:470 | file_size | static int64_t file_size(const char *path)
static | src/server/cs_object.c:499 | limits_defaults | static void limits_defaults(cs_object_limits_t *l)
static | src/server/cs_object.c:517 | recover_objects | static int recover_objects(cs_object_store_t *store)
static | src/server/cs_object.c:632 | free_ranges | static void free_ranges(cs_object_range_t *r)
static | src/server/cs_object.c:641 | free_transfer | static void free_transfer(cs_object_transfer_t *t)
static | src/server/cs_payment.c:72 | pay_mutex_init | static int pay_mutex_init(pay_mutex_t *m)
static | src/server/cs_payment.c:77 | pay_mutex_free | static void pay_mutex_free(pay_mutex_t *m)
static | src/server/cs_payment.c:78 | pay_mutex_lock | static void pay_mutex_lock(pay_mutex_t *m)
static | src/server/cs_payment.c:79 | pay_mutex_unlock | static void pay_mutex_unlock(pay_mutex_t *m)
static | src/server/cs_payment.c:80 | pay_wsa_once | static void pay_wsa_once(void)
static | src/server/cs_payment.c:106 | pay_mutex_init | static int pay_mutex_init(pay_mutex_t *m)
static | src/server/cs_payment.c:116 | pay_mutex_free | static void pay_mutex_free(pay_mutex_t *m)
static | src/server/cs_payment.c:117 | pay_mutex_lock | static void pay_mutex_lock(pay_mutex_t *m)
static | src/server/cs_payment.c:118 | pay_mutex_unlock | static void pay_mutex_unlock(pay_mutex_t *m)
static | src/server/cs_payment.c:119 | pay_wsa_once | static void pay_wsa_once(void)
static | src/server/cs_payment.c:127 | put_u32be | static void put_u32be(uint32_t v, uint8_t *p)
static | src/server/cs_payment.c:135 | get_u32be | static uint32_t get_u32be(const uint8_t *p)
static | src/server/cs_payment.c:141 | put_u64be | static void put_u64be(uint64_t v, uint8_t *p)
static | src/server/cs_payment.c:149 | get_u64be | static uint64_t get_u64be(const uint8_t *p)
static | src/server/cs_payment.c:176 | build_group8 | static size_t build_group8(uint8_t raida_id, uint8_t command, const uint8_t *payload, size_t payload_len, uint8_t *out, size_t out_cap)
static | src/server/cs_payment.c:328 | recv_exact | static int recv_exact(pay_sock_t s, uint8_t *buf, size_t n)
static | src/server/cs_payment.c:451 | rank_cmp_stats | static int rank_cmp_stats(const void *a, const void *b)
static | src/server/cs_payment.c:466 | rank_default | static size_t rank_default(void *userdata, uint8_t *order, size_t max)
static | src/server/cs_payment.c:521 | pay_flush_to_disk | static int pay_flush_to_disk(FILE *fp)
static | src/server/cs_payment.c:547 | sync_parent_dir | static int sync_parent_dir(const char *path)
static | src/server/cs_payment.c:584 | truncate_file_to | static int truncate_file_to(const char *path, uint64_t length)
static | src/server/cs_payment.c:644 | ledger_serialise | static void ledger_serialise(const cs_locker_entry_t *e, uint8_t out[CS_LEDGER_REC_SIZE])
static | src/server/cs_payment.c:706 | ledger_parse | static int ledger_parse(const uint8_t in[CS_LEDGER_REC_SIZE], cs_locker_entry_t *e)
static | src/server/cs_payment.c:764 | ledger_append | static int ledger_append(cs_payment_t *pay, const cs_locker_entry_t *e)
static | src/server/cs_payment.c:824 | ledger_compact | static int ledger_compact(cs_payment_t *pay)
static | src/server/cs_payment.c:890 | hash_code | static void hash_code(const cs_payment_t *pay, const uint8_t code[16], uint8_t out[32])
static | src/server/cs_payment.c:902 | find_exact | static cs_locker_entry_t *find_exact(cs_payment_t *pay, const uint8_t hash[32], const uint8_t transfer_id[16])
static | src/server/cs_payment.c:926 | find_unresolved_other | static cs_locker_entry_t *find_unresolved_other(cs_payment_t *pay, const uint8_t hash[32], const uint8_t transfer_id[16])
static | src/server/cs_payment.c:940 | find_by_transfer | static cs_locker_entry_t *find_by_transfer(cs_payment_t *pay, const uint8_t transfer_id[16])
static | src/server/cs_payment.c:950 | ledger_apply | static int ledger_apply(cs_payment_t *pay, const cs_locker_entry_t *row)
static | src/server/cs_payment.c:969 | ledger_recover | static int ledger_recover(cs_payment_t *pay)
static | src/server/cs_payment.c:1198 | pay_lock | static void pay_lock(cs_payment_t *pay)
static | src/server/cs_payment.c:1203 | pay_unlock | static void pay_unlock(cs_payment_t *pay)
static | src/server/cs_payment.c:1209 | rank_nodes | static size_t rank_nodes(cs_payment_t *pay, uint8_t *order, size_t max)
static | src/server/cs_payment.c:1489 | apply_to_object | static int apply_to_object(cs_payment_t *pay, const cs_locker_entry_t *e, uint8_t payment_state, uint64_t now)
static | src/server/cs_payment.c:1556 | reap_object | static int reap_object(cs_payment_t *pay, const cs_locker_entry_t *e)
static | src/server/cs_payment.c:1627 | replay_effect | static bool replay_effect(cs_payment_t *pay, const uint8_t transfer_id[16])
static | src/server/cs_session.c:60 | mutex_init | static int mutex_init(cs_mutex_t *m)
static | src/server/cs_session.c:61 | mutex_free | static void mutex_free(cs_mutex_t *m)
static | src/server/cs_session.c:62 | mutex_lock | static void mutex_lock(cs_mutex_t *m)
static | src/server/cs_session.c:63 | mutex_unlock | static void mutex_unlock(cs_mutex_t *m)
static | src/server/cs_session.c:64 | cs_random | static void cs_random(uint8_t *b, size_t n)
static | src/server/cs_session.c:74 | mutex_init | static int mutex_init(cs_mutex_t *m)
static | src/server/cs_session.c:87 | mutex_free | static void mutex_free(cs_mutex_t *m)
static | src/server/cs_session.c:88 | mutex_lock | static void mutex_lock(cs_mutex_t *m)
static | src/server/cs_session.c:89 | mutex_unlock | static void mutex_unlock(cs_mutex_t *m)
static | src/server/cs_session.c:90 | cs_random | static void cs_random(uint8_t *b, size_t n)
static | src/server/cs_session.c:100 | secure_zero | static void secure_zero(void *data, size_t len)
static | src/server/cs_session.c:107 | all_zero | static int all_zero(const uint8_t *p, size_t len)
static | src/server/cs_session.c:139 | wipe_cache | static void wipe_cache(cs_session_t *s)
static | src/server/cs_session.c:160 | wipe_slot | static void wipe_slot(cs_session_t *s)
static | src/server/cs_session.c:247 | id_exists | static int id_exists(const cs_session_table_t *t, const uint8_t id[16])
static | src/server/cs_session.c:256 | handle_exists | static int handle_exists(const cs_session_table_t *t, const uint8_t handle[5], uint64_t now)
static | src/server/cs_session.c:270 | key_exists | static int key_exists(const cs_session_table_t *t, const uint8_t key[32])
static | src/server/cs_session.c:284 | alloc_slot | static cs_session_t *alloc_slot(cs_session_table_t *t)
static | src/server/cs_session.c:395 | append_tombstone | static int append_tombstone(cs_session_table_t *t, const uint8_t handle[5], uint64_t now)
static | src/server/cs_stripe.c:32 | session_ok | static int session_ok(const cs_session_t *sess)
static | src/server/cs_stripe.c:37 | owner_match | static int owner_match(const cs_stripe_entry_t *e, const cs_session_t *sess)
static | src/server/cs_stripe.c:51 | find_entry | static cs_stripe_entry_t *find_entry(cs_stripe_store_t *s, const uint8_t stripe_id[CS_STRIPE_ID_LEN])
static | src/server/cs_stripe.c:62 | alloc_entry | static cs_stripe_entry_t *alloc_entry(cs_stripe_store_t *s)
static | src/server/cs_type9_listener.c:28 | get_u32_be | static uint32_t get_u32_be(const uint8_t *p)
static | src/server/cs_type9_listener.c:51 | declared_body_len | static uint32_t declared_body_len(const uint8_t *header)
static | src/server/cs_type9_listener.c:56 | send_all | static int send_all(cs_t9_socket_t socket_fd, const uint8_t *data, size_t len)
static | src/server/cs_type9_listener.c:72 | wait_readable | static int wait_readable(cs_t9_socket_t socket_fd, uint32_t timeout_ms)
static | src/server/cs_type9_listener.c:89 | recv_all_bounded | static int recv_all_bounded(cs_t9_socket_t socket_fd, uint8_t *data, size_t len, uint32_t timeout_ms, size_t *budget)
static | src/server/cs_type9_listener.c:115 | refuse_from_header | static void refuse_from_header(cs_t9_socket_t client, const uint8_t *header)
static | src/server/cs_type9_listener.c:187 | frame_is_object_exists_probe | static int frame_is_object_exists_probe(const uint8_t *header)
static | src/server/cs_type9_listener.c:193 | handle_object_exists_probe | static int handle_object_exists_probe(cs_t9_socket_t client, cs_type9_listener_t *listener, const uint8_t *header, uint32_t source, size_t *budget, uint32_t body_timeout)
static | src/server/cs_type9_listener.c:259 | handle_connection | static void handle_connection(cs_t9_socket_t client, cs_type9_listener_t *listener, uint32_t source)
static | src/server/cs_type9.c:25 | secure_zero | static void secure_zero(void *data, size_t len)
static | src/server/cs_type9.c:32 | all_zero | static int all_zero(const uint8_t *p, size_t len)
static | src/server/cs_type9.c:40 | get_u32_be | static uint32_t get_u32_be(const uint8_t *p)
static | src/server/cs_type9.c:46 | get_u64_be | static uint64_t get_u64_be(const uint8_t *p)
static | src/server/cs_type9.c:54 | put_u64_be | static void put_u64_be(uint64_t value, uint8_t *p)
static | src/server/cs_type9.c:62 | popcount25 | static int popcount25(uint32_t mask)
static | src/server/cs_type9.c:73 | sha256 | static int sha256(const uint8_t *data, size_t len, uint8_t digest[32])
static | src/server/cs_type9.c:78 | hmac_sha256_wiped | static int hmac_sha256_wiped(const uint8_t *key, size_t key_len, const uint8_t *data, size_t data_len, uint8_t digest[32])
static | src/server/cs_type9.c:128 | recompute_k_rke_wiped | static int recompute_k_rke_wiped(const cs_vault_t *vault, uint8_t key_id, const uint8_t client_sn[5], uint64_t timestamp, const uint8_t client_nonce[16], uint32_t mask, uint8_t k_rke[32])
static | src/server/cs_type9.c:358 | challenge_valid | static int challenge_valid(const uint8_t challenge[16])
static | src/server/cs_type9.c:363 | replay_purge | static void replay_purge(cs_type9_ctx_t *ctx, uint64_t now)
static | src/server/cs_type9.c:378 | replay_seen | static int replay_seen(const cs_type9_ctx_t *ctx, const uint8_t fp[16], const uint8_t nonce[12])
static | src/server/cs_type9.c:388 | replay_commit | static int replay_commit(cs_type9_ctx_t *ctx, const uint8_t fp[16], const uint8_t nonce[12], uint64_t expires)
static | src/server/cs_type9.c:415 | cache_response | static int cache_response(cs_session_t *session, uint64_t counter, const uint8_t nonce[12], const uint8_t request_digest[32], const uint8_t *response, size_t response_len)
static | src/server/cs_type9.c:439 | digest_equal | static int digest_equal(const uint8_t a[32], const uint8_t b[32])
static | src/server/cs_type9.c:447 | process_established | static int process_established(cs_type9_ctx_t *ctx, const cs_type9_request_t *req, uint8_t **out, size_t *out_len)
static | src/server/cs_type9.c:713 | process_open | static int process_open(cs_type9_ctx_t *ctx, const cs_type9_request_t *req, uint8_t **out, size_t *out_len)
static | src/server/cs_vault_seal.c:31 | derive_seal_key | static int derive_seal_key(const cs_vault_t *v, uint8_t key_id, uint8_t key_out[32])
static | src/server/cs_vault_seal.c:62 | build_aad | static size_t build_aad(uint8_t version, uint8_t key_id, const uint8_t *context, size_t context_len, uint8_t *out, size_t out_cap)
static | src/server/cs_vault.c:100 | wipe_free | static void wipe_free(void *p, size_t len)
static | src/server/cs_vault.c:110 | put_u16_le | static void put_u16_le(uint16_t v, uint8_t *p)
static | src/server/cs_vault.c:115 | put_u32_le | static void put_u32_le(uint32_t v, uint8_t *p)
static | src/server/cs_vault.c:122 | put_u64_le | static void put_u64_le(uint64_t v, uint8_t *p)
static | src/server/cs_vault.c:127 | get_u16_le | static uint16_t get_u16_le(const uint8_t *p)
static | src/server/cs_vault.c:131 | get_u32_le | static uint32_t get_u32_le(const uint8_t *p)
static | src/server/cs_vault.c:136 | get_u64_le | static uint64_t get_u64_le(const uint8_t *p)
static | src/server/cs_vault.c:144 | ensure_parent | static int ensure_parent(const char *path)
static | src/server/cs_vault.c:176 | windows_restrict_to_owner | static int windows_restrict_to_owner(const char *path)
static | src/server/cs_vault.c:233 | windows_file_is_exposed | static int windows_file_is_exposed(const char *path)
static | src/server/cs_vault.c:317 | open_owner_only_for_write | static FILE *open_owner_only_for_write(const char *path)
static | src/server/cs_vault.c:361 | flush_to_disk | static int flush_to_disk(FILE *fp)
static | src/server/cs_vault.c:387 | sync_parent_dir | static int sync_parent_dir(const char *path)
static | src/server/cs_vault.c:452 | load_fail | static int load_fail(cs_vault_t *v, uint8_t *buf, size_t buf_len, bool free_vault)
static | src/server/hosting_adapter.c:34 | error | static qgui_result_t error(qgui_server_reply_t *r,const char *text)
static | src/server/hosting_adapter.c:37 | exec_sql | static int exec_sql(sqlite3 *db,const char *sql)
static | src/server/hosting_adapter.c:38 | col | static void col(sqlite3_stmt *st,int i,char *out,size_t size)
static | src/server/hosting_adapter.c:41 | read_record | static int read_record(sqlite3 *db,hosting_record *h)
static | src/server/hosting_adapter.c:84 | save_record | static int save_record(sqlite3 *db,const hosting_record *h)
static | src/server/hosting_adapter.c:113 | identity_for_new_record | static void identity_for_new_record(hosting_record *h)
static | src/server/hosting_adapter.c:121 | key_value | static int key_value(const char *text,const char *key,char *out,size_t size)
static | src/server/hosting_adapter.c:131 | number | static int number(const char *text,const char *key,uint64_t *out)
static | src/server/hosting_adapter.c:135 | status_snapshot | static int status_snapshot(hosting_record *h)
static | src/server/hosting_adapter.c:190 | clean_path | static int clean_path(const char *s)
static | src/server/hosting_adapter.c:191 | sample_uptime | static int sample_uptime(sqlite3 *db,hosting_record *h)
static | src/server/hosting_adapter.c:201 | daemon_config | static int daemon_config(const char *root,const hosting_record *h,char *path,size_t cap,char *message,size_t message_cap)
static | src/server/hosting_adapter.c:257 | run_connectivity_test | static void run_connectivity_test(hosting_record *h)
static | src/server/hosting_background.c:10 | monitor | static void *monitor(void *unused)
static | src/server/hosting_connectivity.c:47 | clock_ms | static uint64_t clock_ms(void)
static | src/server/hosting_connectivity.c:62 | ipv4_resolution | static int ipv4_resolution(HINTERNET req,const wchar_t *host)
static | src/server/hosting_connectivity.c:98 | receive_bytes | static size_t receive_bytes(char *p,size_t size,size_t count,void *user)
static | src/server/hosting_connectivity.c:103 | request | static int request(const char *url,const char *upload,size_t length,reply_buffer *reply)
static | src/server/hosting_connectivity.c:148 | service_url_valid | static int service_url_valid(const char *url)
static | src/server/hosting_connectivity.c:161 | probe_reply | static int probe_reply(qgui_hosting_config_t *h,char *text,const char *nonce)
static | src/server/hosting_connectivity.c:174 | operation_url | static void operation_url(char *url,size_t cap,const char *service,int fleet,const char *op)
static | src/server/hosting_connectivity.c:178 | connectivity | static int connectivity(qgui_hosting_config_t *h,char *error,size_t cap,int address_only)
static | src/server/hosting_process.c:11 | same_image | static int same_image(const char *utf8_a,const char *utf8_b)
static | src/server/hosting_process.c:15 | verified | static HANDLE verified(const qmail_host_process_t *p)
static | src/server/hosting_process.c:32 | quote | static int quote(char *out,size_t cap,const char *s)
static | src/server/hosting_process.c:44 | create_process | static int create_process(const char *exe,const char *cmd,DWORD flags,STARTUPINFOW *si,PROCESS_INFORMATION *pi)
static | src/server/hosting_process.c:84 | ignore_control | static BOOL WINAPI ignore_control(DWORD event)
static | src/server/hosting_process.c:113 | born | static uint64_t born(uint32_t pid,char *state)
static | src/server/hosting_services.c:16 | load_keys | static int load_keys(int dn,unsigned sn,host_keys *k,char *error,size_t cap)
static | src/server/hosting_services.c:29 | key_for | static encryption_key_t *key_for(uint8_t id,void *user)
static | src/server/hosting_startup.c:15 | autostart_run_key | static const char *autostart_run_key(void)
static | src/server/hosting_uptime.c:8 | sql | static int sql(sqlite3 *db,const char *s)
static | src/server/hosting_uptime.c:9 | bits | static int bits(uint64_t mask)
static | src/server/hosting_uptime.c:10 | bucket | static int bucket(sqlite3 *db,int64_t minute,uint64_t add,uint64_t keep)
static | src/server/qmail_server_main.c:47 | sleep_ms | static void sleep_ms(unsigned ms)
static | src/server/qmail_server_main.c:67 | handle_signal | static void handle_signal(int signal_number)
static | src/server/qmail_server_main.c:87 | console_ctrl_handler | static BOOL WINAPI console_ctrl_handler(DWORD control_type)
static | src/server/qmail_server_main.c:108 | install_signal_handlers | static void install_signal_handlers(void)
static | src/server/qmail_server_main.c:122 | listener_thread | static unsigned __stdcall listener_thread(void *argument)
static | src/server/qmail_server_main.c:128 | listener_thread | static void *listener_thread(void *argument)
static | src/server/qmail_server_main.c:139 | usage | static void usage(const char *program)
static | src/server/qmail_server_main.c:177 | option_to_key | static const char *option_to_key(const char *argument)
static | src/server/qmail_server_main.c:206 | write_default_config | static int write_default_config(const char *path)
static | src/update/archive.c:37 | inspect_bytes | static size_t inspect_bytes(void *opaque,mz_uint64 offset,const void *bytes,size_t size)
static | src/update/component_store.c:61 | string | static int string(yyjson_val *v,const char *key,char *out,size_t cap)
static | src/update/component_store.c:67 | migration_receipt | static int migration_receipt(FILE *f,const char *root,const char *exe,qm_component_record_t *r)
static | src/update/component.c:35 | chunk | static int chunk(void *ctx,const void *data,size_t size)
static | src/update/component.c:45 | record_transition | static int record_transition(qm_update_plan_t *p,const char *root,qm_component_state state,const char *error)
static | src/update/install_launch.c:12 | quote | static int quote(const char *s,char *out,size_t cap)
static | src/update/install_launch.c:22 | launch | static int launch(const char *path)
static | src/update/manifest.c:45 | text_field | static int text_field(yyjson_val *o, const char *key, char *dst, size_t cap)
static | src/update/manifest.c:72 | version | static int version(yyjson_val *o,const char *key,char *dst)
static | src/update/manifest.c:77 | hash_field | static int hash_field(yyjson_val *o,const char *key,char *dst)
static | src/update/manifest.c:84 | file_spec | static int file_spec(yyjson_val *o,qm_file_spec_t *f,const char *filekey)
static | src/update/manifest.c:93 | base_url | static int base_url(const char *s)
static | src/update/manifest.c:103 | first_value | static const char *first_value(const char *json,const char *key)
static | src/update/manifest.c:110 | first_string | static int first_string(const char *json,const char *key,const char *expected)
static | src/update/update_download.c:49 | update_fail | static qmail_api_code_t update_fail(qmail_api_error_t *error, qmail_api_code_t code, const char *message)
static | src/update/update_download.c:60 | update_clear_error | static void update_clear_error(qmail_api_error_t *error)
static | src/update/update_download.c:68 | skip_ws | static const char *skip_ws(const char *p)
static | src/update/update_download.c:74 | find_value | static const char *find_value(const char *json, const char *key)
static | src/update/update_download.c:86 | get_string_from | static int get_string_from(const char *json, const char *key, char *out, size_t cap)
static | src/update/update_download.c:104 | get_size_from | static int get_size_from(const char *json, const char *key, size_t *out)
static | src/update/update_download.c:118 | component_format | static int component_format(const char *json,size_t size)
static | src/update/update_download.c:127 | manifest_validate | static bool manifest_validate(char *data, size_t size, void *user)
static | src/update/update_download.c:139 | parse_manifest | static int parse_manifest(const char *json, update_manifest_t *out)
static | src/update/update_download.c:171 | safe_filename | static int safe_filename(const char *name)
static | src/update/update_download.c:180 | version_compare | static int version_compare(const char *left, const char *right)
static | src/update/update_download.c:185 | updates_dir | static void updates_dir(const qmail_desktop_api_t *api, char *out, size_t cap)
static | src/update/update_download.c:192 | failed_update | static int failed_update(qmail_desktop_api_t *api,const char *version,const char *hash, char *last,size_t cap)
static | src/update/update_download.c:206 | read_state | static int read_state(const qmail_desktop_api_t *api, qmail_api_update_status_t *out)
static | src/update/update_download.c:257 | component_context | static int component_context(char *root,size_t root_cap,char *exe,size_t exe_cap,qm_component_record_t records[3])
static | src/update/update_download.c:269 | component_metadata | static int component_metadata(const char *json,qm_update_plan_t *plan,char *root,char *exe)
static | src/update/update_download.c:278 | write_file | static int write_file(const char *path, const void *data, size_t size)
static | src/update/update_download.c:291 | write_state | static int write_state(const qmail_desktop_api_t *api, const update_manifest_t *manifest, const char *package_path, size_t actual_size)
static | src/update/update_download.c:380 | update_chunk | static int update_chunk(void *context,const void *bytes,size_t size)
static | src/update/update_download.c:386 | download_file | static int download_file(const char *url,const http_get_options_t *opts,const char *path, const char *expected,size_t expected_size,size_t *actual)
static | src/update/update_download.c:404 | component_fetch | static int component_fetch(void *ctx,const char *url,qm_update_sink sink,void *sink_ctx)
static | src/update/update_download.c:409 | component_clock | static uint64_t component_clock(void *ctx)
static | src/update/update_download.c:410 | component_disk | static uint64_t component_disk(void *ctx,const char *path)
static | src/update/update_download.c:419 | fetch_components | static qmail_api_code_t fetch_components(qmail_desktop_api_t *api,const char *json,qmail_api_update_status_t *out,qmail_api_error_t *error)
public | src/update/update_download.h:6 | qmail_update_network_status | qmail_api_code_t qmail_update_network_status(qmail_desktop_api_t *api, qmail_api_update_status_t *out, qmail_api_error_t *error)
public | src/update/update_download.h:10 | qmail_update_network_fetch | qmail_api_code_t qmail_update_network_fetch(qmail_desktop_api_t *api, qmail_api_update_status_t *out, qmail_api_error_t *error)
public | src/update/update_download.h:17 | qmail_version_parse | int qmail_version_parse(const char *text, unsigned fields[4])
public | src/update/update_download.h:20 | qmail_version_compare | int qmail_version_compare(const char *left, const char *right)
static | src/update/update.c:14 | regular_file | static int regular_file(const char *path)
static | src/update/update.c:28 | same_path | static int same_path(const char *left, const char *right)
static | src/update/update.c:147 | ps_quote | static int ps_quote(const char *input, char *output, size_t capacity)
static | src/update/version.c:9 | split_numeric | static int split_numeric(const char *v, unsigned long f[4], char seps[4], int widths[4])
static | src/update/version.c:33 | valid_date | static int valid_date(unsigned long y, unsigned long m, unsigned long d)