ANSC_STATUS AnscQioEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_QUERY_INTERFACE_OBJECT pMyObject = (PANSC_QUERY_INTERFACE_OBJECT)hThisObject; PANSC_ATOM_TABLE_OBJECT pAtoIf = (PANSC_ATOM_TABLE_OBJECT )pMyObject->hAtoIf; if ( !pAtoIf ) { pAtoIf = (PANSC_ATOM_TABLE_OBJECT)AnscCreateAtomTable ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pAtoIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hAtoIf = (ANSC_HANDLE)pAtoIf; } } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS BwrmPmoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBWRM_PAGE_MANAGER_OBJECT pMyObject = (PBWRM_PAGE_MANAGER_OBJECT )hThisObject; PANSC_TIMER_DESCRIPTOR_OBJECT pCacheTimerObject = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hCacheTimerObject; PANSC_TDO_CLIENT_OBJECT pCacheTimerClient = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hCacheTimerClient; if ( !pCacheTimerObject ) { pCacheTimerObject = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pCacheTimerObject ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hCacheTimerObject = (ANSC_HANDLE)pCacheTimerObject; } pCacheTimerObject->SetTimerType((ANSC_HANDLE)pCacheTimerObject, ANSC_TIMER_TYPE_PERIODIC ); pCacheTimerObject->SetInterval ((ANSC_HANDLE)pCacheTimerObject, BWRM_PMO_CACHE_TIMER_INTERVAL); } if ( !pCacheTimerClient ) { pCacheTimerClient = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pCacheTimerClient ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hCacheTimerClient = (ANSC_HANDLE)pCacheTimerClient; } pCacheTimerClient->hClientContext = (ANSC_HANDLE)pMyObject; pCacheTimerClient->Invoke = BwrmPmoCacheTimerInvoke; pCacheTimerObject->SetClient((ANSC_HANDLE)pCacheTimerObject, (ANSC_HANDLE)pCacheTimerClient); } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS TlsSeoEnrollObjects ( ANSC_HANDLE hThisObject ) { AnscCoEnrollObjects((ANSC_HANDLE)hThisObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS HttpTroEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_TRANS_RECORD_OBJECT pMyObject = (PHTTP_TRANS_RECORD_OBJECT)hThisObject; PHTTP_TMH_INTERFACE pTmhClientIf = (PHTTP_TMH_INTERFACE )pMyObject->hTmhClientIf; PHTTP_TMH_INTERFACE pTmhServerIf = (PHTTP_TMH_INTERFACE )pMyObject->hTmhServerIf; if ( !pTmhClientIf ) { pTmhClientIf = (PHTTP_TMH_INTERFACE)AnscAllocateMemory(sizeof(HTTP_TMH_INTERFACE)); if ( !pTmhClientIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTmhClientIf = (ANSC_HANDLE)pTmhClientIf; } pTmhClientIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pTmhClientIf->Size = sizeof(HTTP_TMH_INTERFACE); pTmhClientIf->Notify = HttpTroTmhClientNotify; pTmhClientIf->Serialize = HttpTroTmhClientSerialize; } if ( !pTmhServerIf ) { pTmhServerIf = (PHTTP_TMH_INTERFACE)AnscAllocateMemory(sizeof(HTTP_TMH_INTERFACE)); if ( !pTmhServerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTmhServerIf = (ANSC_HANDLE)pTmhServerIf; } pTmhServerIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pTmhServerIf->Size = sizeof(HTTP_TMH_INTERFACE); pTmhServerIf->Notify = HttpTroTmhServerNotify; pTmhServerIf->Serialize = HttpTroTmhServerSerialize; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS CcspCwmpSoappoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PCCSP_CWMP_SOAP_PARSER_OBJECT pMyObject = (PCCSP_CWMP_SOAP_PARSER_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS AnscDetoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_DAEMON_ENGINE_TCP_OBJECT pMyObject = (PANSC_DAEMON_ENGINE_TCP_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS WebUpoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PWEB_URI_PATH_OBJECT pMyObject = (PWEB_URI_PATH_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS BbhmDiageoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBBHM_DIAG_EXEC_OBJECT pMyObject = (PBBHM_DIAG_EXEC_OBJECT )hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS HttpWssoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_WEBS_SESSION_OBJECT pMyObject = (PHTTP_WEBS_SESSION_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS SlapOcoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PSLAP_OBJ_CONTAINER_OBJECT pMyObject = (PSLAP_OBJ_CONTAINER_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS BwrmFmoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBWRM_FILE_MANAGER_OBJECT pMyObject = (PBWRM_FILE_MANAGER_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS Bmc2ComdoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBMC2_COM_DOMAIN_OBJECT pMyObject = (PBMC2_COM_DOMAIN_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS AnscObjectArrayCOEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_OBJECT_ARRAY_OBJECT pMyObject = (PANSC_OBJECT_ARRAY_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS HttpSmpoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_SIMPLE_MSG_PARSER pMyObject = (PHTTP_SIMPLE_MSG_PARSER)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS HttpPsoVer2EnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_PSO_VER2_OBJECT pMyObject = (PHTTP_PSO_VER2_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS BreeSrmoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBREE_SRM_OBJECT pMyObject = (PBREE_SRM_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS AnscDsuoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_DAEMON_SERVER_UDP_OBJECT pMyObject = (PANSC_DAEMON_SERVER_UDP_OBJECT)hThisObject; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS AnscSstoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_SIMPLE_SYS_TIME_OBJECT pMyObject = (PANSC_SIMPLE_SYS_TIME_OBJECT)hThisObject; PANSC_STS_INTERFACE pStsIf = (PANSC_STS_INTERFACE)pMyObject->hStsIf; if ( !pStsIf ) { pStsIf = (PANSC_STS_INTERFACE)AnscAllocateMemory(sizeof(ANSC_STS_INTERFACE)); if ( !pStsIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hStsIf = (ANSC_HANDLE)pStsIf; } AnscCopyString(pStsIf->Name, ANSC_STS_INTERFACE_NAME); pStsIf->InterfaceId = ANSC_STS_INTERFACE_ID; pStsIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pStsIf->Size = sizeof(ANSC_STS_INTERFACE); pStsIf->GetLocalTime = AnscSstoStsGetLocalTime; pStsIf->GetCurSeconds = AnscSstoStsGetCurSeconds; pStsIf->AdjustClock1 = AnscSstoStsAdjustClock1; pStsIf->AdjustClock2 = AnscSstoStsAdjustClock2; pStsIf->GetTimeOffset = AnscSstoStsGetTimeOffset; pStsIf->SetTimeOffset = AnscSstoStsSetTimeOffset; pStsIf->SecondsToCalendar = AnscSstoStsSecondsToCalendar; pStsIf->CalendarToSeconds = AnscSstoStsCalendarToSeconds; pStsIf->SysTickToCalendar = AnscSstoStsSysTickToCalendar; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS CcspCwmpTcpcrhoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PCCSP_CWMP_TCPCR_HANDLER_OBJECT pMyObject = (PCCSP_CWMP_TCPCR_HANDLER_OBJECT )hThisObject; PANSC_DSTO_WORKER_OBJECT pDstoWorker = (PANSC_DSTO_WORKER_OBJECT )pMyObject->hDstoWorker; if ( !pDstoWorker ) { pDstoWorker = (PANSC_DSTO_WORKER_OBJECT)CcspTr069PaAllocateMemory(sizeof(ANSC_DSTO_WORKER_OBJECT)); if ( !pDstoWorker ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hDstoWorker = (ANSC_HANDLE)pDstoWorker; } pDstoWorker->hWorkerContext = (ANSC_HANDLE)pMyObject; pDstoWorker->Init = CcspCwmpTcpcrhoWorkerInit; pDstoWorker->Unload = CcspCwmpTcpcrhoWorkerUnload; pDstoWorker->Accept = CcspCwmpTcpcrhoDstowoAccept; pDstoWorker->SetOut = CcspCwmpTcpcrhoDstowoSetOut; pDstoWorker->Remove = CcspCwmpTcpcrhoDstowoRemove; pDstoWorker->Query = CcspCwmpTcpcrhoDstowoQuery; pDstoWorker->ProcessSync = CcspCwmpTcpcrhoDstowoProcessSync; pDstoWorker->ProcessAsync = CcspCwmpTcpcrhoDstowoProcessAsync; pDstoWorker->SendComplete = CcspCwmpTcpcrhoDstowoSendComplete; pDstoWorker->Notify = CcspCwmpTcpcrhoDstowoNotify; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS WebRooEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PWEB_RESOURCE_OWNER_OBJECT pMyObject = (PWEB_RESOURCE_OWNER_OBJECT)hThisObject; PHTTP_RCP_INTERFACE pRcpIf = (PHTTP_RCP_INTERFACE )pMyObject->hRcpIf; if ( !pRcpIf ) { pRcpIf = (PHTTP_RCP_INTERFACE)AnscAllocateMemory(sizeof(HTTP_RCP_INTERFACE)); if ( !pRcpIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRcpIf = (ANSC_HANDLE)pRcpIf; } pRcpIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pRcpIf->Size = sizeof(HTTP_RCP_INTERFACE); pRcpIf->GetDocumentRoot = WebRooRcpGetDocumentRoot; pRcpIf->GetPathInfo = WebRooRcpGetPathInfo; pRcpIf->GetPathTranslated = WebRooRcpGetPathTranslated; pRcpIf->GetRemoteUser = WebRooRcpGetRemoteUser; pRcpIf->GetScriptName = WebRooRcpGetScriptName; pRcpIf->GetServerName = WebRooRcpGetServerName; pRcpIf->GetServerPort = WebRooRcpGetServerPort; pRcpIf->GetServerProtocol = WebRooRcpGetServerProtocol; pRcpIf->GetServerSoftware = WebRooRcpGetServerSoftware; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS StunScoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PSTUN_SIMPLE_CLIENT_OBJECT pMyObject = (PSTUN_SIMPLE_CLIENT_OBJECT )hThisObject; PANSC_TIMER_DESCRIPTOR_OBJECT pStageTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT )pMyObject->hStageTimerObj; PANSC_TDO_CLIENT_OBJECT pStageTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hStageTimerIf; PANSC_TIMER_DESCRIPTOR_OBJECT pRetryTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT )pMyObject->hRetryTimerObj; PANSC_TDO_CLIENT_OBJECT pRetryTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hRetryTimerIf; PANSC_TIMER_DESCRIPTOR_OBJECT pProbeTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT )pMyObject->hProbeTimerObj; PANSC_TDO_CLIENT_OBJECT pProbeTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hProbeTimerIf; PANSC_SIMPLE_CLIENT_UDP_OBJECT pSimpleClientUdp1 = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)pMyObject->hSimpleClientUdp1; PANSC_SCUO_WORKER_OBJECT pClientUdpWorker1 = (PANSC_SCUO_WORKER_OBJECT )pMyObject->hClientUdpWorker1; PANSC_SIMPLE_CLIENT_UDP_OBJECT pSimpleClientUdpA = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)pMyObject->hSimpleClientUdpA; PANSC_SCUO_WORKER_OBJECT pClientUdpWorkerA = (PANSC_SCUO_WORKER_OBJECT )pMyObject->hClientUdpWorkerA; PANSC_SIMPLE_CLIENT_UDP_OBJECT pSimpleClientUdpB = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)pMyObject->hSimpleClientUdpB; PANSC_SCUO_WORKER_OBJECT pClientUdpWorkerB = (PANSC_SCUO_WORKER_OBJECT )pMyObject->hClientUdpWorkerB; if ( !pStageTimerObj ) { pStageTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pStageTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hStageTimerObj = (ANSC_HANDLE)pStageTimerObj; } pStageTimerObj->SetTimerType((ANSC_HANDLE)pStageTimerObj, ANSC_TIMER_TYPE_SPORADIC ); pStageTimerObj->SetInterval ((ANSC_HANDLE)pStageTimerObj, STUN_SCO_STAGE_TIMER_INTERVAL); } if ( !pStageTimerIf ) { pStageTimerIf = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pStageTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hStageTimerIf = (ANSC_HANDLE)pStageTimerIf; } pStageTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pStageTimerIf->Invoke = StunScoStageTimerInvoke; pStageTimerObj->SetClient((ANSC_HANDLE)pStageTimerObj, (ANSC_HANDLE)pStageTimerIf); } if ( !pRetryTimerObj ) { pRetryTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pRetryTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRetryTimerObj = (ANSC_HANDLE)pRetryTimerObj; } pRetryTimerObj->SetTimerType((ANSC_HANDLE)pRetryTimerObj, ANSC_TIMER_TYPE_SPORADIC ); pRetryTimerObj->SetInterval ((ANSC_HANDLE)pRetryTimerObj, STUN_MIN_RETRANSMISSION_INTERVAL); } if ( !pRetryTimerIf ) { pRetryTimerIf = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pRetryTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRetryTimerIf = (ANSC_HANDLE)pRetryTimerIf; } pRetryTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pRetryTimerIf->Invoke = StunScoRetryTimerInvoke; pRetryTimerObj->SetClient((ANSC_HANDLE)pRetryTimerObj, (ANSC_HANDLE)pRetryTimerIf); } if ( !pProbeTimerObj ) { pProbeTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pProbeTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hProbeTimerObj = (ANSC_HANDLE)pProbeTimerObj; } pProbeTimerObj->SetTimerType((ANSC_HANDLE)pProbeTimerObj, ANSC_TIMER_TYPE_PERIODIC ); pProbeTimerObj->SetInterval ((ANSC_HANDLE)pProbeTimerObj, STUN_MIN_KEEP_ALIVE_INTERVAL * 1000); } if ( !pProbeTimerIf ) { pProbeTimerIf = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pProbeTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hProbeTimerIf = (ANSC_HANDLE)pProbeTimerIf; } pProbeTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pProbeTimerIf->Invoke = StunScoProbeTimerInvoke; pProbeTimerObj->SetClient((ANSC_HANDLE)pProbeTimerObj, (ANSC_HANDLE)pProbeTimerIf); } if ( !pSimpleClientUdp1 ) { pSimpleClientUdp1 = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)AnscCreateSimpleClientUdp ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSimpleClientUdp1 ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSimpleClientUdp1 = (ANSC_HANDLE)pSimpleClientUdp1; } } if ( !pClientUdpWorker1 ) { pClientUdpWorker1 = (PANSC_SCUO_WORKER_OBJECT)AnscAllocateMemory(sizeof(ANSC_SCUO_WORKER_OBJECT)); if ( !pClientUdpWorker1 ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hClientUdpWorker1 = (ANSC_HANDLE)pClientUdpWorker1; } pClientUdpWorker1->hWorkerContext = (ANSC_HANDLE)pMyObject; pClientUdpWorker1->Query = StunScoScuowo1Query; pClientUdpWorker1->Process = StunScoScuowo1Process; pClientUdpWorker1->Notify = StunScoScuowo1Notify; pSimpleClientUdp1->SetWorker ( (ANSC_HANDLE)pSimpleClientUdp1, (ANSC_HANDLE)pClientUdpWorker1, sizeof(ANSC_SCUO_WORKER_OBJECT) ); } if ( !pSimpleClientUdpA ) { pSimpleClientUdpA = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)AnscCreateSimpleClientUdp ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSimpleClientUdpA ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSimpleClientUdpA = (ANSC_HANDLE)pSimpleClientUdpA; } } if ( !pClientUdpWorkerA ) { pClientUdpWorkerA = (PANSC_SCUO_WORKER_OBJECT)AnscAllocateMemory(sizeof(ANSC_SCUO_WORKER_OBJECT)); if ( !pClientUdpWorkerA ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hClientUdpWorkerA = (ANSC_HANDLE)pClientUdpWorkerA; } pClientUdpWorkerA->hWorkerContext = (ANSC_HANDLE)pMyObject; pClientUdpWorkerA->Query = StunScoScuowoAQuery; pClientUdpWorkerA->Process = StunScoScuowoAProcess; pClientUdpWorkerA->Notify = StunScoScuowoANotify; pSimpleClientUdpA->SetWorker ( (ANSC_HANDLE)pSimpleClientUdpA, (ANSC_HANDLE)pClientUdpWorkerA, sizeof(ANSC_SCUO_WORKER_OBJECT) ); } if ( !pSimpleClientUdpB ) { pSimpleClientUdpB = (PANSC_SIMPLE_CLIENT_UDP_OBJECT)AnscCreateSimpleClientUdp ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSimpleClientUdpB ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSimpleClientUdpB = (ANSC_HANDLE)pSimpleClientUdpB; } } if ( !pClientUdpWorkerB ) { pClientUdpWorkerB = (PANSC_SCUO_WORKER_OBJECT)AnscAllocateMemory(sizeof(ANSC_SCUO_WORKER_OBJECT)); if ( !pClientUdpWorkerB ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hClientUdpWorkerB = (ANSC_HANDLE)pClientUdpWorkerB; } pClientUdpWorkerB->hWorkerContext = (ANSC_HANDLE)pMyObject; pClientUdpWorkerB->Query = StunScoScuowoBQuery; pClientUdpWorkerB->Process = StunScoScuowoBProcess; pClientUdpWorkerB->Notify = StunScoScuowoBNotify; pSimpleClientUdpB->SetWorker ( (ANSC_HANDLE)pSimpleClientUdpB, (ANSC_HANDLE)pClientUdpWorkerB, sizeof(ANSC_SCUO_WORKER_OBJECT) ); } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS SysIroV2EnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PSYS_IROV2_OBJECT pMyObject = (PSYS_IROV2_OBJECT )hThisObject; PSYS_IRA_INTERFACE pIraIf = (PSYS_IRA_INTERFACE )pMyObject->hIraIf; PSYS_IROV2_FOLDER_ENTRY pRootFolder = (PSYS_IROV2_FOLDER_ENTRY )pMyObject->hRootFolder; if ( !pRootFolder ) { pRootFolder = (PSYS_IROV2_FOLDER_ENTRY)AnscAllocateMemory(sizeof(SYS_IROV2_FOLDER_ENTRY) + _ansc_strlen("/") + 1); if ( !pRootFolder ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRootFolder = (ANSC_HANDLE)pRootFolder; SysIroV2InitFolderEntry(pRootFolder); pRootFolder->FolderName[0] = '/'; pRootFolder->FolderName[1] = '\0'; } } if ( !pIraIf ) { pIraIf = (PSYS_IRA_INTERFACE)AnscAllocateMemory(sizeof(SYS_IRA_INTERFACE)); if ( !pIraIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hIraIf = (ANSC_HANDLE)pIraIf; } AnscCopyString(pIraIf->Name, SYS_IRA_INTERFACE_NAME); pIraIf->InterfaceId = SYS_IRA_INTERFACE_ID; pIraIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pIraIf->Size = sizeof(SYS_IRA_INTERFACE); pIraIf->AcqWriteAccess = SysIroV2IraAcqWriteAccess; pIraIf->RelWriteAccess = SysIroV2IraRelWriteAccess; pIraIf->AddSysFolder = SysIroV2IraAddSysFolder; pIraIf->AddFolder = SysIroV2IraAddFolder; pIraIf->AddFolder2 = SysIroV2IraAddFolder2; pIraIf->DelFolder = SysIroV2IraDelFolder; pIraIf->DelFolder2 = SysIroV2IraDelFolder2; pIraIf->OpenFolder = SysIroV2IraOpenFolder; pIraIf->OpenFolder2 = SysIroV2IraOpenFolder2; pIraIf->CloseFolder = SysIroV2IraCloseFolder; pIraIf->ClearFolder = SysIroV2IraClearFolder; pIraIf->GenerateFolder = SysIroV2IraGenerateFolder; pIraIf->PopulateFolder = SysIroV2IraPopulateFolder; pIraIf->QueryFolder = SysIroV2IraQueryFolder; pIraIf->GetSubFolderCount = SysIroV2IraGetSubFolderCount; pIraIf->EnumSubFolder = SysIroV2IraEnumSubFolder; pIraIf->TestSubFolder = SysIroV2IraTestSubFolder; pIraIf->AddRecord = SysIroV2IraAddRecord; pIraIf->AddRecord2 = SysIroV2IraAddRecord2; pIraIf->DelRecord = SysIroV2IraDelRecord; pIraIf->GetRecord = SysIroV2IraGetRecord; pIraIf->SetRecord = SysIroV2IraSetRecord; pIraIf->QueryRecord = SysIroV2IraQueryRecord; pIraIf->GetRecordCount = SysIroV2IraGetRecordCount; pIraIf->EnumRecord = SysIroV2IraEnumRecord; pIraIf->TestRecord = SysIroV2IraTestRecord; pIraIf->GetRfoUserContext = SysIroV2IraGetRfoUserContext; pIraIf->SetRfoUserContext = SysIroV2IraSetRfoUserContext; pIraIf->GetRfoUserReserved = SysIroV2IraGetRfoUserReserved; pIraIf->SetRfoUserReserved = SysIroV2IraSetRfoUserReserved; pIraIf->GetRfoFolderType = SysIroV2IraGetRfoFolderType; pIraIf->SetRfoFolderType = SysIroV2IraSetRfoFolderType; pIraIf->GetRfoPermission = SysIroV2IraGetRfoPermission; pIraIf->SetRfoPermission = SysIroV2IraSetRfoPermission; pIraIf->GetRfoRenderAttr = SysIroV2IraGetRfoRenderAttr; pIraIf->SetRfoRenderAttr = SysIroV2IraSetRfoRenderAttr; pIraIf->GetRroUserContext = SysIroV2IraGetRroUserContext; pIraIf->SetRroUserContext = SysIroV2IraSetRroUserContext; pIraIf->GetRroUserReserved = SysIroV2IraGetRroUserReserved; pIraIf->SetRroUserReserved = SysIroV2IraSetRroUserReserved; pIraIf->GetRroPermission = SysIroV2IraGetRroPermission; pIraIf->SetRroPermission = SysIroV2IraSetRroPermission; pIraIf->GetRroRenderAttr = SysIroV2IraGetRroRenderAttr; pIraIf->SetRroRenderAttr = SysIroV2IraSetRroRenderAttr; pIraIf->GetCurRecycleBin = SysIroV2IraGetCurRecycleBin; pIraIf->AttachRecycleBin = SysIroV2IraAttachRecycleBin; pIraIf->DetachRecycleBin = SysIroV2IraDetachRecycleBin; pIraIf->SortSubFolders = SysIroV2IraSortSubFolders; pIraIf->SortRecords = SysIroV2IraSortRecords; pIraIf->GetSysRamIf = SysIroV2IraGetSysRamIf; pIraIf->SetSysRamIf = SysIroV2IraSetSysRamIf; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS CcspCwmpsoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PCCSP_CWMP_SESSION_OBJECT pMyObject = (PCCSP_CWMP_SESSION_OBJECT )hThisObject; PANSC_TIMER_DESCRIPTOR_OBJECT pSessionTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hSessionTimerObj; PANSC_TDO_CLIENT_OBJECT pSessionTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hSessionTimerIf; PCCSP_CWMP_ACS_CONNECTION_OBJECT pCcspCwmpAcsConnection = (PCCSP_CWMP_ACS_CONNECTION_OBJECT)pMyObject->hCcspCwmpAcsConnection; PANSC_TIMER_DESCRIPTOR_OBJECT pRetryTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hRetryTimerObj; PANSC_TDO_CLIENT_OBJECT pRetryTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hRetryTimerIf; PANSC_TIMER_DESCRIPTOR_OBJECT pDelayedActiveNotifTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hDelayedActiveNotifTimerObj; PANSC_TDO_CLIENT_OBJECT pDelayedActiveNotifTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hDelayedActiveNotifTimerIf; PCCSP_CWMP_MCO_INTERFACE pCcspCwmpMcoIf = (PCCSP_CWMP_MCO_INTERFACE )pMyObject->hCcspCwmpMcoIf; if ( !pSessionTimerObj ) { pSessionTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSessionTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSessionTimerObj = (ANSC_HANDLE)pSessionTimerObj; } pSessionTimerObj->SetTimerType((ANSC_HANDLE)pSessionTimerObj, ANSC_TIMER_TYPE_SPORADIC ); pSessionTimerObj->SetInterval ((ANSC_HANDLE)pSessionTimerObj, CCSP_CWMPSO_SESSION_TIMEOUT * 1000); /* _ansc_strcpy(pSessionTimerObj->Name, "CcspCwmpsoSessionTimer"); */ } if ( !pSessionTimerIf ) { pSessionTimerIf = (PANSC_TDO_CLIENT_OBJECT)CcspTr069PaAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pSessionTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSessionTimerIf = (ANSC_HANDLE)pSessionTimerIf; } pSessionTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pSessionTimerIf->Invoke = CcspCwmpsoSessionTimerInvoke; pSessionTimerObj->SetClient((ANSC_HANDLE)pSessionTimerObj, (ANSC_HANDLE)pSessionTimerIf); } if ( !pRetryTimerObj ) { /* use separate timer scehduler to run retry alg, otherwise, we will observe delays of timer expiration */ pRetryTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( (ANSC_HANDLE)NULL, /* pMyObject->hContainerContext,*/ (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pRetryTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRetryTimerObj = (ANSC_HANDLE)pRetryTimerObj; } pRetryTimerObj->SetTimerType((ANSC_HANDLE)pRetryTimerObj, ANSC_TIMER_TYPE_SPORADIC ); pRetryTimerObj->SetInterval ((ANSC_HANDLE)pRetryTimerObj, 1000 * 1000); /* _ansc_strcpy(pSessionTimerObj->Name, "CcspCwmpsoSessionRetryTimer"); */ } if ( !pRetryTimerIf ) { pRetryTimerIf = (PANSC_TDO_CLIENT_OBJECT)CcspTr069PaAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pRetryTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hRetryTimerIf = (ANSC_HANDLE)pRetryTimerIf; } pRetryTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pRetryTimerIf->Invoke = CcspCwmpsoSessionRetryTimerInvoke; pRetryTimerObj->SetClient((ANSC_HANDLE)pRetryTimerObj, (ANSC_HANDLE)pRetryTimerIf); } if ( !pDelayedActiveNotifTimerObj ) { /* use separate timer scehduler to run retry alg, otherwise, we will observe delays of timer expiration */ pDelayedActiveNotifTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( (ANSC_HANDLE)NULL, /* pMyObject->hContainerContext,*/ (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pDelayedActiveNotifTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hDelayedActiveNotifTimerObj = (ANSC_HANDLE)pDelayedActiveNotifTimerObj; } pDelayedActiveNotifTimerObj->SetTimerType((ANSC_HANDLE)pDelayedActiveNotifTimerObj, ANSC_TIMER_TYPE_SPORADIC); pDelayedActiveNotifTimerObj->SetInterval ((ANSC_HANDLE)pDelayedActiveNotifTimerObj, 5000 * 1000); } if ( !pDelayedActiveNotifTimerIf ) { pDelayedActiveNotifTimerIf = (PANSC_TDO_CLIENT_OBJECT)CcspTr069PaAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pDelayedActiveNotifTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hDelayedActiveNotifTimerIf = (ANSC_HANDLE)pDelayedActiveNotifTimerIf; } pDelayedActiveNotifTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pDelayedActiveNotifTimerIf->Invoke = CcspCwmpsoDelayedActiveNotifTimerInvoke; pDelayedActiveNotifTimerObj->SetClient((ANSC_HANDLE)pDelayedActiveNotifTimerObj, (ANSC_HANDLE)pDelayedActiveNotifTimerIf); } if ( !pCcspCwmpAcsConnection ) { pCcspCwmpAcsConnection = (PCCSP_CWMP_ACS_CONNECTION_OBJECT)CcspCwmpCreateAcsConnection ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pCcspCwmpAcsConnection ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hCcspCwmpAcsConnection = (ANSC_HANDLE)pCcspCwmpAcsConnection; pCcspCwmpAcsConnection->SetCcspCwmpSession((ANSC_HANDLE)pCcspCwmpAcsConnection, (ANSC_HANDLE)pMyObject); } } if ( !pCcspCwmpMcoIf ) { pCcspCwmpMcoIf = (PCCSP_CWMP_MCO_INTERFACE)CcspTr069PaAllocateMemory(sizeof(CCSP_CWMP_MCO_INTERFACE)); if ( !pCcspCwmpMcoIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hCcspCwmpMcoIf = (ANSC_HANDLE)pCcspCwmpMcoIf; } AnscCopyString(pCcspCwmpMcoIf->Name, CCSP_CWMP_MCO_INTERFACE_NAME); pCcspCwmpMcoIf->InterfaceId = CCSP_CWMP_MCO_INTERFACE_ID; pCcspCwmpMcoIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pCcspCwmpMcoIf->Size = sizeof(CCSP_CWMP_MCO_INTERFACE); pCcspCwmpMcoIf->NotifyAcsStatus = CcspCwmpsoMcoNotifyAcsStatus; pCcspCwmpMcoIf->GetNextMethod = CcspCwmpsoMcoGetNextMethod; pCcspCwmpMcoIf->ProcessSoapResponse = CcspCwmpsoMcoProcessSoapResponse; pCcspCwmpMcoIf->ProcessSoapError = CcspCwmpsoMcoProcessSoapError; pCcspCwmpMcoIf->InvokeUnknownMethod = CcspCwmpsoMcoInvokeUnknownMethod; pCcspCwmpMcoIf->GetRpcMethods = CcspCwmpsoMcoGetRpcMethods; pCcspCwmpMcoIf->SetParameterValues = CcspCwmpsoMcoSetParameterValues; pCcspCwmpMcoIf->GetParameterValues = CcspCwmpsoMcoGetParameterValues; pCcspCwmpMcoIf->GetParameterNames = CcspCwmpsoMcoGetParameterNames; pCcspCwmpMcoIf->SetParameterAttributes = CcspCwmpsoMcoSetParameterAttributes; pCcspCwmpMcoIf->GetParameterAttributes = CcspCwmpsoMcoGetParameterAttributes; pCcspCwmpMcoIf->AddObject = CcspCwmpsoMcoAddObject; pCcspCwmpMcoIf->DeleteObject = CcspCwmpsoMcoDeleteObject; pCcspCwmpMcoIf->Download = CcspCwmpsoMcoDownload; pCcspCwmpMcoIf->Reboot = CcspCwmpsoMcoReboot; pCcspCwmpMcoIf->GetQueuedTransfers = CcspCwmpsoMcoGetQueuedTransfers; pCcspCwmpMcoIf->ScheduleInform = CcspCwmpsoMcoScheduleInform; pCcspCwmpMcoIf->SetVouchers = CcspCwmpsoMcoSetVouchers; pCcspCwmpMcoIf->GetOptions = CcspCwmpsoMcoGetOptions; pCcspCwmpMcoIf->Upload = CcspCwmpsoMcoUpload; pCcspCwmpMcoIf->FactoryReset = CcspCwmpsoMcoFactoryReset; pCcspCwmpMcoIf->ChangeDUState = CcspCwmpsoMcoChangeDUState; pCcspCwmpMcoIf->GetParamDataType = CcspCwmpsoMcoGetParamDataType; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS CcspCwmpAcscoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PCCSP_CWMP_ACS_CONNECTION_OBJECT pMyObject = (PCCSP_CWMP_ACS_CONNECTION_OBJECT)hThisObject; PHTTP_BSP_INTERFACE pHttpBspIf = (PHTTP_BSP_INTERFACE )pMyObject->hHttpBspIf; PHTTP_ACM_INTERFACE pHttpAcmIf = (PHTTP_ACM_INTERFACE )pMyObject->hHttpAcmIf; PHTTP_SIMPLE_CLIENT_OBJECT pHttpClient = (PHTTP_SIMPLE_CLIENT_OBJECT)NULL; PHTTP_HFP_INTERFACE pHttpHfpIf = (PHTTP_HFP_INTERFACE)NULL; if ( !pHttpBspIf ) { pHttpBspIf = (PHTTP_BSP_INTERFACE)CcspTr069PaAllocateMemory(sizeof(HTTP_BSP_INTERFACE)); if ( !pHttpBspIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hHttpBspIf = (ANSC_HANDLE)pHttpBspIf; } AnscCopyString(pHttpBspIf->Name, HTTP_BSP_INTERFACE_NAME); pHttpBspIf->InterfaceId = HTTP_BSP_INTERFACE_ID; pHttpBspIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pHttpBspIf->Size = sizeof(HTTP_BSP_INTERFACE); pHttpBspIf->Polish = CcspCwmpAcscoHttpBspPolish; pHttpBspIf->Browse = CcspCwmpAcscoHttpBspBrowse; pHttpBspIf->Notify = CcspCwmpAcscoHttpBspNotify; } if ( !pHttpAcmIf ) { pHttpAcmIf = (PHTTP_ACM_INTERFACE)CcspTr069PaAllocateMemory(sizeof(HTTP_ACM_INTERFACE)); if ( !pHttpAcmIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hHttpAcmIf = (ANSC_HANDLE)pHttpAcmIf; } pHttpAcmIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pHttpAcmIf->Size = sizeof(HTTP_ACM_INTERFACE); pHttpAcmIf->GetCredential = CcspCwmpAcscoHttpGetCredential; } /* * Create Http Simple Client */ pHttpClient = (PHTTP_SIMPLE_CLIENT_OBJECT)HttpCreateSimpleClient ( (ANSC_HANDLE)pMyObject->hHttpHelpContainer, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if( pHttpClient == NULL) { return ANSC_STATUS_RESOURCES; } pHttpClient->SetProductName(pHttpClient, "HTTP Client V1.0"); pHttpClient->SetBspIf((ANSC_HANDLE)pHttpClient, pMyObject->hHttpBspIf); pHttpClient->SetClientMode(pHttpClient, HTTP_SCO_MODE_XSOCKET | HTTP_SCO_MODE_COMPACT | HTTP_SCO_MODE_NOTIFY_ON_ALL_CONN_ONCE); pMyObject->hHttpSimpleClient = (ANSC_HANDLE)pHttpClient; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS BbhmDiagnsEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBBHM_DIAG_NS_LOOKUP_OBJECT pMyObject = (PBBHM_DIAG_NS_LOOKUP_OBJECT )hThisObject; PDSLH_NSLOOKUP_INFO pDslhDiagInfo = (PDSLH_NSLOOKUP_INFO )NULL; PBBHM_NS_LOOKUP_TDO_OBJECT pStateTimer = (PBBHM_NS_LOOKUP_TDO_OBJECT )pMyObject->hStateTimer; PANSC_OBJECT_CONTAINER_OBJECT pContainer = (PANSC_OBJECT_CONTAINER_OBJECT)pMyObject->hContainerContext; AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); pDslhDiagInfo = AnscAllocateMemory(sizeof(DSLH_NSLOOKUP_INFO)); if ( !pDslhDiagInfo ) { return ANSC_STATUS_RESOURCES; } else { DslhInitNSLookupInfo(pDslhDiagInfo); pMyObject->hDslhDiagInfo = pDslhDiagInfo; } if ( !pMyObject->hSendBuffer ) { pMyObject->hSendBuffer = (PCHAR)AnscAllocateMemory(BBHM_NS_LOOKUP_DEF_PACKET_SIZE); if ( !pMyObject->hSendBuffer ) { return ANSC_STATUS_RESOURCES; } } if ( !pStateTimer ) { pStateTimer = (PBBHM_NS_LOOKUP_TDO_OBJECT)BbhmDiagnsTdoCreate ( (ANSC_HANDLE)pContainer, (ANSC_HANDLE)pMyObject, NULL ); if ( !pStateTimer ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hStateTimer = (ANSC_HANDLE)pStateTimer; } pStateTimer->SetTimerType((ANSC_HANDLE)pStateTimer, ANSC_TIMER_TYPE_SPORADIC ); pStateTimer->SetInterval ((ANSC_HANDLE)pStateTimer, BBHM_NS_LOOKUP_DEF_TIME_BETWEEN_IN_MILLISECONDS ); pStateTimer->SetCounter ((ANSC_HANDLE)pStateTimer, BBHM_NS_LOOKUP_DEF_NUMBER_PACKETS ); } BbhmDiageoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS TlsSmoEnrollObjects ( ANSC_HANDLE hThisObject ) { PTLS_SESSION_MANAGER_OBJECT pMyObject = (PTLS_SESSION_MANAGER_OBJECT )hThisObject; PANSC_TIMER_DESCRIPTOR_OBJECT pPatrolTimer = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hPatrolTimer; PANSC_TDO_CLIENT_OBJECT pTimerClient = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hTimerClient; PTLS_HSM_INTERFACE pTlsHsmIf = (PTLS_HSM_INTERFACE )pMyObject->hTlsHsmIf; if ( !pPatrolTimer ) { pPatrolTimer = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pPatrolTimer ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hPatrolTimer = (ANSC_HANDLE)pPatrolTimer; } pPatrolTimer->SetTimerType((ANSC_HANDLE)pPatrolTimer, ANSC_TIMER_TYPE_PERIODIC ); pPatrolTimer->SetInterval ((ANSC_HANDLE)pPatrolTimer, TLS_SMO_PATROL_TIMER_INTERVAL); } if ( !pTimerClient ) { pTimerClient = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pTimerClient ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTimerClient = (ANSC_HANDLE)pTimerClient; } pTimerClient->hClientContext = (ANSC_HANDLE)pMyObject; pTimerClient->Invoke = TlsSmoPatrolTimerInvoke; pPatrolTimer->SetClient((ANSC_HANDLE)pPatrolTimer, (ANSC_HANDLE)pTimerClient); } if ( !pTlsHsmIf ) { pTlsHsmIf = (PTLS_HSM_INTERFACE)AnscAllocateMemory(sizeof(TLS_HSM_INTERFACE)); if ( !pTlsHsmIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTlsHsmIf = (ANSC_HANDLE)pTlsHsmIf; } AnscCopyString(pTlsHsmIf->Name, TLS_HSM_INTERFACE_NAME); pTlsHsmIf->InterfaceId = TLS_HSM_INTERFACE_ID; pTlsHsmIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pTlsHsmIf->Size = sizeof(TLS_HSM_INTERFACE); pTlsHsmIf->SelHandshakeSession = TlsSmoHsmSelHandshakeSession; pTlsHsmIf->GetHandshakeSession = TlsSmoHsmGetHandshakeSession; pTlsHsmIf->AddHandshakeSession = TlsSmoHsmAddHandshakeSession; pTlsHsmIf->DelHandshakeSession = TlsSmoHsmDelHandshakeSession; pTlsHsmIf->DelAllHandshakeSessions = TlsSmoHsmDelAllHandshakeSessions; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS SlapAmoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PSLAP_ACCESS_MANAGER_OBJECT pMyObject = (PSLAP_ACCESS_MANAGER_OBJECT)hThisObject; PSLAP_GOA_INTERFACE pSlapGoaIf = (PSLAP_GOA_INTERFACE )pMyObject->hSlapGoaIf; PSLAP_POA_INTERFACE pSlapPoaIf = (PSLAP_POA_INTERFACE )pMyObject->hSlapPoaIf; PSLAP_ENV_CONTROLLER_OBJECT pSlapEnvController = (PSLAP_ENV_CONTROLLER_OBJECT)pMyObject->hSlapEnvController; if ( !pSlapGoaIf ) { pSlapGoaIf = (PSLAP_GOA_INTERFACE)AnscAllocateMemory(sizeof(SLAP_GOA_INTERFACE)); if ( !pSlapGoaIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSlapGoaIf = (ANSC_HANDLE)pSlapGoaIf; } AnscCopyString(pSlapGoaIf->Name, SLAP_GOA_INTERFACE_NAME); pSlapGoaIf->InterfaceId = SLAP_GOA_INTERFACE_ID; pSlapGoaIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pSlapGoaIf->Size = sizeof(SLAP_GOA_INTERFACE); pSlapGoaIf->GetAggregationMode = SlapAmoGoaGetAggregationMode; pSlapGoaIf->SetAggregationMode = SlapAmoGoaSetAggregationMode; pSlapGoaIf->GetLpcPartyPort = SlapAmoGoaGetLpcPartyPort; pSlapGoaIf->SetLpcPartyPort = SlapAmoGoaSetLpcPartyPort; pSlapGoaIf->GetLpcPartyAddr = SlapAmoGoaSetLpcPartyAddr; pSlapGoaIf->SetLpcPartyAddr = SlapAmoGoaSetLpcPartyAddr; pSlapGoaIf->GetLpcManagerAddr = SlapAmoGoaSetLpcManagerAddr; pSlapGoaIf->SetLpcManagerAddr = SlapAmoGoaSetLpcManagerAddr; pSlapGoaIf->CreateContainer = SlapAmoGoaCreateContainer; pSlapGoaIf->DeleteContainer = SlapAmoGoaDeleteContainer; pSlapGoaIf->CreateObject = SlapAmoGoaCreateObject; pSlapGoaIf->DeleteObject = SlapAmoGoaDeleteObject; pSlapGoaIf->InvokeObject = SlapAmoGoaInvokeObject; pSlapGoaIf->InvokeObject2 = SlapAmoGoaInvokeObject2; pSlapGoaIf->AttachObject = SlapAmoGoaAttachObject; pSlapGoaIf->DetachObject = SlapAmoGoaDetachObject; pSlapGoaIf->UnlinkObject = SlapAmoGoaUnlinkObject; pSlapGoaIf->AcqObjectAccess = SlapAmoGoaAcqObjectAccess; pSlapGoaIf->RelObjectAccess = SlapAmoGoaRelObjectAccess; pSlapGoaIf->FlushAllObjects = SlapAmoGoaFlushAllObjects; pSlapGoaIf->EnrollObjDescriptor = SlapAmoGoaEnrollObjDescriptor; pSlapGoaIf->UnbindObjDescriptor = SlapAmoGoaUnbindObjDescriptor; pSlapGoaIf->VerifyObjDescriptor = SlapAmoGoaVerifyObjDescriptor; pSlapGoaIf->EnrollMobileObject = SlapAmoGoaEnrollMobileObject; pSlapGoaIf->UnbindMobileObject = SlapAmoGoaUnbindMobileObject; pSlapGoaIf->VerifyMobileObject = SlapAmoGoaVerifyMobileObject; } if ( !pSlapPoaIf ) { pSlapPoaIf = (PSLAP_POA_INTERFACE)AnscAllocateMemory(sizeof(SLAP_POA_INTERFACE)); if ( !pSlapPoaIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSlapPoaIf = (ANSC_HANDLE)pSlapPoaIf; } AnscCopyString(pSlapPoaIf->Name, SLAP_POA_INTERFACE_NAME); pSlapPoaIf->InterfaceId = SLAP_POA_INTERFACE_ID; pSlapPoaIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pSlapPoaIf->Size = sizeof(SLAP_POA_INTERFACE); pSlapPoaIf->AcqObjectAccess = SlapAmoPoaAcqObjectAccess; pSlapPoaIf->RelObjectAccess = SlapAmoPoaRelObjectAccess; pSlapPoaIf->CreateProxyObject = SlapAmoPoaCreateProxyObject; pSlapPoaIf->EnrollProxyObject = SlapAmoPoaEnrollProxyObject; pSlapPoaIf->UnbindProxyObject = SlapAmoPoaUnbindProxyObject; pSlapPoaIf->VerifyProxyObject = SlapAmoPoaVerifyProxyObject; } if ( !pSlapEnvController ) { pSlapEnvController = (PSLAP_ENV_CONTROLLER_OBJECT)SlapCreateEnvController ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSlapEnvController ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSlapEnvController = (ANSC_HANDLE)pSlapEnvController; } } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS TlsEcoEnrollObjects ( ANSC_HANDLE hThisObject ) { PTLS_ENV_CONTROLLER_OBJECT pMyObject = (PTLS_ENV_CONTROLLER_OBJECT )hThisObject; PTLS_SESSION_MANAGER_OBJECT pTlsSessionManager = (PTLS_SESSION_MANAGER_OBJECT)pMyObject->hTlsSessionManager; PTLS_CRYPTO_PROVIDER_OBJECT pTlsCryptoProvider = (PTLS_CRYPTO_PROVIDER_OBJECT)pMyObject->hTlsCryptoProvider; PTLS_SCS_INTERFACE pTlsScsIf = (PTLS_SCS_INTERFACE )pMyObject->hTlsScsIf; PTLS_MEC_INTERFACE pTlsMecIf = (PTLS_MEC_INTERFACE )pMyObject->hTlsMecIf; if ( !pTlsSessionManager ) { pTlsSessionManager = (PTLS_SESSION_MANAGER_OBJECT)TlsCreateSessionManager ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pTlsSessionManager ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTlsSessionManager = (ANSC_HANDLE)pTlsSessionManager; } } if ( !pTlsCryptoProvider ) { pTlsCryptoProvider = (PTLS_CRYPTO_PROVIDER_OBJECT)TlsCreateCryptoProvider ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pTlsCryptoProvider ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTlsCryptoProvider = (ANSC_HANDLE)pTlsCryptoProvider; } } if ( !pTlsScsIf ) { pTlsScsIf = (PTLS_SCS_INTERFACE)AnscAllocateMemory(sizeof(TLS_SCS_INTERFACE)); if ( !pTlsScsIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTlsScsIf = (ANSC_HANDLE)pTlsScsIf; } AnscCopyString(pTlsScsIf->Name, TLS_SCS_INTERFACE_NAME); pTlsScsIf->InterfaceId = TLS_SCS_INTERFACE_ID; pTlsScsIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pTlsScsIf->Size = sizeof(TLS_SCS_INTERFACE); pTlsScsIf->ConfigModule = TlsEcoScsConfigModule; pTlsScsIf->CreateConnection = TlsEcoScsCreateConnection; pTlsScsIf->ConfigConnection = TlsEcoScsConfigConnection; pTlsScsIf->RemoveConnection = TlsEcoScsRemoveConnection; pTlsScsIf->StartConnection = TlsEcoScsStartConnection; pTlsScsIf->CloseConnection = TlsEcoScsCloseConnection; pTlsScsIf->QueryConnection = TlsEcoScsQueryConnection; pTlsScsIf->RecvTlsMessage = TlsEcoScsRecvTlsMessage; pTlsScsIf->SendAppMessage = TlsEcoScsSendAppMessage; } if ( !pTlsMecIf ) { pTlsMecIf = (PTLS_MEC_INTERFACE)AnscAllocateMemory(sizeof(TLS_MEC_INTERFACE)); if ( !pTlsMecIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hTlsMecIf = (ANSC_HANDLE)pTlsMecIf; } AnscCopyString(pTlsMecIf->Name, TLS_MEC_INTERFACE_NAME); pTlsMecIf->InterfaceId = TLS_MEC_INTERFACE_ID; pTlsMecIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pTlsMecIf->Size = sizeof(TLS_MEC_INTERFACE); pTlsMecIf->GetTlsSessionManager = TlsEcoMecGetTlsSessionManager; pTlsMecIf->GetTlsCryptoProvider = TlsEcoMecGetTlsCryptoProvider; pTlsMecIf->GetTlsHsmIf = TlsEcoMecGetTlsHsmIf; pTlsMecIf->GetModuleParams = TlsEcoMecGetModuleParams; pTlsMecIf->GetCertChain1 = TlsEcoMecGetCertChain1; pTlsMecIf->GetCertChain2 = TlsEcoMecGetCertChain2; pTlsMecIf->GetCertChain3 = TlsEcoMecGetCertChain3; pTlsMecIf->GetProfile = TlsEcoMecGetProfile; pTlsMecIf->GetCACertByCert = TlsEcoMecGetCACertByCert; pTlsMecIf->GetCACertByKey = TlsEcoMecGetCACertByKey; pTlsMecIf->GetCACertByIssuer = TlsEcoMecGetCACertByIssuer; } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS HttpScoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_SIMPLE_CLIENT_OBJECT pMyObject = (PHTTP_SIMPLE_CLIENT_OBJECT )hThisObject; PHTTP_BSP_INTERFACE pBspIf = (PHTTP_BSP_INTERFACE )pMyObject->hBspIf; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_CAS_INTERFACE pCasIf = (PHTTP_CAS_INTERFACE )pMyObject->hCasIf; PANSC_TIMER_DESCRIPTOR_OBJECT pSessionTdo = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hSessionTdo; PANSC_TDO_CLIENT_OBJECT pSessionTdoClient = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hSessionTdoClient; if ( !pBspIf ) { pBspIf = (PHTTP_BSP_INTERFACE)AnscAllocateMemory(sizeof(HTTP_BSP_INTERFACE)); if ( !pBspIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hBspIf = (ANSC_HANDLE)pBspIf; } pBspIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pBspIf->Size = sizeof(HTTP_BSP_INTERFACE); pBspIf->Polish = HttpScoBspPolish; pBspIf->Browse = HttpScoBspBrowse; pBspIf->Notify = HttpScoBspNotify; } if ( !pHfpIf ) { pHfpIf = (PHTTP_HFP_INTERFACE)AnscAllocateMemory(sizeof(HTTP_HFP_INTERFACE)); #ifdef _CCSP_CWMP_TCP_CONNREQ_HANDLER AnscZeroMemory(pHfpIf, sizeof(HTTP_HFP_INTERFACE)); #endif if ( !pHfpIf ) { return ANSC_STATUS_RESOURCES; } else { /* Initialize the data HFP_interface */ pHfpIf->ParseHeader = AnscHttpParseHeader; pHfpIf->ParseRequestLine = AnscHttpParseRequestLine; pHfpIf->ParseStatusLine = AnscHttpParseStatusLine; pHfpIf->ParseChunkedLine = AnscHttpParseChunkedLine; pHfpIf->ParseHttpUrl = AnscHttpParseUrl; pHfpIf->ParseQueryString = AnscHttpParseQueryString; pHfpIf->GetHeaderParam = AnscHttpGetHeaderParam; pHfpIf->GetHeaderSize = AnscHttpGetHeaderSize; pHfpIf->GetStatusLineSize = AnscHttpGetStatusLineSize; pHfpIf->GetRequestLineSize = AnscHttpGetRequestLineSize; pHfpIf->BuildHeader = AnscHttpBuildHeader; pHfpIf->BuildRequestLine = AnscHttpBuildRequestLine; pHfpIf->BuildStatusLine = AnscHttpBuildStatusLine; /* set the owner context and size of the structure */ pHfpIf->hOwnerContext = hThisObject; pHfpIf->Size = sizeof(HTTP_HFP_INTERFACE); /* register minimum header info */ AnscHttpRegisterAllHeadersXInfo(); pMyObject->hHfpIf = (ANSC_HANDLE)pHfpIf; } #ifndef _CCSP_CWMP_TCP_CONNREQ_HANDLER pHfpIf->hOwnerContext = (ANSC_HANDLE)NULL; pHfpIf->Size = sizeof(HTTP_HFP_INTERFACE); #endif } if ( !pCasIf ) { pCasIf = (PHTTP_CAS_INTERFACE)AnscAllocateMemory(sizeof(HTTP_CAS_INTERFACE)); if ( !pCasIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hCasIf = (ANSC_HANDLE)pCasIf; } pCasIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pCasIf->Size = sizeof(HTTP_CAS_INTERFACE); pCasIf->EnableAuth = HttpScoCasEnableAuth; pCasIf->IsAuthEnabled = HttpScoCasIsAuthEnabled; pCasIf->ProcessRequest = HttpScoCasProcessRequest; pCasIf->ProcessResponse = HttpScoCasProcessResponse; pCasIf->ClearAuthInfo = HttpScoCasClearAuthInfo; } if ( !pSessionTdo ) { pSessionTdo = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pSessionTdo ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSessionTdo = (ANSC_HANDLE)pSessionTdo; } pSessionTdo->SetTimerType((ANSC_HANDLE)pSessionTdo, ANSC_TIMER_TYPE_PERIODIC ); pSessionTdo->SetInterval ((ANSC_HANDLE)pSessionTdo, HTTP_SCO_SESSION_TIME_INTERVAL); } if ( !pSessionTdoClient ) { pSessionTdoClient = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pSessionTdoClient ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hSessionTdoClient = (ANSC_HANDLE)pSessionTdoClient; } pSessionTdoClient->hClientContext = (ANSC_HANDLE)pMyObject; pSessionTdoClient->Invoke = HttpScoSessionTdoInvoke; pSessionTdo->SetClient((ANSC_HANDLE)pSessionTdo, (ANSC_HANDLE)pSessionTdoClient); } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }
ANSC_STATUS AnscLpccoEnrollObjects ( ANSC_HANDLE hThisObject ) { ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_LPC_CONNECTOR_OBJECT pMyObject = (PANSC_LPC_CONNECTOR_OBJECT )hThisObject; PANSC_IMC_INTERFACE pAnscImcIf = (PANSC_IMC_INTERFACE )pMyObject->hAnscImcIf; PANSC_CPC_INTERFACE pAnscCpcIf = (PANSC_CPC_INTERFACE )pMyObject->hAnscCpcIf; PANSC_TIMER_DESCRIPTOR_OBJECT pConnTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)pMyObject->hConnTimerObj; PANSC_TDO_CLIENT_OBJECT pConnTimerIf = (PANSC_TDO_CLIENT_OBJECT )pMyObject->hConnTimerIf; if ( !pAnscImcIf ) { pAnscImcIf = (PANSC_IMC_INTERFACE)AnscAllocateMemory(sizeof(ANSC_IMC_INTERFACE)); if ( !pAnscImcIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hAnscImcIf = (ANSC_HANDLE)pAnscImcIf; } AnscCopyString(pAnscImcIf->Name, ANSC_IMC_INTERFACE_NAME); pAnscImcIf->InterfaceId = ANSC_IMC_INTERFACE_ID; pAnscImcIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pAnscImcIf->Size = sizeof(ANSC_IMC_INTERFACE); pAnscImcIf->GenPartyAddr = AnscLpccoImcGenPartyAddr; pAnscImcIf->GetLpcOpmode = AnscLpccoImcGetLpcOpmode; pAnscImcIf->SetLpcOpmode = AnscLpccoImcSetLpcOpmode; pAnscImcIf->GetPartyName = AnscLpccoImcGetPartyName; pAnscImcIf->SetPartyName = AnscLpccoImcSetPartyName; pAnscImcIf->IsPartyConnected = AnscLpccoImcIsPartyConnected; pAnscImcIf->Engage = AnscLpccoImcEngage; pAnscImcIf->Cancel = AnscLpccoImcCancel; pAnscImcIf->CallRequest = AnscLpccoImcCallRequest; pAnscImcIf->CallRequest2 = AnscLpccoImcCallRequest2; } if ( !pAnscCpcIf ) { pAnscCpcIf = (PANSC_CPC_INTERFACE)AnscAllocateMemory(sizeof(ANSC_CPC_INTERFACE)); if ( !pAnscCpcIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hAnscCpcIf = (ANSC_HANDLE)pAnscCpcIf; } AnscCopyString(pAnscCpcIf->Name, ANSC_CPC_INTERFACE_NAME); pAnscCpcIf->InterfaceId = ANSC_CPC_INTERFACE_ID; pAnscCpcIf->hOwnerContext = (ANSC_HANDLE)pMyObject; pAnscCpcIf->Size = sizeof(ANSC_CPC_INTERFACE); pAnscCpcIf->CallDispatch = AnscLpccoCpcCallDispatch; pAnscCpcIf->FreeOutputBuffer = AnscLpccoCpcFreeOutputBuffer; pAnscCpcIf->NotifyEvent = AnscLpccoCpcNotifyEvent; } if ( !pConnTimerObj ) { pConnTimerObj = (PANSC_TIMER_DESCRIPTOR_OBJECT)AnscCreateTimerDescriptor ( pMyObject->hContainerContext, (ANSC_HANDLE)pMyObject, (ANSC_HANDLE)NULL ); if ( !pConnTimerObj ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hConnTimerObj = (ANSC_HANDLE)pConnTimerObj; } pConnTimerObj->SetTimerType((ANSC_HANDLE)pConnTimerObj, ANSC_TIMER_TYPE_SPORADIC ); pConnTimerObj->SetInterval ((ANSC_HANDLE)pConnTimerObj, ANSC_LPCCO_DEF_CONN_TIMEOUT); } if ( !pConnTimerIf ) { pConnTimerIf = (PANSC_TDO_CLIENT_OBJECT)AnscAllocateMemory(sizeof(ANSC_TDO_CLIENT_OBJECT)); if ( !pConnTimerIf ) { return ANSC_STATUS_RESOURCES; } else { pMyObject->hConnTimerIf = (ANSC_HANDLE)pConnTimerIf; } pConnTimerIf->hClientContext = (ANSC_HANDLE)pMyObject; pConnTimerIf->Invoke = AnscLpccoConnTimerInvoke; pConnTimerObj->SetClient((ANSC_HANDLE)pConnTimerObj, (ANSC_HANDLE)pConnTimerIf); } AnscCoEnrollObjects((ANSC_HANDLE)pMyObject); return ANSC_STATUS_SUCCESS; }