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"
 Include dependency graph for gnrc_sock_internal.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.   | |
Internal helper functions for GNRC | |
| static bool | gnrc_af_not_supported (int af) | 
| Checks if address family is not supported.   | |
| 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 | 
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.