Mercurial > pidgin.yaz
diff libpurple/protocols/jabber/jabber.c @ 22327:dc47e908965f
Use connect server as FQDN for SASL auth except when it is an IP address.
References #699.
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Tue, 26 Feb 2008 13:53:22 +0000 |
parents | 252b96b6a32c |
children | fb54dacfea62 969a2aeae461 |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.c Mon Feb 25 15:24:49 2008 +0000 +++ b/libpurple/protocols/jabber/jabber.c Tue Feb 26 13:53:22 2008 +0000 @@ -564,9 +564,16 @@ jabber_login_callback_ssl, jabber_ssl_connect_failure, js->certificate_CN, js->gc); } -static void jabber_login_connect(JabberStream *js, const char *fqdn, const char *host, int port) +static void jabber_login_connect(JabberStream *js, const char *domain, const char *host, int port) { - js->serverFQDN = g_strdup(fqdn); + /* host should be used in preference to domain to + * allow SASL authentication to work with FQDN of the server, + * but we use domain as fallback for when users enter IP address + * in connect server */ + if (purple_ip_address_is_valid(host)) + js->serverFQDN = g_strdup(domain); + else + js->serverFQDN = g_strdup(host); if (purple_proxy_connect(js->gc, js->gc->account, host, port, jabber_login_callback, js->gc) == NULL)