|
@@ -79,17 +79,6 @@ int reload_address_table(void)
|
|
cols[2] = &mask_col;
|
|
cols[2] = &mask_col;
|
|
cols[3] = &port_col;
|
|
cols[3] = &port_col;
|
|
cols[4] = &tag_col;
|
|
cols[4] = &tag_col;
|
|
-
|
|
|
|
- if (db_handle) {
|
|
|
|
- LM_ERR("db_handle already exists\n");
|
|
|
|
- return -1;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- db_handle = perm_dbf.init(&db_url);
|
|
|
|
- if (!db_handle) {
|
|
|
|
- LM_ERR("unable to connect database\n");
|
|
|
|
- return -1;
|
|
|
|
- }
|
|
|
|
|
|
|
|
if (perm_dbf.use_table(db_handle, &address_table) < 0) {
|
|
if (perm_dbf.use_table(db_handle, &address_table) < 0) {
|
|
LM_ERR("failed to use table\n");
|
|
LM_ERR("failed to use table\n");
|
|
@@ -177,9 +166,6 @@ int reload_address_table(void)
|
|
|
|
|
|
perm_dbf.free_result(db_handle, res);
|
|
perm_dbf.free_result(db_handle, res);
|
|
|
|
|
|
- perm_dbf.close(db_handle);
|
|
|
|
- db_handle = 0;
|
|
|
|
-
|
|
|
|
*addr_hash_table = new_hash_table;
|
|
*addr_hash_table = new_hash_table;
|
|
*subnet_table = new_subnet_table;
|
|
*subnet_table = new_subnet_table;
|
|
|
|
|
|
@@ -222,13 +208,9 @@ int init_addresses(void)
|
|
if(db_check_table_version(&perm_dbf, db_handle, &address_table, TABLE_VERSION) < 0) {
|
|
if(db_check_table_version(&perm_dbf, db_handle, &address_table, TABLE_VERSION) < 0) {
|
|
LM_ERR("error during table version check.\n");
|
|
LM_ERR("error during table version check.\n");
|
|
perm_dbf.close(db_handle);
|
|
perm_dbf.close(db_handle);
|
|
- db_handle = 0;
|
|
|
|
return -1;
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
|
|
- perm_dbf.close(db_handle);
|
|
|
|
- db_handle = 0;
|
|
|
|
-
|
|
|
|
addr_hash_table_1 = new_addr_hash_table();
|
|
addr_hash_table_1 = new_addr_hash_table();
|
|
if (!addr_hash_table_1) return -1;
|
|
if (!addr_hash_table_1) return -1;
|
|
|
|
|
|
@@ -263,6 +245,9 @@ int init_addresses(void)
|
|
goto error;
|
|
goto error;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ perm_dbf.close(db_handle);
|
|
|
|
+ db_handle = 0;
|
|
|
|
+
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
error:
|
|
error:
|
|
@@ -290,6 +275,8 @@ error:
|
|
shm_free(subnet_table);
|
|
shm_free(subnet_table);
|
|
subnet_table = 0;
|
|
subnet_table = 0;
|
|
}
|
|
}
|
|
|
|
+ perm_dbf.close(db_handle);
|
|
|
|
+ db_handle = 0;
|
|
return -1;
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
|