RDK Documentation (Open Sourced RDK Components)
Device_DeviceInfo.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_DeviceInfo.h
22  * @brief The header file provides TR69 device information APIs.
23  */
24 
25 /**
26  * @defgroup TR69_HOSTIF_DEVICEINFO TR-069 Object (Device.DeviceInfo)
27  *
28  * TR069 is a technical specification entitled CPE WAN Management Protocol (CWMP). It
29  * defines an application layer protocol for remote management of end-user devices. As
30  * a bidirectional SOAP/HTTP-based protocol, it provides the communication between
31  * customer-premises equipment (CPE) and Auto Configuration Servers (ACS).
32  *
33  * The TR-069 Client API lists the TR-069 APIs that will be available for Xi3 client
34  * applications and those that need to be implemented at the stub layer.
35  * @ingroup TR69_HOSTIF_PROFILE
36  *
37  * @defgroup TR69_HOSTIF_PROFILE TR-069 Host Interface Profile
38  * @par Trace Route Diagnostics - TR-069 profile
39  *
40  * Tracing the routing path to a given destination machine is very important diagnostic tool
41  * for administrators and service providers.Trace route utility is provided in many operating
42  * systems today. Its main purpose is to find out the route IP packets take to reach a specific
43  * destination. It gives indication on the routers in between and round trip time of each probe.
44  * This utility sends UDP, TCP or ICMP probes with small TTL and listen for ICMP 'time exceeded'
45  * reply. It starts with TTL 1 to find out the first hop, TTL 2 to find out the second hop and
46  * so on.
47  *
48  * @par Trace route utility provides options such as:
49  * - Destination Host IP address or FQDN.
50  * - Use ICMP, UDP or TCP.
51  * - Use IPv4 or IPv6
52  * - Packet size : Valid in case of ICMP and UDP. Not applicable if TCP is chosen. TCP probe always
53  * goes with SYN flag.
54  * - Port: Port number to use for destination port of the UDP or TCP probe. In case of ICMP, it is
55  * used as sequence number.
56  * - TOS: TOS value to use in the IP header of probe packet.
57  * - Link interface to use: Utility uses IP address of this link as source IP of the probe packet.
58  * if not specified, default is to use link determined by route.
59  * - Gateway IP address: This is mainly to select the right link, if there are multiple links on the host.
60  * Default is 'based on route'.
61  * - Maximum TTL: Indicates the maximum number of hops to discover. Default : 30
62  * - Number of Probes: Number of probe messages to each hop. Default 3.
63  * - Wait time: wait time to wait for the response to probe. Default : 5 seconds.
64  * - Send interval: Interval between probe messages to a hop: Default 0 seconds.
65  *
66  * @ingroup TR69_HOSTIF
67  * @defgroup TR69_HOSTIF_DEVICEINFO_IF TR-069 Object (Device.DeviceInfo.Interface)
68  * This object contains general device information such as
69  * @ingroup TR69_HOSTIF_DEVICEINFO
70  *
71  * @defgroup TR69_HOSTIF_DEVICEINFO_API TR-069 Object (Device.DeviceInfo Interface.{i}) Public APIs
72  * Describe the details about RDK TR69 DeviceInfo APIs specifications.
73  * @ingroup TR69_HOSTIF_DEVICEINFO_IF
74  *
75  * @defgroup TR69_HOSTIF_DEVICEINFO_CLASSES TR-069 Object (Device.DeviceInfo Interface.{i}) Public Classes
76  * Describe the details about classes used in TR69 DeviceInfo.
77  * @ingroup TR69_HOSTIF_DEVICEINFO_IF
78  */
79 
80 
81 /** @defgroup TR_069_API TR-069 HAL API
82  * @ingroup COMCAST_RDK_HAL
83  *
84  * TR069 is a technical specification entitled CPE WAN Management Protocol (CWMP). It
85  * defines an application layer protocol for remote management of end-user devices. As
86  * a bidirectional SOAP/HTTP-based protocol, it provides the communication between
87  * customer-premises equipment (CPE) and Auto Configuration Servers (ACS).
88  *
89  * The TR-069 Client API lists the TR-069 APIs that will be available for Xi3 client
90  * applications and those that need to be implemented at the stub layer.
91  *
92  */
93 
94 
95 
96 /**
97 * @defgroup tr69hostif
98 * @{
99 * @defgroup hostif
100 * @{
101 **/
102 
103 
104 #include <string>
105 #ifndef DEVICE_DEVICEINFO_H_
106 #define DEVICE_DEVICEINFO_H_
107 
108 /*****************************************************************************
109  * TR069-SPECIFIC INCLUDE FILES
110  *****************************************************************************/
111 #include "hostIf_main.h"
112 #include "hostIf_tr69ReqHandler.h"
113 #include "hostIf_utils.h"
114 
115 #ifndef NEW_HTTP_SERVER_DISABLE
116 #include "XrdkCentralComRFCStore.h"
117 #include "XrdkCentralComRFC.h"
118 #else
119 #include "XrdkCentralComRFC.h"
120 #endif
121 #include "XrdkCentralComBSStore.h"
122 #include "hostIf_updateHandler.h"
123 
124 #define CDL_FLASH_FILE "/opt/cdl_flashed_file_name"
125 #define CURENT_FW_FILE "/tmp/currently_running_image_name"
126 #define LOG_UPLOAD_SCR "/lib/rdk/UploadLogsNow.sh"
127 #define CURRENT_LOG_UPLOAD_STATUS "/opt/loguploadstatus.txt"
128 
129 #define XRDK_BOOT_TIME "Device.DeviceInfo.X_RDKCENTRAL-COM_BootTime"
130 #define xFirmwareDownloadNow_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_FirmwareDownloadNow" /* boolean [w] Trigger download on set true. */
131 #define X_RDKCENTRAL_COM_LastRebootReason "Device.DeviceInfo.X_RDKCENTRAL-COM_LastRebootReason"
132 #define X_RDKCENTRAL_COM_Experience "Device.DeviceInfo.X_RDKCENTRAL-COM_Experience"
133 #define X_RDK_FirmwareName "Device.DeviceInfo.X_RDK_FirmwareName"
134 
135 /* Profile: X_RDKCENTRAL-COM_RDKDownloadManager. */
136 #define X_RDKDownloadManager_InstallPackage "Device.DeviceInfo.X_RDKCENTRAL-COM_RDKDownloadManager.InstallPackage"
137 /* Profile: X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging. */
138 #define xOpsDMUploadLogsNow_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMUploadLogsNow"
139 #define xOpsDMLogsUploadStatus_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMLogsUploadStatus"
140 #define xOpsDMMoCALogEnabled "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogEnabled"
141 #define xOpsDMMoCALogPeriod "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogPeriod"
142 /* Profile: X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH. */
143 #define xOpsReverseSshTrigger_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshTrigger"
144 #define xOpsReverseSshArgs_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshArgs"
145 #define xOpsReverseSshStatus_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshStatus"
146 #define xOpsForwardSshEnable_STR "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ForwardSSH.Enable"
147 /* Profile: X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC. */
148 #define X_OPS_RPC_PROFILE "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC."
149 #define X_OPS_RPC_REBOOTNOW "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.RebootNow"
150 #define X_OPS_RPC_DEV_MANAGEABLE_NOTIFICATION "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.DeviceManageableNotification"
151 #define X_OPS_RPC_FW_DNLD_STARTED_NOTIFICATION "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.FirmwareDownloadStartedNotification"
152 #define X_OPS_RPC_FW_DNLD_COMPLETED_NOTIFICATION "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.FirmwareDownloadCompletedNotification"
153 #define X_OPS_RPC_REBOOT_PENDING_NOTIFICATION "Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.RebootPendingNotification"
154 #define X_RDK_RFC_MANGEBLENOTIFICATION_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.ManageableNotification.Enable"
155 /* Profile: X_RDKCENTRAL-COM_RFC */
156 #define TR181_RFC_PREFIX "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC"
157 #define TR181_RFC_RESET_DATA_START "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Control.ClearDB"
158 #define TR181_RFC_RESET_DATA_END "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Control.ClearDBEnd"
159 #define HDR_DV_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.DolbyVision.Enable"
160 /* Profile: X_RDKCENTRAL-COM_RFC.Feature */
161 #define RFC_WL_ROAM_TRIGGER_RF "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.RoamTrigger"
162 #define MS12_DAPV2_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.MS12.DAPv2_Enable"
163 #define MS12_DE_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.MS12.DE_Enable"
164 #define LE_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.LoudnessEquivalence.Enable"
165 #define HDR_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.HdrEnable.Enable"
166 #define UHD_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.UhdEnable.Enable"
167 #define XRE_CONTAINER_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.LXC.XRE.Enable"
168 #define TR181_AUTOREBOOT_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.AutoReboot.Enable"
169 #define SHORTS_RFC_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.SHORTS.Enable"
170 /* Profile: X_RDKCENTRAL-COM_RFC.Control */
171 #define RFC_CTL_RETRIEVE_NOW "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Control.RetrieveNow"
172 /* Profile: X_RDKCENTRAL-COM_IPRemoteSupport */
173 #define IPREMOTE_SUPPORT "Device.DeviceInfo.X_RDKCENTRAL-COM_IPRemoteSupport.Enable"
174 #define IPREMOTE_IPADDRESS "Device.DeviceInfo.X_RDKCENTRAL-COM_IPRemoteSupport.IPAddr"
175 #define IPREMOTE_MACADDRESS "Device.DeviceInfo.X_RDKCENTRAL-COM_IPRemoteSupport.MACAddr"
176 /* Profile: X_RDKCENTRAL-COM_XRPolling */
177 #define XRPOLLING_ACTION "Device.DeviceInfo.X_RDKCENTRAL-COM_XRPolling.Action"
178 
179 #define PARTNER_ID "Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.PartnerId"
180 
181 #define FWDNLD_DEFER_REBOOT "Device.DeviceInfo.X_RDKCENTRAL-COM_FirmwareDownloadDeferReboot"
182 
183 /* Profile: X_RDKCENTRAL-COM_RDKRemoteDebugger */
184 #ifdef USE_REMOTE_DEBUGGER
185 #define RDK_REMOTE_DEBUGGER_ENABLE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.RDKRemoteDebugger.Enable"
186 #define RDK_REMOTE_DEBUGGER_ISSUETYPE "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.RDKRemoteDebugger.IssueType"
187 #endif
188 
189 #define APPARMOR_BLOCKLIST_PROCESS "Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.NonRootSupport.ApparmorBlocklist"
190 /**
191  * @brief This class provides the interface for getting device information.
192  * @ingroup TR69_HOSTIF_DEVICEINFO_CLASSES
193  */
195 
196  static GHashTable *ifHash;
197 
198  static GHashTable *m_notifyHash;
199 
200  static GMutex *m_mutex;
201 
202  int dev_id;
203 
204  hostIf_DeviceInfo(int dev_id);
205 
207 
208  bool bCalledSoftwareVersion;
209  bool bCalledX_COMCAST_COM_STB_IP;
210  bool bCalledX_COMCAST_COM_FirmwareFilename;
211  bool bCalledManufacturer;
212  bool bCalledManufacturerOUI;
213  bool bCalledModelName;
214  bool bCalledHardwareVersion;
215  bool bCalledDeviceMAC;
216  bool bCalledSerialNumber;
217  bool bCalledProductClass;
218  bool bCalledAdditionalSoftwareVersion;
219 
220  char backupSoftwareVersion[_BUF_LEN_16];
221  char backupX_COMCAST_COM_STB_IP[_BUF_LEN_64];
222  char backupX_COMCAST_COM_FirmwareFilename[_BUF_LEN_64];
223  char backupSerialNumber[_BUF_LEN_16];
224  char backupProductClass[_BUF_LEN_16];
225  char backupManufacturer[_BUF_LEN_16];
226  char backupManufacturerOUI[_BUF_LEN_16];
227  char backupModelName[_BUF_LEN_16];
228  char backupHardwareVersion[_BUF_LEN_16];
229  char backupDeviceMAC[_BUF_LEN_32];
230  char backupAdditionalSoftwareVersion[_BUF_LEN_16];
231 
232  static string m_xFirmwareDownloadProtocol;
233  static string m_xFirmwareDownloadURL;
234  static string m_xFirmwareToDownload;
235  static bool m_xFirmwareDownloadNow;
236  static bool m_xFirmwareDownloadUseCodebig;
237  static bool m_xFirmwareDownloadDeferReboot;
238 
239 #ifndef NEW_HTTP_SERVER_DISABLE
240  static XRFCStore *m_rfcStore;
241  static XRFCStorage m_rfcStorage;
242 #else
243  static XRFCStorage m_rfcStorage;
244 #endif
245  static XBSStore *m_bsStore;
246  static string m_xrPollingAction;
247 
248  std::string m_strXOpsDevManageableNotification;
249  std::string m_strXOpsRPCFwDwldStartedNotification;
250  bool m_bXOpsRPCFwDwldCompletedNotification;
251 
252  string getEstbIp();
253  bool isRsshactive();
254  bool isShortsEnabled();
255  int findLocalPortAvailable();
256  size_t findIgnoreCase (std::string haystack, std::string needle, size_t pos = 0);
257  string getStbMacIf_fr_devProperties();
258 
259  int set_xRDKCentralComTelemetryRFCEnable(HOSTIF_MsgData_t *);
260  int set_xRDKCentralComHdrRFCEnable(HOSTIF_MsgData_t *);
261  int set_xRDKCentralComUhdRFCEnable(HOSTIF_MsgData_t *);
262  int set_xRDKCentralComXREContainerRFCEnable(HOSTIF_MsgData_t *);
263  int set_xRDKCentralComRFCLoudnessEquivalenceEnable(HOSTIF_MsgData_t *);
264 
265  // This is to set wl roam_trigger
266  int set_xRDKCentralComRFCRoamTrigger(HOSTIF_MsgData_t *);
267 
268  int set_xRDKCentralComRFCRetrieveNow(HOSTIF_MsgData_t *);
269  int set_xRDKCentralComApparmorBlocklist(HOSTIF_MsgData_t *);
270 #ifdef ENABLE_LLAMA_PLATCO
271  int set_xRDKCentralComRFCVideoTelFreq(HOSTIF_MsgData_t *);
272 #endif
273 
274  /* AutoReboot handlers */
275  int set_xRDKCentralComRFCAutoRebootUptime(HOSTIF_MsgData_t*);
276  int set_xRDKCentralComRFCAutoRebootEnable(HOSTIF_MsgData_t*);
277  int ScheduleAutoReboot(bool);
278 
279  int set_xRDKCentralComNewNtpEnable(HOSTIF_MsgData_t *);
280 
281  int get_xRDKCentralComRFCAccountId (HOSTIF_MsgData_t *);
282  int get_xOpsDeviceMgmtRPCRebootNow (HOSTIF_MsgData_t *);
283  int get_xOpsRPCDevManageableNotification(HOSTIF_MsgData_t *);
284  int get_xOpsRPCFwDwldStartedNotification(HOSTIF_MsgData_t *);
285  int get_xOpsRPCFwDwldCompletedNotification(HOSTIF_MsgData_t*);
286  int get_xOpsRPCRebootPendingNotification(HOSTIF_MsgData_t*);
287  int set_xOpsDeviceMgmtRPCRebootNow (HOSTIF_MsgData_t *);
288  int set_xOpsRPCDevManageableNotification(HOSTIF_MsgData_t *);
289  int set_xOpsRPCFwDwldStartedNotification(HOSTIF_MsgData_t *);
290  int set_xOpsRPCFwDwldCompletedNotification(HOSTIF_MsgData_t*);
291  int set_xOpsRPCRebootPendingNotification(HOSTIF_MsgData_t*);
292  static void systemMgmtTimePathMonitorThr();
293 
294 public:
295 
296  static hostIf_DeviceInfo *getInstance(int dev_id);
297 
298  static void closeInstance(hostIf_DeviceInfo *);
299 
300  static GList* getAllInstances();
301 
302  static void closeAllInstances();
303 
304  static void getLock();
305 
306  static void releaseLock();
307 
308  static void send_DeviceManageableNotification();
309 
310  GHashTable* getNotifyHash();
311 
312 // void runSystemMgmtTimePathMonitor();
313  /**
314  * Description. This is the getter api for DeviceInfo for
315  * Device.DeviceInfo Profile.
316  *
317  * @param[in] name Complete path name of the parameter.
318  * @param[in] type It is a user data type of ParameterType.
319  * @param[out] value It is the value of the parameter.
320  *
321  * @retval OK if successful.
322  * @retval XXX_ERR_BADPARAM if a bad parameter was supplied.
323  *
324  * @execution Synchronous.
325  * @sideeffect None.
326  *
327  * @note This function must not suspend and must not invoke any blocking system
328  * calls. It should probably just a device inventory message from the platform.
329  *
330  * @see XXX_SomeOtherFunction.
331  */
332 
333  /**
334  * @brief get_Device_DeviceInfo_Manufacturer.
335  *
336  * This function provides the manufacture information.
337  * The manufacturer of the CPE (human readable string).
338  *
339  * @return The status of the operation.
340  *
341  * @retval OK if DeviceInfo_Manufacturer was successfully fetched.
342  :1
343  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
344  *
345  * @sideeffect All necessary structures and buffers are deallocated.
346  * @execution Synchronous.
347  *
348  * @see get_Device_DeviceInfo_ManufacturerOUI.
349  */
350  int get_Device_DeviceInfo_Manufacturer(HOSTIF_MsgData_t *, bool *pChanged = NULL);
351 
352  /**
353  * @brief get_Device_DeviceInfo_Manufacturer.
354  *
355  * This function provides the manufactureOUT information.
356  *
357  * Organizationally unique identifier of the device manufacturer. Represented
358  * as a six hexadecimal-digit value using all upper-case letters and
359  * including any leading zeros. Possible patterns:
360  *
361  * [0-9A-F]{6}
362  *
363  * The value MUST be a valid OUI as defined in [OUI].
364  *
365  * This value MUST remain fixed over the lifetime of the device, including across
366  * firmware updates. Any change would indicate that it's a new device and would
367  * therefore require a BOOTSTRAP Inform.
368  *
369  * @return The status of the operation.
370  *
371  * @retval OK if ManufacturerOUI was successfully fetched.
372  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
373  *
374  * @sideeffect All necessary structures and buffers are deallocated.
375  * @execution Synchronous.
376  *
377  * @see get_Device_DeviceInfo_Manufacturer.
378  */
379  int get_Device_DeviceInfo_ManufacturerOUI(HOSTIF_MsgData_t *, bool *pChanged = NULL);
380 
381 
382  /**
383  * @brief get_Device_DeviceInfo_ModelName.
384  *
385  * This function provides the Model name of the CPE (human readable string)
386  * Device.
387  * This MUST be based on Comcast_X_HW* specification and of the format TUVVVWXY.
388  *
389  * @return The status of the operation.
390  *
391  * @retval OK if ManufacturerOUI was successfully fetched.
392  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
393  *
394  * @sideeffect All necessary structures and buffers are deallocated.
395  * @execution Synchronous.
396  *
397  * @see get_Device_DeviceInfo_Manufacturer.
398  */
399  int get_Device_DeviceInfo_ModelName(HOSTIF_MsgData_t *, bool *pChanged = NULL);
400 
401  /**
402  * @brief get_Device_DeviceInfo_Description.
403  *
404  * This function provides the A full description of the CPE device
405  * (human readable string).
406  * Device. *
407  *
408  * @return The status of the operation.
409  *
410  * @retval OK if Description is successfully fetched.
411  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
412  *
413  * @sideeffect All necessary structures and buffers are deallocated.
414  * @execution Synchronous.
415  *
416  * @see get_Device_DeviceInfo_Description.
417  */
418  int get_Device_DeviceInfo_Description(HOSTIF_MsgData_t *, bool *pChanged = NULL);
419 
420  /**
421  * @brief get_Device_DeviceInfo_ProductClass.
422  *
423  * This function provides the Identifier of the class of product for which
424  * the serial number applies. That is, for a given manufacturer,
425  * this parameter is used to identify the product or class of product
426  * over which the SerialNumber parameter is unique.
427  *
428  * This value MUST remain fixed over the lifetime of the device, including
429  * across firmware updates. Any change would indicate that it's a new device
430  * and would therefore require a BOOTSTRAP Inform.
431  *
432  * @return The status of the operation.
433  *
434  * @retval OK if it is successful.
435  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
436  *
437  * @sideeffect All necessary structures and buffers are deallocated.
438  * @execution Synchronous.
439  *
440  * @see get_Device_DeviceInfo_Description.
441  */
442  int get_Device_DeviceInfo_ProductClass(HOSTIF_MsgData_t *, bool *pChanged = NULL);
443 
444  /**
445  * @brief get_Device_DeviceInfo_SerialNumber.
446  *
447  * This function provides the Identifier of the particular device that is
448  * unique for the indicated class of product and manufacturer.
449  * This is the Serial Number of the box.
450  *
451  * This value MUST remain fixed over the lifetime of the device, including
452  * across firmware updates. Any change would indicate that it's a new device
453  * and would therefore require a BOOTSTRAP Inform.
454  *
455  * @return The status of the operation.
456  *
457  * @retval OK if it is successful.
458  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
459  *
460  * @sideeffect All necessary structures and buffers are deallocated.
461  * @execution Synchronous.
462  *
463  * @see get_Device_DeviceInfo_ProductClass.
464  */
465  int get_Device_DeviceInfo_SerialNumber(HOSTIF_MsgData_t *, bool *pChanged = NULL);
466 
467  /**
468  * @brief get_Device_DeviceInfo_HardwareVersion.
469  *
470  * This function identifying the particular CPE model and version.
471  * This MUST be based on Comcast_X_HW* specification and of the format VM.m.R.
472  *
473  * @return The status of the operation.
474  *
475  * @retval OK if it is successful.
476  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
477  *
478  * @sideeffect All necessary structures and buffers are deallocated.
479  * @execution Synchronous.
480  *
481  * @see get_Device_DeviceInfo_ProductClass.
482  */
483  int get_Device_DeviceInfo_HardwareVersion(HOSTIF_MsgData_t *, bool *pChanged = NULL);
484 
485  /**
486  * @brief get_Device_DeviceInfo_SoftwareVersion.
487  *
488  * This function identifying the Software/Firmware version of the running
489  * image on the box (Vx.y.z)
490  *
491  * A string identifying the software version currently installed in the CPE
492  * (i.e. version of the overall CPE firmware).
493  *
494  * To allow version comparisons, this element SHOULD be in the form of
495  * dot-delimited integers, where each successive integer represents a more
496  * minor category of variation.
497  * For example, 3.0.21 where the components mean: Major.Minor.Build.
498  *
499  * @return The status of the operation.
500  *
501  * @retval OK if it is successful.
502  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
503  *
504  * @sideeffect All necessary structures and buffers are deallocated.
505  * @execution Synchronous.
506  *
507  * @see get_Device_DeviceInfo_ProductClass.
508  */
509  int get_Device_DeviceInfo_SoftwareVersion(HOSTIF_MsgData_t *, bool *pChanged = NULL);
510 
511  /**
512  * @brief get_Device_DeviceInfo_AdditionalHardwareVersion.
513  *
514  * This function identifying any additional CPE model and version.
515  * This MUST be based on Comcast_X_HW* specification and of the format VM.m.R.
516  *
517  * @return The status of the operation.
518  *
519  * @retval OK if it is successful.
520  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
521  *
522  * @sideeffect All necessary structures and buffers are deallocated.
523  * @execution Synchronous.
524  *
525  * @see get_Device_DeviceInfo_ProductClass.
526  */
528 
529  /**
530  * @brief get_Device_DeviceInfo_AdditionalSoftwareVersion.
531  *
532  * This function identifying any additional Software/Firmware version of the running
533  * image on the box (Vx.y.z)
534  *
535  * A string identifying the software version currently installed in the CPE
536  * (i.e. version of the overall CPE firmware).
537  *
538  * To allow version comparisons, this element SHOULD be in the form of
539  * dot-delimited integers, where each successive integer represents a more
540  * minor category of variation.
541  * For example, 3.0.21 where the components mean: Major.Minor.Build.
542  *
543  * @return The status of the operation.
544  *
545  * @retval OK if it is successful.
546  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
547  *
548  * @sideeffect All necessary structures and buffers are deallocated.
549  * @execution Synchronous.
550  *
551  * @see get_Device_DeviceInfo_ProductClass.
552  */
554 
555  /**
556  * @brief get_Device_DeviceInfo_ProvisioningCode.
557  *
558  * This is an Identifier of the primary service provider and other provisioning
559  * information, which MAY be used by the ACS to determine service
560  * provider-specific customization and provisioning parameters.
561  *
562  * @return The status of the operation.
563  *
564  * @retval OK if it is successful.
565  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
566  *
567  * @sideeffect All necessary structures and buffers are deallocated.
568  * @execution Synchronous.
569  *
570  * @see get_Device_DeviceInfo_ProductClass.
571  */
572  int get_Device_DeviceInfo_ProvisioningCode(HOSTIF_MsgData_t *, bool *pChanged = NULL);
573 
574 
575  /**
576  * @brief get_Device_DeviceInfo_UpTime.
577  *
578  * This is an Identifier of time in seconds since the CPE was last restarted.
579  *
580  * @return The status of the operation.
581  *
582  * @retval OK if it is successful.
583  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
584  *
585  * @sideeffect All necessary structures and buffers are deallocated.
586  * @execution Synchronous.
587  *
588  */
589  int get_Device_DeviceInfo_UpTime(HOSTIF_MsgData_t *, bool *pChanged = NULL);
590 
591  /**
592  * @brief get_Device_DeviceInfo_FirstUseDate.
593  *
594  * This is Date and time in UTC that the CPE first both successfully established
595  * an IP-layer network connection and acquired an absolute time reference
596  * using NTP or equivalent over that network connection.
597  * The CPE MAY reset this date after a factory reset.
598  *
599  * If NTP or equivalent is not available, this parameter, if present,
600  * SHOULD be set to the Unknown Time value.
601  *
602  * @return The status of the operation.
603  *
604  * @retval OK if it is successful.
605  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
606  *
607  * @sideeffect All necessary structures and buffers are deallocated.
608  * @execution Synchronous.
609  *
610  */
611  int get_Device_DeviceInfo_FirstUseDate(HOSTIF_MsgData_t *, bool *pChanged = NULL);
612 
613  /**
614  * @brief get_Device_DeviceInfo_X_COMCAST_COM_STB_MAC.
615  *
616  * This is the MAC Address of the interface.
617  * This is currently the mac address of the eth1 interface.
618  *
619  * @return The status of the operation.
620  *
621  * @retval OK if it is successful.
622  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
623  *
624  * @sideeffect All necessary structures and buffers are deallocated.
625  * @execution Synchronous.
626  *
627  */
629 
630  /**
631  * @brief get_Device_DeviceInfo_X_COMCAST_COM_STB_IP.
632  *
633  * This is the IPv4 address of the interface.
634  * This is currently the ip address of the eth1 interface.
635  *
636  * @return The status of the operation.
637  *
638  * @retval OK if it is successful.
639  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
640  *
641  * @sideeffect All necessary structures and buffers are deallocated.
642  * @execution Synchronous.
643  *
644  */
645  int get_Device_DeviceInfo_X_COMCAST_COM_STB_IP(HOSTIF_MsgData_t *, bool *pChanged = NULL);
646 
647  /**
648  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareFilename.
649  *
650  * Filename of the firmware currently running on the device.
651  *
652  * @return The Filename of the firmware currently running on the device.
653  *
654  * @retval OK if it is successful.
655  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
656  *
657  * @sideeffect All necessary structures and buffers are deallocated.
658  * @execution Synchronous.
659  *
660  */
662 
663  /**
664  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload.
665  *
666  * Filename of the firmware that the device was requested to download most recently..
667  *
668  * @return The Filename of the firmware that was recently downloaded.
669  *
670  * @retval OK if it is successful.
671  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
672  *
673  * @sideeffect All necessary structures and buffers are deallocated.
674  * @execution Synchronous.
675  *
676  */
678 
679  /**
680  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus.
681  *
682  * Download status of the firmware file when the download is initiated via XCONF or TR-069 ACS.
683  *
684  * @return The Download status of the firmware file.
685  * - Idle(default).
686  * - Initiated.
687  * - InProgress.
688  * - Completed.
689  * - Successful.
690  * - Error.
691  * @retval OK if it is successful.
692  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
693  *
694  * @sideeffect All necessary structures and buffers are deallocated.
695  * @execution Synchronous.
696  *
697  */
699 
700  /**
701  * @brief get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadProtocol.
702  *
703  * Download protocal used for the firmware file when the download is initiated via XCONF or TR-069 ACS.
704  *
705  * @return The Download protocol of the firmware file.
706  * - http
707  * - https
708  * - ftp
709  * @retval OK if it is successful.
710  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
711  *
712  * @sideeffect All necessary structures and buffers are deallocated.
713  * @execution Synchronous.
714  *
715  */
717 
718  /**
719  * @brief get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadURL.
720  *
721  * Download url used for the download when initiated via XCONF or TR-069 ACS.
722  *
723  * @return The Download url of the firmware file.
724  * @retval OK if it is successful.
725  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
726  *
727  * @sideeffect All necessary structures and buffers are deallocated.
728  * @execution Synchronous.
729  *
730  */
732 
733  /**
734  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadUseCodebig.
735  *
736  * Get the Codebig flag which is already set via TR-069 ACS.
737  *
738  * @return The Codebig flag value either '0' or '1' based on the value already set
739  * @retval OK if it is successful.
740  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
741  *
742  * @sideeffect All necessary structures and buffers are deallocated.
743  * @execution Synchronous.
744  *
745  */
747 
748  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadDeferReboot(HOSTIF_MsgData_t *, bool *pChanged = NULL);
749 
750  int get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadPercent (HOSTIF_MsgData_t *, bool *pChanged = NULL);
751 
752  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareUpdateState (HOSTIF_MsgData_t *, bool *pChanged = NULL);
753 
754  /**
755  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset.
756  *
757  * Returns an empty string.
758  *
759  * @return The status of the operation.
760  *
761  * @retval OK if it is successful.
762  *
763  * @sideeffect All necessary structures and buffers are deallocated.
764  * @execution Synchronous.
765  *
766  */
768 
769  int get_Device_DeviceInfo_MemoryStatus_Total(HOSTIF_MsgData_t *, bool *pChanged = NULL);
770 
771  int get_Device_DeviceInfo_MemoryStatus_Free(HOSTIF_MsgData_t *, bool *pChanged = NULL);
772 
774 
775  /**
776  * @brief set_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset.
777  *
778  * Setting this parameter results in a reset being performed on the device.
779  * The level of reset performed is defined by the value written into this parameter.
780  * Enumeration of:
781  * Cold
782  * Factory
783  * Warehouse
784  * Customer
785  *
786  * @return The status of the operation. When read, this parameter returns an empty string.
787  *
788  * @retval OK if it is successful.
789  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
790  *
791  * @sideeffect All necessary structures and buffers are deallocated.
792  * @execution Synchronous.
793  *
794  */
796 
797  /**
798  * @brief get_Device_DeviceInfo_VendorConfigFileNumberOfEntries.
799  *
800  * This is the number of entries in the VendorConfigFile table.
801  *
802  * @return The status of the operation.
803  *
804  * @retval OK if it is successful.
805  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
806  *
807  * @sideeffect All necessary structures and buffers are deallocated.
808  * @execution Synchronous.
809  *
810  */
811 
813 
814  /**
815  * @brief get_Device_DeviceInfo_SupportedDataModelNumberOfEntries.
816  *
817  * This is the number of entries in the SupportedDataModel table.
818  *
819  * @return The status of the operation.
820  *
821  * @retval OK if it is successful.
822  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
823  *
824  * @sideeffect All necessary structures and buffers are deallocated.
825  * @execution Synchronous.
826  *
827  */
829 
830  /**
831  * @brief get_Device_DeviceInfo_ProcessorNumberOfEntries.
832  *
833  * The number of entries in the Processor table.
834  *
835  * @return The status of the operation.
836  *
837  * @retval OK if it is successful.
838  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
839  *
840  * @sideeffect All necessary structures and buffers are deallocated.
841  * @execution Synchronous.
842  *
843  */
845 
846  /**
847  * @brief get_Device_DeviceInfo_VendorLogFileNumberOfEntries.
848  *
849  * The number of entries in the VendorLogFile table.
850  *
851  * @return The status of the operation.
852  *
853  * @retval OK if it is successful.
854  * @retval ERR_INTERNAL_ERROR if not able to fetch from device.
855  *
856  * @sideeffect All necessary structures and buffers are deallocated.
857  * @execution Synchronous.
858  *
859  */
861 
862  /**
863  * @brief get_Device_DeviceInfo_X_COMCAST_COM_PowerStatus.
864  *
865  * The X_COMCAST_COM_PowerStatus as get parameter results in the power status
866  * being performed on the device. Power status of the device based on the front panel power LED.
867  * Enumeration of:
868  * PowerOn
869  * Standby
870  * PowerOff
871  *
872  * @return The status of the operation. When read, this parameter returns an enumeration string.
873  *
874  * @retval OK if it is successful.
875  * @retval NOK if not able to fetch from device.
876  *
877  * @sideeffect All necessary structures and buffers are deallocated.
878  * @execution Synchronous.
879  *
880  */
882 
883  /**
884  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_BootStatus.
885  *
886  * This method is updated with the boot status of the device at the time of query.
887  * If the device is currently starting up, this parameter will hold boot status as per the boot sequence of the device.
888  *
889  * BootStatus string - Boot status for an STB CPE via TR-069 ACS when powered On.
890  * Enumeration of :
891  * Coax connection confirmed, MoCA enabled
892  * Discovering MoCA Network Coordinator: MoCA MAC: xx:xx:xx:xx:xx:xx
893  * Joining MoCA Network
894  * Connection successful
895  * Acquiring IP Address from Gateway
896  * Contacting ACS
897  * Contacting XRE
898  *
899  * @return The status of the operation. When read, this parameter returns an enumeration string.
900  *
901  * @retval OK if it is successful.
902  * @retval NOK if not able to fetch from device.
903  */
905 
906  /**
907  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_PreferredGatewayType.
908  *
909  * This method is uget the preferred gateway of the client
910  *
911  * @retval OK if it is successful.
912  * @retval NOK if not able to fetch from device.
913  */
914 
916 
917  int get_X_RDKCENTRAL_COM_BootTime(HOSTIF_MsgData_t *, bool *pChanged = NULL);
918 
919  /**
920  * @brief get_xOpsDMLogsUploadStatus.
921  *
922  * This method is to Initiate Log upload to cloud server
923  * with following TR-069 definition:
924  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMUploadLogsNow
925  * Data type: boolean - Setting this parameter to true will initiate Log upload.
926  *
927  * @retval OK if it is successful.
928  * @retval NOK if not able to fetch from device.
929  *
930  */
932 
933  /**
934  * @brief get_xOpsDMLogsUploadStatus.
935  *
936  * This method is to Read back upload status:
937  * Parameter Name : Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMLogsUploadStatus
938  * @retval OK if it is successful.
939  * @retval NOK if not able to fetch from device.
940  * Result is reported in form of string: <Result> <TimesStamp>
941  * Valid values for <Result> are:
942  * Not triggered
943  * Triggered
944  * In progress
945  * Failed
946  * Complete
947  * <TimeStamp> is expressed in format of Linux date output
948  */
950  /**
951  * @brief get_xOpsDMMoCALogEnabled.
952  *
953  * This method is to get moca telemetry log status
954  * with following TR-069 definition:
955  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogEnabled
956  * Data type: boolean - getting this parameter and if the value is true then moca telemetry logging is enabled
957  *
958  * @retval OK if it is successful.
959  * @retval NOK if not able to fetch from device.
960  */
962 
963  /**
964  * @brief get_xOpsDMMoCALogPeriod.
965  *
966  * This method is to get the MoCA logging period
967  * with following TR-069 definition:
968  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogPeriod
969  * Data type: integer - getting the value for moca telemetry logging period
970  *
971  * @retval OK if it is successful.
972  * @retval NOK if not able to fetch from device.
973  */
975  /**
976  * Helper methods
977  */
980  int set_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadProtocol(HOSTIF_MsgData_t *);
981  int set_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadURL (HOSTIF_MsgData_t *);
982  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_PreferredGatewayType(HOSTIF_MsgData_t *);
983  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadUseCodebig(HOSTIF_MsgData_t *);
984  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadDeferReboot(HOSTIF_MsgData_t *);
985 
986  /**
987  * @brief set_xOpsDMUploadLogsNow.
988  *
989  * This method is to Initiate Log upload to cloud server
990  * with following TR-069 definition:
991  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMUploadLogsNow
992  * Data type: boolean - Setting this parameter to true will initiate Log upload.
993  *
994  * @retval OK if it is successful.
995  * @retval NOK if not able to fetch from device.
996  */
998  /**
999  * @brief set_xOpsDMMoCALogEnabled.
1000  *
1001  * This method is to enable or disable moca telemetry log
1002  * with following TR-069 definition:
1003  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogEnabled
1004  * Data type: boolean - Setting this parameter to true will initiate moca telemetry logging
1005  *
1006  * @retval OK if it is successful.
1007  * @retval NOK if not able to fetch from device.
1008  */
1010 
1011  /**
1012  * @brief set_xOpsDMMoCALogPeriod.
1013  *
1014  * This method is to get the MoCA logging period
1015  * with following TR-069 definition:
1016  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.Logging.xOpsDMMoCALogPeriod
1017  * Data type: integer - Setting the value for moca telemetry logging period
1018  *
1019  * @retval OK if it is successful.
1020  * @retval NOK if not able to fetch from device.
1021  */
1023  /**
1024  * @brief set_xOpsReverseSshTrigger
1025  *
1026  * This method is to enable or disable reverse ssh tunnel. This uses the arguments set using set_xOpsReverseSshArgs.
1027  * with following TR-069 definition:
1028  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshTrigger
1029  * Data type: boolean - Enable or disable the tunnel.
1030  *
1031  * @retval OK if it is successful.
1032  * @retval NOK if operation fails.
1033  */
1035  /**
1036  * @brief set_xOpsReverseSshArgs
1037  *
1038  * This method is to set arguments for reverse ssh tunnel.
1039  * with following TR-069 definition:
1040  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshArgs
1041  * Data type: string - Arguments for ssh tunnel.
1042  * example format: user=test;host=192.168.111.11;port=33321;idletime=30;
1043  *
1044  * @retval OK if it is successful.
1045  * @retval NOK if operation fails.
1046  */
1048  /**
1049  * @brief get_xOpsReverseSshArgs
1050  *
1051  * This method is to get arguments for reverse ssh tunnel.
1052  * with following TR-069 definition:
1053  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshArgs
1054  * Data type: string - Arguments for ssh tunnel.
1055  * example format: user=test;host=192.168.111.11;port=33321;idletime=30;
1056  *
1057  * @retval OK if it is successful.
1058  * @retval NOK if operation fails.
1059  */
1061  /**
1062  * @brief get_xOpsReverseSshStatus
1063  *
1064  * This method is to get status of ssh session
1065  * Result is reported in string(ACTIVE,INACTIVE).
1066  * with following TR-069 definition:
1067  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.ReverseSSH.xOpsReverseSshStatus
1068  * Data type: string - Arguments for ssh tunnel.
1069  * example format: user=test;host=192.168.111.11;port=33321;idletime=30;
1070  *
1071  * @retval OK if it is successful.
1072  * @retval NOK if operation fails.
1073  */
1075 
1076  int get_ApparmorBlockListStatus(HOSTIF_MsgData_t *);
1077 
1078  /**
1079  * @brief set_xOpsDeviceMgmtRPCRebootNow
1080  *
1081  * This method is to trigger an immediate reboot of the box.
1082  * with following TR-069 definition:
1083  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.RPC.RebootNow
1084  * Data type: boolean - Setting this parameter to true will immediately reboot the box.
1085  *
1086  * @retval OK if it is successful.
1087  * @retval NOK if operation fails.
1088  */
1090  int set_xOpsRPC_Profile(HOSTIF_MsgData_t *);
1091 
1092 
1093  int get_xOpsDeviceMgmtForwardSSHEnable (HOSTIF_MsgData_t *);
1094 
1095  int set_xOpsDeviceMgmtForwardSSHEnable (HOSTIF_MsgData_t *);
1096 
1097  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportEnable(HOSTIF_MsgData_t *, bool *pChanged = NULL);
1098  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportEnable(HOSTIF_MsgData_t *);
1099 
1100  /*
1101  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportIpaddress
1102  *
1103  * This method is to get the ipremote interface ipaddress.
1104  * with following TR-069 definition:
1105  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_IPRemoteSupport.IPAddr
1106  * Data type: String - Arguments Ipaddress
1107  *
1108  * @retval OK if it is successful.
1109  * @retval NOK if operation fails.
1110  */
1111 
1112  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportIpaddress(HOSTIF_MsgData_t *);
1113 
1114  /*
1115  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportMACaddress
1116  *
1117  * This method is to get the ipremote interface MAC address.
1118  * with following TR-069 definition:
1119  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_IPRemoteSupport.MACAddr
1120  * Data type: String - Arguments MACaddress
1121  *
1122  * @retval OK if it is successful.
1123  * @retval NOK if operation fails.
1124  */
1125 
1126  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_IPRemoteSupportMACaddress(HOSTIF_MsgData_t *);
1127 
1128  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_XRPollingAction(HOSTIF_MsgData_t *, bool *pChanged = NULL);
1129  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_XRPollingAction(HOSTIF_MsgData_t *);
1130 
1131 #ifdef USE_REMOTE_DEBUGGER
1132  /*
1133  * @brief set_Device_DeviceInfo_X_RDKCENTRAL_COM_RDKRemoteDebuggerIssueType
1134  *
1135  * This method is to get the Issuetype from QA.
1136  * with following TR-069 definition:
1137  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_RDKRemoteDebugger.IssueType
1138  * Data type: String - Arguments Issuetype
1139  *
1140  * @retval OK if it is successful.
1141  * @retval NOK if operation fails.
1142  */
1143 
1144  int set_Device_DeviceInfo_X_RDKCENTRAL_COM_RDKRemoteDebuggerIssueType(HOSTIF_MsgData_t *);
1145 #endif
1146  /*
1147  * @brief get_Device_DeviceInfo_X_RDKCENTRAL_COM_Syndication_PartnerId
1148  *
1149  * This method is to get the PartnerId of the device.
1150  * with following TR-069 definition:
1151  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.PartnerId
1152  * Data type: String - Arguments PartnerId
1153  *
1154  * @retval OK if it is successful.
1155  * @retval NOK if operation fails.
1156  */
1157 
1158  int get_Device_DeviceInfo_X_RDKCENTRAL_COM_Syndication_PartnerId(HOSTIF_MsgData_t *);
1159 
1160  /**
1161  * @brief set_Device.DeviceInfo_X_RDKCENTRAL-COM_Syndication_PartnerId
1162  *
1163  * This method is used to process the PartnerId.
1164  * with following TR-069 definition:
1165  * Parameter Name:Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.PartnerId
1166  * Data type: integer - Unused.
1167  * @retval OK if it is successful.
1168  * @retval NOK if operation fails.
1169  */
1170 
1172 
1173 #ifdef USE_HWSELFTEST_PROFILE
1174  /**
1175  * @brief set_xOpsDeviceMgmt_hwHealthTest_Enable
1176  *
1177  * This method is used to enable/disable the hardware health test functionality.
1178  * with following TR-069 definition:
1179  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.Enable
1180  * Data type: boolean - Enable (True)/disable (False) health test functionality.
1181  *
1182  * @retval OK if it is successful.
1183  * @retval NOK if operation fails.
1184  */
1185  int set_xOpsDeviceMgmt_hwHealthTest_Enable(HOSTIF_MsgData_t *);
1186 
1187  /**
1188  * @brief set_xOpsDeviceMgmt_hwHealthTest_ExecuteTest
1189  *
1190  * This method is used to trigger hardware health test on the STB.
1191  * with following TR-069 definition:
1192  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.ExecuteTest
1193  * Data type: integer - Unused.
1194  *
1195  * @retval OK if it is successful.
1196  * @retval NOK if operation fails.
1197  */
1198  int set_xOpsDeviceMgmt_hwHealthTest_ExecuteTest(HOSTIF_MsgData_t *);
1199 
1200  /**
1201  * @brief set_xOpsDeviceMgmt_hwHealthTest_Results
1202  *
1203  * This method is used to retrieve the most recent hardware health test results.
1204  * with following TR-069 definition:
1205  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.Results
1206  *
1207  * @retval OK if it is successful.
1208  * @retval NOK if operation fails.
1209  */
1210  int get_xOpsDeviceMgmt_hwHealthTest_Results(HOSTIF_MsgData_t *);
1211 
1212  /**
1213  * @brief set_xOpsDeviceMgmt_hwHealthTest_SetTuneType
1214  *
1215  * This method is used to start tune tests by using a particular tune type.
1216  * with following TR-069 definition:
1217  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.SetTuneType
1218  * Data type: integer - Type of tune data to set.
1219  *
1220  * @retval OK if it is successful.
1221  * @retval NOK if operation fails.
1222  */
1223  int set_xOpsDeviceMgmt_hwHealthTest_SetTuneType(HOSTIF_MsgData_t *);
1224 
1225  /**
1226  * @brief set_xOpsDeviceMgmt_hwHealthTest_ExecuteTuneTest
1227  *
1228  * This method is used to perform the tune testing based on the tune type.
1229  * with following TR-069 definition:
1230  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.ExecuteTuneTest
1231  * Data type: string - json format of string with tune related data.
1232  *
1233  * @retval OK if it is successful.
1234  * @retval NOK if operation fails.
1235  */
1236  int set_xOpsDeviceMgmt_hwHealthTest_ExecuteTuneTest(HOSTIF_MsgData_t *);
1237 
1238  /**
1239  * @brief set_xOpsDeviceMgmt_hwHealthTest_TuneResults
1240  *
1241  * This method is used to retrieve the most recent hardware health Tune test results.
1242  * with following TR-069 definition:
1243  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTestTune.TuneResults
1244  *
1245  * @retval OK if it is successful.
1246  * @retval NOK if operation fails.
1247  */
1248  int get_xOpsDeviceMgmt_hwHealthTestTune_TuneResults(HOSTIF_MsgData_t *);
1249 
1250  /**
1251  * @brief set_xOpsDeviceMgmt_hwHealthTest_EnablePeriodicRun
1252  *
1253  * This method is used to enable/disable the hardware health test periodic run functionality.
1254  * with following TR-069 definition:
1255  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.EnablePeriodicRun
1256  * Data type: boolean - Enable (True)/disable (False) health test periodic run functionality.
1257  *
1258  * @retval OK if it is successful.
1259  * @retval NOK if operation fails.
1260  */
1261  int set_xOpsDeviceMgmt_hwHealthTest_EnablePeriodicRun(HOSTIF_MsgData_t *);
1262 
1263  /**
1264  * @brief set_xOpsDeviceMgmt_hwHealthTest_PeriodicRunFrequency
1265  *
1266  * This method is used to set the hardware health test periodic run frequency.
1267  * with following TR-069 definition:
1268  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.PeriodicRunFrequency
1269  * Data type: unsigned int - Periodic run frequency to set (in minutes), 0 = default frequency.
1270  *
1271  * @retval OK if it is successful.
1272  * @retval NOK if operation fails.
1273  */
1274  int set_xOpsDeviceMgmt_hwHealthTest_PeriodicRunFrequency(HOSTIF_MsgData_t *);
1275 
1276  /**
1277  * @brief set_xOpsDeviceMgmt_hwHealthTest_cpuThreshold
1278  *
1279  * This method is used to set the hardware health test periodic run CPU usage threshold.
1280  * If CPU usage is higher than the threshold set, periodic health test will not execute.
1281  * with following TR-069 definition:
1282  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.cpuThreshold
1283  * Data type: unsigned int - CPU threshold to set (in percent).
1284  *
1285  * @retval OK if it is successful.
1286  * @retval NOK if operation fails.
1287  */
1288  int set_xOpsDeviceMgmt_hwHealthTest_CpuThreshold(HOSTIF_MsgData_t *);
1289 
1290  /**
1291  * @brief set_xOpsDeviceMgmt_hwHealthTest_dramThreshold
1292  *
1293  * This method is used to set the hardware health test periodic run DRAM usage threshold.
1294  * If free DRAM memory is less than the threshold set, periodic health test will not execute.
1295  * with following TR-069 definition:
1296  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTest.dramThreshold
1297  * Data type: unsigned int - DRAM threshold to set (in MB).
1298  *
1299  * @retval OK if it is successful.
1300  * @retval NOK if operation fails.
1301  */
1302  int set_xOpsDeviceMgmt_hwHealthTest_DramThreshold(HOSTIF_MsgData_t *);
1303 
1304  /**
1305  * @brief set_RFC_hwHealthTestWAN_WANEndPointURL
1306  *
1307  * This method is used to set the hardware health test WAN test case URL.
1308  * URL to be used to check public WAN connectivity.
1309  * with following TR-069 definition:
1310  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_xOpsDeviceMgmt.hwHealthTestWAN.WANTestEndPointURL
1311  * Data type: string - URL to set.
1312  *
1313  * @retval OK if it is successful.
1314  * @retval NOK if operation fails.
1315  */
1316  int set_RFC_hwHealthTestWAN_WANEndPointURL(HOSTIF_MsgData_t *);
1317 
1318  /**
1319  * @brief set_xRDKCentralComRFC_hwHealthTest_ResultFilter_Enable
1320  *
1321  * This method is used to enable the hardware health test result filter feature.
1322  * with following TR-069 definition:
1323  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.hwHealthTest.ResultFilter.Enable
1324  * Data type: boolean - Enable (True)/disable (False) health test result filter functionality.
1325  *
1326  * @retval OK if it is successful.
1327  * @retval NOK if operation fails.
1328  */
1329  int set_xRDKCentralComRFC_hwHealthTest_ResultFilter_Enable(HOSTIF_MsgData_t *);
1330 
1331  /**
1332  * @brief set_xRDKCentralComRFC_hwHealthTest_ResultFilter_QueueDepth
1333  *
1334  * This method is used to set the number of last results to be stored for hardware health test result-filter feature.
1335  * with following TR-069 definition:
1336  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.hwHealthTest.ResultFilter.QueueDepth
1337  * Data type: unsigned int - QueueDepth to set (<=100)
1338  *
1339  * @retval OK if it is successful.
1340  * @retval NOK if operation fails.
1341  */
1342  int set_xRDKCentralComRFC_hwHealthTest_ResultFilter_QueueDepth(HOSTIF_MsgData_t *);
1343 
1344  /**
1345  * @brief Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.hwHealthTest.ResultFilter.FilterParams
1346  *
1347  * This method is used to set filter parameters to be applied for each component of hardware health test result-filter feature.
1348  * with following TR-069 definition:
1349  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.hwHealthTest.ResultFilter.FilterParams
1350  * Data type: string - ordered list of comma separated values.
1351  *
1352  * @retval OK if it is successful.
1353  * @retval NOK if operation fails.
1354  */
1355  int set_xRDKCentralComRFC_hwHealthTest_ResultFilter_FilterParams(HOSTIF_MsgData_t *);
1356 
1357  /**
1358  * @brief set_xRDKCentralComRFC_hwHealthTest_ResultFilter_ResultsFiltered
1359  *
1360  * This method is used to enable the hardware health test filtered results to shown on UI/WEBPA/Resultsfile.
1361  * with following TR-069 definition:
1362  * Parameter Name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.hwHealthTest.ResultFilter.ResultsFiltered
1363  * Data type: boolean - Enable (True)/disable (False) health test filtered results display.
1364  *
1365  * @retval OK if it is successful.
1366  * @retval NOK if operation fails.
1367  */
1368  int set_xRDKCentralComRFC_hwHealthTest_ResultFilter_ResultsFiltered(HOSTIF_MsgData_t *);
1369 #endif /* USE_HWSELFTEST_PROFILE */
1370 
1371  int validate_ParamValue(HOSTIF_MsgData_t *);
1372 
1373  int set_xRDKCentralComRFC(HOSTIF_MsgData_t *);
1374  int get_xRDKCentralComRFC(HOSTIF_MsgData_t *);
1375 
1376  int set_xRDKCentralComBootstrap(HOSTIF_MsgData_t *);
1377  int get_xRDKCentralComBootstrap(HOSTIF_MsgData_t *);
1378 
1379  int readFirmwareInfo(char *, HOSTIF_MsgData_t *);
1380  int writeFirmwareInfo(char *, HOSTIF_MsgData_t *);
1381 
1382  int set_xFirmwareDownloadNow(HOSTIF_MsgData_t *);
1383 
1384  int get_X_RDKCENTRAL_COM_LastRebootReason(HOSTIF_MsgData_t *);
1385  int set_X_RDKCENTRAL_COM_LastRebootReason(HOSTIF_MsgData_t *);
1386  int get_X_RDKCENTRAL_COM_experience(HOSTIF_MsgData_t *);
1388 
1389  int set_xRDKDownloadManager_InstallPackage(HOSTIF_MsgData_t *);
1390 };
1391 /* End of doxygen group */
1392 /**
1393  * @}
1394  */
1395 
1396 #endif /* DEVICE_DEVICEINFO_H_ */
1397 
1398 
1399 /** @} */
1400 /** @} */
1401 
hostIf_DeviceInfo::get_Device_DeviceInfo_ManufacturerOUI
int get_Device_DeviceInfo_ManufacturerOUI(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_Manufacturer.
Definition: Device_DeviceInfo.cpp:565
hostIf_DeviceInfo::set_Device_DeviceInfo_X_RDKCENTRAL_COM_Syndication_PartnerId
int set_Device_DeviceInfo_X_RDKCENTRAL_COM_Syndication_PartnerId(HOSTIF_MsgData_t *)
set_Device.DeviceInfo_X_RDKCENTRAL-COM_Syndication_PartnerId
Definition: Device_DeviceInfo.cpp:2325
hostIf_DeviceInfo::get_xOpsDMLogsUploadStatus
int get_xOpsDMLogsUploadStatus(HOSTIF_MsgData_t *)
get_xOpsDMLogsUploadStatus.
Definition: Device_DeviceInfo.cpp:1980
hostIf_DeviceInfo::get_Device_DeviceInfo_UpTime
int get_Device_DeviceInfo_UpTime(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_UpTime.
Definition: Device_DeviceInfo.cpp:1022
hostIf_DeviceInfo::get_Device_DeviceInfo_MemoryStatus_Total
int get_Device_DeviceInfo_MemoryStatus_Total(HOSTIF_MsgData_t *, bool *pChanged=NULL)
Get the device total memory status.
Definition: Device_DeviceInfo.cpp:1740
hostIf_DeviceInfo::set_xOpsDMMoCALogPeriod
int set_xOpsDMMoCALogPeriod(HOSTIF_MsgData_t *)
set_xOpsDMMoCALogPeriod.
Definition: Device_DeviceInfo.cpp:2505
hostIf_DeviceInfo::get_Device_DeviceInfo_Manufacturer
int get_Device_DeviceInfo_Manufacturer(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_Manufacturer.
Definition: Device_DeviceInfo.cpp:486
hostIf_DeviceInfo::get_Device_DeviceInfo_FirstUseDate
int get_Device_DeviceInfo_FirstUseDate(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_FirstUseDate.
Definition: Device_DeviceInfo.cpp:1047
hostIf_DeviceInfo::findIgnoreCase
size_t findIgnoreCase(std::string haystack, std::string needle, size_t pos=0)
Finds if one string occurs within another string. The search is case-insensitive.
Definition: Device_DeviceInfo.cpp:4191
hostIf_DeviceInfo::get_Device_DeviceInfo_AdditionalSoftwareVersion
int get_Device_DeviceInfo_AdditionalSoftwareVersion(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_AdditionalSoftwareVersion.
Definition: Device_DeviceInfo.cpp:901
hostIf_DeviceInfo::set_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset
int set_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset(HOSTIF_MsgData_t *)
set_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset.
Definition: Device_DeviceInfo.cpp:2098
XRFCStorage
Definition: XrdkCentralComRFC.h:28
XBSStore
Definition: XrdkCentralComBSStore.h:33
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_BootStatus
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_BootStatus(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_BootStatus.
Definition: Device_DeviceInfo.cpp:1801
hostIf_DeviceInfo::get_Device_DeviceInfo_VendorLogFileNumberOfEntries
int get_Device_DeviceInfo_VendorLogFileNumberOfEntries(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_VendorLogFileNumberOfEntries.
Definition: Device_DeviceInfo.cpp:1702
_HostIf_MsgData_t
Definition: hostIf_tr69ReqHandler.h:170
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_CPUTemp
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_CPUTemp(HOSTIF_MsgData_t *, bool *pChanged=NULL)
This method gets the CPU temperature for doing general health check up of the box.
Definition: Device_DeviceInfo.cpp:1931
hostIf_DeviceInfo::get_Device_DeviceInfo_X_COMCAST_COM_PowerStatus
int get_Device_DeviceInfo_X_COMCAST_COM_PowerStatus(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_COMCAST_COM_PowerStatus.
Definition: Device_DeviceInfo.cpp:1369
hostIf_DeviceInfo::get_Device_DeviceInfo_X_COMCAST_COM_STB_IP
int get_Device_DeviceInfo_X_COMCAST_COM_STB_IP(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_COMCAST_COM_STB_IP.
Definition: Device_DeviceInfo.cpp:1328
hostIf_DeviceInfo::get_Device_DeviceInfo_VendorConfigFileNumberOfEntries
int get_Device_DeviceInfo_VendorConfigFileNumberOfEntries(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_VendorConfigFileNumberOfEntries.
Definition: Device_DeviceInfo.cpp:1634
hostIf_DeviceInfo::get_Device_DeviceInfo_ProcessorNumberOfEntries
static int get_Device_DeviceInfo_ProcessorNumberOfEntries(HOSTIF_MsgData_t *)
get_Device_DeviceInfo_ProcessorNumberOfEntries.
Definition: Device_DeviceInfo.cpp:1660
hostIf_DeviceInfo::get_Device_DeviceInfo_SerialNumber
int get_Device_DeviceInfo_SerialNumber(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_SerialNumber.
Definition: Device_DeviceInfo.cpp:301
hostIf_main.h
hostIf_main API.
hostIf_DeviceInfo::get_xOpsReverseSshArgs
int get_xOpsReverseSshArgs(HOSTIF_MsgData_t *)
get_xOpsReverseSshArgs
Definition: Device_DeviceInfo.cpp:2813
hostIf_DeviceInfo::get_Device_DeviceInfo_Description
int get_Device_DeviceInfo_Description(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_Description.
Definition: Device_DeviceInfo.cpp:724
hostIf_DeviceInfo::get_Device_DeviceInfo_SupportedDataModelNumberOfEntries
int get_Device_DeviceInfo_SupportedDataModelNumberOfEntries(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_SupportedDataModelNumberOfEntries.
Definition: Device_DeviceInfo.cpp:1652
hostIf_DeviceInfo::get_xOpsReverseSshStatus
int get_xOpsReverseSshStatus(HOSTIF_MsgData_t *)
get_xOpsReverseSshStatus
Definition: Device_DeviceInfo.cpp:2921
hostIf_DeviceInfo::set_xOpsReverseSshArgs
int set_xOpsReverseSshArgs(HOSTIF_MsgData_t *)
set_xOpsReverseSshArgs
Definition: Device_DeviceInfo.cpp:2833
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadUseCodebig
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadUseCodebig(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadUseCodebig.
Definition: Device_DeviceInfo.cpp:1570
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload.
Definition: Device_DeviceInfo.cpp:1529
hostIf_DeviceInfo::get_Device_DeviceInfo_ProductClass
int get_Device_DeviceInfo_ProductClass(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_ProductClass.
Definition: Device_DeviceInfo.cpp:748
hostIf_DeviceInfo::get_Device_DeviceInfo_X_COMCAST_COM_STB_MAC
int get_Device_DeviceInfo_X_COMCAST_COM_STB_MAC(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_COMCAST_COM_STB_MAC.
Definition: Device_DeviceInfo.cpp:1083
hostIf_DeviceInfo::get_Device_DeviceInfo_HardwareVersion
int get_Device_DeviceInfo_HardwareVersion(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_HardwareVersion.
Definition: Device_DeviceInfo.cpp:821
hostIf_DeviceInfo::get_Device_DeviceInfo_SoftwareVersion
int get_Device_DeviceInfo_SoftwareVersion(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_SoftwareVersion.
Definition: Device_DeviceInfo.cpp:392
hostIf_DeviceInfo::set_xOpsDMUploadLogsNow
int set_xOpsDMUploadLogsNow(HOSTIF_MsgData_t *)
set_xOpsDMUploadLogsNow.
Definition: Device_DeviceInfo.cpp:2232
hostIf_DeviceInfo::get_X_RDK_FirmwareName
int get_X_RDK_FirmwareName(HOSTIF_MsgData_t *)
This function identifying the imagename of the running image This Value comes from "imagename" proper...
Definition: Device_DeviceInfo.cpp:4743
hostIf_DeviceInfo
This class provides the interface for getting device information.
Definition: Device_DeviceInfo.h:194
hostIf_DeviceInfo::readFirmwareInfo
int readFirmwareInfo(char *, HOSTIF_MsgData_t *)
This method read the firmware information which is present in "/opt/fwdnldstatus.txt".
Definition: Device_DeviceInfo.cpp:4000
hostIf_DeviceInfo::writeFirmwareInfo
int writeFirmwareInfo(char *, HOSTIF_MsgData_t *)
This method writes the firmware information which is present in "/opt/fwdnldstatus....
Definition: Device_DeviceInfo.cpp:4070
XRFCStore
Definition: XrdkCentralComRFCStore.h:30
hostIf_DeviceInfo::get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadURL
int get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadURL(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadURL.
Definition: Device_DeviceInfo.cpp:1561
hostIf_DeviceInfo::set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload
int set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareToDownload(HOSTIF_MsgData_t *)
This method set the firmware download file path which is present in "/opt/fwdnldstatus....
Definition: Device_DeviceInfo.cpp:2186
hostIf_DeviceInfo::get_Device_DeviceInfo_AdditionalHardwareVersion
int get_Device_DeviceInfo_AdditionalHardwareVersion(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_AdditionalHardwareVersion.
Definition: Device_DeviceInfo.cpp:878
hostIf_DeviceInfo::hostIf_DeviceInfo
hostIf_DeviceInfo(int dev_id)
Class Constructor of the class hostIf_DeviceInfo.
Definition: Device_DeviceInfo.cpp:163
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_PreferredGatewayType
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_PreferredGatewayType(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_PreferredGatewayType.
Definition: Device_DeviceInfo.cpp:1945
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_Reset.
Definition: Device_DeviceInfo.cpp:1717
hostIf_DeviceInfo::get_xOpsDMMoCALogEnabled
int get_xOpsDMMoCALogEnabled(HOSTIF_MsgData_t *)
get_xOpsDMMoCALogEnabled.
Definition: Device_DeviceInfo.cpp:2525
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus.
Definition: Device_DeviceInfo.cpp:1545
hostIf_DeviceInfo::get_xOpsRPC_Profile
int get_xOpsRPC_Profile(HOSTIF_MsgData_t *)
set_xOpsDeviceMgmtRPCRebootNow
Definition: Device_DeviceInfo.cpp:4299
hostIf_DeviceInfo::get_xOpsDMUploadLogsNow
int get_xOpsDMUploadLogsNow(HOSTIF_MsgData_t *)
get_xOpsDMLogsUploadStatus.
Definition: Device_DeviceInfo.cpp:1973
hostIf_DeviceInfo::set_xOpsReverseSshTrigger
int set_xOpsReverseSshTrigger(HOSTIF_MsgData_t *)
set_xOpsReverseSshTrigger
Definition: Device_DeviceInfo.cpp:2757
hostIf_DeviceInfo::get_Device_DeviceInfo_ModelName
int get_Device_DeviceInfo_ModelName(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_ModelName.
Definition: Device_DeviceInfo.cpp:640
hostIf_DeviceInfo::get_Device_DeviceInfo_ProvisioningCode
int get_Device_DeviceInfo_ProvisioningCode(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_ProvisioningCode.
Definition: Device_DeviceInfo.cpp:965
hostIf_DeviceInfo::get_Device_DeviceInfo_MemoryStatus_Free
int get_Device_DeviceInfo_MemoryStatus_Free(HOSTIF_MsgData_t *, bool *pChanged=NULL)
Get the device total free memory status.
Definition: Device_DeviceInfo.cpp:1768
hostIf_DeviceInfo::get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareFilename
int get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareFilename(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareFilename.
Definition: Device_DeviceInfo.cpp:1425
hostIf_DeviceInfo::set_xOpsDMMoCALogEnabled
int set_xOpsDMMoCALogEnabled(HOSTIF_MsgData_t *)
set_xOpsDMMoCALogEnabled.
Definition: Device_DeviceInfo.cpp:2258
hostIf_DeviceInfo::get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadProtocol
int get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadProtocol(HOSTIF_MsgData_t *, bool *pChanged=NULL)
get_Device_DeviceInfo_X_COMCAST_COM_FirmwareDownloadProtocol.
Definition: Device_DeviceInfo.cpp:1553
hostIf_DeviceInfo::get_xOpsDMMoCALogPeriod
int get_xOpsDMMoCALogPeriod(HOSTIF_MsgData_t *)
get_xOpsDMMoCALogPeriod.
Definition: Device_DeviceInfo.cpp:2689
hostIf_DeviceInfo::set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus
int set_Device_DeviceInfo_X_RDKCENTRAL_COM_FirmwareDownloadStatus(HOSTIF_MsgData_t *)
This method set the status of the firmware download which is present in "/opt/fwdnldstatus....
Definition: Device_DeviceInfo.cpp:2207