THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#327 - bugs in uac_redirect module
User who did this - Federico Cabiddu (lester)
----------
Hi Daniel,
the problem of the table's name resides in the way the connection ids are created in
db_flatstore.
struct flat_id* new_flat_id(char* dir, char* table)
{
struct flat_id* ptr;
..................
ptr = (struct flat_id*)pkg_malloc(sizeof(struct flat_id));
if (!ptr) {
LM_ERR("no pkg memory left\n");
return 0;
}
memset(ptr, 0, sizeof(struct flat_id));
................
ptr->table.s = table;
ptr->table.len = strlen(table);
return ptr;
}
Here table is the static buffer db_table_name_buf, everytime the buffer is changed all the
tables' name in the pools' ids are changed (but not the length).
As said, this can cause a request to be written to the wrong file.
I think that the table name should be copied into the id instead of assigning the
pointer.
I attach a patch (against master branch), I hope that the code will explain what I mean
better than I do.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=327#comment1…
You are receiving this message because you have requested it from the Flyspray bugtracking
system. If you did not expect this message or don't want to receive mails in future,
you can change your notification settings at the URL shown above.