modify nullcient to use google talk

enst enst.bupt at gmail.com
Tue Mar 24 03:45:58 EDT 2009


I modified nullclient.c. I want to use google talk account with nullclient.

if(!strcmp(prpl, "prpl-jabber")){
fprintf(stderr, "gtalk\n");
purple_account_set_bool(account, "require_tls", TRUE);
purple_account_set_bool(account, "auth_plain_in_clear", FALSE);
purple_account_set_bool(account, "old-ssl", FALSE);
purple_account_set_bool(account, "check-mail", FALSE);
purple_account_set_int(account, "port", 5222);
purple_account_set_bool(account, "auth_gssapi", TRUE);
purple_account_set_string(account, "server", "gmail.com");
purple_account_set_string(account, "connect_server", "talk.google.com");

}


debug log

libpurple initialized.
0: AIM
1: Gadu-Gadu
2: GroupWise
3: ICQ
4: IRC
5: MSN
6: MySpaceIM
7: QQ
8: SIMPLE
9: XMPP
10: Yahoo
11: Zephyr
Select the protocol [0-11]: 9
Username: bot.mybots at gmail.com
Password:
prpl: prpl-jabber
gtalk
(15:33:32) account: Connecting to account bot.mybots at gmail.com
(15:33:32) prefs: /purple/savedstatus/default changed, scheduling save.
(15:33:32) prefs: /purple/savedstatus/idleaway changed, scheduling save.
(15:33:32) prefs: /purple/savedstatus/isidleaway changed, scheduling save.
(15:33:32) connection: Connecting. gc = 0x8c4cf98
(15:33:32) dns: DNS query for 'talk.google.com' queued
(15:33:32) prefs: /purple/savedstatus/default changed, scheduling save.
(15:33:32) prefs: /purple/savedstatus/isidleaway changed, scheduling save.
(15:33:32) util: Writing file prefs.xml to directory /dev/null
(15:33:32) util: Error creating directory /dev/null: File exists
(15:33:32) dns: Created new DNS child 1565, there are now 1 children.
(15:33:32) dns: Successfully sent DNS request to child 1565
(15:33:32) dns: Got response for 'talk.google.com'
(15:33:32) dnsquery: IP resolved for talk.google.com
(15:33:32) proxy: Attempting connection to 72.14.235.125
(15:33:32) proxy: Connecting to talk.google.com:5222 with no proxy
(15:33:32) proxy: Connection in progress
(15:33:32) proxy: Connected to talk.google.com:5222.
(15:33:32) jabber: Sending: <?xml version='1.0' ?>
(15:33:32) jabber: Sending: <stream:stream to='gmail.com'
xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'
version='1.0'>
(15:33:32) jabber: Recv (348): <stream:stream from="gmail.com"
id="8C317D149877427B" version="1.0"
xmlns:stream="http://etherx.jabber.org/streams"
xmlns="jabber:client"><stream:features><starttls
xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required/></starttls><mechanisms
xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>X-GOOGLE-TOKEN</mechanism></mechanisms></stream:features>
(15:33:32) jabber: Sending: <starttls
xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
(15:33:32) jabber: Recv (50): <proceed
xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>
(15:33:32) gnutls: Starting handshake with talk.google.com
(15:33:32) gnutls: Handshake complete
(15:33:32) gnutls/x509: Key print:
9f:f8:3b:da:2c:a3:12:55:24:d5:b9:d6:fc:49:69:8f:0a:91:d8:cd
(15:33:32) gnutls: Peer provided 1 certs
(15:33:32) gnutls: Lvl 0 SHA1 fingerprint:
9f:f8:3b:da:2c:a3:12:55:24:d5:b9:d6:fc:49:69:8f:0a:91:d8:cd
(15:33:32) gnutls: Serial: 07:3f:92
(15:33:32) gnutls: Cert DN: C=US,ST=California,L=Mountain View,O=Google
Inc.,CN=gmail.com
(15:33:32) gnutls: Cert Issuer DN: C=US,O=Equifax,OU=Equifax Secure
Certificate Authority
(15:33:32) certificate/x509/tls_cached: Starting verify for talk.google.com
(15:33:32) certificate: CertificatePool x509, tls_peers requested but
not found.
(15:33:32) certificate/x509/tls_cached: Couldn't find local peers cache
tls_peers
(15:33:32) gnutls/x509: Certificate for C=US,ST=California,L=Mountain
View,O=Google Inc.,CN=gmail.com claims to be issued by
C=US,O=Equifax,OU=Equifax Secure Certificate Authority, but the
certificate for C=US,ST=California,L=Mountain View,O=Google
Inc.,CN=gmail.com does not match.
(15:33:32) certificate: Checking signature chain for
uid=C=US,ST=California,L=Mountain View,O=Google Inc.,CN=gmail.com
(15:33:32) certificate: ...Singleton. We'll say it's valid.
(15:33:32) certificate/x509/tls_cached: Checking for a CA with
DN=C=US,O=Equifax,OU=Equifax Secure Certificate Authority
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G5.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G5.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/Microsoft_Secure_Server_Authority.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/Microsoft_Secure_Server_Authority.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/Verisign_RSA_Secure_Server_CA.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/Verisign_RSA_Secure_Server_CA.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/GTE_CyberTrust_Global_Root.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/GTE_CyberTrust_Global_Root.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/Microsoft_Internet_Authority.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/Microsoft_Internet_Authority.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/Equifax_Secure_CA.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/Equifax_Secure_CA.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/CAcert_Class3.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/CAcert_Class3.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/StartCom_Free_SSL_CA.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/StartCom_Free_SSL_CA.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/Verisign_Class3_Primary_CA.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/Verisign_Class3_Primary_CA.pem
(15:33:32) gnutls: Attempting to load X.509 certificate from
/usr/local/share/purple/ca-certs/CAcert_Root.pem
(15:33:32) certificate/x509/ca: Loaded
/usr/local/share/purple/ca-certs/CAcert_Root.pem
(15:33:32) certificate/x509/ca: Lazy init completed.
(15:33:32) certificate/x509/tls_cached: Name mismatch: Certificate given
for talk.google.com has a name of gmail.com
(15:33:35) util: Writing file accounts.xml to directory /dev/null
(15:33:35) util: Error creating directory /dev/null: File exists
(15:33:35) util: Writing file blist.xml to directory /dev/null
(15:33:35) util: Error creating directory /dev/null: File exists
(15:33:38) util: Writing file status.xml to directory /dev/null
(15:33:38) util: Error creating directory /dev/null: File exists





More information about the Devel mailing list