 						if ( !loggedIn )
 						{
 							configureAuthMechanisms( feature );
-							beginAuthentication();
+							if ( ( username != null && username.length > 0 ) || useAnonymousLogin )
+							{
+								beginAuthentication();
+							}
 						}
 						break;
 					case "compression":

		public static const STREAM_TYPE_FLASH_TERMINATED:uint = 3;

		/**
		 * The types of SASL mechanisms available.
		 *
		 * <p>By default, only <code>Anonymous</code> and <code>DigestMD5</code> are enabled.</p>
		 * @see org.igniterealtime.xiff.auth.Anonymous

				switch (localName)
				{
					case "starttls":
						if ( !loggedIn )
						{
							handleStreamTLS( feature ); // Checks for 'required'
						}
						break;
					case "register":
						// In-Band Registration, if enabled.... TODO
