aboutsummaryrefslogtreecommitdiff
path: root/src/deps/_libusockets.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/deps/_libusockets.h')
-rw-r--r--src/deps/_libusockets.h29
1 files changed, 27 insertions, 2 deletions
diff --git a/src/deps/_libusockets.h b/src/deps/_libusockets.h
index 8981ce884..2c09395e9 100644
--- a/src/deps/_libusockets.h
+++ b/src/deps/_libusockets.h
@@ -123,13 +123,24 @@ typedef struct {
typedef void (*uws_listen_handler)(struct us_listen_socket_t *listen_socket,
void *user_data);
+typedef void (*uws_listen_domain_handler)(struct us_listen_socket_t *listen_socket,
+ const char* domain, int options,
+ void *user_data);
+
typedef void (*uws_method_handler)(uws_res_t *response, uws_req_t *request,
void *user_data);
typedef void (*uws_filter_handler)(uws_res_t *response, int, void *user_data);
typedef void (*uws_missing_server_handler)(const char *hostname,
void *user_data);
+typedef void (*uws_get_headers_server_handler)(const char *header_name,
+ size_t header_name_size,
+ const char *header_value,
+ size_t header_value_size,
+ void *user_data);
+
// Basic HTTP
uws_app_t *uws_create_app(int ssl, struct us_socket_context_options_t options);
+
void uws_app_destroy(int ssl, uws_app_t *app);
void uws_app_get(int ssl, uws_app_t *app, const char *pattern,
uws_method_handler handler, void *user_data);
@@ -159,8 +170,18 @@ void uws_app_listen(int ssl, uws_app_t *app, int port,
void uws_app_listen_with_config(int ssl, uws_app_t *app, const char *host,
uint16_t port, int32_t options,
uws_listen_handler handler, void *user_data);
+void uws_app_listen_domain(int ssl, uws_app_t *app, const char *domain,
+ uws_listen_domain_handler handler, void *user_data);
+
+void uws_app_listen_domain_with_options(int ssl, uws_app_t *app, const char *domain,
+ int options, uws_listen_domain_handler handler,
+ void *user_data);
+void uws_app_domain(int ssl, uws_app_t *app, const char *server_name);
+
bool uws_constructor_failed(int ssl, uws_app_t *app);
-unsigned int uws_num_subscribers(int ssl, uws_app_t *app, const char *topic);
+
+unsigned int uws_num_subscribers(int ssl, uws_app_t *app, const char *topic,
+ size_t topic_length);
bool uws_publish(int ssl, uws_app_t *app, const char *topic,
size_t topic_length, const char *message,
size_t message_length, uws_opcode_t opcode, bool compress);
@@ -281,8 +302,11 @@ size_t uws_req_get_query(uws_req_t *res, const char *key, size_t key_length,
const char **dest);
size_t uws_req_get_parameter(uws_req_t *res, unsigned short index,
const char **dest);
+void uws_req_for_each_header(uws_req_t *res, uws_get_headers_server_handler handler, void *user_data);
+
struct us_loop_t *uws_get_loop();
+struct us_loop_t *uws_get_loop_with_native(void* existing_native_loop);
void uws_loop_addPostHandler(us_loop_t *loop, void *ctx_,
void (*cb)(void *ctx, us_loop_t *loop));
@@ -298,13 +322,14 @@ void uws_res_write_headers(int ssl, uws_res_t *res, const StringPointer *names,
void *uws_res_get_native_handle(int ssl, uws_res_t *res);
void uws_res_uncork(int ssl, uws_res_t *res);
-void uws_res_set_write_offset(int ssl, uws_res_t *res, size_t off);
void us_socket_mark_needs_more_not_ssl(uws_res_t *res);
int uws_res_state(int ssl, uws_res_t *res);
bool uws_res_try_end(int ssl, uws_res_t *res, const char *bytes, size_t len,
size_t total_len, bool close);
void uws_res_prepare_for_sendfile(int ssl, uws_res_t *res);
+void uws_res_override_write_offset(int ssl, uws_res_t *res, uintmax_t offset);
+
#ifdef __cplusplus
}
#endif