Luanti 5.11.0-dev
 
Loading...
Searching...
No Matches
LuaSecureRandom Class Reference

#include <l_noise.h>

+ Inheritance diagram for LuaSecureRandom:
+ Collaboration diagram for LuaSecureRandom:

Public Member Functions

bool fillRandBuf ()
 

Static Public Member Functions

static int create_object (lua_State *L)
 
static void Register (lua_State *L)
 
- Static Public Member Functions inherited from ModApiBase
static ScriptApiBasegetScriptApiBase (lua_State *L)
 
static ServergetServer (lua_State *L)
 
static ServerInventoryManagergetServerInventoryMgr (lua_State *L)
 
static EmergeThreadgetEmergeThread (lua_State *L)
 
static IGameDefgetGameDef (lua_State *L)
 
static EnvironmentgetEnv (lua_State *L)
 
static std::string getCurrentModPath (lua_State *L)
 
template<typename T >
static T * getScriptApi (lua_State *L)
 
static bool registerFunction (lua_State *L, const char *name, lua_CFunction func, int top)
 
static void registerClass (lua_State *L, const char *name, const luaL_Reg *methods, const luaL_Reg *metamethods)
 
template<typename T >
static T * checkObject (lua_State *L, int narg)
 
static int l_deprecated_function (lua_State *L, const char *good, const char *bad, lua_CFunction func)
 A wrapper for deprecated functions.
 

Static Public Attributes

static const char className [] = "SecureRandom"
 

Static Private Member Functions

static int gc_object (lua_State *L)
 
static int l_next_bytes (lua_State *L)
 

Private Attributes

u32 m_rand_idx
 
char m_rand_buf [RAND_BUF_SIZE]
 

Static Private Attributes

static const size_t RAND_BUF_SIZE = 2048
 
static const luaL_Reg methods []
 

Additional Inherited Members

- Protected Member Functions inherited from LuaHelper
template<>
bool readParam (lua_State *L, int index)
 
template<>
s16 readParam (lua_State *L, int index)
 
template<>
int readParam (lua_State *L, int index)
 
template<>
float readParam (lua_State *L, int index)
 
template<>
v2s16 readParam (lua_State *L, int index)
 
template<>
v2f readParam (lua_State *L, int index)
 
template<>
v3f readParam (lua_State *L, int index)
 
template<>
std::string_view readParam (lua_State *L, int index)
 
template<>
std::string readParam (lua_State *L, int index)
 
template<>
std::string_view readParam (lua_State *L, int index)
 Read a string from Lua state L at index without copying it.
 
- Static Protected Member Functions inherited from LuaHelper
template<typename T >
static T readParam (lua_State *L, int index)
 Read a value using a template type T from Lua state L at index.
 
template<typename T >
static T readParam (lua_State *L, int index, const T &default_value)
 Read a value using a template type T from Lua state L at index.
 

Member Function Documentation

◆ create_object()

int LuaSecureRandom::create_object ( lua_State * L)
static

References className, and fillRandBuf().

Referenced by Register().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fillRandBuf()

bool LuaSecureRandom::fillRandBuf ( )

References m_rand_buf, RAND_BUF_SIZE, and porting::secure_rand_fill_buf().

Referenced by create_object(), and l_next_bytes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gc_object()

int LuaSecureRandom::gc_object ( lua_State * L)
staticprivate

Referenced by Register().

+ Here is the caller graph for this function:

◆ l_next_bytes()

int LuaSecureRandom::l_next_bytes ( lua_State * L)
staticprivate

References ModApiBase::checkObject(), fillRandBuf(), m_rand_buf, m_rand_idx, MYMIN, NO_MAP_LOCK_REQUIRED, and RAND_BUF_SIZE.

+ Here is the call graph for this function:

◆ Register()

void LuaSecureRandom::Register ( lua_State * L)
static

References className, create_object(), gc_object(), methods, and ModApiBase::registerClass().

Referenced by ServerScripting::InitializeAsync(), EmergeScripting::InitializeModApi(), and ServerScripting::InitializeModApi().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ className

const char LuaSecureRandom::className = "SecureRandom"
static

Referenced by create_object(), and Register().

◆ m_rand_buf

char LuaSecureRandom::m_rand_buf[RAND_BUF_SIZE]
private

Referenced by fillRandBuf(), and l_next_bytes().

◆ m_rand_idx

u32 LuaSecureRandom::m_rand_idx
private

Referenced by l_next_bytes().

◆ methods

const luaL_Reg LuaSecureRandom::methods
staticprivate
Initial value:
= {
luamethod(LuaSecureRandom, next_bytes),
{0,0}
}
Definition l_noise.h:160
#define luamethod(class, name)
Definition l_internal.h:16

Referenced by Register().

◆ RAND_BUF_SIZE

const size_t LuaSecureRandom::RAND_BUF_SIZE = 2048
staticprivate

Referenced by fillRandBuf(), and l_next_bytes().


The documentation for this class was generated from the following files: