ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
http2.h
Go to the documentation of this file.
1#pragma once
2
5#include <stddef.h>
6#include <stdint.h>
7
9typedef struct {
10 const char *method;
11 const char *path;
12 const char *query;
13 const void *body;
15 int32_t stream_id;
16 const struct http2_header *headers;
19typedef struct http2_header {
20 const char *name;
21 const char *value;
24 void *user_data);
25
27 size_t max_request_body_length, size_t max_response_body_length);
29asciichat_error_t http2_connection_receive(http2_connection_t *connection, const void *data, size_t length);
30asciichat_error_t http2_connection_next_output(http2_connection_t *connection, const uint8_t **data, size_t *length);
31asciichat_error_t http2_connection_submit_response(http2_connection_t *connection, int32_t stream_id, unsigned status,
32 const http_header_t *headers, size_t header_count, const void *body,
33 size_t body_length);
Synchronized per-thread pending error stacks and value snapshots. SET_ERRNO pushes,...
unsigned char uint8_t
Definition common.h:60
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
struct http2_header http2_header_t
asciichat_error_t http2_connection_create(http2_connection_t **connection, http2_request_fn on_request, void *user_data, size_t max_request_body_length, size_t max_response_body_length)
Definition http2.c:189
void http2_connection_destroy(http2_connection_t **connection)
Definition http2.c:229
asciichat_error_t(* http2_request_fn)(http2_connection_t *connection, const http2_request_view_t *request, void *user_data)
Definition http2.h:23
struct http2_connection http2_connection_t
Definition http2.h:8
asciichat_error_t http2_connection_receive(http2_connection_t *connection, const void *data, size_t length)
Definition http2.c:237
asciichat_error_t http2_connection_submit_response(http2_connection_t *connection, int32_t stream_id, unsigned status, const http_header_t *headers, size_t header_count, const void *body, size_t body_length)
Definition http2.c:257
asciichat_error_t http2_connection_next_output(http2_connection_t *connection, const uint8_t **data, size_t *length)
Definition http2.c:245
Backend-neutral HTTP request/response contract.
const char * name
Definition http2.h:20
const char * value
Definition http2.h:21
size_t body_length
Definition http2.h:14
const char * query
Definition http2.h:12
const char * path
Definition http2.h:11
const void * body
Definition http2.h:13
size_t header_count
Definition http2.h:17
const char * method
Definition http2.h:10
int32_t stream_id
Definition http2.h:15
const struct http2_header * headers
Definition http2.h:16