Asterisk - The Open Source Telephony Project
18.5.0
|
Common, private definitions for astobj2. More...
#include "asterisk/astobj2.h"
Go to the source code of this file.
Macros | |
#define | __is_ao2_object(user_data, file, line, func) |
#define | AO2_DEVMODE_STAT(stat) |
#define | is_ao2_object(user_data) __is_ao2_object(user_data, __FILE__, __LINE__, __PRETTY_FUNCTION__) |
Functions | |
enum ao2_lock_req | __adjust_lock (void *user_data, enum ao2_lock_req lock_how, int keep_stronger) |
int | internal_is_ao2_object (void *user_data) |
void | log_bad_ao2 (void *user_data, const char *file, int line, const char *func) |
Common, private definitions for astobj2.
Definition in file astobj2_private.h.
#define __is_ao2_object | ( | user_data, | |
file, | |||
line, | |||
func | |||
) |
Definition at line 49 of file astobj2_private.h.
Referenced by __ao2_container_clone(), __ao2_iterator_next(), __ao2_link(), __ao2_unlink(), hash_ao2_alloc_empty_clone(), internal_ao2_traverse(), and rb_ao2_alloc_empty_clone().
#define AO2_DEVMODE_STAT | ( | stat | ) |
Definition at line 32 of file astobj2_private.h.
Referenced by __ao2_link(), hash_ao2_node_destructor(), rb_delete_fixup(), rb_delete_node(), and rb_insert_fixup().
#define is_ao2_object | ( | user_data | ) | __is_ao2_object(user_data, __FILE__, __LINE__, __PRETTY_FUNCTION__) |
Definition at line 61 of file astobj2_private.h.
Referenced by ao2_container_check(), ao2_container_dump(), ao2_container_stats(), ao2_iterator_restart(), hash_ao2_node_destructor(), and rb_ao2_node_destructor().
enum ao2_lock_req __adjust_lock | ( | void * | user_data, |
enum ao2_lock_req | lock_how, | ||
int | keep_stronger | ||
) |
Definition at line 425 of file astobj2.c.
References __adjust_lock(), AO2_ALLOC_OPT_LOCK_MASK, AO2_ALLOC_OPT_LOCK_MUTEX, AO2_ALLOC_OPT_LOCK_NOLOCK, AO2_ALLOC_OPT_LOCK_OBJ, AO2_ALLOC_OPT_LOCK_RWLOCK, AO2_LOCK_REQ_MUTEX, AO2_LOCK_REQ_RDLOCK, AO2_LOCK_REQ_WRLOCK, ao2_rdlock, ao2_unlock, ao2_wrlock, ast_log, INTERNAL_OBJ, INTERNAL_OBJ_LOCKOBJ, INTERNAL_OBJ_RWLOCK, ao2_lockobj_priv::lock, astobj2_lockobj::lockobj, LOG_ERROR, ao2_rwlock_priv::num_lockers, __priv_data::options, astobj2::priv_data, and astobj2_rwlock::rwlock.
Referenced by __adjust_lock(), __ao2_iterator_next(), __ao2_link(), __ao2_weakproxy_find(), ao2_iterator_restart(), hash_ao2_node_destructor(), internal_ao2_traverse(), and rb_ao2_node_destructor().
int internal_is_ao2_object | ( | void * | user_data | ) |
Definition at line 193 of file astobj2.c.
References INTERNAL_OBJ, and IS_AO2_MAGIC_BAD.
void log_bad_ao2 | ( | void * | user_data, |
const char * | file, | ||
int | line, | ||
const char * | func | ||
) |
Definition at line 206 of file astobj2.c.
References __ast_assert_failed(), INTERNAL_OBJ, __priv_data::magic, and astobj2::priv_data.