41#define GNRC_SOCK_DYN_PORTRANGE_MIN (IANA_DYNAMIC_PORTRANGE_MIN) 
   45#define GNRC_SOCK_DYN_PORTRANGE_MAX (IANA_DYNAMIC_PORTRANGE_MAX) 
   50#define GNRC_SOCK_DYN_PORTRANGE_NUM (GNRC_SOCK_DYN_PORTRANGE_MAX - GNRC_SOCK_DYN_PORTRANGE_MIN + 1) 
   56#define GNRC_SOCK_DYN_PORTRANGE_ERR (0) 
   62#ifndef CONFIG_GNRC_SOCK_UDP_CHECK_REMOTE_ADDR 
   63#define CONFIG_GNRC_SOCK_UDP_CHECK_REMOTE_ADDR (1) 
   73#if IS_USED(MODULE_SOCK_AUX_LOCAL) || DOXYGEN 
   81#if IS_USED(MODULE_SOCK_AUX_TIMESTAMP) || DOXYGEN 
   84#if IS_USED(MODULE_SOCK_AUX_RSSI) || DOXYGEN 
 
   93#define GNRC_SOCK_RECV_AUX_FLAG_TIMESTAMP   0x01     
   94#define GNRC_SOCK_RECV_AUX_FLAG_RSSI        0x02     
  118    const uint8_t *p = (uint8_t *)&ep->
addr;
 
  119    for (uint8_t i = 0; i < 
sizeof(ep->
addr); i++) {
 
 
  135    memcpy(out, in, in_size);
 
  142    if ((netif != NULL) &&
 
 
Global UNIX address family definitions.
 
#define AF_INET6
internetwork address family with IPv6: UDP, TCP, etc.
 
#define assert(cond)
abort the program if assertion is false
 
Includes all essential GNRC network stack base modules.
 
static bool gnrc_ep_addr_any(const sock_ip_ep_t *ep)
Check if end point points to any address.
 
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.
 
static bool gnrc_af_not_supported(int af)
Checks if address family is not supported.
 
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 ...
 
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.
 
void gnrc_sock_create(gnrc_sock_reg_t *reg, gnrc_nettype_t type, uint32_t demux_ctx)
Create a sock internally.
 
gnrc_netif_t * gnrc_netif_iter(const gnrc_netif_t *prev)
Iterate over all network interfaces.
 
static bool gnrc_netif_highlander(void)
Check if there can only be one gnrc_netif_t interface.
 
gnrc_nettype_t
Definition of protocol types in the network stack.
 
struct gnrc_pktsnip gnrc_pktsnip_t
Type to represent parts (either headers or payload) of a packet, called snips.
 
struct gnrc_sock_reg gnrc_sock_reg_t
Forward declaration.
 
#define SOCK_ADDR_ANY_NETIF
Special netif ID for "any interface".
 
Raw IPv4/IPv6 sock definitions.
 
Definitions to register network protocol PIDs to use with GNRC communication interface.
 
Service Name and Transport Protocol Port Number Registry.
 
Representation of a network interface.
 
kernel_pid_t pid
PID of the network interface's thread.
 
Structure to retrieve auxiliary data from gnrc_sock_recv.
 
sock_ip_ep_t * local
local IP address PDU was received on
 
uint64_t * timestamp
timestamp PDU was received at in nanoseconds
 
int16_t * rssi
RSSI value of received PDU.
 
Abstract IP end point and end point for a raw IP sock object.
 
uint16_t netif
stack-specific network interface ID
 
union sock_ip_ep_t::@163366306165260125235131003334220031213173223254 addr
address
 
GNRC-specific types and function definitions.