本文整理汇总了C++中AddDebugLogLine函数的典型用法代码示例。如果您正苦于以下问题:C++ AddDebugLogLine函数的具体用法?C++ AddDebugLogLine怎么用?C++ AddDebugLogLine使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了AddDebugLogLine函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: AddDebugLogLine
bool CUploadQueue::CheckForTimeOver(CUpDownClient* client){
//If we have nobody in the queue, do NOT remove the current uploads..
//This will save some bandwidth and some unneeded swapping from upload/queue/upload..
if ( waitinglist.IsEmpty() || client->GetFriendSlot() )
return false;
if(client->HasCollectionUploadSlot()){
CKnownFile* pDownloadingFile = theApp.sharedfiles->GetFileByID(client->requpfileid);
if(pDownloadingFile == NULL)
return true;
if (CCollection::HasCollectionExtention(pDownloadingFile->GetFileName()) && pDownloadingFile->GetFileSize() < MAXPRIORITYCOLL_SIZE)
return false;
else{
if (thePrefs.GetLogUlDlEvents())
AddDebugLogLine(DLP_HIGH, false, _T("%s: Upload session ended - client with Collection Slot tried to request blocks from another file"), client->GetUserName());
return true;
}
}
if (!thePrefs.TransferFullChunks()){
if( client->GetUpStartTimeDelay() > SESSIONMAXTIME){ // Try to keep the clients from downloading for ever
if (thePrefs.GetLogUlDlEvents())
AddDebugLogLine(DLP_LOW, false, _T("%s: Upload session ended due to max time %s."), client->GetUserName(), CastSecondsToHM(SESSIONMAXTIME/1000));
return true;
}
// Cache current client score
const uint32 score = client->GetScore(true, true);
// Check if another client has a bigger score
if (score < GetMaxClientScore() && m_dwRemovedClientByScore < GetTickCount()) {
if (thePrefs.GetLogUlDlEvents())
AddDebugLogLine(DLP_VERYLOW, false, _T("%s: Upload session ended due to score."), client->GetUserName());
//Set timer to prevent to many uploadslot getting kick do to score.
//Upload slots are delayed by a min of 1 sec and the maxscore is reset every 5 sec.
//So, I choose 6 secs to make sure the maxscore it updated before doing this again.
m_dwRemovedClientByScore = GetTickCount()+SEC2MS(6);
return true;
}
}
else{
// Allow the client to download a specified amount per session
if( client->GetQueueSessionPayloadUp() > SESSIONMAXTRANS ){
if (thePrefs.GetLogUlDlEvents())
AddDebugLogLine(DLP_DEFAULT, false, _T("%s: Upload session ended due to max transferred amount. %s"), client->GetUserName(), CastItoXBytes(SESSIONMAXTRANS, false, false));
return true;
}
}
return false;
}
开发者ID:machado2,项目名称:emule,代码行数:50,代码来源:UploadQueue.cpp
示例2: strUrlPath
void CSendGetUrlReqSocket::DataReceived(const BYTE* pucData, UINT uSize)
{
if (thePrefs.GetVerbose())
{
CString strUrlPath(GetUrlPath());
strUrlPath.Replace(_T("%"), _T("%%"));
CStringA straRecv((char *)pucData, uSize);
AddDebugLogLine(false, _T("取%s时,返回结果:"), strUrlPath);
AddDebugLogLine(false, CString(straRecv));
}
CHttpClientReqSocket::DataReceived(pucData, uSize);
}
开发者ID:LjApps,项目名称:eMule-VeryCD,代码行数:14,代码来源:SendGetUrlReqSocket.cpp
示例3: UpdateData
BOOL CPPgLogs::OnApply()
{
if(m_bModified)
{
UpdateData(TRUE);
m_pPrefs->SetLogToFile(writeLogToFile);
if (m_pPrefs->GetVerbose() != (bool)debugLog)
{
m_pPrefs->SetVerbose(debugLog);
g_App.m_pMDlg->m_wndServer.ToggleDebugWindow();
if(debugLog)
AddDebugLogLine(_T("Debug log is active"));
}
m_pPrefs->SetCMNotLog(cmNotLog);
m_pPrefs->SetLogUploadToFile(uploadLog);
m_pPrefs->SetLogDownloadToFile(downloadLog);
m_pPrefs->SetAutoSourcesLogEnabled(autoSourcesLogEnabled);
m_pPrefs->SetClientTransferLogEnabled(clientTransferLogEnabled);
SetModified(FALSE);
}
return CPropertyPage::OnApply();
}
开发者ID:rusingineer,项目名称:EmulePlus,代码行数:25,代码来源:PPgLogs.cpp
示例4: DEBUG_ONLY
void CClientList::CleanUpClientList(){
// we remove clients which are not needed any more by time
// this check is also done on CUpDownClient::Disconnected, however it will not catch all
// cases (if a client changes the state without beeing connected
//
// Adding this check directly to every point where any state changes would be more effective,
// is however not compatible with the current code, because there are points where a client has
// no state for some code lines and the code is also not prepared that a client object gets
// invalid while working with it (aka setting a new state)
// so this way is just the easy and safe one to go (as long as emule is basically single threaded)
const uint32 cur_tick = ::GetTickCount();
if (m_dwLastClientCleanUp + CLIENTLIST_CLEANUP_TIME < cur_tick ){
m_dwLastClientCleanUp = cur_tick;
POSITION pos1, pos2;
uint32 cDeleted = 0;
for (pos1 = list.GetHeadPosition();( pos2 = pos1 ) != NULL;){
list.GetNext(pos1);
CUpDownClient* pCurClient = list.GetAt(pos2);
if ((pCurClient->GetUploadState() == US_NONE || pCurClient->GetUploadState() == US_BANNED && !pCurClient->IsBanned())
&& pCurClient->GetDownloadState() == DS_NONE
&& pCurClient->GetChatState() == MS_NONE
&& pCurClient->GetKadState() == KS_NONE
&& pCurClient->socket == NULL)
{
cDeleted++;
delete pCurClient;
}
}
DEBUG_ONLY(AddDebugLogLine(false,_T("Cleaned ClientList, removed %i not used known clients"), cDeleted));
}
}
开发者ID:rusingineer,项目名称:emulemorph,代码行数:31,代码来源:ClientList.cpp
示例5: strError
bool CKnownFileList::LoadKnownFiles()
{
CString fullpath = thePrefs.GetMuleDirectory(EMULE_CONFIGDIR);
fullpath.Append(KNOWN_MET_FILENAME);
CSafeBufferedFile file;
CFileException fexp;
if (!file.Open(fullpath,CFile::modeRead|CFile::osSequentialScan|CFile::typeBinary|CFile::shareDenyWrite, &fexp)){
if (fexp.m_cause != CFileException::fileNotFound){
CString strError(_T("Failed to load ") KNOWN_MET_FILENAME _T(" file"));
TCHAR szError[MAX_CFEXP_ERRORMSG];
if (fexp.GetErrorMessage(szError, ARRSIZE(szError))){
strError += _T(" - ");
strError += szError;
}
LogError(LOG_STATUSBAR, _T("%s"), strError);
}
return false;
}
setvbuf(file.m_pStream, NULL, _IOFBF, 16384);
CKnownFile* pRecord = NULL;
try {
uint8 header = file.ReadUInt8();
if (header != MET_HEADER && header != MET_HEADER_I64TAGS){
file.Close();
LogError(LOG_STATUSBAR, GetResString(IDS_ERR_SERVERMET_BAD));
return false;
}
AddDebugLogLine(false, _T("Known.met file version is %u (%s support 64bit tags)"), header, (header == MET_HEADER) ? _T("doesn't") : _T("does"));
UINT RecordsNumber = file.ReadUInt32();
for (UINT i = 0; i < RecordsNumber; i++) {
pRecord = new CKnownFile();
if (!pRecord->LoadFromFile(&file)){
TRACE(_T("*** Failed to load entry %u (name=%s hash=%s size=%I64u parthashs=%u expected parthashs=%u) from known.met\n"), i,
pRecord->GetFileName(), md4str(pRecord->GetFileHash()), pRecord->GetFileSize(), pRecord->GetHashCount(), pRecord->GetED2KPartHashCount());
delete pRecord;
pRecord = NULL;
continue;
}
SafeAddKFile(pRecord);
pRecord = NULL;
}
file.Close();
}
catch(CFileException* error){
if (error->m_cause == CFileException::endOfFile)
LogError(LOG_STATUSBAR, GetResString(IDS_ERR_SERVERMET_BAD));
else{
TCHAR buffer[MAX_CFEXP_ERRORMSG];
error->GetErrorMessage(buffer, ARRSIZE(buffer));
LogError(LOG_STATUSBAR, GetResString(IDS_ERR_SERVERMET_UNKNOWN),buffer);
}
error->Delete();
delete pRecord;
return false;
}
return true;
}
开发者ID:dalinhuang,项目名称:dmibox,代码行数:60,代码来源:KnownFileList.cpp
示例6: VERIFY
CUploadQueue::CUploadQueue()
{
VERIFY( (h_timer = SetTimer(0,0,100,UploadTimer)) != NULL );
if (thePrefs.GetVerbose() && !h_timer)
AddDebugLogLine(true,_T("Failed to create 'upload queue' timer - %s"),GetErrorMessage(GetLastError()));
datarate = 0;
counter=0;
successfullupcount = 0;
failedupcount = 0;
totaluploadtime = 0;
m_nLastStartUpload = 0;
statsave=0;
// -khaos--+++>
iupdateconnstats=0;
// <-----khaos-
m_dwRemovedClientByScore = ::GetTickCount();
m_iHighestNumberOfFullyActivatedSlotsSinceLastCall = 0;
m_MaxActiveClients = 0;
m_MaxActiveClientsShortTime = 0;
m_lastCalculatedDataRateTick = 0;
m_avarage_dr_sum = 0;
friendDatarate = 0;
m_dwLastResortedUploadSlots = 0;
}
开发者ID:dalinhuang,项目名称:dmibox,代码行数:26,代码来源:UploadQueue.cpp
示例7: strUrlPath
void CSendGetUrlReqSocket::OnConnect(int nErrorCode)
{
if (0 != nErrorCode)
{
if (thePrefs.GetVerbose())
{
CString strUrlPath(GetUrlPath());
CString strServer(GetServer());
strUrlPath.Replace(_T("%"), _T("%%"));
AddDebugLogLine(false, _T("将要取%s,但连接%s返回失败。"), strUrlPath, strServer);
}
return;
}
CStringA strHttpRequest;
strHttpRequest.AppendFormat("%s %s HTTP/1.0\r\n", m_bIsPost ? "POST" : "GET", GetUrlPath());
strHttpRequest.AppendFormat("Host: %s\r\n", GetServer());
strHttpRequest.AppendFormat("Accept: */*\r\n");
if(m_bIsPost)
{
strHttpRequest.AppendFormat("Accept-Encoding: none\r\n");
strHttpRequest.AppendFormat("Content-Type: application/x-www-form-urlencoded\r\n");
strHttpRequest.AppendFormat("Content-Length: %d\r\n", m_strPost.GetLength());
}
//strHttpRequest.AppendFormat("Connection: Keep-Alive\r\n");
strHttpRequest.Append("\r\n");
if(m_bIsPost)
{
strHttpRequest.Append(m_strPost);
}
if (thePrefs.GetVerbose())
{
CString strRequest(strHttpRequest);
strRequest.Replace(_T("%"), _T("%%"));
AddDebugLogLine(false, _T("与服务器 %s 连接成功,准备发送:"), CString(GetServer()));
AddDebugLogLine(false, strRequest);
}
CRawPacket* pHttpPacket = new CRawPacket(strHttpRequest);
SendPacket(pHttpPacket);
SetHttpState(HttpStateRecvExpected);
}
开发者ID:techpub,项目名称:archive-code,代码行数:47,代码来源:SendGetUrlReqSocket.cpp
示例8: AddDebugLogLine
void CDeadSourceList::CleanUp(){
m_dwLastCleanUp = ::GetTickCount();
if (thePrefs.GetLogFilteredIPs())
AddDebugLogLine(DLP_VERYLOW, false, _T("Cleaning up DeadSourceList (%s), %i clients on List..."), m_bGlobalList ? _T("Global") : _T("Local"), m_mapDeadSources.GetCount());
POSITION pos = m_mapDeadSources.GetStartPosition();
CDeadSource dsKey;
uint32 dwExpTime;
uint32 dwTick = ::GetTickCount();
while (pos != NULL){
m_mapDeadSources.GetNextAssoc( pos, dsKey, dwExpTime );
if (dwExpTime < dwTick){
m_mapDeadSources.RemoveKey(dsKey);
}
}
if (thePrefs.GetLogFilteredIPs())
AddDebugLogLine(DLP_VERYLOW, false, _T("...done, %i clients left on list"), m_mapDeadSources.GetCount());
}
开发者ID:BackupTheBerlios,项目名称:nextemf,代码行数:17,代码来源:DeadSourceList.cpp
示例9: LoadLibrary
bool CSecRunAsUser::LoadAPI(){
if (m_hADVAPI32_DLL == 0)
m_hADVAPI32_DLL = LoadLibrary(_T("Advapi32.dll"));
if (m_hACTIVEDS_DLL == 0)
m_hACTIVEDS_DLL = LoadLibrary(_T("ActiveDS"));
if (m_hADVAPI32_DLL == 0) {
AddDebugLogLine(false,_T("Failed to load Advapi32.dll!"));
return false;
}
if (m_hACTIVEDS_DLL == 0) {
AddDebugLogLine(false,_T("Failed to load ActiveDS.dll!"));
return false;
}
bool bSucceeded = true;
bSucceeded = bSucceeded && (CreateProcessWithLogonW = (TCreateProcessWithLogonW) GetProcAddress(m_hADVAPI32_DLL,"CreateProcessWithLogonW")) != NULL;
bSucceeded = bSucceeded && (GetNamedSecurityInfo = (TGetNamedSecurityInfo)GetProcAddress(m_hADVAPI32_DLL,_TWINAPI("GetNamedSecurityInfo"))) != NULL;
bSucceeded = bSucceeded && (SetNamedSecurityInfo = (TSetNamedSecurityInfo)GetProcAddress(m_hADVAPI32_DLL,_TWINAPI("SetNamedSecurityInfo"))) != NULL;
bSucceeded = bSucceeded && (AddAccessAllowedAceEx = (TAddAccessAllowedAceEx)GetProcAddress(m_hADVAPI32_DLL,"AddAccessAllowedAceEx")) != NULL;
// Probably these functions do not need to bel loaded dynamically, but just to be sure
bSucceeded = bSucceeded && (LookupAccountName = (TLookupAccountName)GetProcAddress(m_hADVAPI32_DLL,_TWINAPI("LookupAccountName"))) != NULL;
bSucceeded = bSucceeded && (GetAclInformation = (TGetAclInformation)GetProcAddress(m_hADVAPI32_DLL,"GetAclInformation")) != NULL;
bSucceeded = bSucceeded && (InitializeAcl = (TInitializeAcl)GetProcAddress(m_hADVAPI32_DLL,"InitializeAcl")) != NULL;
bSucceeded = bSucceeded && (GetAce = (TGetAce)GetProcAddress(m_hADVAPI32_DLL,"GetAce")) != NULL;
bSucceeded = bSucceeded && (AddAce = (TAddAce)GetProcAddress(m_hADVAPI32_DLL,"AddAce")) != NULL;
bSucceeded = bSucceeded && (EqualSid = (TEqualSid)GetProcAddress(m_hADVAPI32_DLL,"EqualSid")) != NULL;
bSucceeded = bSucceeded && (GetLengthSid = (TGetLengthSid)GetProcAddress(m_hADVAPI32_DLL,"GetLengthSid")) != NULL;
// for SecureShellExecute
bSucceeded = bSucceeded && (OpenProcessToken = (TOpenProcessToken)GetProcAddress(m_hADVAPI32_DLL,"OpenProcessToken")) != NULL;
bSucceeded = bSucceeded && (GetTokenInformation = (TGetTokenInformation)GetProcAddress(m_hADVAPI32_DLL,"GetTokenInformation")) != NULL;
bSucceeded = bSucceeded && (CreateRestrictedToken = (TCreateRestrictedToken)GetProcAddress(m_hADVAPI32_DLL,"CreateRestrictedToken")) != NULL;
bSucceeded = bSucceeded && (CreateProcessAsUser = (TCreateProcessAsUser)GetProcAddress(m_hADVAPI32_DLL,_TWINAPI("CreateProcessAsUser"))) != NULL;
// activeDS.dll
bSucceeded = bSucceeded && (ADsGetObject = (TADsGetObject)GetProcAddress(m_hACTIVEDS_DLL,"ADsGetObject")) != NULL;
bSucceeded = bSucceeded && (ADsBuildEnumerator = (TADsBuildEnumerator)GetProcAddress(m_hACTIVEDS_DLL,"ADsBuildEnumerator")) != NULL;
bSucceeded = bSucceeded && (ADsEnumerateNext = (TADsEnumerateNext)GetProcAddress(m_hACTIVEDS_DLL,"ADsEnumerateNext")) != NULL;
if (!bSucceeded){
AddDebugLogLine(false,_T("Failed to load all functions from Advapi32.dll!"));
FreeAPI();
return false;
}
return true;
}
开发者ID:dalinhuang,项目名称:dmibox,代码行数:46,代码来源:SecRunAsUser.cpp
示例10: CListCtrlItemWalk
CQueueListCtrl::CQueueListCtrl()
: CListCtrlItemWalk(this)
{
// Barry - Refresh the queue every 10 secs
VERIFY( (m_hTimer = ::SetTimer(NULL, NULL, 10000, QueueUpdateTimer)) != NULL );
if (thePrefs.GetVerbose() && !m_hTimer)
AddDebugLogLine(true,_T("Failed to create 'queue list control' timer - %s"),GetErrorMessage(GetLastError()));
}
开发者ID:BackupTheBerlios,项目名称:nextemf,代码行数:8,代码来源:QueueListCtrl.cpp
示例11: AddDebugLogLine
void CIrcSocket::OnClose(int nErrorCode)
{
if (nErrorCode){
if (thePrefs.GetVerbose())
AddDebugLogLine(false, _T("IRC socket: Failed to close - %s"), GetErrorMessage(nErrorCode, 1));
return;
}
m_pIrcMain->Disconnect();
}
开发者ID:machado2,项目名称:emule,代码行数:9,代码来源:IrcSocket.cpp
示例12: AddDebugLogLine
void CTimerOp_UrlClientRetry::TimerOp(WPARAM wParam, LPARAM /*lParam*/)
{
CHttpClient *pUrlClient = (CHttpClient*) wParam;
if (NULL != pUrlClient && !IsBadWritePtr(pUrlClient, sizeof(CHttpClient)) )
{
if (thePrefs.GetVerbose())
AddDebugLogLine(false, _T("Retry to connect <%s>"), pUrlClient->GetUserName());
pUrlClient->TryToConnect(true);
}
}
开发者ID:kevinzhwl,项目名称:easyMuleVeryCD,代码行数:12,代码来源:TimerOp_UrlClientRetry.cpp
示例13: AddDebugLogLine
bool CServerList::AddServer(const CServer* pServer, bool bAddTail)
{
if (!IsGoodServerIP(pServer)){ // check for 0-IP, localhost and optionally for LAN addresses
if (thePrefs.GetLogFilteredIPs())
AddDebugLogLine(false, _T("IPFilter(AddServer): Filtered server \"%s\" (IP=%s) - Invalid IP or LAN address."), pServer->GetListName(), ipstr(pServer->GetIP()));
return false;
}
if (thePrefs.GetFilterServerByIP()){
// IP-Filter: We don't need to reject dynIP-servers here. After the DN was
// resolved, the IP will get filtered and the server will get removed. This applies
// for TCP-connections as well as for outgoing UDP-packets because for both protocols
// we resolve the DN and filter the received IP.
//if (pServer->HasDynIP())
// return false;
if (theApp.ipfilter->IsFiltered(pServer->GetIP())){
if (thePrefs.GetLogFilteredIPs())
AddDebugLogLine(false, _T("IPFilter(AddServer): Filtered server \"%s\" (IP=%s) - IP filter (%s)"), pServer->GetListName(), ipstr(pServer->GetIP()), theApp.ipfilter->GetLastHit());
return false;
}
}
CServer* pFoundServer = GetServerByAddress(pServer->GetAddress(), pServer->GetPort());
// Avoid duplicate (dynIP) servers: If the server which is to be added, is a dynIP-server
// but we don't know yet it's DN, we need to search for an already available server with
// that IP.
if (pFoundServer == NULL && pServer->GetIP() != 0)
pFoundServer = GetServerByIPTCP(pServer->GetIP(), pServer->GetPort());
if (pFoundServer){
pFoundServer->ResetFailedCount();
theApp.emuledlg->serverwnd->serverlistctrl.RefreshServer(pFoundServer);
return false;
}
if (bAddTail)
list.AddTail(const_cast<CServer*>(pServer));
else
list.AddHead(const_cast<CServer*>(pServer));
return true;
}
开发者ID:rusingineer,项目名称:emulextreme-stulle,代码行数:39,代码来源:ServerList.cpp
示例14: _T
void CLoggable::TagToDebugLogLine(LPCTSTR info, LPCTSTR tag, uint32 size, uint8 opcode) const
{
CString buffer;
buffer.Format(_T("%s: %02x, size=%u"), info, opcode, size);
buffer += _T(", data=[");
uint32 maxsize = 100;
for(uint32 i = 0; i < size && i < maxsize; i++){
buffer.AppendFormat(_T("%02x"), (uint8)tag[i]);
buffer += _T(" ");
}
buffer += ((size < maxsize) ? _T("]") : _T("..]"));
AddDebugLogLine(false, buffer);
}
开发者ID:BackupTheBerlios,项目名称:nextemf,代码行数:13,代码来源:Loggable.cpp
示例15: sscanf
bool CUrlSrcGetFromSvrSocket::ProcessHttpResponse_Start()
{
int iMajorVer, iMinorVer;
int iResponseCode;
char szResponsePhrase[1024];
sscanf(m_astrHttpHeaders[0], "HTTP/%d.%d %d %s", &iMajorVer, &iMinorVer, &iResponseCode, szResponsePhrase);
if (thePrefs.GetVerbose())
AddDebugLogLine(false, _T("Receive UrlSources from server (http response code = %d)"), iResponseCode);
if (200 != iResponseCode)
return false;
return true;
}
开发者ID:LjApps,项目名称:eMule-VeryCD,代码行数:15,代码来源:UrlSrcGetFromSvrSocket.cpp
示例16: ASSERT
void CGlobalVariable::SetPublicIP(const uint32 dwIP)
{
if (dwIP != 0){
ASSERT ( !IsLowID(dwIP));
ASSERT ( m_pPeerCache );
if ( GetPublicIP() == 0)
AddDebugLogLine(DLP_VERYLOW, false, _T("My public IP Address is: %s"),ipstr(dwIP));
else if (Kademlia::CKademlia::IsConnected() && Kademlia::CKademlia::GetPrefs()->GetIPAddress())
if(ntohl(Kademlia::CKademlia::GetIPAddress()) != dwIP)
AddDebugLogLine(DLP_DEFAULT, false, _T("Public IP Address reported from Kademlia (%s) differs from new found (%s)"),ipstr(ntohl(Kademlia::CKademlia::GetIPAddress())),ipstr(dwIP));
m_pPeerCache->FoundMyPublicIPAddress(dwIP);
m_pMyCountry = CGlobalVariable::ip2country->GetCountryFromIP(dwIP);
}
else
AddDebugLogLine(DLP_VERYLOW, false, _T("Deleted public IP"));
if (dwIP != 0 && dwIP != m_dwPublicIP && CGlobalVariable::serverlist != NULL){
m_dwPublicIP = dwIP;
CGlobalVariable::serverlist->CheckForExpiredUDPKeys();
}
else
m_dwPublicIP = dwIP;
}
开发者ID:kevinzhwl,项目名称:easyMuleVeryCD,代码行数:24,代码来源:GlobalVariable.cpp
示例17: AddDebugLogLine
void CIrcSocket::OnReceive(int iErrorCode)
{
if (iErrorCode)
{
if (thePrefs.GetVerbose())
AddDebugLogLine(false, _T("IRC socket: Failed to read - %s"), GetErrorMessage(iErrorCode, 1));
return;
}
int iLength;
char cBuffer[1024];
try
{
do
{
iLength = Receive(cBuffer, sizeof(cBuffer)-1);
if (iLength < 0)
{
if (thePrefs.GetVerbose())
AddDebugLogLine(false, _T("IRC socket: Failed to read - %s"), GetErrorMessage(GetLastError(), 1));
return;
}
if (iLength > 0)
{
cBuffer[iLength] = '\0';
theStats.AddDownDataOverheadOther(iLength);
m_pIrcMain->PreParseMessage(cBuffer);
}
}
while( iLength > 1022 );
}
catch(...)
{
AddDebugLogLine(false, _T("IRC socket: Exception in OnReceive."), GetErrorMessage(iErrorCode, 1));
}
}
开发者ID:kevinzhwl,项目名称:easyMuleVeryCD,代码行数:36,代码来源:IrcSocket.cpp
示例18: AddDebugLogLine
bool CUploadQueue::RemoveFromUploadQueue(CUpDownClient* client, LPCTSTR pszReason, bool updatewindow, bool earlyabort){
bool result = false;
uint32 slotCounter = 1;
for (POSITION pos = uploadinglist.GetHeadPosition();pos != 0;){
POSITION curPos = pos;
CUpDownClient* curClient = uploadinglist.GetNext(pos);
if (client == curClient){
if (updatewindow)
theApp.emuledlg->transferwnd->uploadlistctrl.RemoveClient(client);
if (thePrefs.GetLogUlDlEvents())
AddDebugLogLine(DLP_DEFAULT, true,_T("Removing client from upload list: %s Client: %s Transferred: %s SessionUp: %s QueueSessionPayload: %s In buffer: %s Req blocks: %i File: %s"), pszReason==NULL ? _T("") : pszReason, client->DbgGetClientInfo(), CastSecondsToHM( client->GetUpStartTimeDelay()/1000), CastItoXBytes(client->GetSessionUp(), false, false), CastItoXBytes(client->GetQueueSessionPayloadUp(), false, false), CastItoXBytes(client->GetPayloadInBuffer()), client->GetNumberOfRequestedBlocksInQueue(), (theApp.sharedfiles->GetFileByID(client->GetUploadFileID())?theApp.sharedfiles->GetFileByID(client->GetUploadFileID())->GetFileName():_T("")));
client->m_bAddNextConnect = false;
uploadinglist.RemoveAt(curPos);
bool removed = theApp.uploadBandwidthThrottler->RemoveFromStandardList(client->socket);
bool pcRemoved = theApp.uploadBandwidthThrottler->RemoveFromStandardList((CClientReqSocket*)client->m_pPCUpSocket);
(void)removed;
(void)pcRemoved;
//if(thePrefs.GetLogUlDlEvents() && !(removed || pcRemoved)) {
// AddDebugLogLine(false, _T("UploadQueue: Didn't find socket to delete. Adress: 0x%x"), client->socket);
//}
if(client->GetSessionUp() > 0) {
++successfullupcount;
totaluploadtime += client->GetUpStartTimeDelay()/1000;
} else if(earlyabort == false)
++failedupcount;
CKnownFile* requestedFile = theApp.sharedfiles->GetFileByID(client->GetUploadFileID());
if(requestedFile != NULL) {
requestedFile->UpdatePartsInfo();
}
theApp.clientlist->AddTrackClient(client); // Keep track of this client
client->SetUploadState(US_NONE);
client->ClearUploadBlockRequests();
client->SetCollectionUploadSlot(false);
m_iHighestNumberOfFullyActivatedSlotsSinceLastCall = 0;
result = true;
} else {
curClient->SetSlotNumber(slotCounter);
slotCounter++;
}
}
return result;
}
开发者ID:dalinhuang,项目名称:dmibox,代码行数:48,代码来源:UploadQueue.cpp
示例19: ShowWindow
void CServerListCtrl::RemoveAllFilteredServers()
{
if (!thePrefs.GetFilterServerByIP())
return;
ShowWindow(SW_HIDE);
for (POSITION pos = theApp.serverlist->list.GetHeadPosition(); pos != NULL; theApp.serverlist->list.GetNext(pos))
{
const CServer* cur_server = theApp.serverlist->list.GetAt(pos);
if (theApp.ipfilter->IsFiltered(cur_server->GetIP()))
{
if (thePrefs.GetLogFilteredIPs())
AddDebugLogLine(false, _T("Filtered server \"%s\" (IP=%s) - IP filter (%s)"), cur_server->GetListName(), ipstr(cur_server->GetIP()), theApp.ipfilter->GetLastHit());
RemoveServer(cur_server);
pos = theApp.serverlist->list.GetHeadPosition();
}
}
ShowWindow(SW_SHOW);
}
开发者ID:LjApps,项目名称:eMule-VeryCD,代码行数:18,代码来源:ServerListCtrl.cpp
示例20: htonl
bool CIPFilter::IsFiltered(uint32 ip, UINT level) /*const*/
{
if (m_iplist.GetCount() == 0 || ip == 0)
return false;
ip = htonl(ip);
// to speed things up we use a binary search
// *) the IP filter list must be sorted by IP range start addresses
// *) the IP filter list is not allowed to contain overlapping IP ranges (see also the IP range merging code when
// loading the list)
// *) the filter 'level' is ignored during the binary search and is evaluated only for the found element
//
// TODO: this can still be improved even more:
// *) use a pre assembled list of IP ranges which contains only the IP ranges for the currently used filter level
// *) use a dumb plain array for storing the IP range structures. this will give more cach hits when processing
// the list. but(!) this would require to also use a dumb SIPFilter structure (don't use data items with ctors).
// otherwise the creation of the array would be rather slow.
// ==> IP Filter White List [Stulle] - Stulle
if(m_iplist_White.GetCount() > 0)
{
SIPFilter** ppFound_White = (SIPFilter**)bsearch(&ip, m_iplist_White.GetData(), m_iplist_White.GetCount(), sizeof(m_iplist_White[0]), CmpSIPFilterByAddr);
if (ppFound_White && (*ppFound_White)->level < level)
{
(*ppFound_White)->hits++;
if(thePrefs.GetVerbose() && thePrefs.GetLogFilteredIPs())
AddDebugLogLine(false, _T("Prevented filtering IP %s in range: %s - %s Description: %s Hits: %u"),ipstr_rev(ip),ipstr_rev((*ppFound_White)->start),ipstr_rev((*ppFound_White)->end),CString((*ppFound_White)->desc),(*ppFound_White)->hits);
return false;
}
}
// <== IP Filter White List [Stulle] - Stulle
SIPFilter** ppFound = (SIPFilter**)bsearch(&ip, m_iplist.GetData(), m_iplist.GetCount(), sizeof(m_iplist[0]), CmpSIPFilterByAddr);
if (ppFound && (*ppFound)->level < level)
{
(*ppFound)->hits++;
m_pLastHit = *ppFound;
return true;
}
return false;
}
开发者ID:brolee,项目名称:EMule-GIFC,代码行数:43,代码来源:IPFilter.cpp
注:本文中的AddDebugLogLine函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论