mirror of
https://github.com/cesanta/mongoose.git
synced 2025-01-02 03:27:52 +08:00
f443c64341
Until I read the doc and find how to limit the retention, otherwise it just eats all my ram and cpu and things start to fall apart. PUBLISHED_FROM=eb33fb44736f07b992270689217aca4af70513ff
128 lines
2.8 KiB
Plaintext
128 lines
2.8 KiB
Plaintext
==== mg_if_connect_tcp()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_connect_tcp(struct mg_connection *nc,
|
|
const union socket_address *sa);
|
|
----
|
|
Request that a TCP connection is made to the specified address.
|
|
|
|
==== mg_if_connect_udp()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_connect_udp(struct mg_connection *nc);
|
|
----
|
|
Open a UDP socket. Doesn't actually connect anything.
|
|
|
|
==== mg_if_connect_cb()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_connect_cb(struct mg_connection *nc, int err);
|
|
----
|
|
Callback invoked by connect methods. err = 0 -> ok, != 0 -> error.
|
|
|
|
==== mg_if_listen_tcp()
|
|
|
|
[source,c]
|
|
----
|
|
int mg_if_listen_tcp(struct mg_connection *nc, union socket_address *sa);
|
|
----
|
|
Set up a listening TCP socket on a given address. rv = 0 -> ok.
|
|
|
|
==== mg_if_accept_new_conn()
|
|
|
|
[source,c]
|
|
----
|
|
struct mg_connection *mg_if_accept_new_conn(struct mg_connection *lc);
|
|
----
|
|
Deliver a new TCP connection. Returns NULL in case on error (unable to
|
|
create connection, in which case interface state should be discarded.
|
|
This is phase 1 of the two-phase process - MG_EV_ACCEPT will be delivered
|
|
when mg_if_accept_tcp_cb is invoked.
|
|
|
|
==== mg_if_listen_udp()
|
|
|
|
[source,c]
|
|
----
|
|
int mg_if_listen_udp(struct mg_connection *nc, union socket_address *sa);
|
|
----
|
|
Request that a "listening" UDP socket be created.
|
|
|
|
==== mg_if_tcp_send()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_tcp_send(struct mg_connection *nc, const void *buf, size_t len);
|
|
----
|
|
Send functions for TCP and UDP. Sent data is copied before return.
|
|
|
|
==== mg_if_sent_cb()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_sent_cb(struct mg_connection *nc, int num_sent);
|
|
----
|
|
Callback that reports that data has been put on the wire.
|
|
|
|
==== mg_if_recv_tcp_cb()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_recv_tcp_cb(struct mg_connection *nc, void *buf, int len);
|
|
----
|
|
Receive callback.
|
|
buf must be heap-allocated and ownership is transferred to the core.
|
|
Core will acknowledge consumption by calling mg_if_recved.
|
|
|
|
==== mg_if_poll()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_poll(struct mg_connection *nc, time_t now);
|
|
----
|
|
Deliver a POLL event to the connection.
|
|
|
|
==== mg_if_timer()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_timer(struct mg_connection *c, double now);
|
|
----
|
|
Deliver a TIMER event to the connection.
|
|
|
|
==== mg_if_create_conn()
|
|
|
|
[source,c]
|
|
----
|
|
int mg_if_create_conn(struct mg_connection *nc);
|
|
----
|
|
Perform interface-related connection initialization. Return 1 on success.
|
|
|
|
==== mg_if_destroy_conn()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_destroy_conn(struct mg_connection *nc);
|
|
----
|
|
Perform interface-related cleanup on connection before destruction.
|
|
|
|
==== mg_if_get_conn_addr()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_if_get_conn_addr(struct mg_connection *nc, int remote,
|
|
union socket_address *sa);
|
|
----
|
|
Put connection's address into *sa, local (remote = 0) or remote.
|
|
|
|
==== mg_sock_set()
|
|
|
|
[source,c]
|
|
----
|
|
void mg_sock_set(struct mg_connection *nc, sock_t sock);
|
|
----
|
|
Associate a socket to a connection.
|
|
|