Provided by: libssh2-1-dev_1.2.8-2_amd64 bug


       libssh2_knownhost_check - check a host+key against the list of known hosts


       #include <libssh2.h>

       int libssh2_knownhost_check(LIBSSH2_KNOWNHOSTS *hosts,
                                   const char *host,
                                   const char *key, size_t keylen,
                                   int typemask,
                                   struct libssh2_knownhost **knownhost);


       Checks  a  host  and its associated key against the collection of known hosts, and returns
       info back about the (partially) matched entry.

       host is a pointer the host name in plain text. The host  name  can  be  the  IP  numerical
       address of the host or the full name.

       key is a pointer to the key for the given host.

       keylen is the total size in bytes of the key pointed to by the key argument

       typemask  is  a  bitmask  that  specifies  format  and  info about the data passed to this
       function. Specificly, it details what format the host name is, what format the key is  and
       what key type it is.

       The  host  name  is  given  as one of the following types: LIBSSH2_KNOWNHOST_TYPE_PLAIN or

       The key is encoded using one of the following encodings:  LIBSSH2_KNOWNHOST_KEYENC_RAW  or

       knownhost if set to non-NULL, it must be a pointer to a 'struct libssh2_knownhost' pointer
       that gets filled in to point to info about a known host that matches or partially matches.


       libssh2_knownhost_check(3) returns info about how  well  the  provided  host  +  key  pair
       matched one of the entries in the list of known hosts.

       LIBSSH2_KNOWNHOST_CHECK_FAILURE - something prevented the check to be made

       LIBSSH2_KNOWNHOST_CHECK_NOTFOUND - no host match was found

       LIBSSH2_KNOWNHOST_CHECK_MATCH - hosts and keys match.

       LIBSSH2_KNOWNHOST_CHECK_MISMATCH - host was found, but the keys didn't match!


       Added in libssh2 1.2


       See the ssh2_exec.c example as provided in the tarball.


       libssh2_knownhost_init(3) libssh2_knownhost_free(3) libssh2_knownhost_add(3)