X-Git-Url: https://git.pterodactylus.net/?p=fms.git;a=blobdiff_plain;f=src%2Ffreenet%2Ftrustlistrequester.cpp;h=96d24df96934a6dc96dbfd1be0e8def74813081c;hp=bedc8457316dc2d44c6df17b10f1445fed556196;hb=59a5414ec47a2932a7802fcd1d98c4d80166564f;hpb=4e96d123460d6363cf7274e36bd9357768eb86ad diff --git a/src/freenet/trustlistrequester.cpp b/src/freenet/trustlistrequester.cpp index bedc845..96d24df 100644 --- a/src/freenet/trustlistrequester.cpp +++ b/src/freenet/trustlistrequester.cpp @@ -10,12 +10,12 @@ #include #endif -TrustListRequester::TrustListRequester() +TrustListRequester::TrustListRequester(SQLite3DB::DB *db):IIndexRequester(db) { Initialize(); } -TrustListRequester::TrustListRequester(FCPv2::Connection *fcp):IIndexRequester(fcp) +TrustListRequester::TrustListRequester(SQLite3DB::DB *db, FCPv2::Connection *fcp):IIndexRequester(db,fcp) { Initialize(); } @@ -109,6 +109,8 @@ const bool TrustListRequester::HandleAllData(FCPv2::Message &message) } st.Finalize(); + m_db->Execute("BEGIN;"); + // drop all existing peer trust from this identity - we will rebuild it when we go through each trust in the xml file st=m_db->Prepare("DELETE FROM tblPeerTrust WHERE IdentityID=?;"); st.Bind(0,identityid); @@ -209,6 +211,8 @@ const bool TrustListRequester::HandleAllData(FCPv2::Message &message) st.Step(); st.Finalize(); + m_db->Execute("COMMIT;"); + m_log->debug("TrustListRequester::HandleAllData parsed TrustList XML file : "+message["Identifier"]); } else @@ -266,9 +270,10 @@ void TrustListRequester::Initialize() { std::string tempval=""; m_fcpuniquename="TrustListRequester"; - m_maxrequests=0; - Option::Instance()->GetInt("MaxIdentityRequests",m_maxrequests); + Option option(m_db); + + option.GetInt("MaxIdentityRequests",m_maxrequests); if(m_maxrequests<1) { m_maxrequests=1;