[OpenSIPS-Users] drouting module - dr_gateways table attrs field

ibrahim tunali ibrahimtunali at gmail.com
Thu Jan 22 16:44:18 CET 2009


Hi Bogdan,

I have already set attr avp like you sent. The problem occured when
fill the attr field. If I leave blank attr field in DB it starts but
when i set something like "gw1" it crashed.

My db row;

+------+------+-------------------+-------+------------+-------+-------------+
| gwid | type | address           | strip | pri_prefix | attrs | description |
+------+------+-------------------+-------+------------+-------+-------------+
|    1 |    1 | XX.XX.XXX.XX:XXXX |     0 | NULL       | gw1   | main GW     |
+------+------+-------------------+-------+------------+-------+-------------+

Crash dump;

/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: 6
columns returned from the query
/usr/sbin/opensips[10261]: DBG:core:db_allocate_columns: allocate 48
bytes for result names at 0x76a570
/usr/sbin/opensips[10261]: DBG:core:db_allocate_columns: allocate 24
bytes for result types at 0x76a5b0
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[0] at 0x76a5d8
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a5d8)[0]=[gwid]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_INT result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[1] at 0x76a5f8
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a5f8)[1]=[address]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_STRING result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[2] at 0x76a618
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a618)[2]=[strip]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_INT result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[3] at 0x76a638
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a638)[3]=[pri_prefix]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_STRING result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[4] at 0x76a658
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a658)[4]=[type]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_INT result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: allocate
16 bytes for RES_NAMES[5] at 0x76a678
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns:
RES_NAMES(0x76a678)[5]=[attrs]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_get_columns: use
DB_STRING result type
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_fetch_result:
converting row 0 of 1 count 1
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_convert_row: allocate
192 bytes for row values at 0x76a6b8
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_str2val: converting INT [1]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_str2val: converting
STRING [69.XX.XXX.55:XXXX]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_str2val: converting INT [0]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_str2val: converting INT [1]
/usr/sbin/opensips[10261]: DBG:db_mysql:db_mysql_str2val: converting
STRING [gw1]
/usr/sbin/opensips[10261]: DBG:drouting:dr_load_routing_info: 1
records found in dr_gateways
/usr/sbin/opensips[10261]: DBG:drouting:add_dst: new gw ip addr
[69.XX.XXX.55:XXXX]
/usr/sbin/opensips[10249]: INFO:core:handle_sigs: child process 10261
exited by a signal 11
/usr/sbin/opensips[10267]: DBG:core:init_mod_child: type=CHILD,
rank=4, module=registrar
/usr/sbin/opensips[10249]: INFO:core:handle_sigs: core was not generated
/usr/sbin/opensips[10267]: DBG:core:init_mod_child: type=CHILD,
rank=4, module=group
/usr/sbin/opensips[10249]: INFO:core:handle_sigs: terminating due to SIGCHLD
/usr/sbin/opensips[10267]: INFO:core:sig_usr: signal 15 received
/usr/sbin/opensips[10267]: Memory status (pkg):
/usr/sbin/opensips[10273]: INFO:core:sig_usr: signal 15 received
/usr/sbin/opensips[10273]: Memory status (pkg):
/usr/sbin/opensips[10267]: fm_status (0x72bbe0):

Regards,

Ibrahim TUNALI


On Thu, Jan 22, 2009 at 17:20, Bogdan-Andrei Iancu
<bogdan at voice-system.ro> wrote:
>
> Hi Ibrahim,
>
> have you set the attr avp? Something like:
>   modparam("drouting", "attrs_avp", '$avp(s:dr_attrs)')
>
> Then after do_routing() or use_next_gw(), do :
>  xlog("-----gw attr is $avp(s:dr_attrs)\n");
>
> the value of the attr is whatever you want - the module does not interpret it - it is just reading it from DB and pass it to the AVP when you use the GW. It is your decision what to put there and how to use the value.
>
>
> Regards,
> Bogdan
>
> ibrahim tunali wrote:
>>
>> Hello,
>>
>> I'm playing with the new module drouting on svn trunk and i need to
>> get "which gateway is used on last request". I might be able to get it
>> with "attrs_avp" and "attrs" field on dr_gateways table, i guess. I
>> try some values to attrs but opensips crashed.
>>
>> Could you give an example to use attrs_avp and what is the value
>> format of "attrs" fields.
>>
>> Regards,
>>
>> Ibrahim TUNALI
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>



More information about the Users mailing list