RDK Documentation (Open Sourced RDK Components)
Device_IP_Diagnostics_TraceRoute_RouteHops.h
Go to the documentation of this file.
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 /**
21  * @file Device_IP_Diagnostics_TraceRoute_RouteHops.h
22  * @brief The header file provides TR069 device IP diagnostics trace route APIs.
23  */
24 
25 /**
26  *
27  * @defgroup TR69_HOSTIF_DEVICE_ROUTEHOPS_API TR-069 Object (Device.IP.Diagnostics.TraceRoute.RouteHops.{i}) Public APIs
28  * Describe the details about TR-069 Device IP Interface APIs specifications.
29  * @ingroup TR69_HOSTIF_DEVICE_IP
30  */
31 
32 
33 
34 /**
35 * @defgroup tr69hostif
36 * @{
37 * @defgroup hostif
38 * @{
39 **/
40 
41 
42 #ifndef DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_H_
43 #define DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_H_
44 
45 /*****************************************************************************
46  * TR069-SPECIFIC INCLUDE FILES
47  *****************************************************************************/
48 #include "parameter.h"
49 #include "paramaccess.h"
50 
51 
52 #ifdef __cplusplus
53 extern "C"
54 {
55 #endif
56 
57  /** @defgroup TR_069_DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_API TR-069 Device.IP.Diagnostics.TraceRoute.RouteHops object API.
58  * @ingroup TR_069_DEVICE_IP_DIAGNOSTICS_TRACEROUTE_API
59  *
60  * The Device.IP.Diagnostics.TraceRoute.RouteHops object contains the array of hop results returned.
61  *
62  * @note If a route could not be determined, this array will be empty.
63  *
64  */
65 
66  /** @addtogroup TR_069_DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_GETTER_API TR-069 Device.IP.Diagnostics.TraceRoute.RouteHops Getter API.
67  * @ingroup TR_069_DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_API
68  *
69  * \section dev_ip_diag_traceroute_hops_getter TR-069 Device.IP.Diagnostics.TraceRoute.RouteHops object Getter API
70  *
71  * This is the getter group of API for the <b>Device.IP.Diagnostics.TraceRoute.RouteHops.{i}</b> object.
72  *
73  * The interface for all functions is identical and is described here.
74  *
75  * @param[in] *name This is the complete path name of the parameter extracted from
76  * soap message, e.g. ::get_Device_IP_Diagnostics_TraceRoute_RouteHops_Host.
77  * In this case, the path is "Device.IP.Diagnostics.TraceRoute.RouteHops.{i}.Host".
78  * @param[in] *type Data type of parameter defined for TR-069. This is same as the
79  * data type used in the Xi3 data-model.xml file.
80  * (see parameter.h)
81  * @param[out] *value This is the value of the parameter requested by the ACS.
82  * (see paramaccess.h)
83  *
84  * @return The status of the operation.
85  * @retval OK If parameter requested was successfully fetched. (Same as <b>NO_ERROR</b>).
86  * @retval NO_ERROR If parameter requested was successfully fetched. (Same as <b>OK</b>).
87  * @retval DIAG_ERROR Diagnostic error.
88  * @retval ERR_??? Appropriate error value otherwise (see dimark_globals.h).
89  *
90  * @todo Clarify description of DIAG_ERROR.
91  *
92  * @{
93  */
94 
95 /**
96  * @brief This function provides the result parameter indicating the Host Name, if DNS is
97  * able to resolve it, or the IP Address of a hop along the discovered route.
98  *
99  * @param[in] name Source IP address.
100  * @param[in] type Type of the valid interface.
101  * @param[in] value Valid interface name or empty string.
102  *
103  * @return Returns an Integer value.
104  * @retval 0 If successfully get the address of a hop.
105  * @retval -1 If Not able to get the address of a hop.
106  * @retval -2 If Not handle getting the address of a hop.
107  * @ingroup TR69_HOSTIF_DEVICE_ROUTEHOPS_API
108  */
109 
110  int get_Device_IP_Diagnostics_TraceRoute_RouteHops_Host(const char *name, ParameterType type, ParameterValue *value);
111 
112 /**
113  * @brief This function provides the last IP address of the host returned for this hop.
114  *
115  * @note This may be an empty string. If this parameter is not an empty string, the "Host" will
116  * contain the Host Name returned from the reverse DNS query.
117  *
118  * @param[in] name Source IP address.
119  * @param[in] type Type of the valid interface.
120  * @param[in] value Valid interface name or empty string.
121  *
122  * @return Returns an Integer value.
123  * @retval 0 If successfully get the address of the host returned for a hop.
124  * @retval -1 If Not able to get the address of the host returned for a hop.
125  * @retval -2 If Not handle getting the address of the host returned for a hop.
126  * @ingroup TR69_HOSTIF_DEVICE_ROUTEHOPS_API
127  */
128 
129  int get_Device_IP_Diagnostics_TraceRoute_RouteHops_HostAddress(const char *name, ParameterType type, ParameterValue *value);
130 
131 /**
132  * @brief This function provides the error code returned for this hop. This code is directly
133  * from the ICMP CODE field.
134  *
135  * @param[in] name Source IP address.
136  * @param[in] type Type of the valid interface.
137  * @param[in] value Valid interface name or empty string.
138  *
139  * @return Returns an Integer value.
140  * @retval 0 If successfully get the error code returned for this hop.
141  * @retval -1 If Not able to get the error code returned for this hop.
142  * @retval -2 If Not handle getting the error code returned for this hop.
143  * @ingroup TR69_HOSTIF_DEVICE_ROUTEHOPS_API
144  */
145 
146  int get_Device_IP_Diagnostics_TraceRoute_RouteHops_ErrorCode(const char *name, ParameterType type, ParameterValue *value);
147 
148 /**
149  * @brief This function provides a comma-separated list (maximum length 16) of unsigned
150  * integers. Each list item contains one or more round trip times in milliseconds
151  * (one for each repetition) for this hop.
152  *
153  * @param[in] name Source IP address.
154  * @param[in] type Type of the valid interface.
155  * @param[in] value Valid interface name or empty string.
156  *
157  * @return Returns an Integer value.
158  * @retval 0 If successfully get the round trip times for a hop.
159  * @retval -1 If Not able to get the round trip times for a hop.
160  * @retval -2 If Not handle getting the round trip times for a hop.
161  * @ingroup TR69_HOSTIF_DEVICE_ROUTEHOPS_API
162  */
163 
164  int get_Device_IP_Diagnostics_TraceRoute_RouteHops_RTTimes(const char *name, ParameterType type, ParameterValue *value);
165 
166  /* End of TR_069_DEVICE_IP_DIAGNOSTICS_TRACEROUTE_GETTER_API doxygen group */
167  /**
168  * @}
169  */
170 
171 #ifdef __cplusplus
172 }
173 #endif
174 
175 #endif /* DEVICE_IP_DIAGNOSTICS_TRACEROUTE_ROUTEHOPS_H_ */
176 
177 
178 /** @} */
179 /** @} */
get_Device_IP_Diagnostics_TraceRoute_RouteHops_RTTimes
int get_Device_IP_Diagnostics_TraceRoute_RouteHops_RTTimes(const char *name, ParameterType type, ParameterValue *value)
This function provides a comma-separated list (maximum length 16) of unsigned integers....
get_Device_IP_Diagnostics_TraceRoute_RouteHops_HostAddress
int get_Device_IP_Diagnostics_TraceRoute_RouteHops_HostAddress(const char *name, ParameterType type, ParameterValue *value)
This function provides the last IP address of the host returned for this hop.
get_Device_IP_Diagnostics_TraceRoute_RouteHops_Host
int get_Device_IP_Diagnostics_TraceRoute_RouteHops_Host(const char *name, ParameterType type, ParameterValue *value)
This function provides the result parameter indicating the Host Name, if DNS is able to resolve it,...
get_Device_IP_Diagnostics_TraceRoute_RouteHops_ErrorCode
int get_Device_IP_Diagnostics_TraceRoute_RouteHops_ErrorCode(const char *name, ParameterType type, ParameterValue *value)
This function provides the error code returned for this hop. This code is directly from the ICMP CODE...