void Cloud::setup(kerberos::StringMap & settings) { // ------------------------------- // Upload interval [1.5sec;4.2min] m_min = 1500; m_max = 256000; m_interval = m_min; startPollThread(); startUploadThread(); }
A_STATUS CF_UnMaskInterrupt(CF_DEVICE_HANDLE cfHandle) { CF_DEVICE *cfDevice; #ifndef POLL NDIS_STATUS ndisStatus; #endif HIF_DEBUG_PRINTF(ATH_LOG_TRC, "CF_UnMaskInterrupt \n"); cfDevice = (CF_DEVICE *)cfHandle; #ifdef POLL startPollThread(cfDevice); #else #ifdef SHARED_INTERRUPTS isrHandler = LoadIntChainHandler(TEXT("giisr.dll"),TEXT("ISRHandler"),(BYTE)cfDevice->interruptNumber); if (!isrHandler) { HIF_DEBUG_PRINTF(ATH_LOG_ERR,"CF_UnMaskInterrupt: Load int chain handler failed \n"); return A_ERROR; } memset (&Info,0,sizeof(Info)); Info.SysIntr = cfDevice->sysIntr; Info.CheckPort = TRUE; Info.PortIsIO = FALSE; Info.UseMaskReg = TRUE; Info.PortSize = sizeof(BYTE); Info.PortAddr = (DWORD)giisrMappedAddress + 0x00000400; Info.MaskAddr = (DWORD)giisrMappedAddress + 0x00000418; if (!KernelLibIoControl(isrHandler,IOCTL_GIISR_INFO,&Info,sizeof(Info),NULL,0,NULL)) { HIF_DEBUG_PRINTF(ATH_LOG_ERR,"CF_UnMaskInterrupt: KernelLibIoControl failed \n"); return A_ERROR; } #endif // SHARED_INTERRUPTS ndisStatus = NdisMRegisterInterrupt(&cfDevice->interruptObject, cfDevice->miniportHandle, cfDevice->interruptNumber, 0, TRUE, TRUE, 0); if (ndisStatus != NDIS_STATUS_SUCCESS) { return A_ERROR; } #endif cfDevice->interruptRegistered= TRUE; return A_OK; }