I am trying to connect to libvirt on KVM host from a remote python client, using the connection string "qemu+ssh://<IP Address>/system"
If I setup password less SSH (Public key) between the machines, I am able to proceed with the connection. But If I have not setup the public key authentication, my code hangs trying to connect to libvirt, and there is a prompt for entering password in the shell where the code is running.

Is there any way to catch this in an exception and throw an error that public key not setup or password not available? Or is it possible to timeout and abort the request to connect to the host? Whatever timeout variables available online seem to work only for an already active SSH session to timeout.

Any pointers ?