1
0
mirror of https://github.com/nmap/nmap.git synced 2026-01-20 21:29:06 +00:00

Merge branch 'nse-lua53'

Lua 5.3 adds several awesome features of particular interest to nmap including
bitwise operators and integers, a utf8 library, and standard binary pack/unpack
functions.

In addition to adding Lua 5.3, this branch changes:

o Complete removal of the NSE bit library (in C), It has been replaced with
  a new Lua library wrapping Lua 5.3's bit-wise operators.

o Complete removal of the NSE bin library (in C). It has been replaced with a
  new Lua library wrapping Lua 5.3's string.pack|unpack functions.

o The bin.pack "B" format specifier (which has never worked correctly) is
  unimplemented.  All scripts/libraries which use it have been updated. Most
  usage of this option was to allow string based bit-wise operations which are no
  longer necessary now that Lua 5.3 provides integers and bit-wise operators.

o The base32/base64 libraries have been reimplemented using Lua 5.3's new
  bitwise operators. (This library was the main user of the bin.pack "B" format
  specifier.)

o A new "bits" library has been added for common bit hacks. Currently only has
  a reverse function.

Thanks to David Fifield, Daniel Miller, Jacek Wielemborek, and  Paulino
Calderon for testing this branch.
This commit is contained in:
batrick
2016-07-02 17:02:27 +00:00
parent 0f22680426
commit 7f5ec526fe
120 changed files with 10173 additions and 6533 deletions

View File

@@ -1547,15 +1547,11 @@ details of how different return values are handled.
</para>
<para>
The smallest compiled module that comes with NSE is
<literal>bit</literal>,<indexterm><primary><varname>bit</varname> NSE library</primary></indexterm>
and one of the most straightforward is
The most straightforward compiled module that comes with NSE is
<literal>openssl</literal>.<indexterm><primary><varname>openssl</varname> NSE library</primary></indexterm>
These modules serve as good examples for a beginning module
This module serves as a good example for a beginning module
writer. The
source code for <literal>bit</literal> is found in
<filename>nse_bit.cc</filename> and
<filename>nse_bit.h</filename>, while the
source code for
<literal>openssl</literal> source is in <filename>nse_openssl.cc</filename> and
<filename>nse_openssl.h</filename>. Most of the other compiled modules
follow this <literal>nse_<replaceable>module name</replaceable>.cc</literal> naming convention.