4#include <sshpp/config.hpp>
6#include <sshpp/export.hpp>
35 enum class Decision { accept, accept_and_remember, reject };
57 Decision verify(
const Context&)
const override;
64 Decision verify(
const Context&)
const override;
67 std::vector<Fingerprint> pins_;
77 std::function<Decision(
const Context&)> cb_;
Accept everything. Requires the i_understand_this_is_insecure() tag.
Definition host_key_verifier.hpp:54
AcceptAnyHostKeyPolicy(InsecureOptIn)
Definition host_key_verifier.hpp:56
Delegates to a user callback (e.g. a GUI prompt).
Definition host_key_verifier.hpp:71
CallbackHostKeyPolicy(std::function< Decision(const Context &)> cb)
Definition host_key_verifier.hpp:73
Decision verify(const Context &ctx) const override
Definition host_key_verifier.hpp:74
Policy object consulted by Session::verify_host_key(). See docs/design/04 ยง4.6.
Definition host_key_verifier.hpp:25
virtual Decision verify(const Context &) const =0
Decision
Definition host_key_verifier.hpp:35
virtual ~HostKeyVerifier()=default
Pin one or more fingerprints; ignores known_hosts entirely.
Definition host_key_verifier.hpp:61
PinnedHostKeyPolicy(std::vector< Fingerprint > fps)
Definition host_key_verifier.hpp:63
Definition session.hpp:41
Reject anything not already in known_hosts. The only safe default.
Definition host_key_verifier.hpp:42
Accept-and-remember on first use; reject on change (OpenSSH accept-new).
Definition host_key_verifier.hpp:48
const PassphraseCallback * cb
Definition key.ipp:68
InsecureOptIn i_understand_this_is_insecure()
Definition host_key_verifier.hpp:22
KnownHostsStatus
Definition known_hosts.hpp:18
Definition host_key_verifier.hpp:27
KnownHostsStatus status
Definition host_key_verifier.hpp:30
Session & session
Definition host_key_verifier.hpp:33
Fingerprint sha256
Definition host_key_verifier.hpp:32
std::string_view host
Definition host_key_verifier.hpp:28
const Key & presented_key
Definition host_key_verifier.hpp:31
std::uint16_t port
Definition host_key_verifier.hpp:29
Definition host_key_verifier.hpp:21