 		{
 			if ( node.hasOwnProperty("required") )
 			{
-				// No TLS support yet
-				// policy-violation might be more proper condition...
-				dispatchError( "tls-required", "The server requires TLS. Please use XMPPTLSConnection.", "cancel", 501 );
+				// No TLS support in this class
+				dispatchError( "policy-violation", "The server requires TLS. Please use XMPPTLSConnection.", "cancel", 501 );
 				disconnect();
 				return;
 			}
 		}
 
 		/**
-		 * @private
-		 * This fires the standard dispatchError method. need to add the appropriate error code
+		 * This fires the standard dispatchError method
 		 *
 		 * @param	event
 		 */
 		protected function onIOError( event:IOErrorEvent ):void
 		{
-			dispatchError( "service-unavailable", "Service Unavailable", "cancel", 503 );
+			dispatchError( "service-unavailable", "Service Unavailable", "cancel" );
 		}
 
 		/**


		/**
		 * Gets the fully qualified unescaped JID of the user.
		 * A fully-qualified JID includes the resource. A bare JID does not.
		 * To get the bare JID, use the <code>bareJID</code> property of the UnescapedJID.
		 *
		 * @return The fully qualified unescaped JID
		 * @see	org.igniterealtime.xiff.core.UnescapedJID#bareJID

		protected var openingStreamTag:String;

		/**
		 * Depending of the STREAM_TYPE_* used in the <code>connect()</code> method,
		 * this variable will contain a matching closing element for it.
		 * <code>parseDataReceived()</code> method will use this value.
