Nmap Development mailing list archives

Re: LUA Bug?


From: Djalal Harouni <tixxdz () opendz org>
Date: Sun, 30 Jan 2011 14:18:35 +0100

On 2011-01-30 12:02:46 +0100, Patrik Karlsson wrote:

On 30 jan 2011, at 12.02, Djalal Harouni wrote:

On 2011-01-30 05:39:57 -0500, Patrick Donnelly wrote:
On Sun, Jan 30, 2011 at 3:38 AM, Michael Pattrick
<mpattrick () rhinovirus org> wrote:
Hello devs,

While playing around with a recent Nmap release I found that scripts
weren't working for me, see the following command line log. It appears
to be a problem with the LUA environment variables. The environment is
a nearly fresh CentOS5 install. I haven't tested this out on other
platforms but a quick google search reveals at least one other person
has had problems with this bug (http://pastebin.com/cFXre59L). Any
ideas?

The SCRIPT_* globals aren't defined until a script is instantiated
(executed against a host:port; see Script.new versus Script.new_thread
in nse_main.lua). This probably should be changed.
Yes they should be loaded in the Script.new function, I'm looking at
this.

Great! While at it, could you please fix the mess I did in ssh-hostkey and change it back from filename to 
SCRIPT_NAME? :)

Ok, the patch is attached. Now the environment variables are rebuild
when we are executing the script thread, and the SCRIPT_TYPE [1] is 
available only inside the action and the rule functions.

I've grepped all the scripts to see if they are still using the old
'filename' environment variable but didn't found anyone.

If there are no problems I'll commit it.

[1] http://nmap.org/book/nse-script-format.html#nse-format-environment

-- 
tixxdz

Attachment: nse_script_environment.diff
Description:

_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/

Current thread: