Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mongoose
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
esp
mongoose
Commits
4ca73566
Commit
4ca73566
authored
Mar 19, 2016
by
Alexander Alashkin
Committed by
Marko Mikulicic
Mar 21, 2016
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reamalgamate mongoose.h
PUBLISHED_FROM=441c74c182ef15f3eaeedd19add3411d7e121170
parent
d0b34751
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
56 additions
and
56 deletions
+56
-56
mongoose.h
mongoose.h
+56
-56
No files found.
mongoose.h
View file @
4ca73566
...
@@ -1057,11 +1057,12 @@ struct mg_str {
...
@@ -1057,11 +1057,12 @@ struct mg_str {
size_t
len
;
/* Memory chunk length */
size_t
len
;
/* Memory chunk length */
};
};
struct
mg_connection
;
/*
/*
* Callback function (event handler) prototype, must be defined by user.
* Callback function (event handler) prototype, must be defined by user.
* Mongoose calls event handler, passing events defined below.
* Mongoose calls event handler, passing events defined below.
*/
*/
struct
mg_connection
;
typedef
void
(
*
mg_event_handler_t
)(
struct
mg_connection
*
,
int
ev
,
void
*
);
typedef
void
(
*
mg_event_handler_t
)(
struct
mg_connection
*
,
int
ev
,
void
*
);
/* Events. Meaning of event parameter (evp) is given in the comment. */
/* Events. Meaning of event parameter (evp) is given in the comment. */
...
@@ -1197,17 +1198,17 @@ void mg_broadcast(struct mg_mgr *, mg_event_handler_t func, void *, size_t);
...
@@ -1197,17 +1198,17 @@ void mg_broadcast(struct mg_mgr *, mg_event_handler_t func, void *, size_t);
* of active connections, or `NULL` if there is no more connections. Below
* of active connections, or `NULL` if there is no more connections. Below
* is the iteration idiom:
* is the iteration idiom:
*
*
* [source,c]
* ```c
* ----
* for (c = mg_next(srv, NULL); c != NULL; c = mg_next(srv, c)) {
* for (c = mg_next(srv, NULL); c != NULL; c = mg_next(srv, c)) {
* // Do something with connection `c`
* // Do something with connection `c`
* }
* }
*
----
*
```
*/
*/
struct
mg_connection
*
mg_next
(
struct
mg_mgr
*
,
struct
mg_connection
*
);
struct
mg_connection
*
mg_next
(
struct
mg_mgr
*
,
struct
mg_connection
*
);
/*
/*
* Optional parameters to mg_add_sock_opt()
* Optional parameters to `mg_add_sock_opt()`.
*
* `flags` is an initial `struct mg_connection::flags` bitmask to set,
* `flags` is an initial `struct mg_connection::flags` bitmask to set,
* see `MG_F_*` flags definitions.
* see `MG_F_*` flags definitions.
*/
*/
...
@@ -1236,7 +1237,8 @@ struct mg_connection *mg_add_sock_opt(struct mg_mgr *, sock_t,
...
@@ -1236,7 +1237,8 @@ struct mg_connection *mg_add_sock_opt(struct mg_mgr *, sock_t,
struct
mg_add_sock_opts
);
struct
mg_add_sock_opts
);
/*
/*
* Optional parameters to mg_bind_opt()
* Optional parameters to `mg_bind_opt()`.
*
* `flags` is an initial `struct mg_connection::flags` bitmask to set,
* `flags` is an initial `struct mg_connection::flags` bitmask to set,
* see `MG_F_*` flags definitions.
* see `MG_F_*` flags definitions.
*/
*/
...
@@ -1279,7 +1281,7 @@ struct mg_connection *mg_bind_opt(struct mg_mgr *mgr, const char *address,
...
@@ -1279,7 +1281,7 @@ struct mg_connection *mg_bind_opt(struct mg_mgr *mgr, const char *address,
mg_event_handler_t
handler
,
mg_event_handler_t
handler
,
struct
mg_bind_opts
opts
);
struct
mg_bind_opts
opts
);
/* Optional parameters to
mg_connect_opt()
*/
/* Optional parameters to
`mg_connect_opt()`
*/
struct
mg_connect_opts
{
struct
mg_connect_opts
{
void
*
user_data
;
/* Initial value for connection's user_data */
void
*
user_data
;
/* Initial value for connection's user_data */
unsigned
int
flags
;
/* Extra connection flags */
unsigned
int
flags
;
/* Extra connection flags */
...
@@ -1334,8 +1336,7 @@ struct mg_connection *mg_connect(struct mg_mgr *mgr, const char *address,
...
@@ -1334,8 +1336,7 @@ struct mg_connection *mg_connect(struct mg_mgr *mgr, const char *address,
* reason (e.g. with `ECONNREFUSED` or `ENETUNREACH`), then `MG_EV_CONNECT`
* reason (e.g. with `ECONNREFUSED` or `ENETUNREACH`), then `MG_EV_CONNECT`
* event report failure. Code example below:
* event report failure. Code example below:
*
*
* [source,c]
* ```c
* ----
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* int connect_status;
* int connect_status;
*
*
...
@@ -1355,7 +1356,7 @@ struct mg_connection *mg_connect(struct mg_mgr *mgr, const char *address,
...
@@ -1355,7 +1356,7 @@ struct mg_connection *mg_connect(struct mg_mgr *mgr, const char *address,
*
*
* ...
* ...
* mg_connect(mgr, "my_site.com:80", ev_handler);
* mg_connect(mgr, "my_site.com:80", ev_handler);
*
----
*
```
*/
*/
struct
mg_connection
*
mg_connect_opt
(
struct
mg_mgr
*
mgr
,
const
char
*
address
,
struct
mg_connection
*
mg_connect_opt
(
struct
mg_mgr
*
mgr
,
const
char
*
address
,
mg_event_handler_t
handler
,
mg_event_handler_t
handler
,
...
@@ -1848,7 +1849,7 @@ int mg_match_prefix_n(const char *pattern, int pattern_len, const char *str,
...
@@ -1848,7 +1849,7 @@ int mg_match_prefix_n(const char *pattern, int pattern_len, const char *str,
/*
/*
* A helper function for creating mg_str struct from plain C string.
* A helper function for creating mg_str struct from plain C string.
*
NULL is allowed and becomes {NULL, 0}
.
*
`NULL` is allowed and becomes `{NULL, 0}`
.
*/
*/
struct
mg_str
mg_mk_str
(
const
char
*
s
);
struct
mg_str
mg_mk_str
(
const
char
*
s
);
...
@@ -1944,12 +1945,14 @@ struct http_message {
...
@@ -1944,12 +1945,14 @@ struct http_message {
struct
mg_str
body
;
/* Zero-length for requests with no body */
struct
mg_str
body
;
/* Zero-length for requests with no body */
};
};
/* WebSocket message */
struct
websocket_message
{
struct
websocket_message
{
unsigned
char
*
data
;
unsigned
char
*
data
;
size_t
size
;
size_t
size
;
unsigned
char
flags
;
unsigned
char
flags
;
};
};
/* HTTP multipart part */
struct
mg_http_multipart_part
{
struct
mg_http_multipart_part
{
const
char
*
file_name
;
const
char
*
file_name
;
const
char
*
var_name
;
const
char
*
var_name
;
...
@@ -2062,15 +2065,14 @@ void mg_send_websocket_handshake2(struct mg_connection *nc, const char *path,
...
@@ -2062,15 +2065,14 @@ void mg_send_websocket_handshake2(struct mg_connection *nc, const char *path,
*
*
* Examples:
* Examples:
*
*
* [source,c]
* ```c
* ----
* nc1 = mg_connect_ws(mgr, ev_handler_1, "ws://echo.websocket.org", NULL,
* nc1 = mg_connect_ws(mgr, ev_handler_1, "ws://echo.websocket.org", NULL,
* NULL);
* NULL);
* nc2 = mg_connect_ws(mgr, ev_handler_1, "wss://echo.websocket.org", NULL,
* nc2 = mg_connect_ws(mgr, ev_handler_1, "wss://echo.websocket.org", NULL,
* NULL);
* NULL);
* nc3 = mg_connect_ws(mgr, ev_handler_1, "ws://api.cesanta.com",
* nc3 = mg_connect_ws(mgr, ev_handler_1, "ws://api.cesanta.com",
* "clubby.cesanta.com", NULL);
* "clubby.cesanta.com", NULL);
*
----
*
```
*/
*/
struct
mg_connection
*
mg_connect_ws
(
struct
mg_mgr
*
mgr
,
struct
mg_connection
*
mg_connect_ws
(
struct
mg_mgr
*
mgr
,
mg_event_handler_t
event_handler
,
mg_event_handler_t
event_handler
,
...
@@ -2248,6 +2250,7 @@ int mg_http_parse_header(struct mg_str *hdr, const char *var_name, char *buf,
...
@@ -2248,6 +2250,7 @@ int mg_http_parse_header(struct mg_str *hdr, const char *var_name, char *buf,
*
*
* Usage example:
* Usage example:
*
*
* ```c
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* switch(ev) {
* switch(ev) {
* case MG_EV_HTTP_REQUEST: {
* case MG_EV_HTTP_REQUEST: {
...
@@ -2269,7 +2272,7 @@ int mg_http_parse_header(struct mg_str *hdr, const char *var_name, char *buf,
...
@@ -2269,7 +2272,7 @@ int mg_http_parse_header(struct mg_str *hdr, const char *var_name, char *buf,
* }
* }
* }
* }
* break;
* break;
*
*
```
*/
*/
size_t
mg_parse_multipart
(
const
char
*
buf
,
size_t
buf_len
,
char
*
var_name
,
size_t
mg_parse_multipart
(
const
char
*
buf
,
size_t
buf_len
,
char
*
var_name
,
size_t
var_name_len
,
char
*
file_name
,
size_t
var_name_len
,
char
*
file_name
,
...
@@ -2319,8 +2322,7 @@ int mg_http_create_digest_auth_header(char *buf, size_t buf_len,
...
@@ -2319,8 +2322,7 @@ int mg_http_create_digest_auth_header(char *buf, size_t buf_len,
*
*
* Examples:
* Examples:
*
*
* [source,c]
* ```c
* ----
* nc1 = mg_connect_http(mgr, ev_handler_1, "http://www.google.com", NULL,
* nc1 = mg_connect_http(mgr, ev_handler_1, "http://www.google.com", NULL,
* NULL);
* NULL);
* nc2 = mg_connect_http(mgr, ev_handler_1, "https://github.com", NULL, NULL);
* nc2 = mg_connect_http(mgr, ev_handler_1, "https://github.com", NULL, NULL);
...
@@ -2328,7 +2330,7 @@ int mg_http_create_digest_auth_header(char *buf, size_t buf_len,
...
@@ -2328,7 +2330,7 @@ int mg_http_create_digest_auth_header(char *buf, size_t buf_len,
* mgr, ev_handler_1, "my_server:8000/form_submit/",
* mgr, ev_handler_1, "my_server:8000/form_submit/",
* "Content-Type: application/x-www-form-urlencoded\r\n",
* "Content-Type: application/x-www-form-urlencoded\r\n",
* "var_1=value_1&var_2=value_2");
* "var_1=value_1&var_2=value_2");
*
----
*
```
*/
*/
struct
mg_connection
*
mg_connect_http
(
struct
mg_mgr
*
mgr
,
struct
mg_connection
*
mg_connect_http
(
struct
mg_mgr
*
mgr
,
mg_event_handler_t
event_handler
,
mg_event_handler_t
event_handler
,
...
@@ -2440,9 +2442,7 @@ struct mg_serve_http_opts {
...
@@ -2440,9 +2442,7 @@ struct mg_serve_http_opts {
*
*
* Example code snippet:
* Example code snippet:
*
*
* [source,c]
* ```c
* .web_server.c
* ----
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* static void ev_handler(struct mg_connection *nc, int ev, void *ev_data) {
* struct http_message *hm = (struct http_message *) ev_data;
* struct http_message *hm = (struct http_message *) ev_data;
* struct mg_serve_http_opts opts = { .document_root = "/var/www" }; // C99
* struct mg_serve_http_opts opts = { .document_root = "/var/www" }; // C99
...
@@ -2455,7 +2455,7 @@ struct mg_serve_http_opts {
...
@@ -2455,7 +2455,7 @@ struct mg_serve_http_opts {
* break;
* break;
* }
* }
* }
* }
*
----
*
```
*/
*/
void
mg_serve_http
(
struct
mg_connection
*
nc
,
struct
http_message
*
hm
,
void
mg_serve_http
(
struct
mg_connection
*
nc
,
struct
http_message
*
hm
,
struct
mg_serve_http_opts
opts
);
struct
mg_serve_http_opts
opts
);
...
@@ -2467,9 +2467,7 @@ void mg_serve_http(struct mg_connection *nc, struct http_message *hm,
...
@@ -2467,9 +2467,7 @@ void mg_serve_http(struct mg_connection *nc, struct http_message *hm,
*
*
* Example code snippet:
* Example code snippet:
*
*
* [source,c]
* ```c
* .web_server.c
* ----
* static void handle_hello1(struct mg_connection *nc, int ev, void *ev_data) {
* static void handle_hello1(struct mg_connection *nc, int ev, void *ev_data) {
* (void) ev; (void) ev_data;
* (void) ev; (void) ev_data;
* mg_printf(nc, "HTTP/1.0 200 OK\r\n\r\n[I am Hello1]");
* mg_printf(nc, "HTTP/1.0 200 OK\r\n\r\n[I am Hello1]");
...
@@ -2487,7 +2485,7 @@ void mg_serve_http(struct mg_connection *nc, struct http_message *hm,
...
@@ -2487,7 +2485,7 @@ void mg_serve_http(struct mg_connection *nc, struct http_message *hm,
* mg_register_http_endpoint(nc, "/hello1", handle_hello1);
* mg_register_http_endpoint(nc, "/hello1", handle_hello1);
* mg_register_http_endpoint(nc, "/hello1/hello2", handle_hello2);
* mg_register_http_endpoint(nc, "/hello1/hello2", handle_hello2);
* }
* }
*
----
*
```
*/
*/
void
mg_register_http_endpoint
(
struct
mg_connection
*
nc
,
const
char
*
uri_path
,
void
mg_register_http_endpoint
(
struct
mg_connection
*
nc
,
const
char
*
uri_path
,
...
@@ -2547,9 +2545,9 @@ struct mg_rpc_error {
...
@@ -2547,9 +2545,9 @@ struct mg_rpc_error {
* where parsing has finished. On failure, a negative number is
* where parsing has finished. On failure, a negative number is
* returned, one of:
* returned, one of:
*
*
*
- #define JSON_STRING_INVALID -1
*
- `#define JSON_STRING_INVALID -1`
*
- #define JSON_STRING_INCOMPLETE -2
*
- `#define JSON_STRING_INCOMPLETE -2`
*
- #define JSON_TOKEN_ARRAY_TOO_SMALL -3
*
- `#define JSON_TOKEN_ARRAY_TOO_SMALL -3`
*/
*/
int
mg_rpc_parse_reply
(
const
char
*
buf
,
int
len
,
struct
json_token
*
toks
,
int
mg_rpc_parse_reply
(
const
char
*
buf
,
int
len
,
struct
json_token
*
toks
,
int
max_toks
,
struct
mg_rpc_reply
*
,
int
max_toks
,
struct
mg_rpc_reply
*
,
...
@@ -2603,12 +2601,12 @@ int mg_rpc_create_error(char *buf, int len, struct mg_rpc_request *req,
...
@@ -2603,12 +2601,12 @@ int mg_rpc_create_error(char *buf, int len, struct mg_rpc_request *req,
* can be larger then `len` that indicates an overflow. See
* can be larger then `len` that indicates an overflow. See
* JSON_RPC_*_ERROR definitions for standard error values:
* JSON_RPC_*_ERROR definitions for standard error values:
*
*
* -
#define JSON_RPC_PARSE_ERROR (-32700)
* -
`#define JSON_RPC_PARSE_ERROR (-32700)`
* -
#define JSON_RPC_INVALID_REQUEST_ERROR (-32600)
* -
`#define JSON_RPC_INVALID_REQUEST_ERROR (-32600)`
* -
#define JSON_RPC_METHOD_NOT_FOUND_ERROR (-32601)
* -
`#define JSON_RPC_METHOD_NOT_FOUND_ERROR (-32601)`
* -
#define JSON_RPC_INVALID_PARAMS_ERROR (-32602)
* -
`#define JSON_RPC_INVALID_PARAMS_ERROR (-32602)`
* -
#define JSON_RPC_INTERNAL_ERROR (-32603)
* -
`#define JSON_RPC_INTERNAL_ERROR (-32603)`
* -
#define JSON_RPC_SERVER_ERROR (-32000)
* -
`#define JSON_RPC_SERVER_ERROR (-32000)`
*/
*/
int
mg_rpc_create_std_error
(
char
*
buf
,
int
len
,
struct
mg_rpc_request
*
req
,
int
mg_rpc_create_std_error
(
char
*
buf
,
int
len
,
struct
mg_rpc_request
*
req
,
int
code
);
int
code
);
...
@@ -2891,15 +2889,14 @@ void mg_mqtt_broker_init(struct mg_mqtt_broker *brk, void *user_data);
...
@@ -2891,15 +2889,14 @@ void mg_mqtt_broker_init(struct mg_mqtt_broker *brk, void *user_data);
*
*
* Basic usage:
* Basic usage:
*
*
* [source,c]
* ```c
* -----
* mg_mqtt_broker_init(&brk, NULL);
* mg_mqtt_broker_init(&brk, NULL);
*
*
* if ((nc = mg_bind(&mgr, address, mg_mqtt_broker)) == NULL) {
* if ((nc = mg_bind(&mgr, address, mg_mqtt_broker)) == NULL) {
* // fail;
* // fail;
* }
* }
* nc->user_data = &brk;
* nc->user_data = &brk;
*
-----
*
```
*
*
* New incoming connections will receive a `mg_mqtt_session` structure
* New incoming connections will receive a `mg_mqtt_session` structure
* in the connection `user_data`. The original `user_data` will be stored
* in the connection `user_data`. The original `user_data` will be stored
...
@@ -2914,10 +2911,12 @@ void mg_mqtt_broker(struct mg_connection *brk, int ev, void *data);
...
@@ -2914,10 +2911,12 @@ void mg_mqtt_broker(struct mg_connection *brk, int ev, void *data);
/*
/*
* Iterate over all mqtt sessions connections. Example:
* Iterate over all mqtt sessions connections. Example:
*
*
* struct mg_mqtt_session *s;
* ```c
* for (s = mg_mqtt_next(brk, NULL); s != NULL; s = mg_mqtt_next(brk, s)) {
* struct mg_mqtt_session *s;
* // Do something
* for (s = mg_mqtt_next(brk, NULL); s != NULL; s = mg_mqtt_next(brk, s)) {
* }
* // Do something
* }
* ```
*/
*/
struct
mg_mqtt_session
*
mg_mqtt_next
(
struct
mg_mqtt_broker
*
brk
,
struct
mg_mqtt_session
*
mg_mqtt_next
(
struct
mg_mqtt_broker
*
brk
,
struct
mg_mqtt_session
*
s
);
struct
mg_mqtt_session
*
s
);
...
@@ -3072,7 +3071,7 @@ size_t mg_dns_uncompress_name(struct mg_dns_message *msg, struct mg_str *name,
...
@@ -3072,7 +3071,7 @@ size_t mg_dns_uncompress_name(struct mg_dns_message *msg, struct mg_str *name,
* `ev_data` pointing to the parsed `struct mg_dns_message`.
* `ev_data` pointing to the parsed `struct mg_dns_message`.
*
*
* See
* See
*
https://github.com/cesanta/mongoose/tree/master/examples/captive_dns_server[captive_dns_server]
*
[captive_dns_server](https://github.com/cesanta/mongoose/tree/master/examples/captive_dns_server)
* example on how to handle DNS request and send DNS reply.
* example on how to handle DNS request and send DNS reply.
*/
*/
void
mg_set_protocol_dns
(
struct
mg_connection
*
nc
);
void
mg_set_protocol_dns
(
struct
mg_connection
*
nc
);
...
@@ -3127,8 +3126,7 @@ struct mg_dns_reply {
...
@@ -3127,8 +3126,7 @@ struct mg_dns_reply {
*
*
* Example:
* Example:
*
*
* [source,c]
* ```c
* -----
* reply = mg_dns_create_reply(&nc->send_mbuf, msg);
* reply = mg_dns_create_reply(&nc->send_mbuf, msg);
* for (i = 0; i < msg->num_questions; i++) {
* for (i = 0; i < msg->num_questions; i++) {
* rr = &msg->questions[i];
* rr = &msg->questions[i];
...
@@ -3137,7 +3135,7 @@ struct mg_dns_reply {
...
@@ -3137,7 +3135,7 @@ struct mg_dns_reply {
* }
* }
* }
* }
* mg_dns_send_reply(nc, &reply);
* mg_dns_send_reply(nc, &reply);
*
-----
*
```
*/
*/
struct
mg_dns_reply
mg_dns_create_reply
(
struct
mbuf
*
io
,
struct
mg_dns_reply
mg_dns_create_reply
(
struct
mbuf
*
io
,
struct
mg_dns_message
*
msg
);
struct
mg_dns_message
*
msg
);
...
@@ -3274,11 +3272,13 @@ int mg_resolve_from_hosts_file(const char *host, union socket_address *usa);
...
@@ -3274,11 +3272,13 @@ int mg_resolve_from_hosts_file(const char *host, union socket_address *usa);
*
*
* CoAP message format:
* CoAP message format:
*
*
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* ```
* |Ver| T | TKL | Code | Message ID | Token (if any, TKL bytes) ...
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* |Ver| T | TKL | Code | Message ID | Token (if any, TKL bytes) ...
* | Options (if any) ... |1 1 1 1 1 1 1 1| Payload (if any) ...
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* | Options (if any) ... |1 1 1 1 1 1 1 1| Payload (if any) ...
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
* ```
*/
*/
#ifndef CS_MONGOOSE_SRC_COAP_H_
#ifndef CS_MONGOOSE_SRC_COAP_H_
...
@@ -3367,11 +3367,11 @@ void mg_coap_free_options(struct mg_coap_message *cm);
...
@@ -3367,11 +3367,11 @@ void mg_coap_free_options(struct mg_coap_message *cm);
* and send it into `nc` connection.
* and send it into `nc` connection.
* Return 0 on success. On error, it is a bitmask:
* Return 0 on success. On error, it is a bitmask:
*
*
* -
#define MG_COAP_ERROR 0x10000
* -
`#define MG_COAP_ERROR 0x10000`
* -
#define MG_COAP_FORMAT_ERROR (MG_COAP_ERROR | 0x20000)
* -
`#define MG_COAP_FORMAT_ERROR (MG_COAP_ERROR | 0x20000)`
* -
#define MG_COAP_IGNORE (MG_COAP_ERROR | 0x40000)
* -
`#define MG_COAP_IGNORE (MG_COAP_ERROR | 0x40000)`
* -
#define MG_COAP_NOT_ENOUGH_DATA (MG_COAP_ERROR | 0x80000)
* -
`#define MG_COAP_NOT_ENOUGH_DATA (MG_COAP_ERROR | 0x80000)`
* -
#define MG_COAP_NETWORK_ERROR (MG_COAP_ERROR | 0x100000)
* -
`#define MG_COAP_NETWORK_ERROR (MG_COAP_ERROR | 0x100000)`
*/
*/
uint32_t
mg_coap_send_message
(
struct
mg_connection
*
nc
,
uint32_t
mg_coap_send_message
(
struct
mg_connection
*
nc
,
struct
mg_coap_message
*
cm
);
struct
mg_coap_message
*
cm
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment