Rtos API example
tcp.h File Reference
TCP API (to be used from TCPIP thread)
See also TCP.
More...
Go to the source code of this file.
Data Structures | |
struct | tcp_pcb_listen |
the TCP protocol control block for listening pcbs More... | |
struct | tcp_pcb |
the TCP protocol control block More... | |
Typedefs | |
typedef err_t(* | tcp_accept_fn )(void *arg, struct tcp_pcb *newpcb, err_t err) |
Function prototype for tcp accept callback functions. | |
typedef err_t(* | tcp_recv_fn )(void *arg, struct tcp_pcb *tpcb, struct pbuf *p, err_t err) |
Function prototype for tcp receive callback functions. | |
typedef err_t(* | tcp_sent_fn )(void *arg, struct tcp_pcb *tpcb, u16_t len) |
Function prototype for tcp sent callback functions. | |
typedef err_t(* | tcp_poll_fn )(void *arg, struct tcp_pcb *tpcb) |
Function prototype for tcp poll callback functions. | |
typedef void(* | tcp_err_fn )(void *arg, err_t err) |
Function prototype for tcp error callback functions. | |
typedef err_t(* | tcp_connected_fn )(void *arg, struct tcp_pcb *tpcb, err_t err) |
Function prototype for tcp connected callback functions. | |
Functions | |
struct tcp_pcb * | tcp_new (void) |
Creates a new TCP protocol control block but doesn't place it on any of the TCP PCB lists. | |
struct tcp_pcb * | tcp_new_ip_type (u8_t type) |
Creates a new TCP protocol control block but doesn't place it on any of the TCP PCB lists. | |
void | tcp_arg (struct tcp_pcb *pcb, void *arg) |
Used to specify the argument that should be passed callback functions. | |
void | tcp_recv (struct tcp_pcb *pcb, tcp_recv_fn recv) |
Used to specify the function that should be called when a TCP connection receives data. | |
void | tcp_sent (struct tcp_pcb *pcb, tcp_sent_fn sent) |
Used to specify the function that should be called when TCP data has been successfully delivered to the remote host. | |
void | tcp_err (struct tcp_pcb *pcb, tcp_err_fn err) |
Used to specify the function that should be called when a fatal error has occurred on the connection. | |
void | tcp_accept (struct tcp_pcb *pcb, tcp_accept_fn accept) |
Used for specifying the function that should be called when a LISTENing connection has been connected to another host. | |
void | tcp_poll (struct tcp_pcb *pcb, tcp_poll_fn poll, u8_t interval) |
Used to specify the function that should be called periodically from TCP. | |
void | tcp_backlog_delayed (struct tcp_pcb *pcb) |
Delay accepting a connection in respect to the listen backlog: the number of outstanding connections is increased until tcp_backlog_accepted() is called. | |
void | tcp_backlog_accepted (struct tcp_pcb *pcb) |
A delayed-accept a connection is accepted (or closed/aborted): decreases the number of outstanding connections after calling tcp_backlog_delayed(). | |
void | tcp_recved (struct tcp_pcb *pcb, u16_t len) |
This function should be called by the application when it has processed the data. | |
err_t | tcp_bind (struct tcp_pcb *pcb, const ip_addr_t *ipaddr, u16_t port) |
Binds the connection to a local port number and IP address. | |
err_t | tcp_connect (struct tcp_pcb *pcb, const ip_addr_t *ipaddr, u16_t port, tcp_connected_fn connected) |
Connects to another host. | |
struct tcp_pcb * | tcp_listen_with_backlog_and_err (struct tcp_pcb *pcb, u8_t backlog, err_t *err) |
Set the state of the connection to be LISTEN, which means that it is able to accept incoming connections. | |
struct tcp_pcb * | tcp_listen_with_backlog (struct tcp_pcb *pcb, u8_t backlog) |
Set the state of the connection to be LISTEN, which means that it is able to accept incoming connections. | |
void | tcp_abort (struct tcp_pcb *pcb) |
Aborts the connection by sending a RST (reset) segment to the remote host. | |
err_t | tcp_close (struct tcp_pcb *pcb) |
Closes the connection held by the PCB. | |
err_t | tcp_shutdown (struct tcp_pcb *pcb, int shut_rx, int shut_tx) |
Causes all or part of a full-duplex connection of this PCB to be shut down. | |
err_t | tcp_write (struct tcp_pcb *pcb, const void *dataptr, u16_t len, u8_t apiflags) |
Write data for sending (but does not send it immediately). | |
void | tcp_setprio (struct tcp_pcb *pcb, u8_t prio) |
Sets the priority of a connection. | |
err_t | tcp_output (struct tcp_pcb *pcb) |
Find out what we can send and send it. |
Detailed Description
TCP API (to be used from TCPIP thread)
See also TCP.
Definition in file tcp.h.
Typedef Documentation
typedef err_t(* tcp_accept_fn)(void *arg, struct tcp_pcb *newpcb, err_t err) |
Function prototype for tcp accept callback functions.
Called when a new connection can be accepted on a listening pcb.
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
newpcb The new connection pcb err An error code if there has been an error accepting. Only return ERR_ABRT if you have called tcp_abort from within the callback function!
typedef err_t(* tcp_connected_fn)(void *arg, struct tcp_pcb *tpcb, err_t err) |
Function prototype for tcp connected callback functions.
Called when a pcb is connected to the remote side after initiating a connection attempt by calling tcp_connect().
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
tpcb The connection pcb which is connected err An unused error code, always ERR_OK currently ;-)
- Note:
- When a connection attempt fails, the error callback is currently called!
typedef void(* tcp_err_fn)(void *arg, err_t err) |
Function prototype for tcp error callback functions.
Called when the pcb receives a RST or is unexpectedly closed for any other reason.
- Note:
- The corresponding pcb is already freed when this callback is called!
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
err Error code to indicate why the pcb has been closed ERR_ABRT: aborted through tcp_abort or by a TCP timer ERR_RST: the connection was reset by the remote host
typedef err_t(* tcp_poll_fn)(void *arg, struct tcp_pcb *tpcb) |
Function prototype for tcp poll callback functions.
Called periodically as specified by
- See also:
- tcp_poll.
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
tpcb tcp pcb
- Returns:
- ERR_OK: try to send some data by calling tcp_output Only return ERR_ABRT if you have called tcp_abort from within the callback function!
typedef err_t(* tcp_recv_fn)(void *arg, struct tcp_pcb *tpcb, struct pbuf *p, err_t err) |
Function prototype for tcp receive callback functions.
Called when data has been received.
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
tpcb The connection pcb which received data p The received data (or NULL when the connection has been closed!) err An error code if there has been an error receiving Only return ERR_ABRT if you have called tcp_abort from within the callback function!
typedef err_t(* tcp_sent_fn)(void *arg, struct tcp_pcb *tpcb, u16_t len) |
Function prototype for tcp sent callback functions.
Called when sent data has been acknowledged by the remote side. Use it to free corresponding resources. This also means that the pcb has now space available to send new data.
- Parameters:
-
arg Additional argument to pass to the callback function (
- See also:
- tcp_arg())
- Parameters:
-
tpcb The connection pcb for which data has been acknowledged len The amount of bytes acknowledged
- Returns:
- ERR_OK: try to send some data by calling tcp_output Only return ERR_ABRT if you have called tcp_abort from within the callback function!
Function Documentation
void tcp_setprio | ( | struct tcp_pcb * | pcb, |
u8_t | prio | ||
) |
Sets the priority of a connection.
- Parameters:
-
pcb the tcp_pcb to manipulate prio new priority
Definition at line 1404 of file lwip_tcp.c.
Generated on Sun Jul 17 2022 08:25:36 by 1.7.2