mirror of
https://github.com/luanti-org/luanti.git
synced 2025-10-13 16:45:20 +02:00
Replace auth.txt with SQLite auth database (#7279)
* Replace auth.txt with SQLite auth database
This commit is contained in:
@@ -19,6 +19,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include "irr_v3d.h"
|
||||
@@ -61,3 +62,25 @@ public:
|
||||
virtual bool removePlayer(const std::string &name) = 0;
|
||||
virtual void listPlayers(std::vector<std::string> &res) = 0;
|
||||
};
|
||||
|
||||
struct AuthEntry
|
||||
{
|
||||
u64 id;
|
||||
std::string name;
|
||||
std::string password;
|
||||
std::vector<std::string> privileges;
|
||||
s64 last_login;
|
||||
};
|
||||
|
||||
class AuthDatabase
|
||||
{
|
||||
public:
|
||||
virtual ~AuthDatabase() = default;
|
||||
|
||||
virtual bool getAuth(const std::string &name, AuthEntry &res) = 0;
|
||||
virtual bool saveAuth(const AuthEntry &authEntry) = 0;
|
||||
virtual bool createAuth(AuthEntry &authEntry) = 0;
|
||||
virtual bool deleteAuth(const std::string &name) = 0;
|
||||
virtual void listNames(std::vector<std::string> &res) = 0;
|
||||
virtual void reload() = 0;
|
||||
};
|
||||
|
Reference in New Issue
Block a user