#include "../../locking.h"#include "../../str.h"#include "../../parser/parse_from.h"


Go to the source code of this file.
| #define IMC_MEMBER_ADMIN 1<<1 |
Definition at line 41 of file imc_mng.h.
Referenced by imc_handle_invite(), imc_handle_list(), and imc_handle_remove().
| #define IMC_MEMBER_DELETED 1<<3 |
Definition at line 43 of file imc_mng.h.
Referenced by imc_handle_exit(), imc_handle_list(), imc_handle_remove(), and imc_room_broadcast().
| #define IMC_MEMBER_INVITED 1<<2 |
Definition at line 42 of file imc_mng.h.
Referenced by imc_handle_accept(), imc_handle_deny(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), imc_handle_message(), and imc_room_broadcast().
| #define IMC_MEMBER_OWNER 1<<0 |
Definition at line 40 of file imc_mng.h.
Referenced by imc_handle_create(), imc_handle_destroy(), imc_handle_exit(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), and imc_handle_remove().
| #define IMC_MEMBER_SKIP 1<<4 |
Definition at line 44 of file imc_mng.h.
Referenced by imc_handle_list(), imc_handle_message(), and imc_room_broadcast().
| #define IMC_ROOM_DELETED 1<<1 |
Definition at line 58 of file imc_mng.h.
Referenced by imc_handle_accept(), imc_handle_deny(), imc_handle_destroy(), imc_handle_exit(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), imc_handle_message(), and imc_handle_remove().
| #define IMC_ROOM_PRIV 1<<0 |
| typedef struct del_member del_member_t |
| typedef struct _imc_hentry * imc_hentry_p |
| typedef struct _imc_hentry imc_hentry_t |
| typedef struct _imc_member * imc_member_p |
| typedef struct _imc_member imc_member_t |
| typedef struct _imc_room * imc_room_p |
| typedef struct _imc_room imc_room_t |
| imc_member_p imc_add_member | ( | imc_room_p | room, | |
| str * | user, | |||
| str * | domain, | |||
| int | flags | |||
| ) |
add member
Definition at line 291 of file imc_mng.c.
References core_case_hash(), _str::len, LM_DBG, LM_ERR, _imc_room::members, _imc_member::next, _imc_room::nr_of_members, NULL, _imc_member::prev, _str::s, shm_malloc(), and _imc_member::uri.
Referenced by add_from_db(), imc_handle_create(), imc_handle_invite(), and imc_handle_join().
| imc_room_p imc_add_room | ( | str * | name, | |
| str * | domain, | |||
| int | flags | |||
| ) |
add room
Definition at line 115 of file imc_mng.c.
References core_case_hash(), imc_get_hentry, imc_hash_size, _str::len, LM_ERR, lock, NULL, _imc_room::prev, _imc_hentry::rooms, _str::s, shm_malloc(), and _imc_room::uri.
Referenced by add_from_db(), imc_handle_create(), and imc_handle_join().
| int imc_del_member | ( | imc_room_p | room, | |
| str * | user, | |||
| str * | domain | |||
| ) |
delete member
Definition at line 384 of file imc_mng.c.
References core_case_hash(), _imc_member::domain, _imc_member::hashid, _str::len, LM_ERR, _imc_room::members, _imc_member::next, _imc_room::nr_of_members, NULL, _imc_member::prev, _str::s, shm_free, and _imc_member::user.
Referenced by imc_handle_deny(), imc_handle_exit(), imc_handle_remove(), and imc_inv_callback().
delete room
Definition at line 233 of file imc_mng.c.
References core_case_hash(), _imc_room::domain, _imc_room::hashid, imc_get_hentry, imc_hash_size, _str::len, LM_ERR, lock, _imc_room::members, _imc_room::name, _imc_member::next, _imc_room::next, NULL, _imc_room::prev, _imc_hentry::rooms, _str::s, and shm_free.
Referenced by imc_handle_destroy(), imc_handle_exit(), and imc_htable_destroy().
| imc_member_p imc_get_member | ( | imc_room_p | room, | |
| str * | user, | |||
| str * | domain | |||
| ) |
search memeber
Definition at line 351 of file imc_mng.c.
References core_case_hash(), _imc_member::domain, _imc_member::hashid, _str::len, LM_DBG, LM_ERR, _imc_room::members, _imc_member::next, NULL, _str::s, and _imc_member::user.
Referenced by imc_handle_accept(), imc_handle_create(), imc_handle_deny(), imc_handle_destroy(), imc_handle_exit(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), imc_handle_message(), imc_handle_remove(), and imc_inv_callback().
| imc_room_p imc_get_room | ( | str * | name, | |
| str * | domain | |||
| ) |
search room
Definition at line 192 of file imc_mng.c.
References core_case_hash(), _imc_room::domain, _imc_room::hashid, imc_get_hentry, imc_hash_size, _str::len, LM_ERR, lock, _imc_room::name, _imc_room::next, NULL, _imc_hentry::rooms, and _str::s.
Referenced by imc_handle_accept(), imc_handle_create(), imc_handle_deny(), imc_handle_destroy(), imc_handle_exit(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), imc_handle_message(), imc_handle_remove(), imc_inv_callback(), and imc_mi_list_members().
| int imc_htable_destroy | ( | void | ) |
destroy hash table
Definition at line 88 of file imc_mng.c.
References _imc_room::domain, imc_del_room(), imc_hash_size, lock, _imc_room::name, _imc_room::next, NULL, _imc_hentry::rooms, and shm_free.
Referenced by destroy().
| int imc_htable_init | ( | void | ) |
hash thable init
Definition at line 48 of file imc_mng.c.
References imc_hash_size, LM_CRIT, LM_ERR, lock, NULL, shm_free, and shm_malloc().
Referenced by mod_init().
| int imc_release_room | ( | imc_room_p | room | ) |
release room
Definition at line 173 of file imc_mng.c.
References _imc_room::hashid, imc_get_hentry, imc_hash_size, LM_ERR, lock, and NULL.
Referenced by add_from_db(), imc_handle_accept(), imc_handle_create(), imc_handle_deny(), imc_handle_destroy(), imc_handle_exit(), imc_handle_invite(), imc_handle_join(), imc_handle_list(), imc_handle_message(), imc_handle_remove(), imc_inv_callback(), and imc_mi_list_members().
1.5.6