Bug when parsing SIP msg with optimization options

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

if I build pjproject-2.3 this way:

$ ./configure
$ make dep
$ make clean
$ make

when parsing an erroneous message i.e in From header using 
pjsip_parse_msg function I get NULL as result, and some points in error 
list.


if I build the pjproject-2.3 this other way

$ CFLAGS=-g ./configure
$ make dep
$ make clean
$ make

when parsing same error message with wrong From header it returns a non 
NULL result, with everything OK but From header, and an error list with 
clues.

I assume this second behavior is the correct one.


Trying to debug this, in sip_parser.c in function:

static pjsip_msg *int_parse_msg( pjsip_parse_ctx *ctx,
                  pjsip_parser_err_report *err_list)

I find the problem occurs after an exception variable  pj_bool_t 
parsing_headers;  does not return the right value.

It seems to me when optimization parsing_headers variable is stored in a 
register and then not recovered right after longjmp.


Then I have tried to set this variable as "volatile" but then I get 
segfaults.


Can anyone solve this bug, or point me with some clues?


Thanks,
Vicente.



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux