Re: [Openh323gk-developer] Re: ACF port
H.323 Gatekeeper for VoIP and videconferencing
Brought to you by:
willamowius
From: Chih-Wei H. <cw...@li...> - 2002-10-14 09:20:33
|
Markus Storm wrote: > Markus Storm wrote: > >>GK A is registered with GK B. >>If GK A sends a ARQ with from a port != 1719 (say: 1234) >>the ACF is sent back to 1234. >>BUT, if B in turn is registered with GK C, then the >>ACF B->A is always sent to the standard port (i.e. 1719). >> >>This causes problems on A. >> >>Can this be easily fixed such that ACF always go to the >>same port that ARQ have come from ? > > I dug a bit deeper but don't know how to best fix it. > > Problem is that rx_port isn't stored before the rasHandler function is > called from within H323RasSrv::Main(). I think it should be passed > as an argument to the rasHandler functions and be stored somewhere, maybe > in the pending ARQ list called from GkClient::SendARQ(). > GkClient::ProcessACF / PendingList::PendingARQ::DoACF build and send > the ACF. They need to retrieve the stored port and send it there. Yes. Indeed I think rx_port is not passed to rasHandler is a problem. Fortunately most of rasHandlers don't depends on rx_port, except OnARQ, as you described. That's why I use the registered rasAddress of that endpoint to reply ACF/ARJ. Therefore, if the endpoint didn't use the registered rasAddress to send ARQ and receive ACF/ARJ, there is a problem. I don't this is a bug or problem in this behavior of the GnuGK. The endpoint *should* use the registered rasAddres to receive the reponse from GK. Shouldn't it? Of course, the GnuGK as an endpoint has no such a problem. It does use the registered rasAddress to send and receive RAS messages. Thus, you should not have such a problem if GK A is the GnuGK. Isn't it? -- ~ Chih-Wei Huang (cw...@li...) 'v' CLDP Project : http://www.linux.org.tw/CLDP/ (Coordinator) // \\ CLE Project : http://cle.linux.org.tw/CLE/ (Developer) /( )\ I18N Project : http://i18n.linux.org.tw/ (Translator) ^`~'^ HomePage : http://www.cwhuang.idv.tw/ |