[OpenSIPS-Users] [RLS] Cannot found service uri in rls-services

Adrian Georgescu ag at ag-projects.com
Mon Dec 15 19:22:27 CET 2008


I would discourage you do both, but this is my opinion. For some good  
practices on using XCAP see this page:

http://openxcap.org/wiki/Running

Adrian

On Dec 15, 2008, at 6:02 PM, Eric PTAK wrote:

> And what about if we ensure that the RL is on the same host than the  
> rls-services, for example an RLS which is configured like this :
>
> integrated_xcap_server = 0
> xcap_root = http://10.26.52.122/xcap-root:8080
>
> In that circumstance, RLS may handle resource-list tag, check if the  
> host is equal to xcap_root, and then download the RL.
> Do you agree ?
>
> Regards,
> Eric.
>
> 2008/12/15 Adrian Georgescu <ag at ag-projects.com>
>
>>   <service uri="sip:alice at domain;pres-list=Default">
>
> The above should read sip:alice at domain.com
>
>>     <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/ 
>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-list>
>
> I will not allow this document to be stored in the server as this  
> would open Pandera's box of foreign URLs that can be injected in the  
> system. The fact that RFC mentioned that is possible does not mean  
> is sane to do it as  Presence server operator.
>
> Only <one> entries containing individual and valid SIP URIs will be  
> allowed in rls-services document.
>
> Adrian
>
>
> On Dec 15, 2008, at 4:53 PM, Eric PTAK wrote:
>
>> Thanks you Anca and Adrian for your answer.
>> Regading the issue with the parameter in the R-URI, I was asking if  
>> the PS shouldn't use the To header, but I don't find references on   
>> that any more...
>>
>> I'll feed back to Mercuro developers in order to remove parameters  
>> from services URI.
>>
>> Adrian, when you're talking about external XCAP documents, do you  
>> mean the use of resource-list tag in rls-services document ?
>>
>> Eric.
>>
>>
>>
>> 2008/12/15 Adrian Georgescu <ag at ag-projects.com>
>> Hello Eric,
>>
>> To avoid backdoors and possibility of exploiting the Presence  
>> server code by end-user provisioning we will actually add checks in  
>> OpenXCAP server for the actual content of RLS services document so  
>> that it contins only routable sip uris, without any parameters.  
>> Also pointers to external XCAP documents even if they are mentioned  
>> in the RFC will no be allowed in our server as it could generate  
>> endless loops.
>>
>> So I encourage you not to use any SIP Uris different than  
>> user at domain as you will not be able to manipulate them in the next  
>> version.
>>
>> Regards,
>> Adrian
>>
>> On Dec 12, 2008, at 6:13 PM, Eric PTAK wrote:
>>
>>> Hi all,
>>>
>>> I'm currently integrating OpenSIPS with OpenXCAP.
>>> After a lot a problem with ubuntu libraries in order to setup  
>>> openxcap, I'm now facing to another issue with RLS module.
>>> I'm using Mercuro and it subsribes to sip:alice at domain;pres-list=Default 
>>> , but the RLS looks for a service at sip:alice at domain so it  
>>> response by a 404 Not Found error.
>>>
>>> This is the xml files from xcap :
>>>
>>> eptak at rd-srv-devlnx2:~$ xcapclient --app rls-services get
>>> get http://10.26.52.122:8080/xcap-root/rls-services/users/sip:alice@domain/index
>>> etag: "d113935c4c7324c99077a925492251b2"
>>> content-type: application/rls-services+xml
>>> content-length: 467
>>> <?xml version="1.0" encoding="utf-8"?>
>>> <rls-services xmlns:rl="urn:ietf:params:xml:ns:resource-lists"  
>>> xmlns="urn:ietf:params:xml:ns:rls-services">
>>>   <service uri="sip:alice at domain;pres-list=Default">
>>>     <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/ 
>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-list>
>>>     <packages>
>>>       <package>presence</package>
>>>     </packages>
>>>   </service>
>>> </rls-services>
>>>
>>> eptak at rd-srv-devlnx2:~$ xcapclient --app resource-lists get
>>> get http://10.26.52.122:8080/xcap-root/resource-lists/users/sip:alice@domain/index
>>> etag: "e153e7e4688122a04434b77cd1ecb5e1"
>>> content-type: application/resource-lists+xml
>>> content-length: 324
>>> <?xml version="1.0" encoding="utf-8"?>
>>> <resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
>>>   <list name="Default">
>>>     <display-name>All Contacts</display-name>
>>>   <entry uri="sip:bob at domain" xmlns="urn:ietf:params:xml:ns:resource-lists 
>>> ">
>>>   <display-name>bob</display-name>
>>> </entry></list>
>>> </resource-lists>
>>> and this is the stack trace :
>>>
>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> SUBSCRIBE presence from sip:alice at domain to sip:alice at domain;pres-list=Default 
>>>  (Mercuro IMS Client Beta (4.0.1011.0))
>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:presence:search_event: start event= [presence]
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:rls:rls_handle_subscribe: 'To' header ALREADY PARSED: <sip:alice at domain;pres-list=Default 
>>> >
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:rls:get_resource_list: Searched RL document for user sip:alice at domain
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:core:db_new_result: allocate 28 bytes for result set at  
>>> 0x81b52b0
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: 2 columns returned from the query
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:core:db_allocate_columns: allocate 8 bytes for result names at  
>>> 0x81b5af8
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:core:db_allocate_columns: allocate 8 bytes for result types at  
>>> 0x81b5360
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: allocate 8 bytes for  
>>> RES_NAMES[0] at 0x81b5820
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x81b5820)[0]=[doc]
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: use DB_BLOB result type
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: allocate 8 bytes for  
>>> RES_NAMES[1] at 0x81b5838
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x81b5838)[1]=[etag]
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_get_columns: use DB_STRING result type
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_convert_rows: allocate 8 bytes for rows at  
>>> 0x81b5948
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_convert_row: allocate 40 bytes for row  
>>> values at 0x81b5860
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_str2val: converting BLOB [<?xml  
>>> version="1.0" encoding="utf-8"?>^M <rls-services xmlns:rl="urn:ietf:params:xml:ns:resource-lists 
>>> " xmlns="urn:ietf:params:xml:ns:rls-services">^M   <service uri="sip:alice at domain;pres-list=Default 
>>> ">^M     <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/ 
>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource- 
>>> list>^M     <packages>^M       <package>presence</package>^M     </ 
>>> packages>^M   </service>^M </rls-services>]
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:db_mysql:db_mysql_str2val: converting STRING  
>>> [d113935c4c7324c99077a925492251b2]
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:rls:get_resource_list: rls_services document: <?xml  
>>> version="1.0" encoding="utf-8"?>^M <rls-services xmlns:rl="urn:ietf:params:xml:ns:resource-lists 
>>> " xmlns="urn:ietf:params:xml:ns:rls-services">^M   <service uri="sip:alice at domain;pres-list=Default 
>>> ">^M     <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/ 
>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource- 
>>> list>^M     <packages>^M       <package>presence</package>^M     </ 
>>> packages>^M   </service>^M </rls-services>
>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:  
>>> DBG:rls:get_resource_list: service uri sip:alice at domain not found  
>>> in rl document for user sip:alice at domain
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.opensips.org/pipermail/users/attachments/20081215/07a6911c/attachment-0001.htm 


More information about the Users mailing list