diff --git a/resources/releasedocs/changelog.html b/resources/releasedocs/changelog.html index e499364da..93b258e2d 100644 --- a/resources/releasedocs/changelog.html +++ b/resources/releasedocs/changelog.html @@ -141,6 +141,17 @@ hr {
+

4.0.6 -- 2014-11-23

+ +

Bug +

+ +

4.0.5 -- 2014-10-22

Bug diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/DNSUtil.java b/smack-core/src/main/java/org/jivesoftware/smack/util/DNSUtil.java index 6e34f9400..fad11d047 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/DNSUtil.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/DNSUtil.java @@ -96,17 +96,13 @@ public class DNSUtil { } /** - * Returns a list of HostAddresses under which the specified XMPP server can be - * reached at for client-to-server communication. A DNS lookup for a SRV - * record in the form "_xmpp-client._tcp.example.com" is attempted, according - * to section 14.4 of RFC 3920. If that lookup fails, a lookup in the older form - * of "_jabber._tcp.example.com" is attempted since servers that implement an - * older version of the protocol may be listed using that notation. If that - * lookup fails as well, it's assumed that the XMPP server lives at the - * host resolved by a DNS lookup at the specified domain on the default port - * of 5222.

- * + * Returns a list of HostAddresses under which the specified XMPP server can be reached at for client-to-server + * communication. A DNS lookup for a SRV record in the form "_xmpp-client._tcp.example.com" is attempted, according + * to section 3.2.1 of RFC 6120. If that lookup fails, it's assumed that the XMPP server lives at the host resolved + * by a DNS lookup at the specified domain on the default port of 5222. + *

* As an example, a lookup for "example.com" may return "im.example.com:5269". + *

* * @param domain the domain. * @return List of HostAddress, which encompasses the hostname and port that the @@ -124,17 +120,13 @@ public class DNSUtil { } /** - * Returns a list of HostAddresses under which the specified XMPP server can be - * reached at for server-to-server communication. A DNS lookup for a SRV - * record in the form "_xmpp-server._tcp.example.com" is attempted, according - * to section 14.4 of RFC 3920. If that lookup fails, a lookup in the older form - * of "_jabber._tcp.example.com" is attempted since servers that implement an - * older version of the protocol may be listed using that notation. If that - * lookup fails as well, it's assumed that the XMPP server lives at the - * host resolved by a DNS lookup at the specified domain on the default port - * of 5269.

- * + * Returns a list of HostAddresses under which the specified XMPP server can be reached at for server-to-server + * communication. A DNS lookup for a SRV record in the form "_xmpp-server._tcp.example.com" is attempted, according + * to section 3.2.1 of RFC 6120. If that lookup fails , it's assumed that the XMPP server lives at the host resolved + * by a DNS lookup at the specified domain on the default port of 5269. + *

* As an example, a lookup for "example.com" may return "im.example.com:5269". + *

* * @param domain the domain. * @return List of HostAddress, which encompasses the hostname and port that the @@ -178,7 +170,8 @@ public class DNSUtil { addresses.addAll(sortedRecords); } catch (Exception e) { - LOGGER.log(Level.WARNING, "Exception while resolving SRV records for " + domain, e); + LOGGER.log(Level.WARNING, "Exception while resovling SRV records for " + domain + + ". Consider adding '_xmpp-(server|client)._tcp' DNS SRV Records", e); } // Step two: Add the hostname to the end of the list diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java index d0937cfdd..c2487e936 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java @@ -678,7 +678,10 @@ public class EntityCapsManager extends Manager { // encoded using Base64 as specified in Section 4 of RFC 4648 // (note: the Base64 output MUST NOT include whitespace and MUST set // padding bits to zero). - byte[] digest = md.digest(sb.toString().getBytes()); + byte[] digest; + synchronized(md) { + digest = md.digest(sb.toString().getBytes()); + } return Base64.encodeToString(digest); }