|  | libwebsockets
    Lightweight C library for HTML5 websockets | 
| Functions | |
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT | lws_add_http_header_status (struct lws *wsi, unsigned int code, unsigned char **p, unsigned char *end) | 
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT | lws_add_http_header_by_name (struct lws *wsi, const unsigned char *name, const unsigned char *value, int length, unsigned char **p, unsigned char *end) | 
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT | lws_add_http_header_by_token (struct lws *wsi, enum lws_token_indexes token, const unsigned char *value, int length, unsigned char **p, unsigned char *end) | 
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT | lws_add_http_header_content_length (struct lws *wsi, lws_filepos_t content_length, unsigned char **p, unsigned char *end) | 
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT | lws_finalize_http_header (struct lws *wsi, unsigned char **p, unsigned char *end) | 
These apis allow you to create HTTP response headers in a way compatible with both HTTP/1.x and HTTP/2.
They each append to a buffer taking care about the buffer end, which is passed in as a pointer. When data is written to the buffer, the current position p is updated accordingly.
All of these apis are LWS_WARN_UNUSED_RESULT as they can run out of space and fail with nonzero return.
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT lws_add_http_header_by_name | ( | struct lws * | wsi, | 
| const unsigned char * | name, | ||
| const unsigned char * | value, | ||
| int | length, | ||
| unsigned char ** | p, | ||
| unsigned char * | end | ||
| ) | 
#include <lib/libwebsockets.h>
lws_add_http_header_by_name() - append named header and value
| wsi | the connection to check | 
| name | the hdr name, like "my-header" | 
| value | the value after the = for this header | 
| length | the length of the value | 
| p | pointer to current position in buffer pointer | 
| end | pointer to end of buffer | 
Appends name: value to the headers
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT lws_add_http_header_by_token | ( | struct lws * | wsi, | 
| enum lws_token_indexes | token, | ||
| const unsigned char * | value, | ||
| int | length, | ||
| unsigned char ** | p, | ||
| unsigned char * | end | ||
| ) | 
#include <lib/libwebsockets.h>
lws_add_http_header_by_token() - append given header and value
| wsi | the connection to check | 
| token | the token index for the hdr | 
| value | the value after the = for this header | 
| length | the length of the value | 
| p | pointer to current position in buffer pointer | 
| end | pointer to end of buffer | 
Appends name=value to the headers, but is able to take advantage of better HTTP/2 coding mechanisms where possible.
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT lws_add_http_header_content_length | ( | struct lws * | wsi, | 
| lws_filepos_t | content_length, | ||
| unsigned char ** | p, | ||
| unsigned char * | end | ||
| ) | 
#include <lib/libwebsockets.h>
lws_add_http_header_content_length() - append content-length helper
| wsi | the connection to check | 
| content_length | the content length to use | 
| p | pointer to current position in buffer pointer | 
| end | pointer to end of buffer | 
Appends content-length: content_length to the headers
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT lws_add_http_header_status | ( | struct lws * | wsi, | 
| unsigned int | code, | ||
| unsigned char ** | p, | ||
| unsigned char * | end | ||
| ) | 
#include <lib/libwebsockets.h>
lws_add_http_header_status() - add the HTTP response status code
| wsi | the connection to check | 
| code | an HTTP code like 200, 404 etc (see enum http_status) | 
| p | pointer to current position in buffer pointer | 
| end | pointer to end of buffer | 
Adds the initial response code, so should be called first.
Code may additionally take OR'd flags:
LWSAHH_FLAG_NO_SERVER_NAME: don't apply server name header this time
| LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT lws_finalize_http_header | ( | struct lws * | wsi, | 
| unsigned char ** | p, | ||
| unsigned char * | end | ||
| ) | 
#include <lib/libwebsockets.h>
lws_finalize_http_header() - terminate header block
| wsi | the connection to check | 
| p | pointer to current position in buffer pointer | 
| end | pointer to end of buffer | 
Indicates no more headers will be added