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

          Line data    Source code
       1           1 : /*
       2             :  * Copyright (c) 2018 Intel Corporation
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : /**
       8             :  * @file
       9             :  *
      10             :  * @brief CoAP implementation for Zephyr.
      11             :  */
      12             : 
      13             : #ifndef ZEPHYR_INCLUDE_NET_COAP_LINK_FORMAT_H_
      14             : #define ZEPHYR_INCLUDE_NET_COAP_LINK_FORMAT_H_
      15             : 
      16             : /**
      17             :  * @addtogroup coap COAP Library
      18             :  * @{
      19             :  */
      20             : 
      21             : #ifdef __cplusplus
      22             : extern "C" {
      23             : #endif
      24             : 
      25             : /**
      26             :  * This resource should be added before all other resources that should be
      27             :  * included in the responses of the .well-known/core resource if is to be used with
      28             :  * coap_well_known_core_get.
      29             :  */
      30           1 : #define COAP_WELL_KNOWN_CORE_PATH \
      31             :         ((const char * const[]) { ".well-known", "core", NULL })
      32             : 
      33             : /**
      34             :  * @brief Build a CoAP response for a .well-known/core CoAP request.
      35             :  *
      36             :  * @param resource Array of known resources, terminated with an empty resource
      37             :  * @param request A pointer to the .well-known/core CoAP request
      38             :  * @param response A pointer to a CoAP response, will be initialized
      39             :  * @param data A data pointer to be used to build the CoAP response
      40             :  * @param data_len The maximum length of the data buffer
      41             :  *
      42             :  * @return 0 in case of success or negative in case of error.
      43             :  */
      44           1 : int coap_well_known_core_get(struct coap_resource *resource,
      45             :                              const struct coap_packet *request,
      46             :                              struct coap_packet *response,
      47             :                              uint8_t *data, uint16_t data_len);
      48             : 
      49             : /**
      50             :  * @brief Build a CoAP response for a .well-known/core CoAP request.
      51             :  *
      52             :  * @param resources Array of known resources
      53             :  * @param resources_len Number of resources in the array
      54             :  * @param request A pointer to the .well-known/core CoAP request
      55             :  * @param response A pointer to a CoAP response, will be initialized
      56             :  * @param data A data pointer to be used to build the CoAP response
      57             :  * @param data_len The maximum length of the data buffer
      58             :  *
      59             :  * @return 0 in case of success or negative in case of error.
      60             :  */
      61           1 : int coap_well_known_core_get_len(struct coap_resource *resources,
      62             :                                  size_t resources_len,
      63             :                                  const struct coap_packet *request,
      64             :                                  struct coap_packet *response,
      65             :                                  uint8_t *data, uint16_t data_len);
      66             : 
      67             : /**
      68             :  * In case you want to add attributes to the resources included in the
      69             :  * 'well-known/core' "virtual" resource, the 'user_data' field should point
      70             :  * to a valid coap_core_metadata structure.
      71             :  */
      72           1 : struct coap_core_metadata {
      73             :         /** List of attributes to add */
      74           1 :         const char * const *attributes;
      75             :         /** User specific data */
      76           1 :         void *user_data;
      77             : };
      78             : 
      79             : #ifdef __cplusplus
      80             : }
      81             : #endif
      82             : 
      83             : /**
      84             :  * @}
      85             :  */
      86             : 
      87             : #endif /* ZEPHYR_INCLUDE_NET_COAP_LINK_FORMAT_H_ */

Generated by: LCOV version 1.14