[asterisk-dev] Segfault on unloading chan_h323 compiled with ptlib 2.4.2 and h323plus

Alex Villací­s Lasso a_villacis at palosanto.com
Thu Jun 4 11:53:37 CDT 2009


Faidon Liambotis escribió:
> Alex Villací­s Lasso wrote:
>   
>> When the support for h323plus was announced for Asterisk 1.4.25, I tried 
>> to build this support in Asterisk. For this, I checked out the h323plus 
>> CVS from SourceForge, which reported version 1.20.beta5, and also the 
>> ptlib-2.4.2 source RPM from Fedora 10. I finally managed to build a 
>> chan_h323 for Asterisk 1.4.25, which apparently loads correctly, but now 
>> I see that I get a segfault whenever I issue the command "module unload 
>> chan_h323", or "stop gracefully". I have yet to file a bug on either 
>> Asterisk or h323plus because I believe this to be my own error in 
>> configuration, rather than an intrinsic bug in chan_h323. Does anyone 
>> else have chan_h323 running with h323plus? If so, how did you compile 
>> your support? Have you experienced the segfault on shutdown?
>>     
> This quite an old bug, from the openh323 days.
>
> I debugged it as far as I could on
> 	http://bugs.debian.org/438815
> (including a full explanation & test case)
>
> And reported it over to openh323 developers:
> http://sourceforge.net/tracker/index.php?func=detail&aid=1800574&group_id=80674&atid=560612
>   
Yes, it looks like the same bug. By using your program, I get the following:

(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x0000003452b1db9c in ~PFactory (this=<value optimized out>)
    at 
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_tree.h:578
#2  0x00000034521e0b4d in ~FactoryMap (this=<value optimized out>) at 
ptlib/common/object.cxx:73
#3  0x000000399103363e in __cxa_finalize () from /lib64/libc.so.6
#4  0x0000003452132f16 in __do_global_dtors_aux () from 
/usr/lib64/libpt.so.2.4.2
#5  0x0000000000000017 in ?? ()
#6  0x0000003990012369 in _dl_close_worker () from 
/lib64/ld-linux-x86-64.so.2
#7  0x0000000000000000 in ?? ()

Then, what do people do in the meantime when they want H.323 support? Do 
they refrain from reconfiguring their Asterisk?

-- 
perl -e '$x=2.3;printf("%.0f + %.0f = %.0f\n",$x,$x,$x+$x);'




More information about the asterisk-dev mailing list