lwIP
2.0.2
Lightweight IP stack
|
Macros | |
#define | netconn_new(t) netconn_new_with_proto_and_callback(t, 0, NULL) |
#define | netconn_peer(c, i, p) netconn_getaddr(c,i,p,0) |
#define | netconn_addr(c, i, p) netconn_getaddr(c,i,p,1) |
#define | netconn_set_ipv6only(conn, val) |
#define | netconn_get_ipv6only(conn) (((conn)->flags & NETCONN_FLAG_IPV6_V6ONLY) != 0) |
Enumerations | |
enum | netconn_type { , NETCONN_TCP = 0x10, NETCONN_TCP_IPV6 = NETCONN_TCP | 0x08, NETCONN_UDP = 0x20, NETCONN_UDPLITE = 0x21, NETCONN_UDPNOCHKSUM = 0x22, NETCONN_UDP_IPV6 = NETCONN_UDP | 0x08, NETCONN_UDPLITE_IPV6 = NETCONN_UDPLITE | 0x08, NETCONN_UDPNOCHKSUM_IPV6 = NETCONN_UDPNOCHKSUM | 0x08, NETCONN_RAW = 0x40 } |
Functions | |
err_t | netconn_delete (struct netconn *conn) |
err_t | netconn_bind (struct netconn *conn, const ip_addr_t *addr, u16_t port) |
err_t | netconn_connect (struct netconn *conn, const ip_addr_t *addr, u16_t port) |
err_t | netconn_recv (struct netconn *conn, struct netbuf **new_buf) |
err_t | netconn_gethostbyname_addrtype (const char *name, ip_addr_t *addr, u8_t dns_addrtype) |
For use with TCP and UDP
#define netconn_addr | ( | c, | |
i, | |||
p | |||
) | netconn_getaddr(c,i,p,1) |
#define netconn_get_ipv6only | ( | conn | ) | (((conn)->flags & NETCONN_FLAG_IPV6_V6ONLY) != 0) |
TCP: Get the IPv6 ONLY status of netconn calls (see NETCONN_FLAG_IPV6_V6ONLY)
#define netconn_new | ( | t | ) | netconn_new_with_proto_and_callback(t, 0, NULL) |
Create new netconn connection
t | netconn_type |
#define netconn_peer | ( | c, | |
i, | |||
p | |||
) | netconn_getaddr(c,i,p,0) |
#define netconn_set_ipv6only | ( | conn, | |
val | |||
) |
TCP: Set the IPv6 ONLY status of netconn calls (see NETCONN_FLAG_IPV6_V6ONLY)
enum netconn_type |
Protocol family and type of the netconn
Enumerator | |
---|---|
NETCONN_TCP | TCP IPv4 |
NETCONN_TCP_IPV6 | TCP IPv6 |
NETCONN_UDP | UDP IPv4 |
NETCONN_UDPLITE | UDP IPv4 lite |
NETCONN_UDPNOCHKSUM | UDP IPv4 no checksum |
NETCONN_UDP_IPV6 | UDP IPv6 (dual-stack by default, unless you call netconn_set_ipv6only) |
NETCONN_UDPLITE_IPV6 | UDP IPv6 lite (dual-stack by default, unless you call netconn_set_ipv6only) |
NETCONN_UDPNOCHKSUM_IPV6 | UDP IPv6 no checksum (dual-stack by default, unless you call netconn_set_ipv6only) |
NETCONN_RAW | Raw connection IPv4 |
Bind a netconn to a specific local IP address and port. Binding one netconn twice might not always be checked correctly!
conn | the netconn to bind |
addr | the local IP address to bind the netconn to (use IP4_ADDR_ANY/IP6_ADDR_ANY to bind to all addresses) |
port | the local port to bind the netconn to (not used for RAW) |
Connect a netconn to a specific remote IP address and port.
conn | the netconn to connect |
addr | the remote IP address to connect to |
port | the remote port to connect to (no used for RAW) |
Close a netconn 'connection' and free its resources. UDP and RAW connection are completely closed, TCP pcbs might still be in a waitstate after this returns.
conn | the netconn to delete |
Execute a DNS query, only one IP address is returned
name | a string representation of the DNS host name to query |
addr | a preallocated ip_addr_t where to store the resolved IP address |
dns_addrtype | IP address type (IPv4 / IPv6) |
Receive data (in form of a netbuf containing a packet buffer) from a netconn
conn | the netconn from which to receive data |
new_buf | pointer where a new netbuf is stored when received data |