libcoap
4.2.0
|
#include "coap_config.h"
#include <errno.h>
#include "libcoap.h"
#include "coap_debug.h"
#include "mem.h"
#include "net.h"
#include "coap_io.h"
#include "pdu.h"
#include "utlist.h"
#include "resource.h"
Go to the source code of this file.
Data Structures | |
struct | in6_pktinfo |
struct | in_pktinfo |
Macros | |
#define | SOL_IP IPPROTO_IP |
#define | UNUSED_PARAM |
#define | iov_len_t size_t |
#define | SIN6(A) ((struct sockaddr_in6 *)(A)) |
Functions | |
void | coap_free_endpoint (coap_endpoint_t *ep) |
static const char * | coap_socket_format_errno (int error) |
struct coap_endpoint_t * | coap_malloc_endpoint (void) |
void | coap_mfree_endpoint (struct coap_endpoint_t *ep) |
int | coap_socket_bind_udp (coap_socket_t *sock, const coap_address_t *listen_addr, coap_address_t *bound_addr) |
int | coap_socket_connect_tcp1 (coap_socket_t *sock, const coap_address_t *local_if, const coap_address_t *server, int default_port, coap_address_t *local_addr, coap_address_t *remote_addr) |
int | coap_socket_connect_tcp2 (coap_socket_t *sock, coap_address_t *local_addr, coap_address_t *remote_addr) |
int | coap_socket_bind_tcp (coap_socket_t *sock, const coap_address_t *listen_addr, coap_address_t *bound_addr) |
int | coap_socket_accept_tcp (coap_socket_t *server, coap_socket_t *new_client, coap_address_t *local_addr, coap_address_t *remote_addr) |
int | coap_socket_connect_udp (coap_socket_t *sock, const coap_address_t *local_if, const coap_address_t *server, int default_port, coap_address_t *local_addr, coap_address_t *remote_addr) |
void | coap_socket_close (coap_socket_t *sock) |
ssize_t | coap_socket_write (coap_socket_t *sock, const uint8_t *data, size_t data_len) |
ssize_t | coap_socket_read (coap_socket_t *sock, uint8_t *data, size_t data_len) |
ssize_t | coap_network_send (coap_socket_t *sock, const coap_session_t *session, const uint8_t *data, size_t datalen) |
void | coap_packet_get_memmapped (coap_packet_t *packet, unsigned char **address, size_t *length) |
Given a packet, set msg and msg_len to an address and length of the packet's data in memory. More... | |
void | coap_packet_set_addr (coap_packet_t *packet, const coap_address_t *src, const coap_address_t *dst) |
ssize_t | coap_network_read (coap_socket_t *sock, coap_packet_t *packet) |
Function interface for reading data. More... | |
unsigned int | coap_write (coap_context_t *ctx, coap_socket_t *sockets[], unsigned int max_sockets, unsigned int *num_sockets, coap_tick_t now) |
For applications with their own message loop, send all pending retransmits and return the list of sockets with events to wait for and the next timeout The application should call coap_read, then coap_write again when any condition below is true: More... | |
int | coap_run_once (coap_context_t *ctx, unsigned timeout_ms) |
const char * | coap_socket_strerror (void) |
ssize_t | coap_socket_send (coap_socket_t *sock, coap_session_t *session, const uint8_t *data, size_t data_len) |
void coap_free_endpoint | ( | coap_endpoint_t * | ep | ) |
Definition at line 901 of file coap_session.c.
struct coap_endpoint_t* coap_malloc_endpoint | ( | void | ) |
void coap_mfree_endpoint | ( | struct coap_endpoint_t * | ep | ) |
ssize_t coap_network_read | ( | coap_socket_t * | sock, |
struct coap_packet_t * | packet | ||
) |
Function interface for reading data.
This function returns the number of bytes that have been read, or a value less than zero on error. In case of an error, *packet
is set to NULL.
sock | Socket to read data from |
packet | Received packet metadata and payload. src and dst should be preset. |
Definition at line 923 of file coap_io.c.
ssize_t coap_network_send | ( | coap_socket_t * | sock, |
const coap_session_t * | session, | ||
const uint8_t * | data, | ||
size_t | datalen | ||
) |
void coap_packet_get_memmapped | ( | coap_packet_t * | packet, |
unsigned char ** | address, | ||
size_t * | length | ||
) |
void coap_packet_set_addr | ( | coap_packet_t * | packet, |
const coap_address_t * | src, | ||
const coap_address_t * | dst | ||
) |
int coap_run_once | ( | coap_context_t * | ctx, |
unsigned | timeout_ms | ||
) |
int coap_socket_accept_tcp | ( | coap_socket_t * | server, |
coap_socket_t * | new_client, | ||
coap_address_t * | local_addr, | ||
coap_address_t * | remote_addr | ||
) |
int coap_socket_bind_tcp | ( | coap_socket_t * | sock, |
const coap_address_t * | listen_addr, | ||
coap_address_t * | bound_addr | ||
) |
int coap_socket_bind_udp | ( | coap_socket_t * | sock, |
const coap_address_t * | listen_addr, | ||
coap_address_t * | bound_addr | ||
) |
void coap_socket_close | ( | coap_socket_t * | sock | ) |
int coap_socket_connect_tcp1 | ( | coap_socket_t * | sock, |
const coap_address_t * | local_if, | ||
const coap_address_t * | server, | ||
int | default_port, | ||
coap_address_t * | local_addr, | ||
coap_address_t * | remote_addr | ||
) |
int coap_socket_connect_tcp2 | ( | coap_socket_t * | sock, |
coap_address_t * | local_addr, | ||
coap_address_t * | remote_addr | ||
) |
int coap_socket_connect_udp | ( | coap_socket_t * | sock, |
const coap_address_t * | local_if, | ||
const coap_address_t * | server, | ||
int | default_port, | ||
coap_address_t * | local_addr, | ||
coap_address_t * | remote_addr | ||
) |
|
static |
ssize_t coap_socket_read | ( | coap_socket_t * | sock, |
uint8_t * | data, | ||
size_t | data_len | ||
) |
ssize_t coap_socket_send | ( | coap_socket_t * | sock, |
coap_session_t * | session, | ||
const uint8_t * | data, | ||
size_t | data_len | ||
) |
const char* coap_socket_strerror | ( | void | ) |
ssize_t coap_socket_write | ( | coap_socket_t * | sock, |
const uint8_t * | data, | ||
size_t | data_len | ||
) |
unsigned int coap_write | ( | coap_context_t * | ctx, |
coap_socket_t * | sockets[], | ||
unsigned int | max_sockets, | ||
unsigned int * | num_sockets, | ||
coap_tick_t | now | ||
) |
For applications with their own message loop, send all pending retransmits and return the list of sockets with events to wait for and the next timeout The application should call coap_read, then coap_write again when any condition below is true:
ctx | The CoAP context |
sockets | array of socket descriptors, filled on output |
max_sockets | size of socket array. |
num_sockets | pointer to the number of valid entries in the socket arrays on output |
now | Current time. |
Definition at line 1117 of file coap_io.c.