1
0
mirror of https://github.com/luanti-org/luanti.git synced 2026-01-12 20:25:26 +01:00
Files
luanti/src/server/ban.h
wrrrzr e9080f91f2 Cleanup ban.cpp/h (#15496)
Make BanManager more const correctly
Delete unused includes
2024-12-01 20:52:13 +01:00

32 lines
781 B
C++

// Luanti
// SPDX-License-Identifier: LGPL-2.1-or-later
// Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>
#pragma once
#include "util/string.h"
#include <string>
#include <mutex>
class BanManager
{
public:
BanManager(const std::string &banfilepath);
~BanManager();
void load();
void save();
bool isIpBanned(const std::string &ip) const;
// Supplying ip_or_name = "" lists all bans.
std::string getBanDescription(const std::string &ip_or_name) const;
std::string getBanName(const std::string &ip) const;
void add(const std::string &ip, const std::string &name);
void remove(const std::string &ip_or_name);
bool isModified() const;
private:
mutable std::mutex m_mutex;
std::string m_banfilepath = "";
StringMap m_ips;
bool m_modified = false;
};