From 6fdccee5ba0bb1049c938f5699a1961efc1b7963 Mon Sep 17 00:00:00 2001 From: dmiller Date: Mon, 1 May 2023 17:44:47 +0000 Subject: [PATCH] Update docs for Lua 5.4.4 upgrade --- docs/3rd-party.xml | 10 +++++----- docs/refguide.xml | 4 ++-- docs/scripting.xml | 31 +++++++++++++++++-------------- 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/docs/3rd-party.xml b/docs/3rd-party.xml index 981dd1f2a..f9a6d2f1e 100644 --- a/docs/3rd-party.xml +++ b/docs/3rd-party.xml @@ -7,16 +7,16 @@ - + - + - - - + + + diff --git a/docs/refguide.xml b/docs/refguide.xml index 2c85d0da7..f05499957 100644 --- a/docs/refguide.xml +++ b/docs/refguide.xml @@ -2257,7 +2257,7 @@ way. The Nmap Scripting Engine (NSE) is one of Nmap's most powerful and flexible features. It allows users to write (and - share) simple scripts (using the Lua programming language + share) simple scripts (using the Lua programming language Lua programming language ) to automate a wide variety of networking tasks. Those scripts are executed in parallel with the @@ -2410,7 +2410,7 @@ which lists the category or categories in which each script belongs. and, or, and not operators to build Boolean expressions. The operators have the same - precedence + precedence as in Lua: not is the highest, followed by and and then or. You can alter precedence by using parentheses. Because expressions contain diff --git a/docs/scripting.xml b/docs/scripting.xml index 441ccf3fc..0a5b5018c 100644 --- a/docs/scripting.xml +++ b/docs/scripting.xml @@ -104,7 +104,7 @@ Scripts are written in the embedded - Lua programming language, version 5.3.Lua programming languageNmap Scripting Engine + Lua programming language, version 5.4.Lua programming languageNmap Scripting Engine The language itself is well documented in the books Programming @@ -117,10 +117,10 @@ Lua 5.2 Reference Manual. -The reference manual, updated for Lua 5.3, is also - freely available +The reference manual, updated for Lua 5.4, is also + freely available online, as is the - first edition of Programming in + first edition of Programming in Lua. Given the availability of these excellent general Lua programming references, this document only covers aspects and extensions specific to Nmap's scripting engine. @@ -911,7 +911,7 @@ https://nmap.org/nsedoc/scripts/afp-showmount.html and, or, and not operators to build Boolean expressions. The operators have the same - precedence + precedence as in Lua: not is the highest, followed by and and then or. You can alter precedence by using parentheses. Because expressions contain @@ -1412,7 +1412,7 @@ details of how different return values are handled. The Nmap scripting language is an embedded Lua interpreter which is + url="https://lua.org/">Lua interpreter which is extended with libraries for interfacing with Nmap. The Nmap API is in the Lua namespace nmap. This means that all calls to resources provided by Nmap have an @@ -1488,7 +1488,7 @@ details of how different return values are handled. script writing more powerful and convenient. These libraries (sometimes called modules) are compiled if necessary and installed along with Nmap. They have their own directory, nselib, which is installed in the configured Nmap data directory. Scripts need only - require the default libraries in order to use them. + require the default libraries in order to use them. @@ -1543,7 +1543,7 @@ details of how different return values are handled. Programming in Lua, Second Edition, so this is a short summary. C modules consist of functions that follow the protocol of the - lua_CFunction + lua_CFunction type. The functions are registered with Lua and assembled into a library by calling the luaL_newlibluaL_newlib @@ -3297,7 +3297,7 @@ mutexfn = nmap.mutex(object) The mutexfn returned is a function which works as a mutex for the object passed in. This object can be any Lua data + url="https://lua.org/manual/5.4/manual.html#2.1">Lua data type except nil, Boolean, and number. The returned function allows you to lock, try to lock, and release the @@ -3423,7 +3423,7 @@ end condvarfn returned is a function which works as a condition variable for the object passed in. This object can be any Lua data + url="https://lua.org/manual/5.4/manual.html#2.1">Lua data type except nil, Boolean, and number. The returned function allows you to wait, signal, and broadcast on the @@ -3503,7 +3503,7 @@ end independent execution stack that can be yielded and resumed. The standard coroutine table provides access to the creation and manipulation of coroutines. Lua's online first - edition of Programming in + edition of Programming in Lua contains an excellent introduction to coroutines. What follows is an overview of the use of coroutines here for completeness, but this is no replacement for @@ -3847,7 +3847,7 @@ end It then loads the standard Lua libraries and compiled NSE libraries. The standard Lua libraries are documented in the Lua Reference + url="https://lua.org/manual/5.4/manual.html">Lua Reference Manual. The standard Lua libraries available to NSE are debug, io, @@ -3860,8 +3860,11 @@ end of a Lua file. They include nmap, pcre, - bin, - bit, and + db, + lpeg, + debug, + zlib, + libssh2, and openssl (if available).