[jdev] dialback question

Ben Turner ben.turner at siemens.com
Mon Jul 10 11:24:25 CDT 2006


Hi,

I have a dialback question - I am having an issue performing dialback with googletalk.

* This is the sequence of events; i open a stream [1] to googletalk:

ME->GT
<stream:stream
  xmlns:stream='http://etherx.jabber.org/streams'
  xmlns='jabber:server'
  xmlns:db='jabber:server:dialback'>

GT->ME
<stream:stream
  xmlns:stream='http://etherx.jabber.org/streams'
  xmlns:db='jabber:server:dialback'
  id='C2D2EF0B00D13632'>

ME->GT
<db:result
  to='gmail.com'
  from='jabber.siemens.be'>
  4aa794a86656843ae9a0580497c45a12
</db:result>

* So far so good. At this point in time I am expecting googletalk to open a
  dialback connection to me for verification of the dialback key. However instead,
  googletalk opens a new 'normal' stream [2]:

GT->ME
<stream:stream
  xmlns:stream='http://etherx.jabber.org/streams'
  xmlns:db='jabber:server:dialback'
  id='8B11EEEFE7046D1E'>

ME->GT
<stream:stream xmlns='jabber:server'
  xmlns:stream='http://etherx.jabber.org/streams'
  xmlns:db='jabber:server:dialback'
  id='3437323135393534'>

GT->ME
<db:result xmlns:db='jabber:server:dialback' to='jabber.siemens.be' from='gmail.com'>
  CAESBxDE/vfFxSEaEIxxpRZq+hQWtLd9PTOHyVI=
</db:result>

* At this point I open a new socket to googletalk for verification of the dialback
key. After verification, I close the socket:

ME->GT
<stream:stream
  xmlns='jabber:server'
  mlns:stream='http://etherx.jabber.org/streams'
  xmlns:db='jabber:server:dialback'>

GT->ME
<stream:stream
  xmlns:stream='http://etherx.jabber.org/streams'
  xmlns:db='jabber:server:dialback'
  id='3937C492372878F6'>

ME->GT
<db:verify
  from='jabber.siemens.be'
  to='gmail.com'
  id='3437323135393534'>
  CAESBxDE/vfFxSEaEIxxpRZq+hQWtLd9PTOHyVI=
</db:verify>

GT->ME
<db:verify
  xmlns:db='jabber:server:dialback'
  to='jabber.siemens.be'
  from='gmail.com'
  type='valid'
  id='3437323135393534'/>

ME->GT
</stream>

* I inform stream [2] that dialback was succesful:

ME->GT
<db:result from='jabber.siemens.be' to='gmail.com' type='valid'/>

* And now, to my surprise, instead of having opened a separate dialback
  connection to verify the dialback key, googletalk sends the verification
  stanza on stream [2] after the entire handshake has been completed:

GT->ME
<db:verify
  xmlns:db="jabber:server:dialback"
  to="jabber.siemens.be"
  from="gmail.com"
  id="C2D2EF0B00D13632">
  4aa794a86656843ae9a0580497c45a12
</db:verify>

Note that the verification key is the same as I sent in stream [1].

Is this normal behaviour? Can I not expect a dialback partner to open a new
connection for server dialback? Is this only done in case the receiving server
determines the originating server is the same as the authoritative server?

Thanks a lot,

Ben

-- 
Ben Turner
SIEMENS - COM D MN B
tel: +32 14 252326

~ Scientia Vincere Tenebras ~




More information about the JDev mailing list