gwenhywfar
4.3.3
|
#include "syncio_tls_p.h"
#include "i18n_l.h"
#include <gwenhywfar/misc.h>
#include <gwenhywfar/debug.h>
#include <gwenhywfar/gui.h>
#include <gwenhywfar/pathmanager.h>
#include <gwenhywfar/directory.h>
#include <gwenhywfar/gwenhywfar.h>
#include <gwenhywfar/text.h>
#include <assert.h>
#include <errno.h>
#include <string.h>
#include <gnutls/gnutls.h>
#include <gnutls/x509.h>
Go to the source code of this file.
Macros | |
#define | DISABLE_DEBUGLOG |
#define DISABLE_DEBUGLOG |
Definition at line 29 of file syncio_tls.c.
int GWEN_SyncIo_Tls__readFile | ( | const char * | fname, |
GWEN_BUFFER * | buf | ||
) |
Definition at line 228 of file syncio_tls.c.
References DBG_INFO, GWEN_Buffer_AdjustUsedBytes(), GWEN_Buffer_AllocRoom(), GWEN_Buffer_GetPosPointer(), GWEN_Buffer_IncrementPos(), GWEN_ERROR_IO, GWEN_LOGDOMAIN, and NULL.
Referenced by GWEN_SyncIo_Tls_Prepare().
int GWENHYWFAR_CB GWEN_SyncIo_Tls_Connect | ( | GWEN_SYNCIO * | sio | ) |
Definition at line 872 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, GWEN_ERROR_NOT_CONNECTED, GWEN_ERROR_SSL, GWEN_ERROR_SSL_SECURITY, GWEN_Gui_CheckCert(), GWEN_Gui_ProgressLog(), GWEN_Gui_ProgressLog2(), GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_LoggerLevel_Error, GWEN_SyncIo_AddFlags(), GWEN_SyncIo_Connect(), GWEN_SyncIo_Disconnect(), GWEN_SYNCIO_FLAGS_PASSIVE, GWEN_SyncIo_GetBaseIo(), GWEN_SyncIo_GetFlags(), GWEN_SyncIo_GetStatus(), GWEN_SyncIo_SetStatus(), GWEN_SyncIo_Status_Connected, GWEN_SyncIo_Status_Disconnected, GWEN_SyncIo_SubFlags(), GWEN_SYNCIO_TLS_FLAGS_NEED_PEER_CERT, GWEN_SYNCIO_TLS_FLAGS_SECURE, GWEN_SyncIo_Tls_GetPeerCert(), GWEN_SyncIo_Tls_Prepare(), GWEN_SyncIo_Tls_UndoPrepare(), and I18N.
Referenced by GWEN_SyncIo_Tls_new().
int GWENHYWFAR_CB GWEN_SyncIo_Tls_Disconnect | ( | GWEN_SYNCIO * | sio | ) |
Definition at line 975 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, GWEN_ERROR_NOT_CONNECTED, GWEN_ERROR_SSL, GWEN_Gui_ProgressLog2(), GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_LoggerLevel_Info, GWEN_SyncIo_Disconnect(), GWEN_SyncIo_GetBaseIo(), GWEN_SyncIo_GetStatus(), GWEN_SyncIo_SetStatus(), GWEN_SyncIo_Status_Connected, GWEN_SyncIo_Status_Disconnected, GWEN_SyncIo_Tls_UndoPrepare(), and I18N.
Referenced by GWEN_SyncIo_Tls_new().
void GWENHYWFAR_CB GWEN_SyncIo_Tls_FreeData | ( | void * | bp, |
void * | p | ||
) |
Definition at line 77 of file syncio_tls.c.
References GWEN_FREE_OBJECT.
Referenced by GWEN_SyncIo_Tls_new().
const char* GWEN_SyncIo_Tls_GetDhParamFile | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 164 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
const char* GWEN_SyncIo_Tls_GetLocalCertFile | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 86 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
const char* GWEN_SyncIo_Tls_GetLocalKeyFile | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 112 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
const char* GWEN_SyncIo_Tls_GetLocalTrustFile | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 138 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
int GWEN_SyncIo_Tls_GetPeerCert | ( | GWEN_SYNCIO * | sio | ) |
Definition at line 499 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, DBG_WARN, GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_ERROR_GENERIC, GWEN_ERROR_NO_DATA, GWEN_ERROR_SSL_SECURITY, GWEN_Gui_ProgressLog(), GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_LoggerLevel_Warning, GWEN_SSL_CERT_FLAGS_BAD_DATA, GWEN_SSL_CERT_FLAGS_BAD_HOSTNAME, GWEN_SSL_CERT_FLAGS_EXPIRED, GWEN_SSL_CERT_FLAGS_INVALID, GWEN_SSL_CERT_FLAGS_NOT_ACTIVE, GWEN_SSL_CERT_FLAGS_OK, GWEN_SSL_CERT_FLAGS_REVOKED, GWEN_SSL_CERT_FLAGS_SIGNER_NOT_FOUND, GWEN_SSL_CERT_FLAGS_SYSTEM, GWEN_SslCertDescr_free(), GWEN_SslCertDescr_new(), GWEN_SslCertDescr_SetCommonName(), GWEN_SslCertDescr_SetCountryName(), GWEN_SslCertDescr_SetFingerPrint(), GWEN_SslCertDescr_SetIsError(), GWEN_SslCertDescr_SetLocalityName(), GWEN_SslCertDescr_SetNotAfter(), GWEN_SslCertDescr_SetNotBefore(), GWEN_SslCertDescr_SetOrganizationalUnitName(), GWEN_SslCertDescr_SetOrganizationName(), GWEN_SslCertDescr_SetStateOrProvinceName(), GWEN_SslCertDescr_SetStatusFlags(), GWEN_SslCertDescr_SetStatusText(), GWEN_SyncIo_GetFlags(), GWEN_SYNCIO_TLS_FLAGS_ALLOW_V1_CA_CRT, GWEN_Text_ToHexBuffer(), GWEN_Time_free(), GWEN_Time_fromSeconds(), I18N, and NULL.
Referenced by GWEN_SyncIo_Tls_Connect().
GWEN_SSLCERTDESCR* GWEN_SyncIo_Tls_GetPeerCertDescr | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 216 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
const char* GWEN_SyncIo_Tls_GetRemoteHostName | ( | const GWEN_SYNCIO * | sio | ) |
Definition at line 190 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
GWEN_SYNCIO* GWEN_SyncIo_Tls_new | ( | GWEN_SYNCIO * | baseIo | ) |
Definition at line 58 of file syncio_tls.c.
References GWEN_INHERIT_SETDATA, GWEN_NEW_OBJECT, GWEN_SyncIo_new(), GWEN_SyncIo_SetConnectFn(), GWEN_SyncIo_SetDisconnectFn(), GWEN_SyncIo_SetReadFn(), GWEN_SyncIo_SetWriteFn(), GWEN_SyncIo_Tls_Connect(), GWEN_SyncIo_Tls_Disconnect(), GWEN_SyncIo_Tls_FreeData(), GWEN_SyncIo_Tls_Read(), GWEN_SYNCIO_TLS_TYPE, and GWEN_SyncIo_Tls_Write().
Referenced by GWEN_Gui_Internal_GetSyncIo().
int GWEN_SyncIo_Tls_Prepare | ( | GWEN_SYNCIO * | sio | ) |
Definition at line 258 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, DBG_WARN, GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_Directory_FindFileInPaths(), GWEN_ERROR_GENERIC, GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_PathManager_GetPaths(), GWEN_PM_DATADIR, GWEN_PM_LIBNAME, GWEN_StringList_AppendString(), GWEN_StringList_free(), GWEN_StringList_new(), GWEN_SYNCIO_FLAGS_PASSIVE, GWEN_SyncIo_GetFlags(), GWEN_SyncIo_Tls__readFile(), GWEN_SYNCIO_TLS_FLAGS_ADD_TRUSTED_CAS, GWEN_SYNCIO_TLS_FLAGS_FORCE_SSL_V3, GWEN_SYNCIO_TLS_FLAGS_REQUEST_CERT, GWEN_SyncIo_Tls_Pull(), GWEN_SyncIo_Tls_Push(), GWEN_SyncIo_Tls_SetLocalTrustFile(), and NULL.
Referenced by GWEN_SyncIo_Tls_Connect().
ssize_t GWEN_SyncIo_Tls_Pull | ( | gnutls_transport_ptr_t | p, |
void * | buf, | ||
size_t | len | ||
) |
Definition at line 802 of file syncio_tls.c.
References DBG_INFO, DBG_VERBOUS, GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_SyncIo_GetBaseIo(), and GWEN_SyncIo_Read().
Referenced by GWEN_SyncIo_Tls_Prepare().
ssize_t GWEN_SyncIo_Tls_Push | ( | gnutls_transport_ptr_t | p, |
const void * | buf, | ||
size_t | len | ||
) |
Definition at line 838 of file syncio_tls.c.
References DBG_INFO, DBG_VERBOUS, GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_SyncIo_GetBaseIo(), and GWEN_SyncIo_Write().
Referenced by GWEN_SyncIo_Tls_Prepare().
int GWENHYWFAR_CB GWEN_SyncIo_Tls_Read | ( | GWEN_SYNCIO * | sio, |
uint8_t * | buffer, | ||
uint32_t | size | ||
) |
Definition at line 1019 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, GWEN_ERROR_NOT_CONNECTED, GWEN_ERROR_SSL, GWEN_Gui_ProgressLog2(), GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_LoggerLevel_Error, GWEN_SyncIo_Disconnect(), GWEN_SyncIo_GetBaseIo(), GWEN_SyncIo_GetStatus(), GWEN_SyncIo_SetStatus(), GWEN_SyncIo_Status_Connected, GWEN_SyncIo_Status_Disconnected, GWEN_SyncIo_Tls_UndoPrepare(), GWEN_Text_DumpString(), and I18N.
Referenced by GWEN_SyncIo_Tls_new().
void GWEN_SyncIo_Tls_SetDhParamFile | ( | GWEN_SYNCIO * | sio, |
const char * | s | ||
) |
Definition at line 176 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA, and NULL.
void GWEN_SyncIo_Tls_SetLocalCertFile | ( | GWEN_SYNCIO * | sio, |
const char * | s | ||
) |
Definition at line 98 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA, and NULL.
void GWEN_SyncIo_Tls_SetLocalKeyFile | ( | GWEN_SYNCIO * | sio, |
const char * | s | ||
) |
Definition at line 124 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA, and NULL.
void GWEN_SyncIo_Tls_SetLocalTrustFile | ( | GWEN_SYNCIO * | sio, |
const char * | s | ||
) |
Definition at line 150 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA, and NULL.
Referenced by GWEN_SyncIo_Tls_Prepare().
void GWEN_SyncIo_Tls_SetRemoteHostName | ( | GWEN_SYNCIO * | sio, |
const char * | s | ||
) |
Definition at line 202 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA, and NULL.
Referenced by GWEN_Gui_Internal_GetSyncIo().
void GWEN_SyncIo_Tls_UndoPrepare | ( | GWEN_SYNCIO * | sio | ) |
Definition at line 483 of file syncio_tls.c.
References GWEN_INHERIT_GETDATA.
Referenced by GWEN_SyncIo_Tls_Connect(), GWEN_SyncIo_Tls_Disconnect(), GWEN_SyncIo_Tls_Read(), and GWEN_SyncIo_Tls_Write().
int GWENHYWFAR_CB GWEN_SyncIo_Tls_Write | ( | GWEN_SYNCIO * | sio, |
const uint8_t * | buffer, | ||
uint32_t | size | ||
) |
Definition at line 1069 of file syncio_tls.c.
References DBG_ERROR, DBG_INFO, GWEN_ERROR_NOT_CONNECTED, GWEN_ERROR_SSL, GWEN_Gui_ProgressLog2(), GWEN_INHERIT_GETDATA, GWEN_LOGDOMAIN, GWEN_LoggerLevel_Error, GWEN_SyncIo_Disconnect(), GWEN_SyncIo_GetBaseIo(), GWEN_SyncIo_GetStatus(), GWEN_SyncIo_SetStatus(), GWEN_SyncIo_Status_Connected, GWEN_SyncIo_Status_Disconnected, GWEN_SyncIo_Tls_UndoPrepare(), GWEN_Text_DumpString(), and I18N.
Referenced by GWEN_SyncIo_Tls_new().