openHiTLS API openHiTLS 0.1.0-Alpha1
宏定义 | 类型定义 | 枚举
hitls_type.h 文件参考
hitls_type.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

宏定义

#define DTLS_SCTP_SHARED_AUTHKEY_LEN   64
 DTLS SCTP authkey length, which is specified in the protocol and can be used to determine the length when the auth key is set.
 
#define TLS13_KE_MODE_PSK_ONLY   1u
 TLS1.3 key exchange mode: Only PSKs are used for key negotiation.
 
#define TLS13_KE_MODE_PSK_WITH_DHE   2u
 TLS1.3 key exchange mode: Both PSK and (EC)DHE are used for key negotiation.
 
#define TLS13_CERT_AUTH_WITH_DHE   4u
 TLS1.3 certificate authentication: The certificate authentication is used and the (EC)DHE negotiation key is required.
 
#define SSLV2_VERSION_BIT   0x00000001U
 
#define SSLV3_VERSION_BIT   0x00000002U
 
#define TLS10_VERSION_BIT   0x00000004U
 
#define TLS11_VERSION_BIT   0x00000008U
 
#define TLS12_VERSION_BIT   0x00000010U
 
#define TLS13_VERSION_BIT   0x00000020U
 
#define DTLS10_VERSION_BIT   0x80000000U
 
#define DTLS12_VERSION_BIT   0x40000000U
 
#define TLS_VERSION_MASK   (TLS12_VERSION_BIT | TLS13_VERSION_BIT)
 
#define DTLS_VERSION_MASK   DTLS12_VERSION_BIT
 
#define HITLS_MODE_ENABLE_PARTIAL_WRITE   0x00000001U
 
#define HITLS_MODE_ACCEPT_MOVING_WRITE_BUFFER   0x00000002U
 
#define HITLS_MODE_AUTO_RETRY   0x00000004U
 
#define HITLS_MODE_NO_AUTO_CHAIN   0x00000008U
 
#define HITLS_MODE_RELEASE_BUFFERS   0x00000010U
 
#define HITLS_MODE_SEND_CLIENTHELLO_TIME   0x00000020U
 
#define HITLS_MODE_SEND_SERVERHELLO_TIME   0x00000040U
 
#define HITLS_MODE_SEND_FALLBACK_SCSV   0x00000080U
 
#define HITLS_MODE_ASYNC   0x00000100U
 
#define HITLS_MODE_DTLS_SCTP_LABEL_LENGTH_BUG   0x00000400U
 
#define HITLS_SENT_SHUTDOWN   1u
 
#define HITLS_RECEIVED_SHUTDOWN   2u /* Received peer shutdown alert, normal close_notify or fatal error */
 
#define HITLS_NOTHING   1u
 
#define HITLS_WRITING   2u
 
#define HITLS_READING   3u
 
#define HITLS_ASYNC_PAUSED   4u
 
#define HITLS_ASYNC_NO_JOBS   5u
 
#define HITLS_CC_READ   0x001u /* Read state */
 
#define HITLS_CC_WRITE   0x002u /* Write status */
 

类型定义

typedef struct TlsCtx HITLS_Ctx
 HITLS context
 
typedef struct TlsConfig HITLS_Config
 config context
 
typedef struct TlsCipherSuiteInfo HITLS_Cipher
 cipherSuite information
 
typedef struct TlsSessCtx HITLS_Session
 

枚举

enum  HITLS_SESS_CACHE_MODE { HITLS_SESS_CACHE_NO , HITLS_SESS_CACHE_CLIENT , HITLS_SESS_CACHE_SERVER , HITLS_SESS_CACHE_BOTH }
 HITLS_SESS_CACHE_MODE: mode for storing hitls sessions. 更多...
 
enum  HITLS_KeyUpdateRequest { HITLS_UPDATE_NOT_REQUESTED = 0 , HITLS_UPDATE_REQUESTED = 1 , HITLS_KEY_UPDATE_REQ_END = 255 }
 key update message type 更多...
 
enum  HITLS_HandshakeState {
  TLS_IDLE , TLS_CONNECTED , TRY_SEND_HELLO_REQUEST , TRY_SEND_CLIENT_HELLO ,
  TRY_SEND_HELLO_VERIFY_REQUEST , TRY_SEND_HELLO_RETRY_REQUEST , TRY_SEND_SERVER_HELLO , TRY_SEND_ENCRYPTED_EXTENSIONS ,
  TRY_SEND_CERTIFICATE , TRY_SEND_SERVER_KEY_EXCHANGE , TRY_SEND_CERTIFICATE_REQUEST , TRY_SEND_SERVER_HELLO_DONE ,
  TRY_SEND_CLIENT_KEY_EXCHANGE , TRY_SEND_CERTIFICATE_VERIFY , TRY_SEND_NEW_SESSION_TICKET , TRY_SEND_CHANGE_CIPHER_SPEC ,
  TRY_SEND_END_OF_EARLY_DATA , TRY_SEND_FINISH , TRY_RECV_CLIENT_HELLO , TRY_RECV_HELLO_VERIFY_REQUEST ,
  TRY_RECV_SERVER_HELLO , TRY_RECV_ENCRYPTED_EXTENSIONS , TRY_RECV_CERTIFICATE , TRY_RECV_SERVER_KEY_EXCHANGE ,
  TRY_RECV_CERTIFICATE_REQUEST , TRY_RECV_SERVER_HELLO_DONE , TRY_RECV_CLIENT_KEY_EXCHANGE , TRY_RECV_CERTIFICATE_VERIFY ,
  TRY_RECV_NEW_SESSION_TICKET , TRY_RECV_END_OF_EARLY_DATA , TRY_RECV_FINISH , HS_STATE_BUTT = 255
}