/* ****************************************************************************** * INTERPEAK API HEADER FILE * * Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipssh_keyex_dh.h,v $ $Revision: 1.2.18.2 $ * $Source: /home/interpeak/CVSRoot/ipssh/src/ipssh_keyex_dh.h,v $ * $Author: yli10 $ $Date: 2018-06-20 02:32:55 $ * $State: Exp $ $Locker: $ * * INTERPEAK_COPYRIGHT_STRING * Design and implementation by FirstName LastName ****************************************************************************** */ #ifndef IPSSH_KEYEX_DH_H #define IPSSH_KEYEX_DH_H /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** */ /* **************************************************************************** * 2 CONFIGURATION **************************************************************************** */ #include "ipssh_config.h" /* **************************************************************************** * 3 INCLUDE FILES **************************************************************************** */ #include #include #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * 4 DEFINES **************************************************************************** */ /* **************************************************************************** * 5 TYPES **************************************************************************** */ /* **************************************************************************** * 6 FUNCTIONS **************************************************************************** */ IP_GLOBAL DH* ipssh_create_dh_group(Ip_u8 dh_id); IP_GLOBAL Ip_err ipssh_calc_hash(Ipssh_msg_list* msgs, const EVP_MD* (*hash_func)(void), int hash_comps, Ip_u8** hash_value, Ip_u32* hash_len); IP_GLOBAL Ip_err ipssh_rsa_sign(Ipssh_conn* ssh_conn, Ip_u8* data, Ip_u32 data_len, Ipcom_buffer* buf); IP_GLOBAL Ip_err ipssh_dss_sign(Ipssh_conn* ssh_conn, Ip_u8* data, Ip_u32 data_len, Ipcom_buffer* buf); IP_GLOBAL Ip_err ipssh_sign_hash(Ipssh_conn* ssh_conn, Ipcom_buffer* pkt); IP_GLOBAL Ip_err ipssh_verify_signature(EVP_PKEY* srv_key, Ip_u8* data, Ip_u32 data_len, const char* sig_type, Ip_u8* signature, Ip_u32 sign_len); IP_GLOBAL Ip_err ipssh_do_keyex_dh_clt(Ipssh_conn* ssh_conn); IP_GLOBAL Ip_err ipssh_do_keyex_dh_gex_clt(Ipssh_conn* ssh_conn); IP_GLOBAL Ip_err ipssh_dh_priv_key_set_length(Ipssh_conn* ssh_conn); #ifdef __cplusplus } #endif #endif /* **************************************************************************** * END OF FILE **************************************************************************** */