Zephyr Project API 4.1.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
socket_offload.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2018 Linaro Limited.
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12#ifndef ZEPHYR_INCLUDE_NET_SOCKET_OFFLOAD_H_
13#define ZEPHYR_INCLUDE_NET_SOCKET_OFFLOAD_H_
14
15#include <zephyr/net/net_ip.h>
16#include <zephyr/net/socket.h>
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
30 int (*getaddrinfo)(const char *node, const char *service,
31 const struct zsock_addrinfo *hints,
32 struct zsock_addrinfo **res);
34 void (*freeaddrinfo)(struct zsock_addrinfo *res);
35};
36
43
53
59void socket_offload_dns_enable(bool enable);
60
67#if defined(CONFIG_NET_SOCKETS_OFFLOAD)
69#else
70#define socket_offload_dns_is_enabled() false
71#endif /* defined(CONFIG_NET_SOCKETS_OFFLOAD) */
72
73
76int socket_offload_getaddrinfo(const char *node, const char *service,
77 const struct zsock_addrinfo *hints,
78 struct zsock_addrinfo **res);
79
80void socket_offload_freeaddrinfo(struct zsock_addrinfo *res);
81
84#ifdef __cplusplus
85}
86#endif
87
88#endif /* ZEPHYR_INCLUDE_NET_SOCKET_OFFLOAD_H_ */
BSD Sockets compatible API definitions.
IPv6 and IPv4 definitions.
void socket_offload_dns_enable(bool enable)
Enable/disable DNS offloading at runtime.
void socket_offload_dns_register(const struct socket_dns_offload *ops)
Register an offloaded socket DNS API interface.
int socket_offload_dns_deregister(const struct socket_dns_offload *ops)
Deregister an offloaded socket DNS API interface.
#define socket_offload_dns_is_enabled()
Check if DNS offloading is enabled.
Definition socket_offload.h:70
An offloaded Socket DNS API interface.
Definition socket_offload.h:28
int(* getaddrinfo)(const char *node, const char *service, const struct zsock_addrinfo *hints, struct zsock_addrinfo **res)
DNS getaddrinfo offloaded implementation API.
Definition socket_offload.h:30
void(* freeaddrinfo)(struct zsock_addrinfo *res)
DNS freeaddrinfo offloaded implementation API.
Definition socket_offload.h:34
Definition used when querying address information.
Definition socket.h:313