libsshpp v0.1.7
Modern C++17 wrapper for libssh
Loading...
Searching...
No Matches
sshpp::auth::KeyboardInteractive Class Referencefinal

Full keyboard-interactive loop. More...

#include <auth.hpp>

Inheritance diagram for sshpp::auth::KeyboardInteractive:
[legend]
Collaboration diagram for sshpp::auth::KeyboardInteractive:
[legend]

Classes

struct  Challenge
 
struct  Prompt
 

Public Types

using Handler = std::function< Result< std::vector< SecureString > >(const Challenge &)>
 

Public Member Functions

 KeyboardInteractive (Handler h)
 
std::string_view name () const noexcept override
 
Result< AuthStatusattempt (detail::SessionCore &) const noexcept override
 Performs one full attempt. Must not throw.
 
- Public Member Functions inherited from sshpp::Authenticator
virtual ~Authenticator ()=default
 

Static Public Member Functions

static KeyboardInteractive with_password (SecureString password)
 Answers the first non-echo prompt with the password; the common "PAM password" case.
 

Detailed Description

Full keyboard-interactive loop.

Member Typedef Documentation

◆ Handler

using sshpp::auth::KeyboardInteractive::Handler = std::function<Result<std::vector<SecureString> >(const Challenge&)>

Constructor & Destructor Documentation

◆ KeyboardInteractive()

sshpp::auth::KeyboardInteractive::KeyboardInteractive ( Handler  h)
inlineexplicit

Member Function Documentation

◆ with_password()

SSHPP_INLINE KeyboardInteractive sshpp::auth::KeyboardInteractive::with_password ( SecureString  password)
static

Answers the first non-echo prompt with the password; the common "PAM password" case.

◆ name()

std::string_view sshpp::auth::KeyboardInteractive::name ( ) const
inlineoverridevirtualnoexcept

Implements sshpp::Authenticator.

◆ attempt()

SSHPP_INLINE Result< AuthStatus > sshpp::auth::KeyboardInteractive::attempt ( detail::SessionCore ) const
overridevirtualnoexcept

Performs one full attempt. Must not throw.

Implements sshpp::Authenticator.


The documentation for this class was generated from the following files: