Internal GNRC-specific types and function definitions. More...
Internal GNRC-specific types and function definitions.
Definition in file gnrc_sock_internal.h.
#include <stdbool.h>
#include <stdint.h>
#include <string.h>
#include "mbox.h"
#include "net/af.h"
#include "net/gnrc.h"
#include "net/gnrc/netreg.h"
#include "net/iana/portrange.h"
#include "net/sock/ip.h"
#include "sock_types.h"
Go to the source code of this file.
Data Structures | |
struct | gnrc_sock_recv_aux_t |
Structure to retrieve auxiliary data from gnrc_sock_recv. More... | |
#define | GNRC_SOCK_DYN_PORTRANGE_MIN (IANA_DYNAMIC_PORTRANGE_MIN) |
Minimum port number in the dynamic portrange. | |
#define | GNRC_SOCK_DYN_PORTRANGE_MAX (IANA_DYNAMIC_PORTRANGE_MAX) |
Maximum port number in the dynamic portrange. | |
#define | GNRC_SOCK_DYN_PORTRANGE_NUM (GNRC_SOCK_DYN_PORTRANGE_MAX - GNRC_SOCK_DYN_PORTRANGE_MIN + 1) |
Available ports in the range for dynamic source port allocation. | |
#define | GNRC_SOCK_DYN_PORTRANGE_ERR (0) |
Error value indicating that no free port could be found in the dynamic port range. | |
#define | CONFIG_GNRC_SOCK_UDP_CHECK_REMOTE_ADDR (1) |
Check if remote address of a UDP packet matches the address the socket is bound to. | |
#define | GNRC_SOCK_RECV_AUX_FLAG_TIMESTAMP 0x01 |
Timestamp valid. | |
#define | GNRC_SOCK_RECV_AUX_FLAG_RSSI 0x02 |
RSSI valid. | |
static bool | gnrc_af_not_supported (int af) |
Internal helper functions for GNRC. | |
static bool | gnrc_ep_addr_any (const sock_ip_ep_t *ep) |
Check if end point points to any address. | |
static void | gnrc_ep_set (sock_ip_ep_t *out, const sock_ip_ep_t *in, size_t in_size) |
Initializes a sock end-point from a given and sets the network interface implicitly if there is only one potential interface. | |
void | gnrc_sock_create (gnrc_sock_reg_t *reg, gnrc_nettype_t type, uint32_t demux_ctx) |
Create a sock internally. | |
ssize_t | gnrc_sock_recv (gnrc_sock_reg_t *reg, gnrc_pktsnip_t **pkt, uint32_t timeout, sock_ip_ep_t *remote, gnrc_sock_recv_aux_t *aux) |
Receive a packet internally. | |
ssize_t | gnrc_sock_send (gnrc_pktsnip_t *payload, sock_ip_ep_t *local, const sock_ip_ep_t *remote, uint8_t nh) |
Send a packet internally. | |
#define CONFIG_GNRC_SOCK_UDP_CHECK_REMOTE_ADDR (1) |
Check if remote address of a UDP packet matches the address the socket is bound to.
Definition at line 63 of file gnrc_sock_internal.h.
#define GNRC_SOCK_DYN_PORTRANGE_ERR (0) |
Error value indicating that no free port could be found in the dynamic port range.
Definition at line 56 of file gnrc_sock_internal.h.
#define GNRC_SOCK_DYN_PORTRANGE_MAX (IANA_DYNAMIC_PORTRANGE_MAX) |
Maximum port number in the dynamic portrange.
Definition at line 45 of file gnrc_sock_internal.h.
#define GNRC_SOCK_DYN_PORTRANGE_MIN (IANA_DYNAMIC_PORTRANGE_MIN) |
Minimum port number in the dynamic portrange.
Definition at line 41 of file gnrc_sock_internal.h.
#define GNRC_SOCK_DYN_PORTRANGE_NUM (GNRC_SOCK_DYN_PORTRANGE_MAX - GNRC_SOCK_DYN_PORTRANGE_MIN + 1) |
Available ports in the range for dynamic source port allocation.
Definition at line 50 of file gnrc_sock_internal.h.
#define GNRC_SOCK_RECV_AUX_FLAG_RSSI 0x02 |
RSSI valid.
Definition at line 94 of file gnrc_sock_internal.h.
#define GNRC_SOCK_RECV_AUX_FLAG_TIMESTAMP 0x01 |
Timestamp valid.
Definition at line 93 of file gnrc_sock_internal.h.
|
inlinestatic |
Internal helper functions for GNRC.
Checks if address family is not supported
Definition at line 105 of file gnrc_sock_internal.h.
|
inlinestatic |
Check if end point points to any address.
Definition at line 115 of file gnrc_sock_internal.h.
|
inlinestatic |
Initializes a sock end-point from a given and sets the network interface implicitly if there is only one potential interface.
Definition at line 132 of file gnrc_sock_internal.h.