From afa5e3f4692cc968d362cf7b56e7eb33eb40a129 Mon Sep 17 00:00:00 2001 From: Alexander Alashkin <alexander.alashkin@cesanta.com> Date: Mon, 4 Apr 2016 18:30:10 +0200 Subject: [PATCH] Enable SSL in SJ/WS PUBLISHED_FROM=d7b3e083c7a7d5095c8e61bb6183ae7e6e068858 --- docs/c-api/http.h/items.json | 8 ------- docs/c-api/http.h/mg_connect_http.md | 35 ---------------------------- docs/c-api/http.h/mg_connect_ws.md | 30 ------------------------ mongoose.h | 28 ++++++++++++++++++++++ 4 files changed, 28 insertions(+), 73 deletions(-) delete mode 100644 docs/c-api/http.h/mg_connect_http.md delete mode 100644 docs/c-api/http.h/mg_connect_ws.md diff --git a/docs/c-api/http.h/items.json b/docs/c-api/http.h/items.json index 037e457b3..01032204b 100644 --- a/docs/c-api/http.h/items.json +++ b/docs/c-api/http.h/items.json @@ -16,10 +16,6 @@ "type": "markdown", "name": "mg_send_websocket_handshake2.md" }, - { - "type": "markdown", - "name": "mg_connect_ws.md" - }, { "type": "markdown", "name": "mg_send_websocket_frame.md" @@ -80,10 +76,6 @@ "type": "markdown", "name": "mg_http_create_digest_auth_header.md" }, - { - "type": "markdown", - "name": "mg_connect_http.md" - }, { "type": "markdown", "name": "mg_serve_http.md" diff --git a/docs/c-api/http.h/mg_connect_http.md b/docs/c-api/http.h/mg_connect_http.md deleted file mode 100644 index b897be0ce..000000000 --- a/docs/c-api/http.h/mg_connect_http.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "mg_connect_http()" -decl_name: "mg_connect_http" -symbol_kind: "func" -signature: | - struct mg_connection *mg_connect_http(struct mg_mgr *mgr, - mg_event_handler_t event_handler, - const char *url, - const char *extra_headers, - const char *post_data); ---- - -Helper function that creates outbound HTTP connection. - -`url` is a URL to fetch. It must be properly URL-encoded, e.g. have -no spaces, etc. By default, `mg_connect_http()` sends Connection and -Host headers. `extra_headers` is an extra HTTP headers to send, e.g. -`"User-Agent: my-app\r\n"`. -If `post_data` is NULL, then GET request is created. Otherwise, POST request -is created with the specified POST data. Note that if the data being posted -is a form submission, the `Content-Type` header should be set accordingly -(see example below). - -Examples: - -```c - nc1 = mg_connect_http(mgr, ev_handler_1, "http://www.google.com", NULL, - NULL); - nc2 = mg_connect_http(mgr, ev_handler_1, "https://github.com", NULL, NULL); - nc3 = mg_connect_http( - mgr, ev_handler_1, "my_server:8000/form_submit/", - "Content-Type: application/x-www-form-urlencoded\r\n", - "var_1=value_1&var_2=value_2"); -``` - diff --git a/docs/c-api/http.h/mg_connect_ws.md b/docs/c-api/http.h/mg_connect_ws.md deleted file mode 100644 index 417279c86..000000000 --- a/docs/c-api/http.h/mg_connect_ws.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "mg_connect_ws()" -decl_name: "mg_connect_ws" -symbol_kind: "func" -signature: | - struct mg_connection *mg_connect_ws(struct mg_mgr *mgr, - mg_event_handler_t event_handler, - const char *url, const char *protocol, - const char *extra_headers); ---- - -Helper function that creates an outbound WebSocket connection. - -`url` is a URL to connect to. It must be properly URL-encoded, e.g. have -no spaces, etc. By default, `mg_connect_ws()` sends Connection and -Host headers. `extra_headers` is an extra HTTP headers to send, e.g. -`"User-Agent: my-app\r\n"`. -If `protocol` is not NULL, then a `Sec-WebSocket-Protocol` header is sent. - -Examples: - -```c - nc1 = mg_connect_ws(mgr, ev_handler_1, "ws://echo.websocket.org", NULL, - NULL); - nc2 = mg_connect_ws(mgr, ev_handler_1, "wss://echo.websocket.org", NULL, - NULL); - nc3 = mg_connect_ws(mgr, ev_handler_1, "ws://api.cesanta.com", - "clubby.cesanta.com", NULL); -``` - diff --git a/mongoose.h b/mongoose.h index f357a25fe..1b0f3dcad 100644 --- a/mongoose.h +++ b/mongoose.h @@ -2147,11 +2147,25 @@ void mg_send_websocket_handshake2(struct mg_connection *nc, const char *path, * "clubby.cesanta.com", NULL); * ``` */ + struct mg_connection *mg_connect_ws(struct mg_mgr *mgr, mg_event_handler_t event_handler, const char *url, const char *protocol, const char *extra_headers); +/* + * Helper function that creates an outbound WebSocket connection + * + * Mostly identical to mg_connect_ws, but allows to provide extra parameters + * (for example, SSL parameters + */ + +struct mg_connection *mg_connect_ws_opt(struct mg_mgr *mgr, + mg_event_handler_t ev_handler, + struct mg_connect_opts opts, + const char *url, const char *protocol, + const char *extra_headers); + /* * Send websocket frame to the remote end. * @@ -2405,12 +2419,26 @@ int mg_http_create_digest_auth_header(char *buf, size_t buf_len, * "var_1=value_1&var_2=value_2"); * ``` */ + struct mg_connection *mg_connect_http(struct mg_mgr *mgr, mg_event_handler_t event_handler, const char *url, const char *extra_headers, const char *post_data); +/* + * Helper function that creates outbound HTTP connection. + * + * Mostly identical to mg_connect_http, but allows to provide extra parameters + * (for example, SSL parameters + */ + +struct mg_connection *mg_connect_http_opt(struct mg_mgr *mgr, + mg_event_handler_t ev_handler, + struct mg_connect_opts opts, + const char *url, + const char *extra_headers, + const char *post_data); /* * This structure defines how `mg_serve_http()` works. * Best practice is to set only required settings, and leave the rest as NULL. -- GitLab