mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-24 06:12:27 +00:00
Strengthen the pledge() polyfill
This commit is contained in:
parent
a6f65eea7c
commit
3c92adfd6e
79 changed files with 1457 additions and 357 deletions
23
third_party/lua/lrepl.h
vendored
23
third_party/lua/lrepl.h
vendored
|
@ -1,31 +1,19 @@
|
|||
#ifndef COSMOPOLITAN_THIRD_PARTY_LUA_LREPL_H_
|
||||
#define COSMOPOLITAN_THIRD_PARTY_LUA_LREPL_H_
|
||||
#include "libc/dce.h"
|
||||
#include "libc/intrin/spinlock.h"
|
||||
#include "libc/intrin/nopl.h"
|
||||
#include "third_party/linenoise/linenoise.h"
|
||||
#include "third_party/lua/lauxlib.h"
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#if !defined(STATIC) && SupportsWindows()
|
||||
#define LUA_REPL_LOCK _spinlock(&lua_repl_lock)
|
||||
#else
|
||||
#define LUA_REPL_LOCK (void)0
|
||||
#endif
|
||||
|
||||
#if !defined(STATIC) && SupportsWindows()
|
||||
#define LUA_REPL_UNLOCK _spunlock(&lua_repl_lock)
|
||||
#else
|
||||
#define LUA_REPL_UNLOCK (void)0
|
||||
#endif
|
||||
|
||||
extern char lua_repl_lock;
|
||||
extern bool lua_repl_blocking;
|
||||
extern bool lua_repl_isterminal;
|
||||
extern struct linenoiseState *lua_repl_linenoise;
|
||||
extern linenoiseCompletionCallback *lua_repl_completions_callback;
|
||||
|
||||
void lua_freerepl(void);
|
||||
void lua_repl_lock(void);
|
||||
void lua_repl_unlock(void);
|
||||
int lua_loadline(lua_State *);
|
||||
void lua_l_print(lua_State *);
|
||||
void lua_sigint(lua_State *, int);
|
||||
|
@ -36,6 +24,11 @@ void lua_l_message(const char *, const char *);
|
|||
char *lua_readline_hint(const char *, const char **, const char **);
|
||||
void lua_readline_completions(const char *, linenoiseCompletions *);
|
||||
|
||||
#ifdef _NOPL0
|
||||
#define lua_repl_lock() _NOPL0("__threadcalls", lua_repl_lock)
|
||||
#define lua_repl_unlock() _NOPL0("__threadcalls", lua_repl_unlock)
|
||||
#endif
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_THIRD_PARTY_LUA_LREPL_H_ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue