158 if (!callback || callback(key, val, pData)) {
164 for (header = event->headers; header; header = header->
next) {
void * switch_core_hash_find_locked(switch_hash_t *hash, const char *key, switch_mutex_t *mutex)
switch_status_t switch_thread_rwlock_unlock(switch_thread_rwlock_t *rwlock)
switch_status_t switch_core_inthash_init(switch_inthash_t **hash)
switch_status_t switch_core_hash_init_case(switch_hash_t **hash, switch_bool_t case_sensitive)
void * switch_hashtable_search(switch_hashtable_t *h, void *k)
switch_status_t switch_core_hash_destroy(switch_hash_t **hash)
void * switch_core_hash_find_rdlock(switch_hash_t *hash, const char *key, switch_thread_rwlock_t *rwlock)
Representation of an event.
void * switch_core_inthash_find(switch_inthash_t *hash, uint32_t key)
switch_status_t switch_core_hash_insert_locked(switch_hash_t *hash, const char *key, const void *data, switch_mutex_t *mutex)
#define switch_event_create_subclass(_e, _eid, _sn)
void switch_core_hash_this(switch_hash_index_t *hi, const void **key, switch_ssize_t *klen, void **val)
switch_hash_index_t * switch_core_hash_first_iter(switch_hash_t *hash, switch_hash_index_t *hi)
switch_status_t switch_mutex_unlock(switch_mutex_t *lock)
switch_status_t switch_thread_rwlock_rdlock(switch_thread_rwlock_t *rwlock)
switch_status_t switch_core_inthash_destroy(switch_inthash_t **hash)
static int switch_hash_equalkeys_ci(void *k1, void *k2)
switch_status_t switch_thread_rwlock_wrlock(switch_thread_rwlock_t *rwlock)
void * switch_core_hash_delete_wrlock(switch_hash_t *hash, const char *key, switch_thread_rwlock_t *rwlock)
void * switch_core_hash_find(switch_hash_t *hash, const char *key)
void * switch_core_inthash_delete(switch_inthash_t *hash, uint32_t key)
static uint32_t switch_hash_default_ci(void *ky)
switch_status_t switch_mutex_lock(switch_mutex_t *lock)
void switch_core_hash_this_val(switch_hash_index_t *hi, void *val)
switch_hashtable_iterator_t * switch_hashtable_first_iter(switch_hashtable_t *h, switch_hashtable_iterator_t *it)
int switch_hashtable_insert_destructor(switch_hashtable_t *h, void *k, void *v, hashtable_flag_t flags, hashtable_destructor_t destructor)
switch_status_t switch_event_add_header_string(switch_event_t *event, switch_stack_t stack, const char *header_name, const char *data)
Add a string header to an event.
#define switch_zmalloc(ptr, len)
switch_status_t switch_core_inthash_insert(switch_inthash_t *hash, uint32_t key, const void *data)
#define switch_safe_free(it)
Free a pointer and set it to NULL unless it already is NULL.
struct apr_thread_rwlock_t switch_thread_rwlock_t
switch_status_t switch_core_hash_insert_wrlock(switch_hash_t *hash, const char *key, const void *data, switch_thread_rwlock_t *rwlock)
Retrieve data from a given hash.
static uint32_t switch_hash_default_int(void *ky)
void switch_hashtable_this_val(switch_hashtable_iterator_t *i, void *val)
switch_status_t switch_core_hash_delete_multi(switch_hash_t *hash, switch_hash_delete_callback_t callback, void *pData)
struct apr_thread_mutex_t switch_mutex_t
switch_thread_rwlock_t * rwlock
switch_status_t
Common return values.
switch_hashtable_iterator_t * switch_hashtable_next(switch_hashtable_iterator_t **iP)
#define switch_core_hash_insert(_h, _k, _d)
void switch_hashtable_destroy(switch_hashtable_t **h)
void * switch_core_hash_delete_locked(switch_hash_t *hash, const char *key, switch_mutex_t *mutex)
switch_status_t switch_create_hashtable(switch_hashtable_t **hp, unsigned int minsize, unsigned int(*hashfunction)(void *), int(*key_eq_fn)(void *, void *))
switch_status_t switch_core_hash_insert_destructor(switch_hash_t *hash, const char *key, const void *data, hashtable_destructor_t destructor)
void * switch_hashtable_remove(switch_hashtable_t *h, void *k)
static int switch_hash_equalkeys(void *k1, void *k2)
switch_bool_t(* switch_hash_delete_callback_t)(_In_ const void *key, _In_ const void *val, _In_opt_ void *pData)
static uint32_t switch_hash_default(void *ky)
void switch_event_destroy(switch_event_t **event)
Destroy an event.
switch_bool_t switch_core_hash_empty(switch_hash_t *hash)
tells if a hash is empty
void * switch_core_hash_delete(switch_hash_t *hash, const char *key)
#define switch_core_hash_first(_h)
void switch_hashtable_this(switch_hashtable_iterator_t *i, const void **key, switch_ssize_t *klen, void **val)
static int switch_hash_equalkeys_int(void *k1, void *k2)
switch_hash_index_t * switch_core_hash_next(switch_hash_index_t **hi)
void(* hashtable_destructor_t)(void *ptr)