syslog-ng source
tls-context.c File Reference
#include "transport/tls-context.h"
#include "messages.h"
#include "compat/openssl_support.h"
#include "secret-storage/secret-storage.h"
#include "string-list.h"
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <stdio.h>
#include <openssl/x509_vfy.h>
#include <openssl/x509v3.h>
#include <openssl/err.h>
#include <openssl/rand.h>
#include <openssl/pkcs12.h>
#include <openssl/ocsp.h>
Include dependency graph for tls-context.c:

Enumerations

enum  TLSContextLoadResult { TLS_CONTEXT_OK , TLS_CONTEXT_ERROR , TLS_CONTEXT_FILE_ACCES_ERROR , TLS_CONTEXT_PASSWORD_ERROR }
 

Functions

EVTTAG * tls_context_format_tls_error_tag (TLSContext *self)
 
EVTTAG * tls_context_format_location_tag (TLSContext *self)
 
gboolean tls_context_verify_peer (TLSContext *self, X509 *peer_cert, const gchar *peer_name)
 
TLSContextSetupResult tls_context_setup_context (TLSContext *self)
 
TLSSessiontls_context_setup_session (TLSContext *self)
 
gboolean tls_context_set_verify_mode_by_name (TLSContext *self, const gchar *mode_str)
 
gboolean tls_context_set_ssl_version_by_name (TLSContext *self, const gchar *value)
 
gboolean tls_context_set_ssl_options_by_name (TLSContext *self, GList *options)
 
gint tls_context_get_verify_mode (const TLSContext *self)
 
void tls_context_set_verify_mode (TLSContext *self, gint verify_mode)
 
gboolean tls_context_ignore_hostname_mismatch (TLSContext *self)
 
gboolean tls_context_ignore_validity_period (TLSContext *self)
 
void tls_context_set_key_file (TLSContext *self, const gchar *key_file)
 
gboolean tls_context_set_keylog_file (TLSContext *self, gchar *keylog_file_path, GError **error)
 
void tls_context_set_cert_file (TLSContext *self, const gchar *cert_file)
 
void tls_context_set_pkcs12_file (TLSContext *self, const gchar *pkcs12_file)
 
void tls_context_set_ca_dir (TLSContext *self, const gchar *ca_dir)
 
void tls_context_set_crl_dir (TLSContext *self, const gchar *crl_dir)
 
void tls_context_set_ca_file (TLSContext *self, const gchar *ca_file)
 
void tls_context_set_cipher_suite (TLSContext *self, const gchar *cipher_suite)
 
void tls_context_set_allow_compress (TLSContext *self, gboolean allow_compress)
 
gboolean tls_context_set_tls13_cipher_suite (TLSContext *self, const gchar *tls13_cipher_suite, GError **error)
 
gboolean tls_context_set_sigalgs (TLSContext *self, const gchar *sigalgs, GError **error)
 
gboolean tls_context_set_client_sigalgs (TLSContext *self, const gchar *sigalgs, GError **error)
 
gboolean tls_context_set_conf_cmds (TLSContext *self, GList *cmds, GError **error)
 
void tls_context_set_ecdh_curve_list (TLSContext *self, const gchar *ecdh_curve_list)
 
void tls_context_set_dhparam_file (TLSContext *self, const gchar *dhparam_file)
 
void tls_context_set_sni (TLSContext *self, const gchar *sni)
 
void tls_context_set_ocsp_stapling_verify (TLSContext *self, gboolean ocsp_stapling_verify)
 
void tls_context_set_extended_key_usage_verify (TLSContext *self, gboolean extended_key_usage_verify)
 
TLSContext * tls_context_new (TLSMode mode, const gchar *location)
 
TLSContext * tls_context_ref (TLSContext *self)
 
void tls_context_unref (TLSContext *self)
 
const gchar * tls_context_get_key_file (TLSContext *self)
 
GQuark tls_context_error_quark (void)
 

Enumeration Type Documentation

◆ TLSContextLoadResult

Enumerator
TLS_CONTEXT_OK 
TLS_CONTEXT_ERROR 
TLS_CONTEXT_FILE_ACCES_ERROR 
TLS_CONTEXT_PASSWORD_ERROR 

Function Documentation

◆ tls_context_error_quark()

GQuark tls_context_error_quark ( void  )

◆ tls_context_format_location_tag()

EVTTAG* tls_context_format_location_tag ( TLSContext *  self)

◆ tls_context_format_tls_error_tag()

EVTTAG* tls_context_format_tls_error_tag ( TLSContext *  self)

◆ tls_context_get_key_file()

