Streaming I/O and support of named pipes (#570)

* added streaming i/o for scripting, and a byteutil.get_size function

* added i/o stream class, also added named pipes support on lua side via ffi

* added constant file.named_pipes_prefix

* added buffered and yield modes for io_stream

* added new time function for work with UTC - utc_time, utc_offset, local_time

* docs updated

* constant pid moved to os.pid

* now gmtime_s and localtime_s used only in windows
This commit is contained in:
Onran
2025-08-01 20:26:43 +03:00
committed by GitHub
parent cd2bc8fbf6
commit aae642a13e
16 changed files with 1303 additions and 1 deletions
@@ -0,0 +1,21 @@
local forbiddenPaths = {
"/..\\", "\\../",
"/../", "\\..\\"
}
return function(path)
local corrected = true
if path:starts_with("../") or path:starts_with("..\\") then
corrected = false
else
for _, forbiddenPath in ipairs(forbiddenPaths) do
if path:find(forbiddenPath) then
corrected = false
break
end
end
end
if not corrected then error "special path \"../\" is not allowed in path to named pipe" end
end