Ah, that was simpler than I thought it was going to be!
Got it working now, thanks. Just try each method in turn until one
succeeds, don't abort on the first failure.
On Thu, Feb 4, 2016 at 6:39 PM, Jakob Egger <jakob_at_eggerapps.at> wrote:
> Yes, you just need to do both -> first publickey, which will fail, and
> then password or keyboard-interactive, which will succeed.
> The process is something like this:
> 1) check which auth methods are allowed using libssh2_userauth_list()
> 2) try to authenticate using one of the methods
> 3) if it fails, go back to (1)
> You should probably somehow keep track what you've tried to avoid an
> infinite loop.
> On 04 Feb 2016, at 13:48, Keith Martin <kthmrtn24_at_gmail.com> wrote:
> I'm trying to connect to a SFTP service which requires both
> username/password and public/private key authentication at the same time.
> I can connect using the command line SFTP, for example:
> sftp -o "IdentityFile=keyfile.txt" username_at_server.com
> Connecting to server.com...
> EFT Server Enterprise 126.96.36.199Enter passphrase for key 'keyfile.txt':
> Authenticated with partial success.
> Enter password:
> What I can't figure out is a way within libssh2 to perform both of these
> authentication steps. If I try either libssh2_userauth_publickey_frommemory
> or libssh2_userauth_password both of these return an immediate failure.
> Is there any way within libssh2 to get this form of double authentication?
> libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2016-02-04