Asterisk memory usage debugging This file provides headers for MALLOC_DEBUG, a define used for tracking down memory leaks. It should never be #included directly; always use the MALLOC_DEBUG definition in menuselect to activate those functions. More...
#include "asterisk.h"
#include <sys/types.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <stdarg.h>
Go to the source code of this file.
Defines | |
#define | __AST_DEBUG_MALLOC |
#define | asprintf(a, b, c...) __ast_asprintf(__FILE__, __LINE__, __PRETTY_FUNCTION__, a, b, c) |
#define | ast_asprintf(a, b, c...) __ast_asprintf(__FILE__, __LINE__, __PRETTY_FUNCTION__, a, b, c) |
#define | ast_calloc(a, b) __ast_calloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_calloc_cache(a, b) __ast_calloc_cache(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_free(a) __ast_free(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_malloc(a) __ast_malloc(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_realloc(a, b) __ast_realloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_strdup(a) __ast_strdup(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_strndup(a, b) __ast_strndup(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | ast_vasprintf(a, b, c) __ast_vasprintf(a,b,c,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | calloc(a, b) __ast_calloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | free(a) __ast_free(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | malloc(a) __ast_malloc(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | realloc(a, b) __ast_realloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | strdup(a) __ast_strdup(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | strndup(a, b) __ast_strndup(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define | vasprintf(a, b, c) __ast_vasprintf(a,b,c,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Functions | |
int | __ast_asprintf (const char *file, int lineno, const char *func, char **strp, const char *format,...) |
void * | __ast_calloc (size_t nmemb, size_t size, const char *file, int lineno, const char *func) |
void * | __ast_calloc_cache (size_t nmemb, size_t size, const char *file, int lineno, const char *func) |
void | __ast_free (void *ptr, const char *file, int lineno, const char *func) |
void * | __ast_malloc (size_t size, const char *file, int lineno, const char *func) |
void | __ast_mm_init_phase_1 (void) |
Initialize malloc debug phase 1. | |
void | __ast_mm_init_phase_2 (void) |
Initialize malloc debug phase 2. | |
void * | __ast_realloc (void *ptr, size_t size, const char *file, int lineno, const char *func) |
char * | __ast_strdup (const char *s, const char *file, int lineno, const char *func) |
char * | __ast_strndup (const char *s, size_t n, const char *file, int lineno, const char *func) |
int | __ast_vasprintf (char **strp, const char *format, va_list ap, const char *file, int lineno, const char *func) |
void | ast_free_ptr (void *ptr) |
void * | ast_std_calloc (size_t nmemb, size_t size) |
void | ast_std_free (void *ptr) |
void * | ast_std_malloc (size_t size) |
void * | ast_std_realloc (void *ptr, size_t size) |
Asterisk memory usage debugging This file provides headers for MALLOC_DEBUG, a define used for tracking down memory leaks. It should never be #included directly; always use the MALLOC_DEBUG definition in menuselect to activate those functions.
Definition in file astmm.h.
#define __AST_DEBUG_MALLOC |
Definition at line 36 of file astmm.h.
Referenced by _moh_class_malloc().
#define asprintf | ( | a, | |||
b, | |||||
c... | ) | __ast_asprintf(__FILE__, __LINE__, __PRETTY_FUNCTION__, a, b, c) |
#define ast_asprintf | ( | a, | |||
b, | |||||
c... | ) | __ast_asprintf(__FILE__, __LINE__, __PRETTY_FUNCTION__, a, b, c) |
Definition at line 121 of file astmm.h.
Referenced by aji_act_hook(), aji_create_client(), ast_pthread_create_stack(), build_filename(), build_peer(), complete_dialplan_remove_extension(), dial_exec_full(), find_table(), handle_gosub(), init_acf_query(), sdp_crypto_offer(), store_config(), try_calling(), xmldoc_get_syntax_fun(), xmldoc_parse_enum(), xmldoc_parse_option(), xmldoc_parse_parameter(), and xmldoc_parse_variablelist().
#define ast_calloc | ( | a, | |||
b | ) | __ast_calloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 82 of file astmm.h.
Referenced by __ast_calloc_with_stringfields(), __ast_custom_function_register_escalating(), __ast_datastore_alloc(), __ast_format_register(), __ast_http_post_load(), __ast_module_user_add(), __ast_pbx_run(), __init_manager(), __sip_reliable_xmit(), _ast_register_timing_interface(), _parse(), _sip_show_peers(), accept_thread(), acf_curlopt_write(), acf_iaxvar_write(), acf_odbc_read(), action_bridge(), action_originate(), add_agent(), add_agi_cmd(), add_event_to_list(), add_features_datastore(), add_pattern_node(), add_peer_mailboxes(), add_publish_event(), add_realm_authentication(), add_redirect(), add_sip_domain(), add_string_pool(), add_subscribe_event(), add_to_agi(), add_to_load_order(), adjust_frame_for_plc(), aes_helper(), aji_create_buddy(), aji_create_client(), aji_handle_message(), aji_handle_presence(), ALLOC_COMMENT(), alloc_jb_frame(), alloc_profile(), alloc_smdi_interface(), alloc_sub(), analog_new(), answer_exec_enable(), anti_injection(), append_history_va(), append_mapping(), append_permission(), apply_plc(), ast_add_extension2_lockopt(), ast_add_profile(), ast_aoc_create(), ast_aoc_decode(), ast_aoc_encode(), ast_append_ha(), ast_audiohook_attach(), ast_autochan_setup(), ast_autoservice_start(), ast_bridge_features_hook(), ast_bridge_impart(), ast_bridge_new(), ast_bt_create(), ast_bt_get_symbols(), ast_category_new(), ast_cc_agent_register(), ast_cc_agent_status_response(), ast_cc_build_frame(), ast_cc_extension_monitor_add_dialstring(), ast_cc_monitor_failed(), ast_cc_monitor_register(), ast_cdr_alloc(), ast_cdr_detach(), ast_cdr_register(), ast_channel_iterator_all_new(), ast_channel_register(), ast_channel_set_fd(), ast_channel_start_silence_generator(), ast_channel_transfer_masquerade(), ast_cli_perms_init(), ast_config_new(), ast_context_add_ignorepat2(), ast_context_add_include2(), ast_context_add_switch2(), ast_context_find_or_create(), ast_data_iterator_init(), ast_devstate_changed_literal(), ast_devstate_prov_add(), ast_dial_append(), ast_dial_create(), ast_dnsmgr_get_family(), ast_dsp_new(), ast_duplicate_ha(), ast_event_dup(), ast_event_new(), ast_event_sub_append_ie_bitflags(), ast_event_sub_append_ie_exists(), ast_event_sub_append_ie_raw(), ast_event_sub_append_ie_str(), ast_event_sub_append_ie_uint(), ast_event_subscribe_new(), ast_fax_tech_register(), ast_frame_header_new(), ast_framehook_attach(), ast_get_enum(), ast_hashtab_create(), ast_hashtab_dup(), ast_hashtab_insert_immediate_bucket(), ast_hashtab_resize(), ast_hashtab_start_traversal(), ast_hashtab_start_write_traversal(), ast_heap_create(), ast_iax2_new(), ast_include_new(), ast_linear_stream(), ast_lock_path_flock(), ast_merge_contexts_and_delete(), ast_module_register(), ast_monitor_start(), ast_netsock_bindaddr(), ast_netsock_list_alloc(), ast_odbc_find_table(), ast_pbx_outgoing_app(), ast_pbx_outgoing_exten(), ast_register_application2(), ast_register_file_version(), ast_register_thread(), ast_rtp_new(), ast_rtp_prop_set(), ast_safe_fork(), ast_sched_thread_create(), ast_setlocale(), ast_setup_cc_recall_datastore(), ast_speech_new(), ast_srtp_policy_set_master_key(), ast_srv_lookup(), ast_ssl_init(), ast_strftime_locale(), ast_taskprocessor_get(), AST_TEST_DEFINE(), ast_threadstorage_get(), ast_timer_open(), ast_tzset(), ast_udptl_new_with_bindaddr(), ast_var_assign(), ast_variable_new(), audiohook_volume_get(), authenticate_reply(), bridge_request(), build_alias(), build_conf(), build_context(), build_device(), build_dialplan_useage_context(), build_dialplan_useage_ramp(), build_dialplan_useage_spaces(), build_event_channel(), build_extension(), build_gateway(), build_mapping(), build_peer(), build_profile(), build_user(), builtin_atxfer(), caldav_add_event(), callerid_new(), cc_generic_agent_init(), cc_generic_monitor_request_cc(), cc_interfaces_datastore_init(), cc_recall_ds_duplicate(), cc_request_state_change(), cfmtime_new(), channel_iterator_search(), check_match(), compile_script(), config_cache_attribute(), config_device(), config_function_read(), config_ldap(), config_line(), config_module(), config_parse_variables(), cops_gate_cmd(), copy_rules(), create_client(), create_followme_number(), create_transaction(), create_video_frame(), create_vmaccount(), dec_init(), deep_copy_peer(), defer_full_frame(), device_state_cb(), devstate_change_collector_cb(), dial_exec_full(), dial_features_duplicate(), dialed_cc_interfaces_duplicate(), dialed_interface_duplicate(), do_directory(), do_monitor(), do_proxy_auth(), dundi_answer_entity(), dundi_answer_query(), dundi_prop_precache(), dundi_query_read(), dundi_send(), endelm(), enum_query_read(), extension_monitor_pvt_init(), external_rtp_create(), fax_session_new(), fbuf_append(), find_cache(), find_idle_thread(), find_or_create(), find_table(), find_table_cb(), find_tpeer(), find_transaction(), find_user_realtime(), findmeexec(), fixed_jb_new(), frame_trace_helper(), func_channel_write_real(), gen_alloc(), generic_monitor_devstate_cb(), get_lock(), get_robin_position(), gmtsub(), gosub_allocate_frame(), gosub_exec(), gtalk_add_candidate(), gtalk_alloc(), gtalk_create_candidates(), gtalk_load_config(), handle_command_response(), handle_subscribe(), handle_verbose(), iax2_append_register(), iax2_dup_variable_datastore(), iax_frame_new(), iax_park(), iax_process_template(), icalendar_add_event(), inherit_category(), init_acf_query(), init_logger_chain(), initialize_mutehook(), insert_penaltychange(), internal_ao2_alloc(), internal_ao2_callback(), internal_ao2_link(), io_context_create(), jb_new(), jingle_add_candidate(), jingle_alloc(), jingle_create_candidates(), jingle_load_config(), launch_monitor_thread(), load_channelvars(), load_config(), load_dynamic_module(), load_module(), load_pktccops_config(), load_values_config(), local_call(), make_entry(), make_logchannel(), message_template_create(), message_template_parse_filebody(), milliwatt_alloc(), misdn_cfg_init(), misdn_jb_init(), mkif(), mkintf(), moh_add_file(), moh_alloc(), moh_files_alloc(), mohalloc(), multicast_rtp_new(), mvm_user_alloc(), mwi_send_init(), mwi_sub_event_cb(), mwi_unsub_event_cb(), nbs_alloc(), new_outgoing(), newpvt(), oh323_alloc(), osp_create_provider(), page_exec(), park_space_reserve(), parse_cdata(), parse_contact_header(), parse_srv(), parse_via(), pitchshift_helper(), playtones_alloc(), process_applicationmap_line(), queue_file(), queue_file_create(), queue_reload_request(), queue_ringing_trunk(), queue_signalling(), realtime_ldap_result_to_vars(), realtime_multi_pgsql(), realtime_pgsql(), receive_ademco_contact_id(), receivefax_exec(), register_atexit(), register_translator(), reload_queue_rules(), req_alloc(), res_srtp_new(), reschedule_precache(), rtp_red_init(), sched_alloc(), sched_context_create(), sdp_crypto_alloc(), secure_call_store_duplicate(), sendfax_exec(), setup_inheritable_audiohook(), setup_inheritance_datastore(), setup_mixmonitor_ds(), setup_transfer_datastore(), shared_write(), sip_cc_agent_init(), sip_cc_monitor_suspend(), sip_epa_register(), sip_notify_allocate(), sip_park(), sip_prepare_socket(), sip_refer_allocate(), sip_request_call(), sip_srtp_alloc(), sip_st_alloc(), skinny_new(), skinny_req_parse(), sla_create_failed_station(), sla_create_ringing_station(), sla_queue_event_full(), smdi_msg_retrieve_read(), smdi_read(), socket_process(), softmix_bridge_join(), spandsp_fax_new(), spawn_dp_lookup(), speech_background(), speex_write(), srv_datastore_setup(), start_network_thread(), startelm(), store_by_locale(), store_config(), substituted(), table_config_new(), timezone_add(), tonepair_alloc(), tps_task_alloc(), transmit_response(), try_calling(), try_firmware(), try_load_key(), update2_ldap(), update_ldap(), vm_allocate_dh(), and volume_write().
#define ast_calloc_cache | ( | a, | |||
b | ) | __ast_calloc_cache(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 85 of file astmm.h.
Referenced by ast_frame_header_new(), ast_frdup(), and iax_frame_new().
#define ast_free | ( | a | ) | __ast_free(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 97 of file astmm.h.
Referenced by __ast_cli_generator(), __ast_cli_register(), __ast_cli_unregister(), __ast_context_destroy(), __ast_datastore_alloc(), __ast_http_load(), __ast_http_post_load(), __ast_internal_context_destroy(), __ast_module_user_hangup_all(), __ast_module_user_remove(), __ast_pbx_run(), __ast_string_field_init(), __ast_string_field_release_active(), __ast_unregister_atexit(), __frame_free(), __init_manager(), __oh323_destroy(), __sip_ack(), __sip_destroy(), __sip_reliable_xmit(), __unload_module(), _free_general_cfg(), _free_msn_list(), _free_port_cfg(), _macro_exec(), _parse(), _sip_show_peers(), acf_curl_helper(), acf_cut_exec(), acf_faxopt_read(), acf_fetch(), acf_retrieve_docs(), action_command(), action_originate(), action_status(), actual_load_config(), add_agi_cmd(), add_cfg_entry(), add_priority(), add_required_respheader(), add_user_extension(), adjust_frame_for_plc(), adsi_prog(), aes_helper(), agent_pvt_destroy(), agi_destroy_commands_cb(), aji_act_hook(), aji_create_client(), aji_find_version(), aji_handle_message(), aji_handle_presence(), aji_message_destroy(), alarmreceiver_exec(), analog_delete(), analog_free(), analog_hangup(), answer_exec_disable(), ao2_iterator_destroy(), aoc_display_decoded_debug(), app_exec(), append_history_va(), apply_options_full(), ast_agi_unregister(), ast_aji_buddy_destroy(), ast_aji_client_destroy(), ast_aoc_destroy_decoded(), ast_aoc_destroy_encoded(), ast_aoc_manager_event(), ast_aoc_test_encode_decode_match(), ast_app_group_discard(), ast_app_group_update(), ast_app_run_macro(), ast_app_run_sub(), ast_audiohook_detach_list(), ast_autochan_destroy(), ast_bridge_features_cleanup(), ast_bridge_impart(), ast_bt_destroy(), ast_bt_get_symbols(), ast_category_destroy(), ast_cc_agent_set_interfaces_chanvar(), ast_cc_agent_status_response(), ast_cc_agent_unregister(), ast_cc_build_frame(), ast_cc_config_params_destroy(), ast_cc_monitor_failed(), ast_cc_monitor_unregister(), ast_cdr_discard(), ast_cdr_free(), ast_cdr_unregister(), ast_channel_destructor(), ast_channel_iterator_destroy(), ast_channel_start_silence_generator(), ast_channel_stop_silence_generator(), ast_channel_unregister(), ast_child_verbose(), ast_cli_command_full(), ast_cli_completion_matches(), ast_cli_display_match_list(), ast_cli_generatornummatches(), ast_cli_perms_init(), ast_comment_destroy(), ast_config_destroy(), ast_connected_line_parse_data(), ast_context_add_ignorepat2(), ast_context_add_include2(), ast_context_add_switch2(), ast_context_remove_ignorepat2(), ast_context_remove_include2(), ast_context_remove_switch2(), ast_custom_function_unregister(), ast_data_add_password(), ast_data_add_str(), ast_data_iterator_end(), ast_datastore_free(), ast_db_freetree(), ast_destroy_template_list(), ast_destroy_timing(), ast_devstate_prov_del(), ast_dial_destroy(), ast_dnsmgr_release(), ast_dsp_free(), ast_event_append_ie_raw(), ast_event_destroy(), ast_event_ie_val_destroy(), ast_event_sub_append_ie_raw(), ast_event_sub_append_ie_str(), ast_event_sub_destroy(), ast_fax_tech_unregister(), ast_filehelper(), ast_format_unregister(), ast_framehook_attach(), ast_framehook_list_destroy(), ast_free_ha(), ast_free_ptr(), ast_frisolate(), ast_func_read(), ast_get_enum(), ast_get_srv(), ast_heap_create(), ast_heap_destroy(), ast_hook_send_action(), ast_http_auth(), ast_http_error(), ast_http_get_post_vars(), ast_http_send(), ast_http_uri_unlink_all_with_key(), ast_iax2_new(), ast_include_rename(), ast_includes_destroy(), ast_io_remove(), ast_log(), ast_logger_unregister_level(), ast_manager_register2(), ast_merge_contexts_and_delete(), ast_module_unregister(), ast_monitor_start(), ast_monitor_stop(), ast_netsock_bindaddr(), ast_netsock_destroy(), ast_netsock_release(), ast_parse_digest(), ast_party_dialed_copy(), ast_party_dialed_free(), ast_party_dialed_set(), ast_party_id_copy(), ast_party_id_free(), ast_party_id_set(), ast_party_name_copy(), ast_party_name_free(), ast_party_name_set(), ast_party_number_copy(), ast_party_number_free(), ast_party_number_set(), ast_party_subaddress_copy(), ast_party_subaddress_free(), ast_party_subaddress_set(), ast_pbx_outgoing_app(), ast_pbx_outgoing_exten(), ast_pbx_run_app(), ast_playtones_start(), ast_process_pending_reloads(), ast_read_textfile(), ast_readfile(), ast_recvchar(), ast_redirecting_parse_data(), ast_register_application2(), ast_rtp_destroy(), ast_rtp_new(), ast_rtp_prop_set(), ast_run_atexits(), ast_say_number_full_ka(), ast_sched_thread_destroy(), ast_set_callerid(), ast_set_cc_interfaces_chanvar(), ast_setup_cc_recall_datastore(), ast_smdi_md_message_destroy(), ast_smdi_mwi_message_destroy(), ast_smoother_free(), ast_sockaddr_resolve_first_af(), ast_speech_destroy(), ast_speech_new(), ast_speech_results_free(), ast_srtp_destroy(), ast_srtp_policy_set_master_key(), ast_srv_lookup(), ast_str_substitute_variables_full(), ast_strftime_locale(), AST_TEST_DEFINE(), ast_timer_close(), ast_tls_read_conf(), ast_tone_zone_destructor(), ast_tone_zone_sound_destructor(), ast_udptl_destroy(), ast_udptl_new_with_bindaddr(), ast_udptl_set_tag(), ast_unregister_application(), ast_unregister_feature(), ast_unregister_features(), ast_unregister_file_version(), ast_unregister_groups(), ast_unregister_thread(), ast_unregister_timing_interface(), ast_unregister_verbose(), ast_var_delete(), ast_variable_destroy(), ast_writefile(), ast_xmldoc_build_arguments(), ast_xmldoc_build_seealso(), ast_xmldoc_printable(), async_wait(), audiohook_inheritance_destroy(), audiohook_volume_destroy(), auth_http_callback(), authenticate_reply(), bridge_call_thread(), bridge_channel_thread(), bridge_exec(), bridge_hangup(), bridge_request(), build_conf(), build_device(), build_extension(), build_gateway(), build_peer(), build_user_routes(), caldav_add_event(), caldav_get_events_between(), caldav_request(), caldav_write_event(), calendar_event_destructor(), calendar_join_attendees(), calendar_write_exec(), callattempt_free(), callerid_free(), callerid_write(), cc_cli_output_status(), cc_do_state_change(), cc_epa_destructor(), cc_extension_monitor_destructor(), cc_generic_agent_destructor(), cc_generic_monitor_destructor(), cc_generic_monitor_request_cc(), cc_interfaces_datastore_init(), cc_monitor_destroy(), cc_monitor_failed(), cc_recall_ds_destroy(), cc_request_state_change(), cc_status_response(), cdr_engine_shutdown(), cdr_handler(), change_redirecting_information(), chanlist_free(), channel_iterator_search(), check_user_full(), clean_time_zones(), cleanup_call_details(), clear_config_maps(), clear_sip_domains(), clearvar_prefix(), cli_complete(), cli_fax_show_sessions(), close_client(), close_logger(), close_mailbox(), compile_script(), conf_free(), conf_run(), config_cache_destroy_entry(), config_cache_flush_includes(), config_function_read(), config_handler(), config_ldap(), config_module(), config_odbc(), config_text_file_load(), console_dial(), console_transfer(), container_destruct(), container_destruct_debug(), cops_freemsg(), copy_event_data(), create_video_frame(), crypto_load(), curl_instance_cleanup(), cut_internal(), dahdi_callwait(), dahdi_cc_callback(), dahdi_handle_dtmf(), dahdi_handle_event(), dahdi_hangup(), dahdi_new(), dahdi_sendtext(), data_provider_print_cli(), data_result_destructor(), data_result_manager_output(), data_result_print_cli(), data_result_print_cli_node(), data_search_destructor(), data_search_generate(), datastore_destroy_cb(), dec_uninit(), deinit_req(), delete_extension(), delete_users(), destroy(), destroy_bridge(), destroy_callback(), destroy_calling_tree(), destroy_dahdi_pvt(), destroy_devstate_change(), destroy_dialplan_usage_context(), destroy_endpoint(), destroy_exten(), destroy_fast_originate_helper(), destroy_firmware(), destroy_gateway(), destroy_jack_data(), destroy_mailbox(), destroy_map(), destroy_match_list(), destroy_packet(), destroy_packets(), destroy_pattern_tree(), destroy_peer(), destroy_permissions(), destroy_realm_authentication(), destroy_session(), destroy_session_details(), destroy_table(), destroy_table_cache(), destroy_trans(), destroy_user_perms(), device_state_cb(), dial_exec_full(), dial_features_destroy(), dialed_cc_interfaces_destroy(), dialed_interface_destroy(), dialgroup_refreshdb(), dialog_unlink_all(), do_batch_backend_process(), do_devstate_changes(), do_directory(), do_message(), do_monitor(), do_notify(), do_parking_thread(), do_pktccops(), dp_lookup_thread(), drds_destroy(), drop_translator(), dummy_start(), dump_cmd_queues(), dump_queue(), dump_queue_members(), dundi_answer_entity(), dundi_answer_query(), dundi_flush(), dundi_lookup_thread(), dundi_precache_thread(), dundi_prop_precache(), dundi_query_thread(), dundi_send(), duplicate_pseudo(), eivr_comm(), empty_columns(), endelm(), enum_query_read(), erds_destroy(), eventlist_destructor(), ewscal_write_event(), exception_store_free(), exchangecal_get_events_between(), exchangecal_request(), exchangecal_write_event(), exec_exec(), execute_and_consume(), external_rtp_create(), fax_session_new(), festival_exec(), fetch_icalendar(), fetch_response_reader(), filestream_destructor(), find_and_retrans(), find_cache(), find_conf_realtime(), find_idle_thread(), find_realtime(), find_table(), find_user_realtime(), findmeexec(), fixed_jb_destroy(), frame_cache_cleanup(), framehook_detach_and_destroy(), free_acf_query(), free_agi_cmd(), free_channelvars(), free_config(), free_context(), free_numbers(), free_old_route(), free_outgoing(), free_robin_list(), free_signaling_queue_entry(), free_table(), free_user(), free_via(), free_zone(), func_channel_write_real(), func_inheritance_write(), func_mute_write(), gen_release(), generic_http_callback(), generic_monitor_devstate_cb(), generic_monitor_devstate_tp_cb(), generic_monitor_instance_list_destructor(), get_destination(), get_ewscal_ids_for(), get_lock(), get_pai(), get_params(), get_robin_position(), gosub_free(), gosub_release_frame(), gtalk_alloc(), gtalk_create_candidates(), gtalk_free_candidates(), gtalk_free_pvt(), gtalk_get_local_ip(), gtalk_member_destroy(), handle_call_forward(), handle_cc_status(), handle_cli_agi_show(), handle_cli_udptl_set_debug(), handle_command_response(), handle_commandcomplete(), handle_commandmatchesarray(), handle_dbget(), handle_deferred_full_frames(), handle_getvariablefull(), handle_gosub(), handle_init_event(), handle_message(), handle_recvtext(), handle_request_cancel(), handle_response(), handle_response_subscribe(), handle_show_function(), handle_showchan(), handle_showmancmd(), handle_statechange(), handle_subscribe(), handle_unsubscribe(), handle_updates(), handle_verbose(), hook_destroy_cb(), http_shutdown(), iax2_append_register(), iax2_free_variable_datastore(), iax2_process_thread_cleanup(), iax2_setoption(), iax_frame_free(), iax_park(), iax_park_thread(), iax_parse_ies(), iax_provision_free_templates(), icalendar_add_event(), inclfile_destroy(), init_logger_chain(), init_queue(), init_req(), init_resp(), inotify_daemon(), insert_penaltychange(), internal_ao2_callback(), internal_ao2_iterator_next(), internal_ao2_ref(), io_context_create(), io_context_destroy(), jb_destroy(), jingle_alloc(), jingle_create_candidates(), jingle_free_candidates(), jingle_free_pvt(), jingle_member_destroy(), leave_queue(), leave_voicemail(), linear_alloc(), linear_release(), load_channelvars(), load_column_config(), load_config(), load_dynamic_module(), load_module(), load_modules(), load_resource_list(), load_values_config(), local_ast_moh_cleanup(), lock_free(), logger_thread(), lpc10_destroy(), lua_free_extensions(), lua_read_extensions_file(), lua_reload_extensions(), make_email_file(), make_logchannel(), manage_parkinglot(), manager_free_user(), manager_mutestream(), manager_set_defaults(), manager_shutdown(), meetme_cmd_helper(), meetme_show_cmd(), message_template_build(), message_template_free(), mgcp_postrequest(), mgcpsock_read(), milliwatt_release(), misdn_cfg_destroy(), misdn_jb_destroy(), misdn_jb_init(), mixmonitor_free(), mkif(), mkintf(), moh_class_destructor(), moh_release(), moh_scan_files(), mohalloc(), monitor_pfds_clean(), multicast_rtp_destroy(), multicast_rtp_new(), music_disable(), mwi_send_init(), mwi_send_process_buffer(), mwi_send_process_event(), mwi_sub_destroy(), mwi_sub_event_cb(), mwi_thread(), mwi_unsub_event_cb(), my_callwait(), my_cancel_cidspill(), my_send_callerid(), nbs_alloc(), nbs_destroy(), new_outgoing(), newpvt(), odbc_class_destructor(), odbc_datastore_free(), odbc_load_module(), odbc_log(), odbc_txn_free(), oh323_alloc(), oh323_answer(), oh323_destroy_alias(), oh323_destroy_peer(), oh323_destroy_user(), oh323_digit_begin(), oh323_digit_end(), oh323_hangup(), oh323_indicate(), osp_create_provider(), osp_unload(), page_exec(), park_space_abort(), park_space_reserve(), parked_call_exec(), parse_cdata(), parse_ewscal_id(), pbx_destroy(), pbx_load_config(), pbx_retrieve_variable(), pbx_set_overrideswitch(), pgsql_log(), pgsql_reconnect(), phoneprov_callback(), playtones_release(), plc_ds_destroy(), policy_destructor(), populate_defaults(), pp_each_extension_helper(), pp_each_user_helper(), print_app_docs(), process_applicationmap_line(), process_precache(), profile_destructor(), purge_events(), queue_created_files(), queue_file_write(), queue_function_queuememberpaused(), queue_function_queuememberstatus(), queue_reload_request(), queue_transfer_destroy(), rcv_mac_addr(), read_raw_content_length(), readfile_exec(), realtime_destroy_handler(), realtime_handler(), realtime_ldap_base_ap(), realtime_multi_handler(), realtime_multi_pgsql(), realtime_peer_by_name(), realtime_pgsql(), realtime_store_handler(), realtime_update_handler(), register_translator(), release_jb_frame(), release_transaction(), reload_config(), reload_queue_members(), reload_queue_rules(), replace(), report_fax_status(), require_pgsql(), res_srtp_new(), reset_tone_zone(), resolve_first(), retrans_pkt(), run_station(), scan_thread(), sched_context_destroy(), sched_release(), sdp_crypto_destroy(), sdp_crypto_offer(), sdp_crypto_setup(), secure_call_store_destroy(), send_callerid(), send_eivr_event(), send_request(), sendfax_exec(), sendmail(), sendpage(), session_instance_destructor(), set_var(), setup_mixmonitor_ds(), setup_stunaddr(), setup_transfer_datastore(), shared_variable_free(), shaun_of_the_dead(), sip_cc_agent_destructor(), sip_epa_unregister_all(), sip_park(), sip_park_thread(), sip_registry_destroy(), sip_srtp_destroy(), sip_subscribe_mwi_destroy(), sip_tcptls_client_args_destructor(), skinny_hangup(), skinny_req_parse(), sla_event_destroy(), sla_failed_station_destroy(), sla_ringing_station_destroy(), sla_ringing_trunk_destroy(), socket_process(), socket_receive_file_to_buff(), softmix_bridge_leave(), spandsp_fax_destroy(), spandsp_fax_new(), speech_processing_sound(), speex_callback(), speex_write(), sqlite_log(), srds_destroy_cb(), srv_datastore_setup(), start_network_thread(), startelm(), store_config(), store_mixer(), stun_stop_monitor(), table_configs_free(), tcptls_packet_destructor(), tds_log(), tds_unload_module(), temp_pvt_cleanup(), timezone_add(), timing_read(), tonepair_release(), tps_task_free(), tps_taskprocessor_destroy(), transmit_response(), try_calling(), tryexec_exec(), unalloc_sub(), unistim_new(), unload_config(), unload_module(), unregister_translators(), update2_ldap(), update_caldav(), update_ewscal(), update_exchangecal(), update_ldap(), usage_context_add_spaces(), userevent_exec(), vm_allocate_dh(), vm_change_password(), vmaccounts_destroy_list(), write_cdr(), write_history(), write_htmldump(), xfer_ds_destroy(), xmldoc_build_field(), xmldoc_get_syntax_cmd(), xmldoc_get_syntax_fun(), xmldoc_get_syntax_manager(), xmldoc_parse_cmd_enumlist(), xmldoc_parse_enum(), xmldoc_parse_option(), xmldoc_parse_optionlist(), xmldoc_parse_para(), xmldoc_parse_parameter(), xmldoc_parse_variable(), xmldoc_parse_variablelist(), xmldoc_reverse_helper(), and xmldoc_string_wrap().
#define ast_malloc | ( | a | ) | __ast_malloc(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 91 of file astmm.h.
Referenced by __ast_cc_config_params_init(), _parse(), action_command(), actual_load_config(), aji_find_version(), append_event(), ast_app_run_macro(), ast_app_run_sub(), ast_bt_get_symbols(), ast_cel_fabricate_channel_from_event(), ast_child_verbose(), ast_cli_completion_matches(), ast_connected_line_parse_data(), ast_data_add_password(), ast_data_add_str(), ast_event_sub_append_ie_raw(), ast_frisolate(), ast_http_get_post_vars(), ast_io_add(), ast_loader_register(), ast_pthread_create_stack(), ast_read_textfile(), ast_redirecting_parse_data(), ast_register_verbose(), ast_say_number_full_ka(), ast_say_number_full_pl(), ast_smoother_new(), ast_sockaddr_resolve(), ast_writefile(), auth_http_callback(), build_route(), cli_complete(), complete_queue_add_member(), config_odbc(), dahdi_callwait(), dahdi_sendtext(), db_gettree_cb(), destroy_trans(), duplicate_pseudo(), evt_event_deliver_cb(), expand_gosub_args(), fetch_response_reader(), find_user(), generate_filenames_string(), generic_http_callback(), handle_cc_status(), handle_cli_agi_show(), handle_commandmatchesarray(), handle_show_function(), iax2_setoption(), init_batch(), io_context_create(), load_file(), load_module(), lua_read_extensions_file(), mgcp_postrequest(), my_callwait(), my_send_callerid(), print_app_docs(), queue_function_queuememberpaused(), queue_function_queuememberstatus(), queue_put(), queue_signalling(), rcv_mac_addr(), send_cwcidspill(), send_request(), set_chan_app_data(), socket_receive_file_to_buff(), and write_history().
#define ast_realloc | ( | a, | |||
b | ) | __ast_realloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 103 of file astmm.h.
Referenced by acf_odbc_read(), ast_add_profile(), ast_cli_completion_matches(), ast_el_strtoarr(), ast_event_append_ie_raw(), ast_playtones_start(), ast_strftime_locale(), bridge_array_add(), cli_complete(), dialgroup_refreshdb(), do_monitor(), do_pktccops(), enum_callback(), fbuf_append(), get_params(), grow_heap(), handle_commandmatchesarray(), iax2_trunk_queue(), iax_frame_new(), io_grow(), ldap_loadentry(), manage_parked_call(), moh_add_file(), socket_receive_file_to_buff(), store_tone_zone_ring_cadence(), update2_ldap(), and xmldoc_reverse_helper().
#define ast_strdup | ( | a | ) | __ast_strdup(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 109 of file astmm.h.
Referenced by __analog_handle_event(), __ast_channel_alloc_ap(), __ast_cli_register(), __ast_datastore_alloc(), __ast_http_load(), __ast_http_post_load(), __init_manager(), __oh323_new(), _macro_exec(), actual_load_config(), add_agi_cmd(), add_cfg_entry(), add_to_load_order(), aji_handle_message(), aji_handle_presence(), answer_exec_enable(), apply_option(), apply_options_full(), ast_add_profile(), ast_agi_register(), ast_bridge_timelimit(), ast_build_timing(), ast_category_new(), ast_cc_monitor_failed(), ast_cel_fabricate_channel_from_event(), ast_cli_complete(), ast_cli_perms_init(), ast_complete_applications(), ast_complete_channels(), ast_complete_source_filename(), ast_context_find_or_create(), ast_dial_append(), ast_el_strtoarr(), ast_event_sub_append_ie_str(), ast_ext_ctx(), ast_extension_state(), ast_extension_state_add_destroy(), ast_frisolate(), ast_hook_send_action(), ast_iax2_new(), ast_include_new(), ast_include_rename(), ast_logger_register_level(), ast_merge_contexts_and_delete(), ast_module_helper(), ast_monitor_start(), ast_party_dialed_copy(), ast_party_dialed_set(), ast_party_id_copy(), ast_party_id_set(), ast_party_name_copy(), ast_party_name_set(), ast_party_number_copy(), ast_party_number_set(), ast_party_subaddress_copy(), ast_party_subaddress_set(), ast_readfile(), ast_register_indication(), ast_set_callerid(), ast_streamfile(), ast_taskprocessor_get(), ast_tls_read_conf(), ast_writefile(), ast_xmldoc_build_arguments(), ast_xmldoc_build_seealso(), autoanswer_complete(), build_mapping(), caldav_add_event(), calendar_write_exec(), callerid_write(), cb_events(), cc_device_monitor_init(), cc_generic_monitor_request_cc(), change_redirecting_information(), check_user_full(), cli_console_active(), cli_odbc_read(), cli_odbc_write(), complete_agent_logoff_cmd(), complete_channeltypes(), complete_confno(), complete_core_id(), complete_core_show_hint(), complete_country(), complete_debug_port(), complete_fn(), complete_iax2_peers(), complete_iax2_unregister(), complete_indications(), complete_meetmecmd_list(), complete_meetmecmd_mute_kick(), complete_minivm_show_users(), complete_number(), complete_peer_helper(), complete_queue(), complete_queue_add_member(), complete_queue_pause_member(), complete_queue_remove_member(), complete_queue_rule_show(), complete_queue_set_member_penalty(), complete_show_config(), complete_show_dialplan_context(), complete_sip_peer(), complete_sip_registered_peer(), complete_sip_user(), complete_sipch(), complete_sipnotify(), complete_skinny_devices(), complete_skinny_reset(), complete_skinny_show_device(), complete_skinny_show_line(), complete_trans_path_choice(), complete_ulimit(), complete_userno(), complete_voicemail_show_users(), conf_run(), config_module(), context_merge(), create_new_generic_list(), dahdi_handle_event(), dahdi_new(), data_search_generate(), db_get_common(), do_forward(), do_message(), endelm(), enum_callback(), fax_session_new(), fax_session_tab_complete(), find_conf_realtime(), find_user(), generic_monitor_devstate_cb(), get_destination(), get_name_and_number(), get_rdnis(), get_robin_position(), gtalk_new(), handle_call_forward(), handle_cli_config_reload(), handle_cli_dialplan_add_extension(), handle_cli_odbc_show(), handle_cli_realtime_pgsql_cache(), handle_core_set_debug_channel(), handle_show_calendar(), handle_show_function(), handle_show_version_files(), handle_showcalls(), handle_showmanager(), handle_showmancmd(), handle_verbose(), iax_park(), iax_prov_complete_template(), icalendar_add_event(), init_acf_query(), is_prefix(), jingle_new(), load_channelvars(), load_column_config(), load_module(), load_odbc_config(), load_values_config(), manage_parked_call(), manager_set_defaults(), meetme_menu_admin_extended(), message_template_parse_emailbody(), mgcp_new(), mgcp_ss(), misdn_call(), misdn_new(), moh_add_file(), music_enable(), mwi_sub_event_cb(), odbc_load_module(), oh323_answer(), oh323_digit_begin(), oh323_digit_end(), oh323_hangup(), oh323_indicate(), oss_new(), park_call_full(), parkinglot_activate(), parse_args(), parse_config(), parse_moved_contact(), parse_via(), party_id_write(), party_name_write(), party_number_write(), party_subaddress_write(), pbx_load_config(), pbx_load_users(), pbx_set_overrideswitch(), phone_new(), realtime_ldap_result_to_vars(), realtime_multi_handler(), register_exten(), register_peer_exten(), reload_config(), sdp_crypto_process(), set_fn(), set_full_cmd(), set_var(), setup_stunaddr(), sip_new(), sip_park(), sip_prepare_socket(), skinny_new(), skinny_newcall(), sla_build_station(), sla_build_trunk(), spawn_dp_lookup(), speech_background(), speech_processing_sound(), speex_callback(), split_ec(), store_config(), store_mixer(), table_config_new(), tps_taskprocessor_tab_complete(), unistim_new(), wait_for_answer(), write_htmldump(), xmldoc_build_field(), xmldoc_get_syntax_cmd(), xmldoc_get_syntax_fun(), xmldoc_get_syntax_manager(), xmldoc_parse_cmd_enumlist(), and xmldoc_string_wrap().
#define ast_strndup | ( | a, | |||
b | ) | __ast_strndup(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 115 of file astmm.h.
Referenced by ast_recvtext().
#define ast_vasprintf | ( | a, | |||
b, | |||||
c | ) | __ast_vasprintf(a,b,c,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 127 of file astmm.h.
Referenced by ast_cc_monitor_failed(), ast_udptl_set_tag(), execute_and_consume(), and xmldoc_reverse_helper().
#define calloc | ( | a, | |||
b | ) | __ast_calloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 79 of file astmm.h.
Referenced by ael_token_subst(), alloc_expr_node(), ast_app_group_set_channel(), ast_std_calloc(), check_macro_returns(), check_switch_expr(), misdn_lib_init(), new_exten(), new_prio(), npval(), pvalCreateNode(), stack_init(), tdd_feed(), tdd_new(), and yyparse().
#define free | ( | a | ) | __ast_free(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 94 of file astmm.h.
Referenced by acf_curlopt_write(), add_subscribe_event(), ast_app_group_set_channel(), ast_autoservice_start(), ast_autoservice_stop(), ast_channel_destructor(), ast_channel_set_fd(), ast_expr(), ast_hashtab_create(), ast_hashtab_destroy(), ast_hashtab_dup(), ast_hashtab_end_traversal(), ast_hashtab_remove_object_internal(), ast_hashtab_resize(), ast_module_shutdown(), ast_rtp_stop(), ast_smdi_interface_destroy(), ast_std_free(), ast_str_expr(), ast_threadstorage_get(), ast_yyerror(), ast_yyfree(), build_event_channel(), check_pval_item(), cli_console_dial(), complete_dialplan_add_ignorepat(), complete_dialplan_add_include(), complete_dialplan_remove_extension(), complete_dialplan_remove_ignorepat(), complete_dialplan_remove_include(), cops_freemsg(), cops_gate_cmd(), cops_sendmsg(), curlds_free(), delete_devices(), delete_file(), destroy_arglist(), destroy_extensions(), destroy_mailbox_mapping(), destroy_pval_item(), destroy_queue(), do_monitor(), do_pktccops(), event_channel_destroy(), filestream_destructor(), fix_gotos_in_extensions(), free_value(), freed_regions_flush(), gen_prios(), get_local_address(), handle_cli_dialplan_remove_extension(), handle_cr(), handle_event_nt(), handle_gosub(), init_jack_data(), linkprio(), load_file(), load_module(), make_str(), mgcp_prune_realtime_gateway(), misdn_lib_destroy(), misdn_lib_init(), op_func(), path_lock_destroy(), pktccops_unregister_cmtses(), pktccops_unregister_ippools(), publish_event_destroy(), realtime_ldap(), realtime_ldap_result_to_vars(), realtime_multi_ldap(), region_free(), skinny_reload(), smdi_msg_datastore_destroy(), split_ec(), stack_init(), subscribe_event_destroy(), table_config_new(), table_configs_free(), tdd_feed(), tdd_free(), to_number(), unload_module(), update_ldap(), yydestruct(), yyerror(), and yyparse().
#define malloc | ( | a | ) | __ast_malloc(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 88 of file astmm.h.
Referenced by __ast_alloc_region(), ast_readconfig(), ast_std_malloc(), ast_yyalloc(), compose_func_args(), cops_gate_cmd(), cops_getmsg(), cops_sendmsg(), do_pktccops(), expr2_token_subst(), gen_prios(), get_local_address(), init_bc(), linkprio(), make_number(), make_str(), misdn_lib_send_event(), op_tildetilde(), to_string(), and yyparse().
#define realloc | ( | a, | |||
b | ) | __ast_realloc(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 100 of file astmm.h.
Referenced by ast_std_realloc(), and ast_yyrealloc().
#define strdup | ( | a | ) | __ast_strdup(a,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 106 of file astmm.h.
Referenced by add_extensions(), ast_compile_ael2(), ast_lock_path_flock(), check_macro_returns(), check_switch_expr(), complete_dialplan_add_extension(), complete_dialplan_add_ignorepat(), complete_dialplan_add_include(), complete_dialplan_remove_extension(), complete_dialplan_remove_ignorepat(), complete_dialplan_remove_include(), dummy_start(), fix_gotos_in_extensions(), gen_prios(), make_str(), manage_parked_call(), npval(), and yyparse().
#define strndup | ( | a, | |||
b | ) | __ast_strndup(a,b,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
#define vasprintf | ( | a, | |||
b, | |||||
c | ) | __ast_vasprintf(a,b,c,__FILE__, __LINE__, __PRETTY_FUNCTION__) |
int __ast_asprintf | ( | const char * | file, | |
int | lineno, | |||
const char * | func, | |||
char ** | strp, | |||
const char * | format, | |||
... | ||||
) |
Definition at line 609 of file astmm.c.
References __ast_alloc_region(), and FUNC_ASPRINTF.
00610 { 00611 int size; 00612 va_list ap, ap2; 00613 char s; 00614 00615 *strp = NULL; 00616 va_start(ap, fmt); 00617 va_copy(ap2, ap); 00618 size = vsnprintf(&s, 1, fmt, ap2); 00619 va_end(ap2); 00620 if (!(*strp = __ast_alloc_region(size + 1, FUNC_ASPRINTF, file, lineno, func, 0))) { 00621 va_end(ap); 00622 return -1; 00623 } 00624 vsnprintf(*strp, size + 1, fmt, ap); 00625 va_end(ap); 00626 00627 return size; 00628 }
void* __ast_calloc | ( | size_t | nmemb, | |
size_t | size, | |||
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 467 of file astmm.c.
References __ast_alloc_region(), and FUNC_CALLOC.
Referenced by __ast_calloc_with_stringfields(), __ast_datastore_alloc(), add_string_pool(), ast_hashtab_create(), ast_hashtab_dup(), ast_hashtab_insert_immediate_bucket(), ast_hashtab_resize(), ast_hashtab_start_traversal(), ast_hashtab_start_write_traversal(), ast_heap_create(), ast_var_assign(), ast_variable_new(), and internal_ao2_alloc().
00468 { 00469 void *ptr; 00470 00471 ptr = __ast_alloc_region(size * nmemb, FUNC_CALLOC, file, lineno, func, 0); 00472 if (ptr) { 00473 memset(ptr, 0, size * nmemb); 00474 } 00475 00476 return ptr; 00477 }
void* __ast_calloc_cache | ( | size_t | nmemb, | |
size_t | size, | |||
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 479 of file astmm.c.
References __ast_alloc_region(), and FUNC_CALLOC.
00480 { 00481 void *ptr; 00482 00483 ptr = __ast_alloc_region(size * nmemb, FUNC_CALLOC, file, lineno, func, 1); 00484 if (ptr) { 00485 memset(ptr, 0, size * nmemb); 00486 } 00487 00488 return ptr; 00489 }
void __ast_free | ( | void * | ptr, | |
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 504 of file astmm.c.
References __ast_free_region().
00505 { 00506 __ast_free_region(ptr, file, lineno, func); 00507 }
void* __ast_malloc | ( | size_t | size, | |
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 491 of file astmm.c.
References __ast_alloc_region(), FUNC_MALLOC, and MALLOC_FILLER.
Referenced by __ast_cc_config_params_init().
00492 { 00493 void *ptr; 00494 00495 ptr = __ast_alloc_region(size, FUNC_MALLOC, file, lineno, func, 0); 00496 if (ptr) { 00497 /* Make sure that the malloced memory is not zero. */ 00498 memset(ptr, MALLOC_FILLER, size); 00499 } 00500 00501 return ptr; 00502 }
void __ast_mm_init_phase_1 | ( | void | ) |
Initialize malloc debug phase 1.
Definition at line 1395 of file astmm.c.
References mm_atexit_final().
Referenced by main().
01396 { 01397 atexit(mm_atexit_final); 01398 }
void __ast_mm_init_phase_2 | ( | void | ) |
Initialize malloc debug phase 2.
Definition at line 1414 of file astmm.c.
References ARRAY_LEN, ast_cli_register_multiple(), ast_config_AST_LOG_DIR, ast_log(), ast_register_atexit(), ast_verb, LOG_ERROR, and mm_atexit_ast().
Referenced by main().
01415 { 01416 char filename[PATH_MAX]; 01417 01418 ast_cli_register_multiple(cli_memory, ARRAY_LEN(cli_memory)); 01419 01420 snprintf(filename, sizeof(filename), "%s/mmlog", ast_config_AST_LOG_DIR); 01421 01422 ast_verb(1, "Asterisk Malloc Debugger Started (see %s))\n", filename); 01423 01424 mmlog = fopen(filename, "a+"); 01425 if (mmlog) { 01426 fprintf(mmlog, "%ld - New session\n", (long) time(NULL)); 01427 fflush(mmlog); 01428 } else { 01429 ast_log(LOG_ERROR, "Could not open malloc debug log file: %s\n", filename); 01430 } 01431 01432 ast_register_atexit(mm_atexit_ast); 01433 }
void* __ast_realloc | ( | void * | ptr, | |
size_t | size, | |||
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 527 of file astmm.c.
References __ast_alloc_region(), __ast_free_region(), ast_mutex_lock, ast_mutex_unlock, astmm_log, FUNC_REALLOC, ast_region::len, MALLOC_FILLER, my_do_crash(), region_find(), and reglock.
Referenced by grow_heap().
00528 { 00529 size_t len; 00530 struct ast_region *found; 00531 void *new_mem; 00532 00533 if (ptr) { 00534 ast_mutex_lock(®lock); 00535 found = region_find(ptr); 00536 if (!found) { 00537 ast_mutex_unlock(®lock); 00538 astmm_log("WARNING: Realloc of unregistered memory %p by %s %s() line %d\n", 00539 ptr, file, func, lineno); 00540 my_do_crash(); 00541 return NULL; 00542 } 00543 len = found->len; 00544 ast_mutex_unlock(®lock); 00545 } else { 00546 found = NULL; 00547 len = 0; 00548 } 00549 00550 if (!size) { 00551 __ast_free_region(ptr, file, lineno, func); 00552 return NULL; 00553 } 00554 00555 new_mem = __ast_alloc_region(size, FUNC_REALLOC, file, lineno, func, 0); 00556 if (new_mem) { 00557 if (found) { 00558 /* Copy the old data to the new malloced memory. */ 00559 if (size <= len) { 00560 memcpy(new_mem, ptr, size); 00561 } else { 00562 memcpy(new_mem, ptr, len); 00563 /* Make sure that the added memory is not zero. */ 00564 memset(new_mem + len, MALLOC_FILLER, size - len); 00565 } 00566 __ast_free_region(ptr, file, lineno, func); 00567 } else { 00568 /* Make sure that the malloced memory is not zero. */ 00569 memset(new_mem, MALLOC_FILLER, size); 00570 } 00571 } 00572 00573 return new_mem; 00574 }
char* __ast_strdup | ( | const char * | s, | |
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 576 of file astmm.c.
References __ast_alloc_region(), and FUNC_STRDUP.
00577 { 00578 size_t len; 00579 void *ptr; 00580 00581 if (!s) 00582 return NULL; 00583 00584 len = strlen(s) + 1; 00585 if ((ptr = __ast_alloc_region(len, FUNC_STRDUP, file, lineno, func, 0))) 00586 strcpy(ptr, s); 00587 00588 return ptr; 00589 }
char* __ast_strndup | ( | const char * | s, | |
size_t | n, | |||
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 591 of file astmm.c.
References __ast_alloc_region(), and FUNC_STRNDUP.
00592 { 00593 size_t len; 00594 char *ptr; 00595 00596 if (!s) { 00597 return NULL; 00598 } 00599 00600 len = strnlen(s, n); 00601 if ((ptr = __ast_alloc_region(len + 1, FUNC_STRNDUP, file, lineno, func, 0))) { 00602 memcpy(ptr, s, len); 00603 ptr[len] = '\0'; 00604 } 00605 00606 return ptr; 00607 }
int __ast_vasprintf | ( | char ** | strp, | |
const char * | format, | |||
va_list | ap, | |||
const char * | file, | |||
int | lineno, | |||
const char * | func | |||
) |
Definition at line 630 of file astmm.c.
References __ast_alloc_region(), and FUNC_VASPRINTF.
00631 { 00632 int size; 00633 va_list ap2; 00634 char s; 00635 00636 *strp = NULL; 00637 va_copy(ap2, ap); 00638 size = vsnprintf(&s, 1, fmt, ap2); 00639 va_end(ap2); 00640 if (!(*strp = __ast_alloc_region(size + 1, FUNC_VASPRINTF, file, lineno, func, 0))) { 00641 va_end(ap); 00642 return -1; 00643 } 00644 vsnprintf(*strp, size + 1, fmt, ap); 00645 00646 return size; 00647 }
void ast_free_ptr | ( | void * | ptr | ) |
Definition at line 180 of file astmm.c.
References ast_free.
Referenced by add_extensions(), ast_extension_state(), ast_extension_state_add_destroy(), ast_merge_contexts_and_delete(), handle_cli_dialplan_add_extension(), load_module(), manage_parked_call(), park_call_full(), parkinglot_activate(), pbx_load_config(), pbx_load_users(), register_exten(), register_peer_exten(), sla_build_station(), and sla_build_trunk().
00181 { 00182 ast_free(ptr); 00183 }
void* ast_std_calloc | ( | size_t | nmemb, | |
size_t | size | |||
) |
Definition at line 165 of file astmm.c.
References calloc.
Referenced by ast_bt_get_symbols().
00166 { 00167 return calloc(nmemb, size); 00168 }
void ast_std_free | ( | void * | ptr | ) |
Definition at line 175 of file astmm.c.
References free.
Referenced by ao2_bt(), ast_backtrace(), ast_bt_get_symbols(), and complete_fn().
00176 { 00177 free(ptr); 00178 }
void* ast_std_malloc | ( | size_t | size | ) |
void* ast_std_realloc | ( | void * | ptr, | |
size_t | size | |||
) |
Definition at line 170 of file astmm.c.
References realloc.
Referenced by ast_bt_get_symbols().
00171 { 00172 return realloc(ptr, size); 00173 }