Raw IPv4/IPv6 sock definitions. More...
Raw IPv4/IPv6 sock definitions.
Definition in file ip.h.
#include <errno.h>
#include <stdint.h>
#include <stdlib.h>
#include <sys/types.h>
#include "net/sock.h"
#include "sock_types.h"
Go to the source code of this file.
Data Structures | |
struct | sock_ip_aux_rx_t |
Auxiliary data provided when receiving using an IP sock object. More... | |
struct | sock_ip_aux_tx_t |
Auxiliary data provided when sending using an IP sock object. More... | |
Typedefs | |
typedef struct sock_ip | sock_ip_t |
Type for a raw IPv4/IPv6 sock object. | |
Functions | |
int | sock_ip_create (sock_ip_t *sock, const sock_ip_ep_t *local, const sock_ip_ep_t *remote, uint8_t proto, uint16_t flags) |
Creates a new raw IPv4/IPv6 sock object. | |
void | sock_ip_close (sock_ip_t *sock) |
Closes a raw IPv4/IPv6 sock object. | |
int | sock_ip_get_local (sock_ip_t *sock, sock_ip_ep_t *ep) |
Gets the local end point of a raw IPv4/IPv6 sock object. | |
int | sock_ip_get_remote (sock_ip_t *sock, sock_ip_ep_t *ep) |
Gets the remote end point of a raw IPv4/IPv6 sock object. | |
ssize_t | sock_ip_recv_aux (sock_ip_t *sock, void *data, size_t max_len, uint32_t timeout, sock_ip_ep_t *remote, sock_ip_aux_rx_t *aux) |
Receives a message over IPv4/IPv6 from remote end point. | |
static ssize_t | sock_ip_recv (sock_ip_t *sock, void *data, size_t max_len, uint32_t timeout, sock_ip_ep_t *remote) |
Receives a message over IPv4/IPv6 from remote end point. | |
ssize_t | sock_ip_recv_buf_aux (sock_ip_t *sock, void **data, void **buf_ctx, uint32_t timeout, sock_ip_ep_t *remote, sock_ip_aux_rx_t *aux) |
Provides stack-internal buffer space containing an IPv4/IPv6 message from remote end point. | |
static ssize_t | sock_ip_recv_buf (sock_ip_t *sock, void **data, void **buf_ctx, uint32_t timeout, sock_ip_ep_t *remote) |
Provides stack-internal buffer space containing an IPv4/IPv6 message from remote end point. | |
ssize_t | sock_ip_send_aux (sock_ip_t *sock, const void *data, size_t len, uint8_t proto, const sock_ip_ep_t *remote, sock_ip_aux_tx_t *aux) |
Sends a message over IPv4/IPv6 to remote end point. | |
static ssize_t | sock_ip_send (sock_ip_t *sock, const void *data, size_t len, uint8_t proto, const sock_ip_ep_t *remote) |
Sends a message over IPv4/IPv6 to remote end point. | |