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

		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

		}

		/**
		 * SASL Authentication should been set up, begin the authentication
		 * process by sending the initial request.
		 *
		 * <p>Make sure that the username and password are set, or the connection is using
		 * anonymous authentication before calling this method.</p>
		 */
		protected function beginAuthentication():void
		{
