mirror of
				https://github.com/libssh2/libssh2.git
				synced 2025-11-03 22:13:11 +03:00 
			
		
		
		
	host so we now only return pointers to structs instead of having the app allocate a full struct I moved the private struct definition into knownhosts.c instead of exposing it wider in libssh2_priv.h I thus modified the proto for two functions that previously used 'struct libssh2_knownhost *' to receive data.
		
			
				
	
	
		
			58 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\"
 | 
						|
.\" Copyright (c) 2009 by Daniel Stenberg
 | 
						|
.\"
 | 
						|
.TH libssh2_knownhost_check 3 "28 May 2009" "libssh2 1.2" "libssh2 manual"
 | 
						|
.SH NAME
 | 
						|
libssh2_knownhost_check - check a host+key against the list of known hosts
 | 
						|
.SH SYNOPSIS
 | 
						|
#include <libssh2.h>
 | 
						|
 | 
						|
int libssh2_knownhost_check(LIBSSH2_KNOWNHOSTS *hosts,
 | 
						|
                            char *host, char *key, size_t keylen,
 | 
						|
                            int typemask,
 | 
						|
                            struct libssh2_knownhost **knownhost);
 | 
						|
.SH DESCRIPTION
 | 
						|
Checks a host and its associated key against the collection of known hosts,
 | 
						|
and returns info back about the (partially) matched entry.
 | 
						|
 | 
						|
\fIhost\fP 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.
 | 
						|
 | 
						|
\fIkey\fP is a pointer to the key for the given host.
 | 
						|
 | 
						|
\fIkeylen\fP is the total size in bytes of the key pointed to by the \fIkey\fP
 | 
						|
argument
 | 
						|
 | 
						|
\fItypemask\fP 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 LIBSSH2_KNOWNHOST_TYPE_CUSTOM.
 | 
						|
 | 
						|
The key is encoded using one of the following encodings:
 | 
						|
LIBSSH2_KNOWNHOST_KEYENC_RAW or LIBSSH2_KNOWNHOST_KEYENC_BASE64.
 | 
						|
 | 
						|
\fIknownhost\fP 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.
 | 
						|
.SH RETURN VALUE
 | 
						|
\fIlibssh2_knownhost_check(3)\fP 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!
 | 
						|
.SH AVAILABILITY
 | 
						|
Added in libssh2 1.2
 | 
						|
.SH EXAMPLE
 | 
						|
See the ssh2_exec.c example as provided in the tarball.
 | 
						|
.SH SEE ALSO
 | 
						|
.BR libssh2_knownhost_init(3)
 | 
						|
.BR libssh2_knownhost_free(3)
 | 
						|
.BR libssh2_knownhost_add(3)
 |