diff --git a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java index d65fb0b24..fe82c07f6 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java @@ -294,12 +294,6 @@ public abstract class AbstractXMPPConnection implements XMPPConnection { Thread thread = new Thread(runnable); thread.setName("Smack Cached Executor"); thread.setDaemon(true); - thread.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { - @Override - public void uncaughtException(Thread t, Throwable e) { - LOGGER.log(Level.WARNING, t + " encountered uncaught exception", e); - } - }); return thread; } }); diff --git a/smack-core/src/main/java/org/jivesoftware/smack/ConnectionConfiguration.java b/smack-core/src/main/java/org/jivesoftware/smack/ConnectionConfiguration.java index d14a82d46..7115a2bc3 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/ConnectionConfiguration.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/ConnectionConfiguration.java @@ -1,6 +1,6 @@ /** * - * Copyright 2003-2007 Jive Software, 2017-2019 Florian Schmaus. + * Copyright 2003-2007 Jive Software, 2017-2018 Florian Schmaus. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,8 +25,6 @@ import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.Set; -import java.util.logging.Level; -import java.util.logging.Logger; import javax.net.SocketFactory; import javax.net.ssl.HostnameVerifier; @@ -48,7 +46,6 @@ import org.jxmpp.jid.impl.JidCreate; import org.jxmpp.jid.parts.Resourcepart; import org.jxmpp.stringprep.XmppStringprepException; import org.minidns.dnsname.DnsName; -import org.minidns.dnsname.InvalidDnsNameException; import org.minidns.util.InetAddressUtil; /** @@ -64,8 +61,6 @@ public abstract class ConnectionConfiguration { SmackConfiguration.getVersion(); } - private static final Logger LOGGER = Logger.getLogger(ConnectionConfiguration.class.getName()); - /** * The XMPP domain of the XMPP Service. Usually servers use the same service name as the name * of the server. However, there are some servers like google where host would be @@ -73,8 +68,6 @@ public abstract class ConnectionConfiguration { */ protected final DomainBareJid xmppServiceDomain; - protected final DnsName xmppServiceDomainDnsName; - protected final InetAddress hostAddress; protected final DnsName host; protected final int port; @@ -147,19 +140,6 @@ public abstract class ConnectionConfiguration { if (xmppServiceDomain == null) { throw new IllegalArgumentException("Must define the XMPP domain"); } - - DnsName xmppServiceDomainDnsName; - try { - xmppServiceDomainDnsName = DnsName.from(xmppServiceDomain); - } catch (InvalidDnsNameException e) { - LOGGER.log(Level.INFO, - "Could not transform XMPP service domain '" + xmppServiceDomain - + "' to a DNS name. TLS X.509 certificate validiation may not be possible.", - e); - xmppServiceDomainDnsName = null; - } - this.xmppServiceDomainDnsName = xmppServiceDomainDnsName; - hostAddress = builder.hostAddress; host = builder.host; port = builder.port; @@ -221,17 +201,6 @@ public abstract class ConnectionConfiguration { return xmppServiceDomain; } - /** - * Returns the XMPP service domain as DNS name if possible. Note that since not every XMPP address domainpart is a - * valid DNS name, this method may return null. - * - * @return the XMPP service domain as DNS name or null. - * @since 4.3.4 - */ - public DnsName getXmppServiceDomainAsDnsNameIfPossible() { - return xmppServiceDomainDnsName; - } - /** * Returns the TLS security mode used when making the connection. By default, * the mode is {@link SecurityMode#ifpossible}. diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java index 2ef66949f..b08507ad0 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java @@ -105,7 +105,7 @@ public class XHTMLText { private XHTMLText appendOpenBodyTag(String style, String lang) { text.halfOpenElement(Message.BODY); text.xmlnsAttribute(NAMESPACE); - text.optAttribute(STYLE, style); + text.optElement(STYLE, style); text.xmllangAttribute(lang); text.rightAngleBracket(); return this; diff --git a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java index 0329ef4b1..a08221ddb 100644 --- a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java +++ b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java @@ -141,7 +141,6 @@ import org.jxmpp.jid.impl.JidCreate; import org.jxmpp.jid.parts.Resourcepart; import org.jxmpp.stringprep.XmppStringprepException; import org.jxmpp.util.XmppStringUtils; -import org.minidns.dnsname.DnsName; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; @@ -862,27 +861,8 @@ public class XMPPTCPConnection extends AbstractXMPPConnection { final HostnameVerifier verifier = getConfiguration().getHostnameVerifier(); if (verifier == null) { throw new IllegalStateException("No HostnameVerifier set. Use connectionConfiguration.setHostnameVerifier() to configure."); - } - - final String verifierHostname; - { - DnsName xmppServiceDomainDnsName = getConfiguration().getXmppServiceDomainAsDnsNameIfPossible(); - // Try to convert the XMPP service domain, which potentially includes Unicode characters, into ASCII - // Compatible Encoding (ACE) to match RFC3280 dNSname IA5String constraint. - // See also: https://bugzilla.mozilla.org/show_bug.cgi?id=280839#c1 - if (xmppServiceDomainDnsName != null) { - verifierHostname = xmppServiceDomainDnsName.ace; - } - else { - LOGGER.log(Level.WARNING, "XMPP service domain name '" + getXMPPServiceDomain() - + "' can not be represented as DNS name. TLS X.509 certificate validiation may fail."); - verifierHostname = getXMPPServiceDomain().toString(); - } - } - if (!verifier.verify(verifierHostname, sslSocket.getSession())) { - throw new CertificateException( - "Hostname verification of certificate failed. Certificate does not authenticate " - + getXMPPServiceDomain()); + } else if (!verifier.verify(getXMPPServiceDomain().toString(), sslSocket.getSession())) { + throw new CertificateException("Hostname verification of certificate failed. Certificate does not authenticate " + getXMPPServiceDomain()); } // Set that TLS was successful