Man page - tls_accept_socket(3)

Packages contains this manual

Manual


TLS_ACCEPT_SOCKET (3) Library Functions Manual TLS_ACCEPT_SOCKET (3)

NAME

tls_accept_socket, tls_accept_fds, tls_accept_cbs — accept an incoming client connection in a TLS server

SYNOPSIS

#include <tls.h>

int

tls_accept_socket ( struct tls *tls , struct tls **cctx , int socket );

int

tls_accept_fds ( struct tls *tls , struct tls **cctx , int fd_read , int fd_write );

int

tls_accept_cbs ( struct tls *tls , struct tls **cctx , ssize_t (*tls_read_cb)(struct tls *ctx, void *buf, size_t buflen, void *cb_arg) , ssize_t (*tls_write_cb)(struct tls *ctx, const void *buf, size_t buflen, void *cb_arg) , void *cb_arg );

DESCRIPTION

After creating a TLS server context tls with tls_server (3) and configuring it with tls_configure (3), a server can accept a new client connection by calling tls_accept_socket () on an already established socket connection.

Alternatively, a new client connection can be accepted over a pair of existing file descriptors by calling tls_accept_fds ().

Calling tls_accept_cbs () allows read and write callback functions to handle data transfers. The specified cb_arg parameter is passed back to the functions, and can contain a pointer to any caller-specified data.

All these functions create a new context suitable for reading and writing and return it in * cctx .

RETURN VALUES

These functions return 0 on success or -1 on error.

SEE ALSO

tls_close (3), tls_config_set_session_id (3), tls_configure (3), tls_connect (3), tls_init (3), tls_server (3)

HISTORY

tls_accept_socket () appeared in OpenBSD 5.6 and got its final name in OpenBSD 5.7.

tls_accept_fds () appeared in OpenBSD 5.8 and tls_accept_cbs () in OpenBSD 6.1.

AUTHORS

Joel Sing < jsing@openbsd.org >

tls_accept_cbs () was written by Tobias Pape < tobias@netshed.de >. Debian May 26, 2018 TLS_ACCEPT_SOCKET (3)