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 <[EMAIL PROTECTED]> 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 < [EMAIL PROTECTED]> wrote: > > > 0(23560) SIP Request: > > 0(23560) method: <INVITE> > > 0(23560) uri: <sip:[EMAIL PROTECTED]: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:[EMAIL PROTECTED] > > > > I don't see that OpenSER is parsing past the Via: headers > > > > > > On Dec 10, 2007 2:47 PM, Daniel Corbe < [EMAIL PROTECTED] > > > 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 < [EMAIL PROTECTED]> > > > 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 <[EMAIL PROTECTED] > > > > > <mailto:[EMAIL PROTECTED]>> 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 > > > > > > > > > > > > > > > > > > >
_______________________________________________ Devel mailing list Devel@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/devel