> On July 18, 2014, 10:40 a.m., Mark Michelson wrote:
> > /trunk/include/asterisk/res_pjsip.h, lines 1195-1203
> > <https://reviewboard.asterisk.org/r/3817/diff/2/?file=64713#file64713line1195>
> >
> >     This function isn't necessary. When PJSIP is passed a URI string, PJSIP 
> > will perform URI validation for us and return an error if a badly-formed 
> > URI is passed in.
> 
> Jonathan Rose wrote:
>     I was absolutely getting crashes when using URIs that didn't start with 
> 'sip:' or else were only 'sip:' without anything appended to them.  I'm not 
> sure if that will keep being the case if we use the default endpoint like 
> suggested below, but if it does then I might need to keep this around.
> 
> Jonathan Rose wrote:
>     After testing it with the default outbound endpoint, it was still able to 
> cause crashes. Rats.
> 
> Mark Michelson wrote:
>     Where does the crash occur? Is it in Asterisk's lower-level res_pjsip 
> code, or is it in PJSIP itself? If the crash is in Asterisk, it sounds like 
> there are some assumptions being made in the lower levels that shouldn't be 
> made and those should be fixed there. If the crash is in PJSIP (especially if 
> it's an assertion failure), then that means we do have to do some validation 
> before calling down into PJSIP, but that validation should be left to the 
> core res_pjsip code rather than being the duty of users of the res_pjsip API.
>     
>     If we do need to perform validation of the URI, the implementation has 
> some issues. It's limiting since it only allows for sip: URIs and not, for 
> instance, sips: URIs. It also only checks that the prefix is valid for a sip: 
> URI. It does no other checking of the rest of the URI. A more thorough way of 
> checking validity of the URI is to use pjsip_parse_uri() from PJSIP. If you 
> then want to make sure that the URI is a sip: or sips: URI, you can use the 
> PJSIP_URI_SCHEME_IS_SIP() and PJSIP_URI_SCHEME_IS_SIPS() macros to do so.

Oi, it turned out that adding the outbound endpoint did fix it, I just forgot 
to add the outbound endpoint to the call that actually created the request... I 
only added it the function that sent it.

Update coming shortly.


- Jonathan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3817/#review12744
-----------------------------------------------------------


On July 18, 2014, 1:32 p.m., Jonathan Rose wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3817/
> -----------------------------------------------------------
> 
> (Updated July 18, 2014, 1:32 p.m.)
> 
> 
> Review request for Asterisk Developers, Matt Jordan and Mark Michelson.
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> Example:
> 
> Action: PJSIPNotify
> URI: sip:10.10.10.10
> 
> pjsip send notify uri <type> uri <uri> [uri...]
> 
> 
> Adds the ability to use URIs with the PJSIP notify commands instead of 
> endpoints. These mostly work the same as the endpoint notifications.
> 
> 
> Diffs
> -----
> 
>   /trunk/res/res_pjsip_notify.c 418868 
>   /trunk/res/res_pjsip.c 418868 
>   /trunk/include/asterisk/res_pjsip.h 418868 
> 
> Diff: https://reviewboard.asterisk.org/r/3817/diff/
> 
> 
> Testing
> -------
> 
> Used existing endpoint notification and compared it to similar notifies done 
> against URIs.  The outgoing messages looked the same as far as the details I 
> was concerned with went.
> 
> 
> Thanks,
> 
> Jonathan Rose
> 
>

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to