master
Ansariel 2022-05-04 15:04:24 +02:00
commit 0349e9aaeb
5 changed files with 14 additions and 0 deletions

View File

@ -485,6 +485,9 @@ public:
const std::string& data_id,
const std::string& map_elem)=0;
// ensure protected store's map is written to storage
virtual void syncProtectedMap() = 0;
public:
virtual LLPointer<LLCredential> createCredential(const std::string& grid,
const LLSD& identifier,

View File

@ -1621,6 +1621,11 @@ void LLSecAPIBasicHandler::removeFromProtectedMap(const std::string& data_type,
}
}
void LLSecAPIBasicHandler::syncProtectedMap()
{
// TODO - consider unifing these functions
_writeProtectedData();
}
//
// Create a credential object from an identifier and authenticator. credentials are
// per credential name (was: grid).

View File

@ -278,6 +278,9 @@ public:
const std::string& data_id,
const std::string& map_elem);
// ensure protected store's map is written to storage
virtual void syncProtectedMap();
// credential management routines
virtual LLPointer<LLCredential> createCredential(const std::string& credName,

View File

@ -4734,6 +4734,8 @@ bool process_login_success_response(U32 &first_sim_size_x, U32 &first_sim_size_y
std::string grid(LLGridManager::getInstance()->getGridId());
std::string user_id(gUserCredential->userID());
gSecAPIHandler->addToProtectedMap("mfa_hash", grid, user_id, response["mfa_hash"]);
// TODO(brad) - related to SL-17223 consider building a better interface that sync's automatically
gSecAPIHandler->syncProtectedMap();
}
// <FS:Ansariel> OpenSim legacy economy support

View File

@ -62,6 +62,7 @@ LLPointer<LLCertificateStore> LLSecAPIBasicHandler::getCertificateStore(const st
void LLSecAPIBasicHandler::setProtectedData(const std::string& data_type, const std::string& data_id, const LLSD& data) {}
void LLSecAPIBasicHandler::addToProtectedMap(const std::string& data_type, const std::string& data_id, const std::string& map_elem, const LLSD& data) {}
void LLSecAPIBasicHandler::removeFromProtectedMap(const std::string& data_type, const std::string& data_id, const std::string& map_elem) {}
void LLSecAPIBasicHandler::syncProtectedMap() {}
LLSD LLSecAPIBasicHandler::getProtectedData(const std::string& data_type, const std::string& data_id) { return LLSD(); }
void LLSecAPIBasicHandler::deleteProtectedData(const std::string& data_type, const std::string& data_id) {}
LLPointer<LLCredential> LLSecAPIBasicHandler::createCredential(const std::string& grid, const LLSD& identifier, const LLSD& authenticator) { return NULL; }