Nmap Development mailing list archives
Re: [NSE] A Lua implementation of NSE
From: David Fifield <david () bamsoftware com>
Date: Thu, 15 Jan 2009 20:46:50 -0700
On Tue, Jan 06, 2009 at 11:06:50PM -0700, Patrick Donnelly wrote:
For the last couple months I have been working on an implementation of NSE in Lua. There were several motivating factors for doing this. Principally, the code base could be dramatically simplified (in one respect, lines of code). Also, with the switch to Lua comes huge returns in maintainability, flexibility, and extendability. The code itself is easier to understand and follow largely due to Lua's expressiveness when compared to C++.
Hey Patrick. Thanks for the great writeup. I'm using it as my guide for going through the code. This rewrite of NSE could have big advantages as you say. I've only just started tracing through the new implementation so expect that I'll have some follow-up posts. In case it's not clear to folks reading, a "Lua implementation of NSE" means that the main NSE loop is written in Lua, in a file called nse_main.lua. There's still a lot of C++ interfacing it needs to do, which accounts for the continued presence of nse_main.cc. nse_init.cc is gone though. I encourage anyone reading to check it out. You don't have to do anything special to run the new code. svn co --username guest --password "" svn://svn.insecure.org/nmap-exp/batrick/nse-lua cd nse-lua ./configure make ./nmap Just run your normal script scans and write back with what works or doesn't work. People often neglect to report when they encounter no problems, but a quick "It worked" helps us know how much testing new code is getting. These are big changes, and so the software engineer in me urges caution. The changes include both the Lua rewrite and conceptually unrelated functionality changes, which complicates the review. I may ask you to separate out some changes, in case we decide to merge some and not others. Or even just to allow each piece to be evaluated separately. But don't worry about doing that now--I'll let you know what I think would help after I've been through the code some more. David Fifield _______________________________________________ Sent through the nmap-dev mailing list http://cgi.insecure.org/mailman/listinfo/nmap-dev Archived at http://SecLists.Org
Current thread:
- [NSE] A Lua implementation of NSE Patrick Donnelly (Jan 06)
- Re: [NSE] A Lua implementation of NSE Brandon Enright (Jan 07)
- Re: [NSE] A Lua implementation of NSE David Fifield (Jan 15)
- Re: [NSE] A Lua implementation of NSE--detailed review David Fifield (Jan 16)
- Re: [NSE] A Lua implementation of NSE--detailed review Patrick Donnelly (Jan 17)
- Re: [NSE] A Lua implementation of NSE--detailed review Patrick Donnelly (Jan 17)
- Re: [NSE] A Lua implementation of NSE--detailed review David Fifield (Jan 18)
- Re: [NSE] A Lua implementation of NSE--detailed review Patrick Donnelly (Jan 20)
- Re: [NSE] A Lua implementation of NSE--detailed review Patrick Donnelly (Jan 17)
- Re: [NSE] A Lua implementation of NSE Ron (Jan 17)
- Re: [NSE] A Lua implementation of NSE--chance for deadlock David Fifield (Jan 18)
- Re: [NSE] A Lua implementation of NSE--chance for deadlock Patrick Donnelly (Jan 20)
- Re: [NSE] A Lua implementation of NSE Patrick Donnelly (Jan 20)
- Re: [NSE] A Lua implementation of NSE Fyodor (Jan 20)
- Re: [NSE] A Lua implementation of NSE--chance for deadlock David Fifield (Jan 18)