mirror of
https://github.com/uroni/urbackup_backend.git
synced 2025-10-26 11:36:50 +00:00
40 lines
1.4 KiB
C++
40 lines
1.4 KiB
C++
#include "../Interface/Mutex.h"
|
|
#include "../fileservplugin/IFileServFactory.h"
|
|
|
|
class ServerIdentityMgr
|
|
{
|
|
public:
|
|
static void addServerIdentity(const std::string &pIdentity, const std::string& pPublicKey);
|
|
static bool checkServerSessionIdentity(const std::string &pIdentity);
|
|
static bool checkServerIdentity(const std::string &pIdentity);
|
|
static bool hasPublicKey(const std::string &pIdentity);
|
|
static std::string getPublicKey(const std::string &pIdentity);
|
|
static bool setPublicKey(const std::string &pIdentity, const std::string &pPublicKey);
|
|
static void loadServerIdentities(void);
|
|
static size_t numServerIdentities(void);
|
|
static void addSessionIdentity(const std::string &pIdentity);
|
|
|
|
static void init_mutex(void);
|
|
static void destroy_mutex(void);
|
|
|
|
static void setFileServ(IFileServ *pFilesrv);
|
|
|
|
static bool isNewIdentity(const std::string &pIdentity);
|
|
static bool hasOnlineServer(void);
|
|
|
|
private:
|
|
static void writeServerIdentities(void);
|
|
static void writeSessionIdentities();
|
|
|
|
static std::vector<std::string> identities;
|
|
static std::vector<std::string> publickeys;
|
|
static std::vector<int64> online_identities;
|
|
static std::vector<std::string> new_identities;
|
|
static std::vector<std::string> session_identities;
|
|
static std::vector<int64> online_session_identities;
|
|
|
|
static IMutex *mutex;
|
|
|
|
static IFileServ *filesrv;
|
|
};
|