X-Git-Url: https://git.pterodactylus.net/?p=fms.git;a=blobdiff_plain;f=src%2Ffreenet%2Fmessagerequester.cpp;h=c2e3a21bbad395093815fb4fd76c678e720e1b3a;hp=d59a7c01eb6f19aa36356f7043a4ba7e0942ea07;hb=c7fcb4c4bc5012a584add81a9509fc1f84c3c688;hpb=964f55fd550fc711c0320ce6a24ad713040695d0 diff --git a/src/freenet/messagerequester.cpp b/src/freenet/messagerequester.cpp index d59a7c0..c2e3a21 100644 --- a/src/freenet/messagerequester.cpp +++ b/src/freenet/messagerequester.cpp @@ -209,7 +209,7 @@ void MessageRequester::Initialize() { m_fcpuniquename="MessageRequester"; std::string tempval; - Option::instance()->Get("MaxMessageRequests",tempval); + Option::Instance()->Get("MaxMessageRequests",tempval); StringFunctions::Convert(tempval,m_maxrequests); if(m_maxrequests<1) { @@ -220,7 +220,7 @@ void MessageRequester::Initialize() { m_log->WriteLog(LogFile::LOGLEVEL_WARNING,"Option MaxMessageRequests is currently set at "+tempval+". This value might be incorrectly configured."); } - Option::instance()->Get("MessageDownloadMaxDaysBackward",tempval); + Option::Instance()->Get("MessageDownloadMaxDaysBackward",tempval); StringFunctions::Convert(tempval,m_maxdaysbackward); if(m_maxdaysbackward<0) { @@ -239,11 +239,18 @@ void MessageRequester::PopulateIDList() std::string val1; std::string val2; std::string val3; + std::string sql; date.SetToGMTime(); date.Add(0,0,0,-m_maxdaysbackward); - SQLite3DB::Statement st=m_db->Prepare("SELECT tblIdentity.IdentityID,Day,RequestIndex FROM tblMessageRequests INNER JOIN tblIdentity ON tblMessageRequests.IdentityID=tblIdentity.IdentityID WHERE tblIdentity.LocalMessageTrust>=(SELECT OptionValue FROM tblOption WHERE Option='MinLocalMessageTrust') AND FromMessageList='true' AND Found='false' AND Day>='"+date.Format("%Y-%m-%d")+"';"); + sql="SELECT tblIdentity.IdentityID,Day,RequestIndex "; + sql+="FROM tblMessageRequests INNER JOIN tblIdentity ON tblMessageRequests.IdentityID=tblIdentity.IdentityID "; + sql+="WHERE tblIdentity.LocalMessageTrust>=(SELECT OptionValue FROM tblOption WHERE Option='MinLocalMessageTrust') AND FromMessageList='true' AND Found='false' AND Day>='"+date.Format("%Y-%m-%d")+"' "; + sql+="AND (tblIdentity.PeerMessageTrust IS NULL OR tblIdentity.PeerMessageTrust>=(SELECT OptionValue FROM tblOption WHERE Option='MinPeerMessageTrust')) "; + sql+=";"; + + SQLite3DB::Statement st=m_db->Prepare(sql); st.Step(); while(st.RowReturned()) @@ -296,4 +303,4 @@ void MessageRequester::StartRequest(const std::string &requestid) m_ids[requestid]=true; -} \ No newline at end of file +}