cwist
Modern C web framework with libttak runtime
Loading...
Searching...
No Matches
https.h
Go to the documentation of this file.
1
6#ifndef __CWIST_HTTPS_H__
7#define __CWIST_HTTPS_H__
8
9#include <cwist/http.h>
10#include <cwist/err/cwist_err.h>
11#include <openssl/ssl.h>
12#include <openssl/err.h>
13
14/* --- SSL Structures --- */
15
20
25
26/* --- API Functions --- */
27
33 const char *key_path);
34
39
46
51
57
64
70 void (*handler)(cwist_https_connection *conn, void *),
71 void *user_ctx);
72
73/* --- Error Codes --- */
74// Defined as constants to be used with cwist_error_t (err_i16) or err_json
75// We will use standard errno-like negative values or specific error codes.
76
77#endif
cwist_err.h interface.
mbedTLS TLS backend: error queue subset.
http.h interface.
cwist_http_request * cwist_https_receive_request(cwist_https_connection *conn)
Read from the TLS stream until a full HTTP request has been assembled.
Definition https.c:1887
cwist_error_t cwist_https_accept(cwist_https_context *ctx, int client_fd, cwist_https_connection **conn)
Definition https.c:1756
cwist_error_t cwist_https_server_loop(int server_fd, cwist_https_context *ctx, void(*handler)(cwist_https_connection *conn, void *), void *user_ctx)
cwist_error_t cwist_https_send_response(cwist_https_connection *conn, cwist_http_response *res)
Serialize an HTTP response and send it over an active TLS connection.
Definition https.c:2102
cwist_error_t cwist_https_init_context(cwist_https_context **ctx, const char *cert_path, const char *key_path)
Definition https.c:1369
struct cwist_https_connection cwist_https_connection
void cwist_https_close_connection(cwist_https_connection *conn)
Definition https.c:1875
void cwist_https_destroy_context(cwist_https_context *ctx)
Free an HTTPS context and release its OpenSSL resources.
Definition https.c:1558
struct cwist_https_context cwist_https_context
mbedTLS TLS backend: OpenSSL-shaped seam over the CWIST TLS subset.
struct cwist_mtls_ssl SSL
Definition ssl.h:44
struct cwist_mtls_ctx SSL_CTX
Definition ssl.h:43
Integrated error structure used throughout the system.
Definition cwist_err.h:72
HTTP Response Object. Supports standard string body or Zero-Copy pointer body.
Definition http.h:82
void * ticket_key
Shared session-ticket key material (forked workers inherit it)
Definition https.h:18
SSL_CTX * ctx
Definition https.h:17