@@ -36,6 +36,10 @@ cdef extern from "libssh2.h" nogil:
3636 LIBSSH2_CHANNEL_FLUSH_ALL
3737 LIBSSH2_HOSTKEY_HASH_MD5
3838 LIBSSH2_HOSTKEY_HASH_SHA1
39+ LIBSSH2_HOSTKEY_TYPE_UNKNOWN
40+ LIBSSH2_HOSTKEY_TYPE_RSA
41+ LIBSSH2_HOSTKEY_TYPE_DSS
42+
3943 # ctypedef libssh2_uint64_t libssh2_struct_stat_size
4044 ctypedef struct libssh2_struct_stat:
4145 dev_t st_dev
@@ -336,8 +340,14 @@ cdef extern from "libssh2.h" nogil:
336340 unsigned int * dest_len,
337341 const char * src, unsigned int src_len)
338342 const char * libssh2_version(int req_version_num)
339- ctypedef struct libssh2_knownhost:
340- pass
343+
344+ # Known host API
345+ struct libssh2_knownhost:
346+ unsigned int magic
347+ void * node
348+ char * name
349+ char * key
350+ int typemask
341351 LIBSSH2_KNOWNHOSTS * libssh2_knownhost_init(LIBSSH2_SESSION * session)
342352 int libssh2_knownhost_add(LIBSSH2_KNOWNHOSTS * hosts,
343353 const char * host,
@@ -377,6 +387,29 @@ cdef extern from "libssh2.h" nogil:
377387 int libssh2_knownhost_get(LIBSSH2_KNOWNHOSTS * hosts,
378388 libssh2_knownhost ** store,
379389 libssh2_knownhost * prev)
390+ enum :
391+ LIBSSH2_KNOWNHOST_FILE_OPENSSH
392+ LIBSSH2_KNOWNHOST_CHECK_MATCH
393+ LIBSSH2_KNOWNHOST_CHECK_MISMATCH
394+ LIBSSH2_KNOWNHOST_CHECK_NOTFOUND
395+ LIBSSH2_KNOWNHOST_CHECK_FAILURE
396+ LIBSSH2_KNOWNHOST_TYPE_MASK
397+ LIBSSH2_KNOWNHOST_TYPE_PLAIN
398+ LIBSSH2_KNOWNHOST_TYPE_SHA1
399+ LIBSSH2_KNOWNHOST_TYPE_CUSTOM
400+ LIBSSH2_KNOWNHOST_KEYENC_MASK
401+ LIBSSH2_KNOWNHOST_KEYENC_RAW
402+ LIBSSH2_KNOWNHOST_KEYENC_BASE64
403+ LIBSSH2_KNOWNHOST_KEY_MASK
404+ LIBSSH2_KNOWNHOST_KEY_SHIFT
405+ LIBSSH2_KNOWNHOST_KEY_RSA1
406+ LIBSSH2_KNOWNHOST_KEY_SSHRSA
407+ LIBSSH2_KNOWNHOST_KEY_SSHDSS
408+ IF EMBEDDED_LIB:
409+ enum :
410+ LIBSSH2_KNOWNHOST_KEY_UNKNOWN
411+
412+ # Public Key API
380413 struct libssh2_agent_publickey:
381414 unsigned int magic
382415 void * node
0 commit comments