Nmap Development mailing list archives

Re: [GSOC] Nmap exclude list implementation


From: Harshil Lodhi <lodhi.harshil () gmail com>
Date: Thu, 05 Mar 2015 08:09:24 +0000

Hi Daniel,
I was just trying out the implementation. I have this thought in mind that
to support subnets, the simple trie won't be a good option because of the
space requirements. We can either modify trie to suit it for prefix
matching or use some other data structure which is available.
For the credit thing, I am really sorry for that. Full credits to the
original author. The thought of writing the credits slipped my mind since I
was not releasing the code into public repos. I generally do this just
before releasing. Although I don't plan to use the same code while
implementing it for production since it doesn't have any checks for many of
the corner cases and is not production ready . The current code I have
written is a hack, it won't even pass test cases. I will start rewriting it
step by step. I have few questions that I want to ask before I start.

1. Should I modify the function prototype, if this happens, the code needs
to be changed in a lot of places.
2. A alternate solution I have in my mind is to keep all the function
prototypes to be same. We will make changes in a way that transparently
replaces linked list. I am not certain how to go about this, but will start
my work as soon as I get some time.

On Thu, Mar 5, 2015 at 1:16 PM David Fifield <david () bamsoftware com> wrote:

On Thu, Mar 05, 2015 at 12:49:05AM +0000, Harshil Lodhi wrote:
Just to convince myself that a simple TRIE would be good enough for the
implementation of addrset. I hacked the addrset code. I have attached
the diff
and the modified files. The current pre-prototype implementation works
only for
exclude list in which IPs are mentioned in x.x.x.x format. I have
created a
TRIE of strings( IP address in form of strings) . The code can be
compiled
sucessfully without any modifications to any makefile.

I got the time down from 23 seconds to 0.2 seconds = 100x FAST . (This
involves
no scanning)

Thanks for looking into this. Please make sure it still passes the tests
in ncat/test/test-addrset.sh.

David Fifield

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

Current thread: