1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-09-27 18:29:35 +02:00
Smack/smack-core/src/main/java/org/jivesoftware/smack
Florian Schmaus bfc14227ca Propagate stream errors on connect/login to the caller
Before this, if there was a stream error response by the server to our
stream open, that error response would only be handled in the reader
thread, and the user would get a message like:

"org.jivesoftware.smack.SmackException$NoResponseException: No
response received within reply timeout. Timeout was
5000ms (~5s). While waiting for SASL mechanisms stream feature from
server"

while the server may actually sent something like

<stream:stream
  xmlns='jabber:client'
  xmlns:stream='http://etherx.jabber.org/streams'
  id='6785787028201586334'
  from='jabbim.com'
  version='1.0'
  xml:lang='en'>
  <stream:error>
    <policy-violation xmlns='urn:ietf:params:xml:ns:xmpp-streams'>
	</policy-violation>
	<text xml:lang='en' xmlns='urn:ietf:params:xml:ns:xmpp-streams'>
	  Too many (2) failed authentications from this IP
      address (1xx.66.xx.xxx). The address will be unblocked at 04:24:00
      06.01.2017 UTC
    </text>
  </stream:error>
</stream:stream>

It was necessary to change saslFeatureReceived from SmackException to
XMPPException in order to return the StreamErrorException at this sync
point. But this change in return required the introduction of a
tlsHandled sync point for SmackException (which just acts as a wrapper
for the various exception types that could occurn when establishing
TLS). The tlsHandled sync point is marked successful even if no TLS
was established in case none was required and/or if not supported by
the server.
2017-01-07 10:38:41 +01:00
..
compress Add support for XEP-360: Nonzas 2015-07-14 22:43:58 +02:00
compression Add JavadocPackage checkstyle 2015-04-04 17:16:47 +02:00
debugger s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
filter s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
initializer Add JavadocPackage checkstyle 2015-04-04 17:16:47 +02:00
iqrequest Add JavadocPackage checkstyle 2015-04-04 17:16:47 +02:00
packet Add Message.setBody(CharSequence) 2017-01-02 00:47:25 +01:00
parsing Add StandardExtensionElement 2015-10-19 08:21:42 +02:00
provider Bump jxmpp to 0.5.0-alpha5 and change Roster API 2015-06-06 11:16:12 +02:00
proxy Add ParenPad and NoWhitespaceAfter checkstyle rules 2016-11-29 12:01:41 +01:00
sasl Bump JXMPP to 0.5.0 2017-01-02 09:40:46 +01:00
util Minor code improvements in DNSutil 2017-01-06 14:49:12 +01:00
AbstractConnectionClosedListener.java Enable javadoc checkstyle 2015-03-29 12:29:32 +02:00
AbstractConnectionListener.java Add 'resumed' bool ConnectionListener's authenticated() 2015-01-07 21:11:09 +01:00
AbstractXMPPConnection.java Propagate stream errors on connect/login to the caller 2017-01-07 10:38:41 +01:00
ConnectionConfiguration.java Add ConnectionConfiguration.setHostAddress(InetAddress) 2016-12-28 23:18:28 +01:00
ConnectionCreationListener.java Make XMPPConnection an interface 2014-05-28 08:18:41 +02:00
ConnectionListener.java Remove protected getConnectionListeners() 2015-01-10 11:26:10 +01:00
ExceptionCallback.java Add an API to send and wait async for a response 2014-08-16 00:08:53 +02:00
Manager.java Add Manager.getAuthenticatedConnectionOrThrow() 2015-04-09 19:00:03 +02:00
MessageListener.java Enable javadoc checkstyle 2015-03-29 12:29:32 +02:00
package-info.java Add JavadocPackage checkstyle 2015-04-04 17:16:47 +02:00
PacketListener.java Enable javadoc checkstyle 2015-03-29 12:29:32 +02:00
PresenceListener.java Enable javadoc checkstyle 2015-03-29 12:29:32 +02:00
ReconnectionManager.java Add (partial) support for IoT XEPs 2016-07-21 08:51:11 +02:00
SASLAuthentication.java Fix deadline check 2016-12-19 16:29:16 +01:00
SmackConfiguration.java s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
SmackException.java s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
SmackInitialization.java Ads support for SCRAM-SHA-1-PLUS 2016-11-20 19:34:17 +01:00
StanzaCollector.java s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
StanzaListener.java s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
SynchronizationPoint.java Add support for XEP-360: Nonzas 2015-07-14 22:43:58 +02:00
UnparseableStanza.java Improve parsing exception callback. 2015-05-18 12:38:25 +02:00
XMPPConnection.java s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/ 2017-01-03 11:35:04 +01:00
XMPPConnectionRegistry.java 's;^\s+$;;' on all source files 2015-03-17 11:33:02 +01:00
XMPPException.java Improve message of XMPPErrorException 2016-11-29 16:40:08 +01:00