[h323plus] Modifying Q.931 IEs in setup PDU

Paul Chitescu paulc at voip.null.ro
Wed Feb 23 11:30:25 EST 2011

Hello all!

While trying to add code in Yate to set some important parameters - for the 
telephony business - I noticed my changes are overwritten by OpenH323 / 

I reimplemented H323Connection::OnSendSignalSetup() and changed the Q.931 
fields in setupPDU. Unfortunately the following code (in h323.cxx) undoes my 

if (!OnSendSignalSetup(setupPDU))
    return EndedByNoAccept;

  // Do this again (was done when PDU was constructed) in case
  // OnSendSignalSetup() changed something.
  setupPDU.SetQ931Fields(*this, TRUE);

Is there any solid reason why setupPDU.SetQ931Fields(*this, TRUE) is called? 
Its default parameters are overwriting the type, plan, presentation and 
screening of the numbers. I also need to set separate type of number on caller 
and called party numbers.

My plan is to patch OpenH323 / H323Plus to delete the extra SetQ931Fields(). 
Do you see any unintended consequences of such a change?


Paul Chitescu

More information about the h323plus mailing list