[h323plus] Using H323+ for Asterisk's chan_h323

Vlasis Hatzistavrou (KTI) vhatz at kinetix.gr
Mon Oct 29 06:43:37 EDT 2007

Hello Simon,

Good news, chan_h323 is now able to use H323Plus!


There is only one small problem, it segfaults whenever the chan_h323.so 
module is unloaded or Asterisk is stopped (in which case the module is 
unloaded again). Otherwise everything is working as expected.

The problem for the segfault, however, is not related to H323. It seems 
that it is related with chan_h323's log stream which is a derivative 
class of PProcess. Apparently the PWLib/PTLib change had an effect on 
this and it segfaults whenever the logstream object is deleted.

I have the feeling that it is related to the timerChangePipe[] array 
which is missing in the newest PWLib versions.

I tried to find some documentation about this array but I couldn't find 
any. I'd be grateful if you could give me some pointers as to where to 
look for relevant information in order to wrap up chan_h323's transition 
to H323Plus.

Best regards,
Vlasis Hatzistavrou
Kinetix Tele.com International Inc.
306 Victoria House,
Victoria, Mahe,
Tel.: +302310556134
Fax: +302310556134 (ext. 0)
GSM: +306977835653
e-mail: vhatz at kinetixtele.com

Postal address:
Monastiriou 9 & Enotikon

Simon Horne wrote:
> Plamen
> GnuGk has been test compiled with h323plus.
> Your error looks strange as it seems to like the code 2 lines above 656
> which is identical . I suggest you look at code to see if you have not
> accidently modified something particularily look at gk_const.h as well as
> RasTbl.cxx:658
> I have fixed the warning message.
> Simon
> -----Original Message-----
> From: Plamen Petkov [mailto:plamen at bg-tel.com]
> Sent: Friday, 26 October 2007 2:57 AM
> To: Simon Horne
> Subject: Re: [h323plus] Using H323+ for Asterisk's chan_h323
> Hello,
> I try to compile Gnugk with H323plus.
> That is the result:
> RasTbl.cxx:658: error: no matching function for call to
> `H460_FeatureOID::Add(const char[2], H460_FeatureContent)'
> /root/openh323/include/h460/h4601.h:969: note: candidates are:
> H460_FeatureParameter& H460_FeatureOID::Add(const PString&,
> H460_FeatureContent&)
> RasTbl.cxx: In member function `void CallTable::OnQosMonitoringReport(const
> PString&, const endptr&, H4609_QosMonitoringReportData&)':
> RasTbl.cxx:2790: warning: unused variable 'addr'
> make[1]: *** [obj_linux_x86_r/RasTbl.o] Error 1
> Regards:
> Plamen
> ----- Original Message -----
> From: "Simon Horne" <s.horne at packetizer.com>
> To: <vhatz at kinetix.gr>; <h323plus at lists.packetizer.com>
> Sent: Thursday, October 25, 2007 6:44 PM
> Subject: Re: [h323plus] Using H323+ for Asterisk's chan_h323
>> Vlasis
>> I am not sure what chan_h323 looks like but there should be no need to
>> have
>> timerChangePipe I think this is a left over from very old code.
>> Have a look at simple in the CVS
>> http://h323plus.cvs.sourceforge.net/h323plus/applications/simple/
>> to see how to define the PProcess
>> Simon
>> -----Original Message-----
>> From: h323plus-bounces at lists.packetizer.com
>> [mailto:h323plus-bounces at lists.packetizer.com]On Behalf Of Vlasis
>> Hatzistavrou (KTI)
>> Sent: Thursday, 25 October 2007 10:36 PM
>> To: h323plus at lists.packetizer.com
>> Subject: [h323plus] Using H323+ for Asterisk's chan_h323
>> Hello all,
>> I have been trying to compile chan_h323 with H323. It seems that I am
>> almost done, although I get the following error:
>> g++ -DNDEBUG -I../../include -include
>> ../../include/asterisk/autoconfig.h -fPIC  -DP_USE_PRAGMA -D_REENTRANT
>> -fno-exceptions  -Wall  -fPIC -DPIC -DNDEBUG
>> -I/Downloads/h323p/ptlib_v1_12_0/include -DPTRACING
>> -I/Downloads/h323p/h323plus/include -Os  -pipe -felide-constructors
>> -Wreorder  -c ast_h323.cxx -o ast_h323.o
>> ast_h323.cxx: In destructor `virtual MyProcess::~MyProcess()':
>> ast_h323.cxx:194: error: `timerChangePipe' was not declared in this scope
>> make[2]: *** [ast_h323.o] Error 1
>> make[1]: *** [h323/libchanh323.a] Error 2
>> make: *** [channels] Error 2
>> I went through the PWLib 1.12.0, and there is no occurrence of
>> "timerChangePipe". In previous versions of PWLib "timerChangePipe" was
>> used in quite a few places in the code.
>> I googled it, but I still don't know what it does.
>> If I comment it out in the destructor MyProcess::~MyProcess() it
>> compiles, but the channel driver segfaults as soon as it is loaded...
>> --
>> Best regards,
>> Vlasis Hatzistavrou.

More information about the h323plus mailing list