AuroraRuntime/Include/Aurora/IO/Net/ISocketServerLimits.hpp
Jamie Reece Wilson dcf94a8b23 [+] (dummy!) ISocketServerLimits.hpp
[+] (dummy!) ISocketChannelLimits.hpp
[+] ISocketChannel::GetChannelLimits
[+] ISocketBase::GetLockedWorkerThread
[+] ISocket::GetSocketServer
2023-11-29 13:55:01 +00:00

44 lines
1.8 KiB
C++

/***
Copyright (C) 2023 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: ISocketServerLimits.hpp
Date: 2023-11-29
Author: Reece
***/
#pragma once
namespace Aurora::IO::Net
{
struct ISocketServerLimits
{
virtual AuOptional<AuUInt32> GetMaxConnectionsPerIp() = 0;
virtual AuOptional<AuUInt32> SetMaxConnectionsPerIp(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuOptional<AuUInt32> GetMaxConnections() = 0;
virtual AuOptional<AuUInt32> SetMaxConnections(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuList<IPAddress> GetWhitelist() = 0;
virtual void SetWhitelist(AuList<IPAddress> whitelist) = 0;
virtual AuList<IPAddress> GetBlacklist() = 0;
virtual void SetBlacklist(AuList<IPAddress> blacklist) = 0;
virtual AuOptional<AuUInt32> GetBeforeDDoSDCAverageThroughputLimit() = 0;
virtual AuOptional<AuUInt32> SetBeforeDDoSDCAverageThroughputLimit(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuOptional<AuUInt32> GetBeforeDDoSDCFrameTimeMS() = 0;
virtual AuOptional<AuUInt32> SetBeforeDDoSDCFrameTimeMS(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuOptional<AuUInt32> GetBeforeDDoSTickFrameLimitCount() = 0;
virtual AuOptional<AuUInt32> SetBeforeDDoSTickFrameLimitCount(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuOptional<AuUInt32> GetBeforeDDoSTickFrameTimeMS() = 0;
virtual AuOptional<AuUInt32> SetBeforeDDoSTickFrameTimeMS(AuOptional<AuUInt32> optNextValue) = 0;
virtual AuOptional<bool> GetAutoBanOnDDoSDetectA() = 0;
virtual AuOptional<bool> SetAutoBanOnDDoSDetectA(AuOptional<bool> optNextValue) = 0;
virtual AuOptional<AuUInt32> GetAutoBanTimeSecs() = 0;
virtual AuOptional<AuUInt32> SetAutoBanTimeSecs(AuOptional<AuUInt32> optNextValue) = 0;
};
}