libssh2_knownhost_checkp.3 (2466B)
1.\" 2.\" Copyright (c) 2009-2010 by Daniel Stenberg 3.\" 4.TH libssh2_knownhost_checkp 3 "1 May 2010" "libssh2" "libssh2" 5.SH NAME 6libssh2_knownhost_checkp - check a host+key against the list of known hosts 7.SH SYNOPSIS 8.nf 9#include <libssh2.h> 10 11int 12libssh2_knownhost_checkp(LIBSSH2_KNOWNHOSTS *hosts, 13 const char *host, int port, 14 const char *key, size_t keylen, 15 int typemask, 16 struct libssh2_knownhost **knownhost); 17.fi 18.SH DESCRIPTION 19Checks a host and its associated key against the collection of known hosts, 20and returns info back about the (partially) matched entry. 21 22\fIhost\fP is a pointer the host name in plain text. The host name can be the 23IP numerical address of the host or the full name. 24 25\fIport\fP is the port number used by the host (or a negative number 26to check the generic host). If the port number is given, libssh2 will 27check the key for the specific host + port number combination in 28addition to the plain host name only check. 29 30\fIkey\fP is a pointer to the key for the given host. 31 32\fIkeylen\fP is the total size in bytes of the key pointed to by the \fIkey\fP 33argument 34 35\fItypemask\fP is a bitmask that specifies format and info about the data 36passed to this function. Specifically, it details what format the host name is, 37what format the key is and what key type it is. 38 39The host name is given as one of the following types: 40LIBSSH2_KNOWNHOST_TYPE_PLAIN or LIBSSH2_KNOWNHOST_TYPE_CUSTOM. 41 42The key is encoded using one of the following encodings: 43LIBSSH2_KNOWNHOST_KEYENC_RAW or LIBSSH2_KNOWNHOST_KEYENC_BASE64. 44 45\fIknownhost\fP if set to non-NULL, it must be a pointer to a 'struct 46libssh2_knownhost' pointer that gets filled in to point to info about a known 47host that matches or partially matches. 48.SH RETURN VALUE 49\fIlibssh2_knownhost_check(3)\fP returns info about how well the provided 50host + key pair matched one of the entries in the list of known hosts. 51 52LIBSSH2_KNOWNHOST_CHECK_FAILURE - something prevented the check to be made 53 54LIBSSH2_KNOWNHOST_CHECK_NOTFOUND - no host match was found 55 56LIBSSH2_KNOWNHOST_CHECK_MATCH - hosts and keys match. 57 58LIBSSH2_KNOWNHOST_CHECK_MISMATCH - host was found, but the keys did not match! 59.SH AVAILABILITY 60Added in libssh2 1.2.6 61.SH EXAMPLE 62See the ssh2_exec.c example as provided in the tarball. 63.SH SEE ALSO 64.BR libssh2_knownhost_init(3) 65.BR libssh2_knownhost_free(3) 66.BR libssh2_knownhost_add(3)