Re: Porting the latest gossip to FreeBSD
Martyn Russell <[email protected]> Mon, 04 Aug 2008 00:25:19 +0100
| Newsgroups | gmane.comp.gnome.gossip.devel |
|---|---|
| Message-ID | <[email protected]> |
Joe Marcus Clarke wrote: > On Sun, 2008-08-03 at 21:45 +0100, Martyn Russell wrote: > > Thanks for your reply. :) >>> The NetworkManager error doesn't appear to be fatal, and I get >>> this with 0.28 as well. >> The network manager issue there shouldn't be a problem. But I >> wonder if it is part of the problem? > > I saw it in the working 0.28. FreeBSD doesn't have an NM port yet. OK. >>> Nothing else is different settings-wise between 0.28 and 0.31. >>> I'm using the resource Home, and I am using encryption. I've >>> tried both ports 5222 and 5223. The server is jabber.org. >> Gossip should switch between ports for you. But for old SSL >> authentication, you want to use port 5223. Otherwise port 5222 >> should work. > > It does. 0.26, 0.27, and 0.28 want to use 5223, but 0.29 and 0.31 > want to use 5222. Neither port authenticates successfully in 0.29 > and 0.31. I know that in the past jabber.org hasn't worked for me using the STARTTLS method on port 5222 (the new secure method of authenticating). There are two set ups which should work: Option #1: - Port 5223 - Enable "Force older secure connection method". - Enable "Ignore certificate warnings". - Enable "Use Encryption". Option #2: - Port 5222 - Disable "Force older secure connection method". - Enable "Ignore certificate warnings". - Enable "Use Encryption". >>> Both gossip 0.28 and pidgin can connect with this account and >>> password. Creating a new account in gossip 0.31 also does not >>> work. Any clue as to what the problem may be? Is there any >>> additional troubleshooting I can do? A sniffer isn't helpful as >>> this is all encrypted. >> Hmm, interesting. I can connect to my jabber.org account fine here. >> If you run Gossip with LM_DEBUG=all, does it give you any more >> information? > > Well, it's all hashed, so it doesn't really tell me what it's really > sending: > > *** Socket library initialising... *** Connecting to: jabber.org:5223 > *** SRV lookup disabled for jabber.org Going to connect to > jabber.org:5223 Trying 208.68.163.220 port 5223... Connection success > (2). *** Setting up SSL... *** GNUTLS negotiated compression: DEFLATE So it looks like you are using the older secure connection method (i.e. option #1 from above. > RECV [77]: ----------------------------------- > '<failure xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><not-authorized/></failure>' > ----------------------------------- > *** Read: 77 chars LM-PARSER: > ATTRIBUTE: xmlns = urn:ietf:params:xml:ns:xmpp-sasl > LM-PARSER: Trying to close node: not-authorized > LM-PARSER: Trying to close node: failure > LM-PARSER: Have a new message > *** New message with type="failure" from: unknown > LM-SASL: sasl_failure_cb: > SASL authentication failed: unknown reason > *** SASL authentication failed, > closing connection > *** Disconnecting from: jabber.org:5223 This looks like the password is wrong. The connection is made successfully, the authentication stage just seems to fail. Does authentication work if you don't use encryption? > How can I see what username and password is actually being sent? If you use: export GOSSIP_DEBUG=Jabber You should be able to see this sort of debug when you try to connect: With option #1: Jabber: Refreshing connection details Jabber: Setting connection details for account:'Testing2' Jabber: - ID:'[email protected]' Jabber: - Server:'jabber.org' Jabber: - Port:5223 Jabber: - Using OLD SSL method for connection Jabber: Connecting... Jabber: Untrusted certificate Jabber: Connection open! Jabber: Attempting to use JabberID:'[email protected]' Jabber: Connection logged in! With option #2: Jabber: Refreshing connection details Jabber: Setting connection details for account:'Testing2' Jabber: - ID:'[email protected]' Jabber: - Server:'jabber.org' Jabber: - Port:5222 Jabber: - Using STARTTLS method for connection Jabber: Connecting... Jabber: Connection open! Jabber: Attempting to use JabberID:'[email protected]' Jabber: Untrusted certificate Jabber: Connection logged in! > Where could I add some debug code to print that? You can also use: export GOSSIP_DEBUG=all But there is a lot of debugging there to drown in :) If you want to print the password, try adding a debug line in this file: http://svn.gnome.org/viewvc/gossip/trunk/libgossip/gossip-jabber.c?view=markup In the function _gossip_jabber_set_connection(). Something like: gossip_debug (DEBUG_DOMAIN, "- Password:'%s'", gossip_account_get_password (account)); We don't normally put the password in the log for security reasons. Hope this helps. -- Regards, Martyn