[OpenSIPS-Users] bug in SST module ?

Bogdan-Andrei Iancu bogdan at opensips.org
Tue Nov 6 23:03:10 CET 2012


Hi Samuel,

Those values are actually added by ACC module when doing dialog-based 
accounting, not related to SST actually.

I guess the mi_xmlrpc module should escape the non utf8 chars -> I will 
mark this as a bug.

Thanks and Regards,
Bogdan

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com


On 11/06/2012 01:32 PM, Samuel Muller wrote:
> hey back,
>
> I checked only the problem during the state 2 (ringing) of the dialog, sorry.
> For each state of the dialog, there are others variables added by SST,
> and many of them are not well encoded :
>
> i.e., during state 4 (in call) these vars are :
>
> value:: accX_table = acc\nvalue:: accX_flags =>\x06\x88\x08\nvalue::
> accX_aaa = \x12\nvalue:: accX_log = \x12\nvalue:: accX_leg =
> \x02\nvalue:: accX_core = \x06\nvalue:: accX_created = "\xf4\x98P\n
>
> hope it helps,
>
> Samuel MULLER
> +33 663 128 505
> sml at l33.fr
> www.l33.fr
>
>
> On Tue, Nov 6, 2012 at 12:22 PM, Samuel Muller<sml at l33.fr>  wrote:
>> Hello Bogdan,
>>
>> here you can find all you need :
>>
>> http://pastebin.com/DKAu7uHt
>>
>> I can say that this dialog var added by SST (chinese char ???):
>>
>> value:: accX_created = \r\xee\x98P
>>
>> This variable seems to be added too in the ACC, and my Radius server
>> does not understand the value.
>> All my accounting is not working anymore so ... (but with syslog it's ok ?).
>>
>> it happens only if i set the flag in the routing logic (i don't need
>> to unload the module).
>>
>>
>> Regards,
>>
>>
>> Samuel MULLER
>> +33 663 128 505
>> sml at l33.fr
>> www.l33.fr
>>
>>
>> On Mon, Nov 5, 2012 at 7:34 PM, Bogdan-Andrei Iancu<bogdan at opensips.org>  wrote:
>>> Hi Samuel,
>>>
>>> It seems that SST is adding some dialog variables (attached to the dialog)
>>> which are not properly printed when calling the dlg_list_ctx .
>>>
>>> Could you post (on pastebin) and network capture with the HTTP response from
>>> opensips ?
>>>
>>> Regards,
>>>
>>> Bogdan-Andrei Iancu
>>> OpenSIPS Founder and Developer
>>> http://www.opensips-solutions.com
>>>
>>>
>>>
>>> On 11/05/2012 04:00 PM, Samuel Muller wrote:
>>>> Hello,
>>>>
>>>> I would like to submit this problem I found :
>>>>
>>>> I recently set up the SST module (OpenSips v.1.8.1) with these params :
>>>> "
>>>> loadmodule "sst.so"
>>>> modparam("sst","enable_stats",1)
>>>> modparam("sst","min_se",600)
>>>> modparam("sst","sst_interval",0)
>>>> modparam("sst","timeout_avp","$avp(stimeout)")
>>>> modparam("sst","reject_to_small",1)
>>>> modparam("sst","sst_flag",5)
>>>> "
>>>>
>>>> all the params are correct, and the avp is the same as the dialog module.
>>>>
>>>> So I put the flag in the routing logic :
>>>> "
>>>> if (is_method("INVITE")) {
>>>>           setflag(5);         # flag sst for dialog timers
>>>>           create_dialog("B");
>>>> }
>>>> "
>>>>
>>>> Then, everything concerning statistics using XMLRPC and accounting
>>>> (Radius in my way) was not working anymore.
>>>>
>>>> For instance, when i get stats using xmlrpc with python :
>>>>
>>>>>>> import xmlrpclib
>>>>>>> q = xmlrpclib.ServerProxy('http://myproxy.com:8060')
>>>>>>> d = q.dlg_list_ctx()
>>>> Traceback (most recent call last):
>>>>     File "<console>", line 1, in<module>
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 1199, in __call__
>>>>       return self.__send(self.__name, args)
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 1489, in __request
>>>>       verbose=self.__verbose
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 1253, in request
>>>>       return self._parse_response(h.getfile(), sock)
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 1387, in _parse_response
>>>>       p.feed(response)
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 868, in end
>>>>       return f(self, join(self._data, ""))
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 916, in end_string
>>>>       data = _decode(data, self._encoding)
>>>>     File "/usr/lib/python2.6/xmlrpclib.py", line 164, in _decode
>>>>       data = unicode(data, encoding)
>>>>     File "/usr/lib/python2.6/encodings/utf_8.py", line 16, in decode
>>>>       return codecs.utf_8_decode(input, errors, True)
>>>> UnicodeDecodeError: 'utf8' codec can't decode byte 0xb8 in position
>>>> 542: invalid start byte
>>>>
>>>> I found this strangely similar:
>>>> http://www.mail-archive.com/users@lists.opensips.org/msg18444.html
>>>>
>>>> And yes, this is this var : accX_... who is responsible of the problem
>>>> - OpenSips does not crash.
>>>>
>>>>
>>>> Hope you can find something there ...
>>>>
>>>>
>>>> Samuel MULLER
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>



More information about the Users mailing list