const gchar* tls_context_get_key_file ( TLSContext *  self)

◆ tls_context_get_verify_mode()

gint tls_context_get_verify_mode ( const TLSContext *  self)

◆ tls_context_ignore_hostname_mismatch()

gboolean tls_context_ignore_hostname_mismatch ( TLSContext *  self)

◆ tls_context_ignore_validity_period()

gboolean tls_context_ignore_validity_period ( TLSContext *  self)

◆ tls_context_new()

TLSContext* tls_context_new ( TLSMode  mode,
const gchar *  location 
)

◆ tls_context_ref()

TLSContext* tls_context_ref ( TLSContext *  self)

◆ tls_context_set_allow_compress()

void tls_context_set_allow_compress ( TLSContext *  self,
gboolean  allow_compress 
)

◆ tls_context_set_ca_dir()

void tls_context_set_ca_dir ( TLSContext *  self,
const gchar *  ca_dir 
)

◆ tls_context_set_ca_file()

void tls_context_set_ca_file ( TLSContext *  self,
const gchar *  ca_file 
)

◆ tls_context_set_cert_file()

void tls_context_set_cert_file ( TLSContext *  self,
const gchar *  cert_file 
)

◆ tls_context_set_cipher_suite()

void tls_context_set_cipher_suite ( TLSContext *  self,
const gchar *  cipher_suite 
)

◆ tls_context_set_client_sigalgs()

gboolean tls_context_set_client_sigalgs ( TLSContext *  self,
const gchar *  sigalgs,
GError **  error 
)

◆ tls_context_set_conf_cmds()

gboolean tls_context_set_conf_cmds ( TLSContext *  self,
GList *  cmds,
GError **  error 
)

◆ tls_context_set_crl_dir()

void tls_context_set_crl_dir ( TLSContext *  self,
const gchar *  crl_dir 
)

◆ tls_context_set_dhparam_file()

void tls_context_set_dhparam_file ( TLSContext *  self,
const gchar *  dhparam_file 
)

◆ tls_context_set_ecdh_curve_list()

void tls_context_set_ecdh_curve_list ( TLSContext *  self,
const gchar *  ecdh_curve_list 
)

◆ tls_context_set_extended_key_usage_verify()

void tls_context_set_extended_key_usage_verify ( TLSContext *  self,
gboolean  extended_key_usage_verify 
)

◆ tls_context_set_key_file()

void tls_context_set_key_file ( TLSContext *  self,
const gchar *  key_file 
)

◆ tls_context_set_keylog_file()

gboolean tls_context_set_keylog_file ( TLSContext *  self,
gchar *  keylog_file_path,
GError **  error 
)

◆ tls_context_set_ocsp_stapling_verify()

void tls_context_set_ocsp_stapling_verify ( TLSContext *  self,
gboolean  ocsp_stapling_verify 
)

◆ tls_context_set_pkcs12_file()

void tls_context_set_pkcs12_file ( TLSContext *  self,
const gchar *  pkcs12_file 
)

◆ tls_context_set_sigalgs()

gboolean tls_context_set_sigalgs ( TLSContext *  self,
const gchar *  sigalgs,
GError **  error 
)

◆ tls_context_set_sni()

void tls_context_set_sni ( TLSContext *  self,
const gchar *  sni 
)

◆ tls_context_set_ssl_options_by_name()

gboolean tls_context_set_ssl_options_by_name ( TLSContext *  self,
GList *  options 
)

◆ tls_context_set_ssl_version_by_name()

gboolean tls_context_set_ssl_version_by_name ( TLSContext *  self,
const gchar *  value 
)

◆ tls_context_set_tls13_cipher_suite()

gboolean tls_context_set_tls13_cipher_suite ( TLSContext *  self,
const gchar *  tls13_cipher_suite,
GError **  error 
)

◆ tls_context_set_verify_mode()

void tls_context_set_verify_mode ( TLSContext *  self,
gint  verify_mode 
)

◆ tls_context_set_verify_mode_by_name()

gboolean tls_context_set_verify_mode_by_name ( TLSContext *  self,
const gchar *  mode_str 
)

◆ tls_context_setup_context()

TLSContextSetupResult tls_context_setup_context ( TLSContext *  self)

◆ tls_context_setup_session()

TLSSession* tls_context_setup_session ( TLSContext *  self)

◆ tls_context_unref()

void tls_context_unref ( TLSContext *  self)

◆ tls_context_verify_peer()

gboolean tls_context_verify_peer ( TLSContext *  self,
X509 *  peer_cert,
const gchar *  peer_name 
)