< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate-users] resip stack hangs while calling the API parseAllHeaders after upgrading to release 1.9.5


Since parseAllHeaders is being called you must have PEDANTIC_STACK preprocessor flag turned on.

Check out the code in TransactionState.cxx - search for #ifdef PEDANTIC_STACK.  If we fail to parse a SIP message the exception should be caught and we call handleBadRequest which attempts to respond with 400 - assuming there are enough good headers to allow formation of a response.

What do you mean by hanged?  Does it deadlock, trap or tight spin?

Can you create a small test program, similar to resip/test/testSipMessage.cxx that tries to call parseAllHeaders on your invalid SipMessage and can demonstrate the problem?

Thanks,

Scott



On Mon, Apr 21, 2014 at 11:16 AM, alok tiwari <kumartiwarialok@xxxxxxxxxxx> wrote:
Hi,
Resip stack is getting hanged when API  parseAllHeaders() is invoked for an incoming INVITE having following malformed proxy-authorization header.

Proxy-Authorization: Digest =AKAv0-MD5

The thread which is stucked have the following backtrace:


#0  0x08498ad7 in std::bitset<256u>::_Unchecked_test ()
#1  0x08499385 in std::bitset<256u>::test ()
#2  0x084993ad in resip::ParseBuffer::skipToOneOf ()
#3  0x0849802a in resip::Auth::parseAuthParameters ()
#4  0x084983dd in resip::Auth::parse ()
#5  0x084e2d20 in resip::LazyParser::doParse ()
#6  0x08498d13 in resip::LazyParser::checkParsed ()
#7  0x084d2cd0 in resip::ParserContainer<resip::Auth>::parseAll ()
#8  0x08528d2d in resip::SipMessage::parseAllHeaders ()

However, the same scenario is working fine on older resiprocate release 1.6. I analyzed and found some new changes in functions for auth handling.

Kindly help to find some solution for the same.

Regards,
Alok

_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/