[Kamailio-Devel] Kamailio SVN HEAD : pv_parse_spec: error searching pvar "mb"

Aurelien Grimaud gstelzz at yahoo.fr
Mon Dec 15 13:02:42 CET 2008


Working for $mb and $mi, but T_branch_idx is not found.
For T_branch_idx, this is not a strcmp issue, but a length comparaison 
with proto.
So I think than length comparaison between pv should be removed too, in 
insertion and in lookup.

Aurelien
Daniel-Constantin Mierla a écrit :
> Hello,
>
> indeed, the insertion and lookup algorithms were slightly different. 
> Please update from svn and let me know if works now. Thanks for 
> reporting and troubleshooting.
>
> Cheers,
> Daniel
>
>
> On 12/15/08 13:09, Aurelien Grimaud wrote:
>> I do not get it at all.
>>
>> pv.so is loaded.
>> kamailio failed to start when using $mb variable.
>> in default route :
>>    xlog("RECEIVING : $mb\n")
>> in default reply route :
>>    xlog("default reply : $mb\n")
>>    xlog("default reply to initial request : $T_req($mb)\n")
>>
>> I added som debug output and tried to access variables stored in same 
>> list as mb. i.e. $cs, $ds, $fs, $mb, ...
>> My config has in its default route :
>>    xlog("$cs $ds $fs $mb") ;
>>
>> When printing out the pvid in pv_lookup_spec_name loop, I ahve the 
>> following :
>> 12/15/2008 10:47:49.020387 [6799] 
>> DBG:core:pvapi.c:334:pv_lookup_spec_name: looking for pvid=28461 in 
>> table[13]
>> 12/15/2008 10:47:49.020392 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=24829 len=2 name='mF' ?
>> 12/15/2008 10:47:49.020469 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=24797 len=2 name='mb' ?
>> 12/15/2008 10:47:49.020479 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=25261 len=2 name='op' ?
>> 12/15/2008 10:47:49.020484 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=26893 len=2 name='ds' ?
>> 12/15/2008 10:47:49.020489 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=27341 len=2 name='fs' ?
>> 12/15/2008 10:47:49.020494 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=28461 
>> len=2 name='cs' got pvid=28461 len=2 name='cs' ?
>> 12/15/2008 10:47:49.020500 [6799] DBG:core:route.c:306:fix_actions: 
>> fixing xlog, line 359
>> 12/15/2008 10:47:49.020505 [6799] 
>> DBG:core:pvapi.c:334:pv_lookup_spec_name: looking for pvid=26893 in 
>> table[13]
>> 12/15/2008 10:47:49.020510 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=26893 
>> len=2 name='ds' got pvid=24829 len=2 name='mF' ?
>> 12/15/2008 10:47:49.020515 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=26893 
>> len=2 name='ds' got pvid=24797 len=2 name='mb' ?
>> 12/15/2008 10:47:49.020519 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=26893 
>> len=2 name='ds' got pvid=25261 len=2 name='op' ?
>> 12/15/2008 10:47:49.020524 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=26893 
>> len=2 name='ds' got pvid=26893 len=2 name='ds' ?
>> 12/15/2008 10:47:49.020529 [6799] DBG:core:route.c:306:fix_actions: 
>> fixing xlog, line 360
>> 12/15/2008 10:47:49.020534 [6799] 
>> DBG:core:pvapi.c:334:pv_lookup_spec_name: looking for pvid=27341 in 
>> table[13]
>> 12/15/2008 10:47:49.020538 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=27341 
>> len=2 name='fs' got pvid=24829 len=2 name='mF' ?
>> 12/15/2008 10:47:49.020542 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=27341 
>> len=2 name='fs' got pvid=24797 len=2 name='mb' ?
>> 12/15/2008 10:47:49.020547 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=27341 
>> len=2 name='fs' got pvid=25261 len=2 name='op' ?
>> 12/15/2008 10:47:49.020552 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=27341 
>> len=2 name='fs' got pvid=26893 len=2 name='ds' ?
>> 12/15/2008 10:47:49.020556 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=27341 
>> len=2 name='fs' got pvid=27341 len=2 name='fs' ?
>> 12/15/2008 10:47:49.020563 [6799] DBG:core:route.c:306:fix_actions: 
>> fixing xlog, line 361
>> 12/15/2008 10:47:49.020568 [6799] 
>> DBG:core:pvapi.c:334:pv_lookup_spec_name: looking for pvid=24797 in 
>> table[13]
>> 12/15/2008 10:47:49.020572 [6799] 
>> DBG:core:pvapi.c:340:pv_lookup_spec_name: looking for pvid=24797 
>> len=2 name='mb' got pvid=24829 len=2 name='mF' ?
>> 12/15/2008 10:47:49.020577 [6799] 
>> ERROR:core:pvapi.c:510:pv_parse_spec: error searching pvar "mb"
>>
>> Is not mb at the wrong place ?
>>
>> There is a problem with mF insertion.
>> It is inserted before mb because strncmp("mF", "mb") returns > 0
>> But the pvids are not in such order so  the pv_lookup_spec_name fails.
>>
>> There is a similar issue with $mi. pvid=24787 inserted after $fn 
>> pvid=27315. (because of strncmp)
>>
>> And maybe with $T_branch_idx inserted after $proto (because of len)
>>
>> Regards.
>> Aurelien
>>
>> Aurelien Grimaud a écrit :
>>> Daniel-Constantin Mierla a écrit :
>>>  
>>>> On 12/12/08 17:22, Aurelien Grimaud wrote:
>>>>   
>>>>> variable $mb is not found on my system using kamailio svn trunk.
>>>>>
>>>>> see attached log.
>>>>> I added some debug logs in pvapi.c
>>>>>
>>>>> Should I fill a bug ?
>>>>>       
>>>> have you missed this update?
>>>> http://www.kamailio.org/mos/view/News/NewsItem/PVandT-API-Updates/
>>>>
>>>> Cheers,
>>>> Daniel
>>>>
>>>>     
>>> You mean pv module must be loaded in order to access $mb.
>>> Well it is ...
>>>
>>> Aurelien
>>>
>>>
>>> _______________________________________________
>>> Devel mailing list
>>> Devel at lists.kamailio.org
>>> http://lists.kamailio.org/cgi-bin/mailman/listinfo/devel
>>>
>>>   
>>
>>
>





More information about the Devel mailing list