104 for (i = 0; i < len; i++) {
152 struct dlr_entry *dlr = NULL, *ret = NULL;
156 for (i=0; i < len; i++) {
181 for (i=0; i < len; i++) {
void gwlist_append(List *list, void *item)
struct dlr_entry * dlr_entry_duplicate(const struct dlr_entry *dlr)
long gwlist_len(List *list)
void gw_rwlock_destroy(RWLock *lock)
static struct dlr_storage handles
int gw_rwlock_wrlock(RWLock *lock)
void * gwlist_get(List *list, long pos)
static void dlr_mem_flush(void)
static void dlr_mem_add(struct dlr_entry *dlr)
long octstr_search(const Octstr *haystack, const Octstr *needle, long pos)
struct dlr_storage * dlr_init_mem(Cfg *cfg)
int gw_rwlock_rdlock(RWLock *lock)
void gwlist_item_destructor_t(void *item)
static long dlr_mem_messages(void)
void gwlist_delete(List *list, long pos, long count)
static void dlr_mem_shutdown()
int gw_rwlock_unlock(RWLock *lock)
static void dlr_mem_remove(const Octstr *smsc, const Octstr *ts, const Octstr *dst)
long octstr_len(const Octstr *ostr)
void dlr_entry_destroy(struct dlr_entry *dlr)
static int dlr_mem_entry_match(struct dlr_entry *dlr, const Octstr *smsc, const Octstr *ts, const Octstr *dst)
void gw_rwlock_init_static(RWLock *lock)
static List * dlr_waiting_list
static struct dlr_entry * dlr_mem_get(const Octstr *smsc, const Octstr *ts, const Octstr *dst)
int octstr_compare(const Octstr *ostr1, const Octstr *ostr2)
void gwlist_destroy(List *list, gwlist_item_destructor_t *destructor)