Open
Description
When using SASL authentication, if a kazoo client is disconnected, all future API calls will return NoAuthError on reconnect.
The issue appears to be that the connection object maintains the state of the SASL request in the .sasl_cli attribute, but that is not reset on disconnection. That means that when the reconnection attempt is made, it thinks that the SASL request is already completed, so it is not performed.
I am able to temporarily work around this in my app by setting client._connection.sasl_cli = None
. Perhaps something similar in the connection handling code would address the problem.