[OpenSER-Devel] Crash related to msg parser

Daniel Corbe daniel.junkmail at gmail.com
Tue Dec 11 00:46:21 UTC 2007


I figured it out.
Here's how I fixed it.

THanks.

if (m->to == NULL)

{

LOG(L_ERR, "Whoops!  m->to IS NULL, trying to parse to header\n");

if (parse_headers(m, HDR_TO_F, 0) == -1)

{

LOG(L_ERR, "Error parsing to: header\n");

return(0);

}

}

On Dec 10, 2007 5:09 PM, Daniel Corbe <daniel.junkmail at gmail.com> wrote:

> m->to is always null.  How do I make the SIP parser parse to from a
> module?
> -Daniel
>
>
> On Dec 10, 2007 2:56 PM, Daniel Corbe < daniel.junkmail at gmail.com> wrote:
>
> >  0(23560) SIP Request:
> >  0(23560)  method:  <INVITE>
> >  0(23560)  uri:     <sip:*94310 at 206.71.169.114:5060>
> >  0(23560)  version: <SIP/2.0>
> >  0(23560) parse_headers: flags=2
> >  0(23560) Found param type 232, <branch> =
> > <z9hG4bK8f37cd63a4c9e7ef59e1cf41fbd7f082>; state=6
> >  0(23560) Found param type 235, <rport> = <n/a>; state=17
> >  0(23560) end of header reached, state=5
> >  0(23560) parse_headers: Via found, flags=2
> >  0(23560) parse_headers: this is the first via
> >  0(23560) After parse_msg...
> >  0(23560) preparing to run routing scripts...
> >  0(23560) parse_headers: flags=100
> >  0(23560) DEBUG:maxfwd:is_maxfwd_present: value = 70
> >  0(23560) Processing request to transfer to voicemail!
> >  0(23560) parse_headers: flags=10
> >  0(23560) DEBUG: add_param: tag=96d0ba51039b71ca17b24726268d80a8
> >  0(23560) DEBUG:parse_to:end of header reached, state=29
> >  0(23560) DBUG:parse_to: display={}, ruri={
> > sip:18589520696 at 216.151.143.69}
> >
> > I don't see that OpenSER is parsing past the Via: headers
> >
> >
> > On Dec 10, 2007 2:47 PM, Daniel Corbe < daniel.junkmail at gmail.com >
> > wrote:
> >
> > > After looking a little closer, it's parse_to_uri which is failing.
> > >  not parse_from*
> > > -Daniel
> > >
> > > On Dec 10, 2007 8:02 AM, Bogdan-Andrei Iancu < bogdan at voice-system.ro>
> > > wrote:
> > >
> > > > Hi Daniel,
> > > >
> > > > have you tried to use parse_from_header() to see what result you
> > > > get? do
> > > > you get any err messages?
> > > >
> > > > regards,
> > > > bogdan
> > > >
> > > > Daniel Corbe wrote:
> > > > >
> > > > > Here's a code snippet.  parse_from_uri and parse_to_uri keep
> > > > returning
> > > > > NULL.  :(
> > > > >
> > > > >
> > > > > if ((from = parse_from_uri(m)) == NULL)
> > > > >
> > > > > {
> > > > >
> > > > > LOG(L_ERR, "Could not parse From: header\n" );
> > > > >
> > > > > return( 0);
> > > > >
> > > > > }
> > > > >
> > > > > if ((to = parse_to_uri(m)) == NULL)
> > > > >
> > > > > {
> > > > >
> > > > > LOG(L_ERR, "Could not parse From: header\n" );
> > > > >
> > > > > return( 0);
> > > > >
> > > > > }
> > > > >
> > > > >
> > > > >  0(11384) Processing request PAGE!
> > > > >  0(11384) Could not parse From: header
> > > > >  0(11384) Processing request PAGE!
> > > > >  0(11384) Could not parse From: header
> > > > >  0(11384) Processing request PAGE!
> > > > >  0(11384) Could not parse From: header
> > > > >  0(11384) Processing request PAGE!
> > > > >  0(11384) Could not parse From: header
> > > > >
> > > > > On Dec 7, 2007 1:31 PM, Daniel Corbe <daniel.junkmail at gmail.com
> > > > > <mailto:daniel.junkmail at gmail.com>> wrote:
> > > > >
> > > > >     One of my modules is crashing when receiving an INVITE from a
> > > > >     polycom phone.  It only happens with this particular phone,
> > > > and
> > > > >     I'm not sure why.  I washed it through GDB and I discovered
> > > > that
> > > > >     m->from->name.s points to an invalid address, which leads me
> > > > to
> > > > >     believe the message parser didn't get around to parsing the
> > > > From:
> > > > >     header.
> > > > >
> > > > >     Is this common?  Is there a work around, or a function I can
> > > > call
> > > > >     within my module to ensure that the incoming SIP message has
> > > > been
> > > > >     fully parsed?
> > > > >
> > > > >
> > > > >     Thank you for your assistance.
> > > > >
> > > > >     -Daniel
> > > > >
> > > >
> > > >
> > >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openser.org/pipermail/devel/attachments/20071210/30a25f57/attachment.htm 


More information about the Devel mailing list