LCOV - code coverage report
Current view: top level - zephyr/net - socket_offload.h Hit Total Coverage
Test: new.info Lines: 5 5 100.0 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           1 : /*
       2             :  * Copyright (c) 2018 Linaro Limited.
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : /**
       8             :  * @file
       9             :  * @brief Socket Offload Redirect API
      10             :  */
      11             : 
      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
      19             : extern "C" {
      20             : #endif
      21             : 
      22             : /**
      23             :  * @brief An offloaded Socket DNS API interface
      24             :  *
      25             :  * It is assumed that these offload functions follow the
      26             :  * POSIX socket API standard for arguments, return values and setting of errno.
      27             :  */
      28           1 : struct socket_dns_offload {
      29             :         /** DNS getaddrinfo offloaded implementation API */
      30           1 :         int (*getaddrinfo)(const char *node, const char *service,
      31             :                            const struct zsock_addrinfo *hints,
      32             :                            struct zsock_addrinfo **res);
      33             :         /** DNS freeaddrinfo offloaded implementation API */
      34           1 :         void (*freeaddrinfo)(struct zsock_addrinfo *res);
      35             : };
      36             : 
      37             : /**
      38             :  * @brief Register an offloaded socket DNS API interface.
      39             :  *
      40             :  * @param ops A pointer to the offloaded socket DNS API interface.
      41             :  */
      42           1 : void socket_offload_dns_register(const struct socket_dns_offload *ops);
      43             : 
      44             : /** @cond INTERNAL_HIDDEN */
      45             : 
      46             : int socket_offload_getaddrinfo(const char *node, const char *service,
      47             :                                const struct zsock_addrinfo *hints,
      48             :                                struct zsock_addrinfo **res);
      49             : 
      50             : void socket_offload_freeaddrinfo(struct zsock_addrinfo *res);
      51             : 
      52             : /** @endcond */
      53             : 
      54             : #ifdef __cplusplus
      55             : }
      56             : #endif
      57             : 
      58             : #endif /* ZEPHYR_INCLUDE_NET_SOCKET_OFFLOAD_H_ */

Generated by: LCOV version 1.14