You have two choices here:
1) Send <starttls/>. The server will respond with <proceed/>. You then negotiate TLS and restart the XMPP stream. The features advertized then will be SASL plain
2) Connect to 5223 instead. Negotiate TLS right away and then log in as you are w/ old school non-SASL login.
Joe
On 10/24/05, Mukil Kesavan <[EMAIL PROTECTED]> wrote:
I do agree Norman that instead of building something from scratch I can work on improving an existing library. But the "so-called" library that I am working on is going to be very basic and I am writing it purely for my own understanding. Besides, most of the current libraries have many dependancies which I am not so comfortable with.
Somebody please tell me how I can do the TLS/SASL part in order to connect to GoogleTalk... This is the latest XML trace that I get...
SENT:
<?xml version='1.0'?><stream:stream to='gmail.com'
xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams ' version='1.0'>
RECEIVED:
<?xml version="1.0" encoding="UTF-8"?><stream:stream from=" gmail.com"
id="E6B9A3D4" version="1.0"
xmlns:stream="http://etherx.jabber.org/streams"
xmlns="jabber:client"><stream:features><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms
xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>X-GOOGLE-TOKEN</mechanism></mechanisms></stream:features>
SENT:
<iq type='set' id='MyLib0'><query
xmlns='jabber:iq:auth'><username>[EMAIL PROTECTED]</username><password>mypasswd</password><resource>Res1</resource></query></iq>
RECEIVED:
<iq type="error" id="MyLib0"><query
xmlns="jabber:iq:auth"><username>[EMAIL PROTECTED]</username><password>mypasswd</password><resource>Res1</resource></query><error
code="405" type="cancel"><not-allowed
xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">Server
does not support PLAIN</text></error></iq></stream:stream>
Does this mean GoogleTalk ONLY supports X-GOOGLE-TOKEN??? I don't see any advertisement for SASL-PLAIN or MD5 or anything....
How did you guys fix this problem? Can somebody tell me what things should be done after I first receive the reply from google server???
Thanks and awaiting your reply,
- Mukil
