Sortix volatile manual
This manual documents Sortix volatile, a development build that has not been officially released. You can instead view this document in the latest official 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>.
| May 26, 2018 | Sortix 1.1.0-dev | 
