本文整理汇总了C++中PDSLH_CPE_CONTROLLER_OBJECT类的典型用法代码示例。如果您正苦于以下问题:C++ PDSLH_CPE_CONTROLLER_OBJECT类的具体用法?C++ PDSLH_CPE_CONTROLLER_OBJECT怎么用?C++ PDSLH_CPE_CONTROLLER_OBJECT使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了PDSLH_CPE_CONTROLLER_OBJECT类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AnscTraceWarning
int
CcspCcMbi_AddTblRow
(
int sessionId,
char * objectName,
int * instanceNumber,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
int iStatus = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
}
if ( (g_currentSessionID != 0) && (sessionId != g_currentSessionID) )
{
AnscTraceWarning(("!!! AddTblRow discarded, session id is NOT match !!!\n"));
return ANSC_STATUS_DISCARD;
}
if ( !objectName || !instanceNumber )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbi_AddTblRow\n"));
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbi_AddTblRow\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
returnStatus =
pDslhMpaIf->AddObject
(
pDslhMpaIf->hOwnerContext,
DSLH_MPA_ENTITY_ACS,
objectName,
instanceNumber,
&iStatus
);
EXIT:
return (returnStatus == ANSC_STATUS_SUCCESS) ? CCSP_SUCCESS : returnStatus;
}
示例2: AnscFreeMemory
ANSC_STATUS
ssp_cancel_tad
(
)
{
/*RDKB-7459, CID-33428, null check and free */
if(pDslhCpeController)
{
pDslhCpeController->Cancel((ANSC_HANDLE)pDslhCpeController);
AnscFreeMemory(pDslhCpeController);
pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT )NULL;
}
if(hDiagPlugin)
{
AnscFreeLibrary(hDiagPlugin);
hDiagPlugin = NULL;
}
return ANSC_STATUS_SUCCESS;
}
示例3: AnscTrace
ANSC_STATUS
DslhDmagntEngage
(
ANSC_HANDLE hThisObject
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_DATAMODEL_AGENT_OBJECT pMyObject = (PDSLH_DATAMODEL_AGENT_OBJECT)hThisObject;
PANSC_ATOM_TABLE_OBJECT pAtomFunctions = (PANSC_ATOM_TABLE_OBJECT)pMyObject->hAtomFunctions;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT)pMyObject->hDslhCpeController;
PSLAP_OBJECT_DESCRIPTOR pObjDescriptor = (PSLAP_OBJECT_DESCRIPTOR )NULL;
PPOAM_IREP_FOLDER_OBJECT pPoamIrepFoRoot = (PPOAM_IREP_FOLDER_OBJECT )NULL;
PPOAM_IREP_FOLDER_OBJECT pPoamIrepFoProvision = (PPOAM_IREP_FOLDER_OBJECT )NULL;
PPOAM_IREP_FOLDER_OBJECT pPoamIrepFoCOSA = (PPOAM_IREP_FOLDER_OBJECT )pMyObject->hIrepFolderCOSA;
PDSLH_MWS_INTERFACE pDslhMwsIf = (PDSLH_MWS_INTERFACE )pMyObject->hDslhMwsIf;
if ( pMyObject->bActive )
{
return ANSC_STATUS_SUCCESS;
}
if( pDslhMwsIf != NULL)
{
pDslhCpeController->AddInterface(pDslhCpeController, pMyObject->hDslhMwsIf);
}
pMyObject->hDslhCcdIf = pDslhCpeController->GetInterfaceByName(pDslhCpeController, CCSP_CCD_INTERFACE_NAME);
pMyObject->hDslhLcbIf = pDslhCpeController->GetInterfaceByName(pDslhCpeController, CCSP_LIBCBK_INTERFACE_NAME);
/* register internal apis */
if( pAtomFunctions == NULL)
{
pMyObject->hAtomFunctions =
AnscCreateAtomTable
(
pMyObject->hContainerContext,
(ANSC_HANDLE)pMyObject,
NULL
);
pAtomFunctions = (PANSC_ATOM_TABLE_OBJECT)pMyObject->hAtomFunctions;
}
if( pAtomFunctions != NULL)
{
/* Register the API exported by framework */
pMyObject->RegisterInternalApi(pMyObject, "COSANotifyValueChange", COSANotifyValueChange);
pMyObject->RegisterInternalApi(pMyObject, "COSANotifyDiagComplete", COSANotifyDiagComplete);
pMyObject->RegisterInternalApi(pMyObject, "COSAValidateHierarchyInterface", COSAValidateHierarchyInterface);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValueBool", COSAGetParamValueBool);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValueInt", COSAGetParamValueInt);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValueUlong", COSAGetParamValueUlong);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValueString", COSAGetParamValueString);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValue", COSAGetParamValue);
pMyObject->RegisterInternalApi(pMyObject, "COSASetParamValueBool", COSASetParamValueBool);
pMyObject->RegisterInternalApi(pMyObject, "COSASetParamValueInt", COSASetParamValueInt);
pMyObject->RegisterInternalApi(pMyObject, "COSASetParamValueUlong", COSASetParamValueUlong);
pMyObject->RegisterInternalApi(pMyObject, "COSASetParamValueString", COSASetParamValueString);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetRegistryRootFolder", COSAGetRegistryRootFolder);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetInstanceNumberByIndex", COSAGetInstanceNumberByIndex);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetInterfaceByName", COSAGetInterfaceByName);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetMessageBusHandle", COSAGetMessageBusHandle);
pMyObject->RegisterInternalApi(pMyObject, "COSARegisterCallBackAfterInitDml", COSARegisterCallBackAfterInitDml);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetSubsystemPrefix", COSAGetSubsystemPrefix);
pMyObject->RegisterInternalApi(pMyObject, "COSARepopulateTable", COSARepopulateTable);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetParamValueByPathName", COSAGetParamValueByPathName);
pMyObject->RegisterInternalApi(pMyObject, "COSASetParamValueByPathName", COSASetParamValueByPathName);
pMyObject->RegisterInternalApi(pMyObject, "COSAGetInstanceNumbers", COSAGetInstanceNumbers);
/* Register the API for CCSP Common Components*/
#if 0
pMyObject->RegisterInternalApi(pMyObject, "CcspComp_GetParamUlongValue", CcspComp_GetParamUlongValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspComp_GetParamStringValue", CcspComp_GetParamStringValue);
#endif
pMyObject->RegisterInternalApi(pMyObject, "CcspComp_GetBulkParamValues", CcspComp_GetBulkParamValues);
pMyObject->RegisterInternalApi(pMyObject, "CcspComp_SetParamBoolValue", CcspComp_SetParamBoolValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_GetParamBoolValue", CcspLog_GetParamBoolValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_GetParamUlongValue", CcspLog_GetParamUlongValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_SetParamBoolValue", CcspLog_SetParamBoolValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_SetParamUlongValue", CcspLog_SetParamUlongValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_Validate", CcspLog_Validate );
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_Commit", CcspLog_Commit );
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_Rollback", CcspLog_Rollback );
pMyObject->RegisterInternalApi(pMyObject, "CcspMem_GetParamUlongValue", CcspMem_GetParamUlongValue);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_GetBulkParamValues", CcspLog_GetBulkParamValues);
pMyObject->RegisterInternalApi(pMyObject, "CcspLog_SetBulkParamValues", CcspLog_SetBulkParamValues);
}
/*
* Enroll and create PoamIrepFolder object.
*/
if ( TRUE )
{
pPoamIrepFoRoot =
(PPOAM_IREP_FOLDER_OBJECT)PoamIrepFoCreate(NULL, NULL, "");
//.........这里部分代码省略.........
示例4: AnscTraceError
ANSC_STATUS
DslhVarroNotifyValueChanged
(
ANSC_HANDLE hThisObject
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_VAR_RECORD_OBJECT pMyObject = (PDSLH_VAR_RECORD_OBJECT )hThisObject;
PDSLH_OBJ_RECORD_OBJECT pObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hDslhObjRecord;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT )pObjRecord->hDslhCpeController;
PCCC_MBI_INTERFACE pDslhMbiIf = (PCCC_MBI_INTERFACE )pDslhCpeController->GetInterfaceByName((ANSC_HANDLE)pDslhCpeController, CCC_MBI_INTERFACE_NAME);
PDSLH_VAR_ENTITY_OBJECT pVarEntity = (PDSLH_VAR_ENTITY_OBJECT )pMyObject->hDslhVarEntity;
PSLAP_VARIABLE pNewValue = (PSLAP_VARIABLE )NULL;
char* pParamFullName = NULL;
char* pAccessList = NULL;
if ( !pDslhMbiIf )
{
AnscTraceError(("DslhVarroNotifyValueChanged: pDslhMbiIf is NULL\n"));
return ANSC_STATUS_FAILURE;
}
pParamFullName = pMyObject->GetFullName((ANSC_HANDLE)pMyObject);
if ( pMyObject->TempParamValue )
{
SlapAllocVariable(pNewValue);
if ( !pNewValue )
{
returnStatus = ANSC_STATUS_RESOURCES;
return returnStatus;
}
SlapCloneVariable(pMyObject->TempParamValue, pNewValue);
}
else
{
/* New value has to be present all the time. Get current value */
pNewValue = pMyObject->GetValue((ANSC_HANDLE)pMyObject);
}
if(pNewValue != NULL)
{
pNewValue->ReqSenderID = pMyObject->ReqSenderID;
}
pAccessList = AnscCloneString(pMyObject->AccessList);
returnStatus =
pDslhMbiIf->SendParameterValueChangeSignal
(
(void*)pDslhMbiIf->hOwnerContext,
pParamFullName,
pMyObject->OldParamValue,
pNewValue,
pAccessList
);
if ( pNewValue )
{
SlapFreeVariable(pNewValue);
}
if ( pParamFullName )
{
AnscFreeMemory(pParamFullName);
}
if ( pAccessList )
{
AnscFreeMemory(pAccessList);
}
return returnStatus;
}
示例5: AnscFreeMemory
ANSC_STATUS
DslhVarroReset
(
ANSC_HANDLE hThisObject
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_VAR_RECORD_OBJECT pMyObject = (PDSLH_VAR_RECORD_OBJECT )hThisObject;
PDSLH_OBJ_RECORD_OBJECT pObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hDslhObjRecord;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT)pObjRecord->hDslhCpeController;
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)pDslhCpeController);
/*PPOAM_IREP_FOLDER_OBJECT pPoamIrepFoParameter = (PPOAM_IREP_FOLDER_OBJECT )pMyObject->hIrepFoParameter;*/
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
returnStatus =
pDslhMprIf->DelNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject
);
}
if ( pMyObject->AccessList )
{
AnscFreeMemory(pMyObject->AccessList);
pMyObject->AccessList = NULL;
}
/*
if ( pPoamIrepFoParameter )
{
pPoamIrepFoParameter->Remove((ANSC_HANDLE)pPoamIrepFoParameter);
}
pMyObject->hIrepFoParameter = (ANSC_HANDLE)NULL;
*/
if ( pMyObject->TempParamValue )
{
SlapFreeVariable(pMyObject->TempParamValue);
pMyObject->TempParamValue = NULL;
}
if ( pMyObject->TempParamValueTrans )
{
if ( (pMyObject->TempParamValueTrans->Syntax == SLAP_VAR_SYNTAX_handle) && pMyObject->TempParamValueTrans->Variant.varHandle )
{
AnscFreeMemory(pMyObject->TempParamValueTrans->Variant.varHandle);
}
SlapFreeVariable(pMyObject->TempParamValueTrans);
pMyObject->TempParamValueTrans = NULL;
}
if ( pMyObject->OldParamValue )
{
SlapFreeVariable(pMyObject->OldParamValue);
pMyObject->OldParamValue = NULL;
}
pMyObject->bAlreadySet = FALSE;
return ANSC_STATUS_SUCCESS;
}
示例6: AnscTraceEntry
ANSC_STATUS
DslhVarroSetNotification
(
ANSC_HANDLE hThisObject,
int iNotification
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_VAR_RECORD_OBJECT pMyObject = (PDSLH_VAR_RECORD_OBJECT )hThisObject;
PDSLH_VAR_ENTITY_OBJECT pVarEntity = (PDSLH_VAR_ENTITY_OBJECT )pMyObject->hDslhVarEntity;
PDSLH_OBJ_RECORD_OBJECT pObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hDslhObjRecord;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT)pObjRecord->hDslhCpeController;
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)pDslhCpeController);
PCHAR pFullName = NULL;
/* we don't allow Notification to be changed if it's defined as Forced or always Off notification */
if ( pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configurable && pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configActive)
{
return ANSC_STATUS_UNAPPLICABLE;
}
pFullName = pMyObject->GetFullName(pMyObject);
if(strstr(pFullName,"NumberOfEntries"))
{
AnscTraceEntry(("Param '%s' cannot be set to Notification Active.\n", pFullName));
return ANSC_STATUS_UNAPPLICABLE;
}
if ( iNotification == DSLH_CWMP_NOTIFICATION_active && pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configActive)
{
pFullName = pMyObject->GetFullName(pMyObject);
AnscTraceEntry(("Param '%s' cannot be set to Notification Active.\n", pFullName));
AnscFreeMemory(pFullName);
return ANSC_STATUS_UNAPPLICABLE;
}
if( pMyObject->Notification == iNotification)
{
return ANSC_STATUS_SUCCESS;
}
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
if((iNotification == DSLH_CWMP_NOTIFICATION_passive) ||
(iNotification == DSLH_CWMP_NOTIFICATION_active ) )
{
pMyObject->Notification = iNotification;
/* Bin updated in Plugfest on 06/27/2007
*
* Since it's already in the monitor queue and the monitor parameter will retrieve
* the notification state from VarRecord directly, we don't need to
* do anything and exit.
*/
return ANSC_STATUS_SUCCESS;
}
returnStatus =
pDslhMprIf->DelNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject
);
}
pMyObject->Notification = iNotification;
/*
* Whenever a parameter change is sent in the Inform message due to a non-zero Notification
* setting, the Event code "4 VALUE CHANGE" MUST be included in the list of events. The CPE may
* return a "notification request rejected" error if an attempt is made to set notification on
* a parameter deemed inappropriate for Active Notification.
*/
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
if ( (pVarEntity->DataType == DSLH_CWMP_DATA_TYPE_string) &&
(pVarEntity->FormatValue1 >= 8192 ) )
{
/*
* The parameter value is too big. The backend should initiate the Notification when
* the parameter value is modified.
*/
}
else
{
returnStatus =
pDslhMprIf->RegNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject,
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active)
);
}
}
//.........这里部分代码省略.........
示例7: AnscTraceError
int
CcspCcMbi_GetParameterNames
(
char * parameterName,
dbus_bool nextLevel,
int *size ,
parameterInfoStruct_t ***val,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )g_pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_CWMP_PARAM_INFO pParamInfoArray = (PDSLH_CWMP_PARAM_INFO )NULL;
ULONG ulArraySize = (ULONG )0;
parameterInfoStruct_t** ppReturnVal = NULL;
ULONG i = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
pDslhMprIf = (PDSLH_MPR_INTERFACE )pCpeco->GetDslhMprIf((ANSC_HANDLE)pCpeco);
}
if ( !parameterName )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbi_GetParameterNames\n"));
returnStatus = CCSP_ERR_INVALID_PARAMETER_NAME;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbi_GetParameterNames\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
/* increase the request counter by one */
pDslhMprIf->IncReqCounter(pDslhMprIf->hOwnerContext);
returnStatus =
pDslhMpaIf->GetParameterNames
(
pDslhMpaIf->hOwnerContext,
DSLH_MPA_ENTITY_ACS,
parameterName,
nextLevel,
&pParamInfoArray,
&ulArraySize
);
if ( returnStatus != ANSC_STATUS_SUCCESS )
{
/*
* Something serious has screwed up (e.g. we have run out of system memory), abort!
*/
goto EXIT1;
}
ppReturnVal = AnscAllocateMemory(ulArraySize * sizeof(parameterInfoStruct_t *));
if ( !ppReturnVal )
{
AnscTraceError(("ssp_SsdMbi_GetParameterNames -- No Resource\n"));
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
AnscZeroMemory(ppReturnVal, ulArraySize * sizeof(parameterInfoStruct_t *));
for ( i = 0; i < ulArraySize; i++ )
{
ppReturnVal[i] = AnscAllocateMemory(sizeof(parameterInfoStruct_t));
if ( !ppReturnVal[i] )
{
AnscTraceError(("ssp_SsdMbi_GetParameterNames -- No Resource\n"));
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
AnscZeroMemory(ppReturnVal[i], sizeof(parameterInfoStruct_t));
ppReturnVal[i]->parameterName = AnscCloneString(pParamInfoArray[i].Name);
ppReturnVal[i]->writable = pParamInfoArray[i].bWritable;
}
EXIT1:
//.........这里部分代码省略.........
示例8: if
int
CcspCcMbi_SetParameterValues
(
int sessionId,
unsigned int writeID,
parameterValStruct_t *val,
int size,
dbus_bool commit,
char ** invalidParameterName,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )g_pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_CWMP_PARAM_VALUE pParamArray = NULL;
PDSLH_CWMP_PARAM_VALUE pParamValue = NULL;
PSLAP_VARIABLE pSlapVariable = (PSLAP_VARIABLE)NULL;
PDSLH_CWMP_SOAP_FAULT pCwmpSoapFault = (PDSLH_CWMP_SOAP_FAULT )NULL;
int iStatus = 0;
int i = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
pDslhMprIf = (PDSLH_MPR_INTERFACE )pCpeco->GetDslhMprIf((ANSC_HANDLE)pCpeco);
}
if ( (g_currentSessionID != 0) && (sessionId != g_currentSessionID) )
{
AnscTraceWarning(("!!! SetParameterValues discarded, session id is NOT match !!!\n"));
return ANSC_STATUS_DISCARD;
}
if ( !val || size == 0 )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbi_GetParameterValues\n"));
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbiSetParameterValues\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
/* increase the request counter by one */
pDslhMprIf->IncReqCounter(pDslhMprIf->hOwnerContext);
pParamArray = (PDSLH_CWMP_PARAM_VALUE)
AnscAllocateMemory(sizeof(DSLH_CWMP_PARAM_VALUE) * size);
if( pParamArray == NULL)
{
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT;
}
for ( i = 0; i < size; i++ )
{
pParamValue = &pParamArray[i];
pParamValue->Name = AnscCloneString(val[i].parameterName);
pSlapVariable = (PSLAP_VARIABLE)AnscAllocateMemory(sizeof(SLAP_VARIABLE));
if ( !pSlapVariable )
{
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
SlapInitVariable(pSlapVariable);
pParamValue->Value = pSlapVariable;
pSlapVariable->Name = NULL;
pSlapVariable->ContentType = 0;
pSlapVariable->UsageType = 0;
if ( val[i].type == ccsp_string )
{
pSlapVariable->Syntax = SLAP_VAR_SYNTAX_string;
pSlapVariable->Variant.varString = AnscCloneString(val[i].parameterValue);
}
else if ( val[i].type == ccsp_int )
{
//.........这里部分代码省略.........
示例9: AnscTrace
ANSC_STATUS
ssp_cancel_wifi
(
PCCSP_COMPONENT_CFG pStartCfg
)
{
int nRet = 0;
char CrName[256];
char CpName[256];
if( pDslhCpeController == NULL)
{
return ANSC_STATUS_SUCCESS;
}
if ( g_Subsystem[0] != 0 )
{
_ansc_sprintf(CrName, "%s%s", g_Subsystem, CCSP_DBUS_INTERFACE_CR);
_ansc_sprintf(CpName, "%s%s", g_Subsystem, pStartCfg->ComponentName);
}
else
{
_ansc_sprintf(CrName, "%s", CCSP_DBUS_INTERFACE_CR);
_ansc_sprintf(CpName, "%s", pStartCfg->ComponentName);
}
/* unregister component */
nRet = CcspBaseIf_unregisterComponent(bus_handle, CrName, CpName );
AnscTrace("unregisterComponent returns %d\n", nRet);
pDslhCpeController->Cancel((ANSC_HANDLE)pDslhCpeController);
AnscFreeMemory(pDslhCpeController);
pDslhCpeController = NULL;
return ANSC_STATUS_SUCCESS;
}
示例10: CcspComponentLoadDmXmlList
ANSC_STATUS
ssp_engage_wifi
(
PCCSP_COMPONENT_CFG pStartCfg
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
char CrName[256] = {0};
PCCSP_DM_XML_CFG_LIST pXmlCfgList = NULL;
g_pComponent_Common_Dm->Health = CCSP_COMMON_COMPONENT_HEALTH_Yellow;
if ( pWifiCcdIf )
{
pWifiFcContext->hCcspCcdIf = (ANSC_HANDLE)pWifiCcdIf;
pWifiFcContext->hMessageBus = bus_handle;
}
g_DslhDataModelAgent->SetFcContext((ANSC_HANDLE)g_DslhDataModelAgent, (ANSC_HANDLE)pWifiFcContext);
pDslhCpeController->AddInterface((ANSC_HANDLE)pDslhCpeController, (ANSC_HANDLE)MsgHelper_CreateCcdMbiIf((void*)bus_handle,g_Subsystem));
pDslhCpeController->AddInterface((ANSC_HANDLE)pDslhCpeController, (ANSC_HANDLE)pWifiCcdIf);
pDslhCpeController->SetDbusHandle((ANSC_HANDLE)pDslhCpeController, bus_handle);
pDslhCpeController->Engage((ANSC_HANDLE)pDslhCpeController);
if ( g_Subsystem[0] != 0 )
{
_ansc_sprintf(CrName, "%s%s", g_Subsystem, CCSP_DBUS_INTERFACE_CR);
}
else
{
_ansc_sprintf(CrName, "%s", CCSP_DBUS_INTERFACE_CR);
}
returnStatus = CcspComponentLoadDmXmlList(pStartCfg->DmXmlCfgFileName, &pXmlCfgList);
if ( returnStatus != ANSC_STATUS_SUCCESS )
{
return returnStatus;
}
returnStatus =
pDslhCpeController->RegisterCcspDataModel
(
(ANSC_HANDLE)pDslhCpeController,
CrName, /* CCSP CR ID */
pXmlCfgList->FileList[0], /* Data Model XML file. Can be empty if only base data model supported. */
pStartCfg->ComponentName, /* Component Name */
pStartCfg->Version, /* Component Version */
pStartCfg->DbusPath, /* Component Path */
g_Subsystem /* Component Prefix */
);
if ( returnStatus == ANSC_STATUS_SUCCESS || returnStatus == CCSP_SUCCESS )
{
/* System is fully initialized */
g_pComponent_Common_Dm->Health = CCSP_COMMON_COMPONENT_HEALTH_Green;
}
AnscFreeMemory(pXmlCfgList);
return ANSC_STATUS_SUCCESS;
}
示例11: DslhCreateCpeController
ANSC_STATUS
ssp_engage_tad
(
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
char CrName[256];
g_pComponent_Common_Dm->Health = CCSP_COMMON_COMPONENT_HEALTH_Yellow;
if ( pTadCcdIf )
{
pTadFcContext->hCcspCcdIf = (ANSC_HANDLE)pTadCcdIf;
pTadFcContext->hMessageBus = bus_handle;
}
g_DslhDataModelAgent->SetFcContext((ANSC_HANDLE)g_DslhDataModelAgent, (ANSC_HANDLE)pTadFcContext);
/*RDKB-7459, CID-33428, null check before use */
if(!pDslhCpeController)
{
pDslhCpeController = DslhCreateCpeController(NULL, NULL, NULL);
if ( !pDslhCpeController )
{
CcspTraceWarning(("Null Value, CANNOT Create pDslhCpeController... Exit!\n"));
return ANSC_STATUS_RESOURCES;
}
}
pDslhCpeController->AddInterface((ANSC_HANDLE)pDslhCpeController, (ANSC_HANDLE)MsgHelper_CreateCcdMbiIf((void*)bus_handle, g_Subsystem));
pDslhCpeController->AddInterface((ANSC_HANDLE)pDslhCpeController, (ANSC_HANDLE)pTadCcdIf);
pDslhCpeController->SetDbusHandle((ANSC_HANDLE)pDslhCpeController, bus_handle);
pDslhCpeController->Engage((ANSC_HANDLE)pDslhCpeController);
if ( g_Subsystem[0] != 0 )
{
_ansc_sprintf(CrName, "%s%s", g_Subsystem, CCSP_DBUS_INTERFACE_CR);
}
else
{
_ansc_sprintf(CrName, "%s", CCSP_DBUS_INTERFACE_CR);
}
if ( TRUE )
{
/*RDKB-7459, CID-33428, Load Lib if handle is null */
if( hDiagPlugin == NULL)
{
hDiagPlugin = (ANSC_HANDLE)AnscLoadLibrary(COSA_DIAG_PLUGIN_LIBRARY_NAME);
}
if( hDiagPlugin == NULL)
{
CcspTraceWarning(("Unable to load library -- %s\n", COSA_DIAG_PLUGIN_LIBRARY_NAME));
#ifdef _ANSC_LINUX
CcspTraceWarning(("cause:%s\n", dlerror() ));
#endif
g_CosaDiagPluginInfo.uLoadStatus = COSA_STATUS_ERROR_LOAD_LIBRARY;
}
else
{
g_CosaDiagPluginInfo.InitProc = (COSADiagInitProc)
AnscGetProcAddress
(
hDiagPlugin,
COSA_DIAG_PLUGIN_INIT_PROC
);
if ( g_CosaDiagPluginInfo.InitProc == NULL )
{
AnscTraceWarning(("Unable to Get ProcAddress of '%s'\n", COSA_DIAG_PLUGIN_INIT_PROC));
g_CosaDiagPluginInfo.uLoadStatus = COSA_STATUS_ERROR_LOAD_LIBRARY;
}
else
{
g_CosaDiagPluginInfo.UnloadProc = (COSADiagUnloadProc)
AnscGetProcAddress
(
hDiagPlugin,
COSA_DIAG_PLUGIN_UNLOAD_PROC
);
if ( g_CosaDiagPluginInfo.UnloadProc == NULL )
{
AnscTraceWarning(("Unable to Get ProcAddress of '%s'\n", COSA_DIAG_PLUGIN_UNLOAD_PROC));
g_CosaDiagPluginInfo.uLoadStatus = COSA_STATUS_ERROR_LOAD_LIBRARY;
}
else
{
g_CosaDiagPluginInfo.GetResultsProc = (CosaDiagGetResultsProc)
AnscGetProcAddress
(
hDiagPlugin,
COSA_DIAG_PLUGIN_GETRESULTS_PROC
);
if ( g_CosaDiagPluginInfo.GetResultsProc == NULL )
//.........这里部分代码省略.........