kinetic-c  v0.12.0
Seagate Kinetic Protocol Client Library for C
Macros | Functions
bus_ssl.c File Reference
#include <poll.h>
#include <assert.h>
#include "bus_ssl.h"
#include "syscall.h"
#include "util.h"

Go to the source code of this file.

Macros

#define TIMEOUT_MSEC   100
 
#define MAX_TIMEOUT   10000
 

Functions

static bool init_client_SSL_CTX (SSL_CTX **ctx_out)
 
static void disable_SSL_compression (void)
 
static void disable_known_bad_ciphers (SSL_CTX *ctx)
 
static bool do_blocking_connection (struct bus *b, SSL *ssl, int fd)
 
bool BusSSL_Init (struct bus *b)
 Initialize the SSL library internals for use by the messaging bus. More...
 
SSL * BusSSL_Connect (struct bus *b, int fd)
 Do an SSL / TLS shake for a connection. More...
 
bool BusSSL_Disconnect (struct bus *b, SSL *ssl)
 Disconnect and free an individual SSL handle. More...
 
void BusSSL_CtxFree (struct bus *b)
 Free all internal data for using SSL (the SSL_CTX). More...
 

Macro Definition Documentation

#define TIMEOUT_MSEC   100

Definition at line 27 of file bus_ssl.c.

#define MAX_TIMEOUT   10000

Definition at line 28 of file bus_ssl.c.

Function Documentation

static bool init_client_SSL_CTX ( SSL_CTX **  ctx_out)
static

Definition at line 87 of file bus_ssl.c.

References disable_known_bad_ciphers(), and disable_SSL_compression().

static void disable_SSL_compression ( void  )
static

Definition at line 113 of file bus_ssl.c.

static void disable_known_bad_ciphers ( SSL_CTX *  ctx)
static

Definition at line 122 of file bus_ssl.c.

static bool do_blocking_connection ( struct bus b,
SSL *  ssl,
int  fd 
)
static
bool BusSSL_Init ( struct bus b)

Initialize the SSL library internals for use by the messaging bus.

Definition at line 36 of file bus_ssl.c.

References init_client_SSL_CTX(), and bus::ssl_ctx.

SSL* BusSSL_Connect ( struct bus b,
int  fd 
)

Do an SSL / TLS shake for a connection.

Blocking.

Definition at line 51 of file bus_ssl.c.

References do_blocking_connection(), and bus::ssl_ctx.

bool BusSSL_Disconnect ( struct bus b,
SSL *  ssl 
)

Disconnect and free an individual SSL handle.

Definition at line 73 of file bus_ssl.c.

void BusSSL_CtxFree ( struct bus b)

Free all internal data for using SSL (the SSL_CTX).

Definition at line 80 of file bus_ssl.c.

References bus::ssl_ctx.