#include <sys/types.h>#include <regex.h>#include <string.h>#include <arpa/inet.h>#include "permissions.h"#include "hash.h"#include "../../config.h"#include "../../db/db.h"#include "../../ip_addr.h"#include "../../mem/shm_mem.h"#include "../../parser/msg_parser.h"#include "../../parser/parse_from.h"#include "../../usr_avp.h"#include "../../mod_fix.h"#include "../../ut.h"#include "../../resolve.h"

Go to the source code of this file.
Defines | |
| #define | TABLE_VERSION 3 |
Functions | |
| int | allow_address (struct sip_msg *_msg, char *_addr_group, char *_addr_sp, char *_port_sp) |
| int | allow_source_address (struct sip_msg *_msg, char *_addr_group, char *_str2) |
| int | allow_source_address_group (struct sip_msg *_msg, char *_str1, char *_str2) |
| void | clean_addresses (void) |
| int | init_addresses (void) |
| int | mi_init_addresses (void) |
| int | reload_address_table (void) |
Variables | |
| struct addr_list *** | addr_hash_table |
| struct addr_list ** | addr_hash_table_1 |
| struct addr_list ** | addr_hash_table_2 |
| static db_con_t * | db_handle = 0 |
| static db_func_t | perm_dbf |
| struct subnet ** | subnet_table |
| struct subnet * | subnet_table_1 |
| struct subnet * | subnet_table_2 |
| int allow_address | ( | struct sip_msg * | _msg, | |
| char * | _addr_group, | |||
| char * | _addr_sp, | |||
| char * | _port_sp | |||
| ) |
Definition at line 308 of file address.c.
References ip_addr::addr32, fixup_get_ivalue(), _pv_value::flags, LM_ERR, match_addr_hash_table(), match_subnet_table(), NULL, port, pv_get_spec_value(), PV_VAL_INT, PV_VAL_STR, _pv_value::ri, _pv_value::rs, str2int(), str2ip(), and ip_addr::u.
| int allow_source_address | ( | struct sip_msg * | _msg, | |
| char * | _addr_group, | |||
| char * | _str2 | |||
| ) |
Definition at line 373 of file address.c.
References ip_addr::addr32, fixup_get_ivalue(), LM_DBG, LM_ERR, match_addr_hash_table(), match_subnet_table(), sip_msg::rcv, receive_info::src_ip, receive_info::src_port, and ip_addr::u.
| int allow_source_address_group | ( | struct sip_msg * | _msg, | |
| char * | _str1, | |||
| char * | _str2 | |||
| ) |
Definition at line 401 of file address.c.
References ip_addr::addr32, find_group_in_addr_hash_table(), find_group_in_subnet_table(), group, LM_DBG, sip_msg::rcv, receive_info::src_ip, receive_info::src_port, and ip_addr::u.
| void clean_addresses | ( | void | ) |
Definition at line 292 of file address.c.
References free_addr_hash_table(), free_subnet_table(), and shm_free.
Referenced by mod_exit().
| int init_addresses | ( | void | ) |
Definition at line 175 of file address.c.
References address_table, db_func::close, db_bind_mod(), DB_CAP_QUERY, DB_CAPABILITY, db_check_table_version(), db_url, free_addr_hash_table(), free_subnet_table(), db_func::init, LM_CRIT, LM_ERR, LM_INFO, new_addr_hash_table(), new_subnet_table(), reload_address_table(), _str::s, shm_free, shm_malloc(), and TABLE_VERSION.
Referenced by mod_init().
| int mi_init_addresses | ( | void | ) |
Definition at line 277 of file address.c.
References db_url, db_func::init, LM_ERR, and _str::s.
Referenced by mi_addr_child_init().
| int reload_address_table | ( | void | ) |
Definition at line 64 of file address.c.
References addr_hash_table_insert(), address_table, DB_INT, DB_STRING, empty_addr_hash_table(), empty_subnet_table(), db_func::free_result, grp_col, ip_addr_col, LM_DBG, LM_ERR, mask_col, new_hash_table(), new_subnet_table(), NULL, port_col, db_func::query, RES_ROW_N, RES_ROWS, ROW_N, ROW_VALUES, subnet_table_insert(), db_func::use_table, VAL_INT, VAL_NULL, VAL_STRING, and VAL_TYPE.
Referenced by init_addresses(), and mi_address_reload().
| struct addr_list*** addr_hash_table |
| struct addr_list** addr_hash_table_1 |
| struct addr_list** addr_hash_table_2 |
| struct subnet** subnet_table |
| struct subnet* subnet_table_1 |
| struct subnet* subnet_table_2 |
1.5.6