Migrated project to Google Code!

I have finally had the chance to migrate this small project over to Google Code. To be honest, that was the most easiest things I have ever done. They have really made the work flow for developing and releasing code extremely easy (MUCH easier than SourceForge). With that said, all further development will be done over at Google Code.

Here is the link: http://code.google.com/p/nmap-parser/


Nmap-Parser 1.11 Released (yes, it’s a miracle)

Yeah, well I have to apologize for all the delay in releasing and fixing all the bugs that were submitted through email/sourceforge. I finally took the time to go over the new enhancements to the nmap xml output and see what I was missing. Anyways, enjoy!


    – Added parsing of distance information.
– Added ignoring of taskend,taskbegin and taskprogress information.
– Added tests for nmap 4.20.
– Changed lisence to MIT.
– Fixed protocol for the service handler – a bug that always returns null

Nmap Parser 1.11 on SourceForge

Nmap-Parser-1.11.tar.gz on CPAN


Will start updating as soon as…

Well, I have received a LOT of emails on updates and suggestions to Nmap::Parser. Just as a general announcement, I am currently STILL finishing up my thesis for my MS Degree, so it will take a little while before I can sit back down and start programming again and going through all the emails.

So that I can track all the stuff I need to do for the next version, please make sure you go to the project page and submit Bug/Feature Request. I would appreciate it very much and I thank you for your patience

Nmap-Parser 1.05 Released

The main reason for this release is major speed improvements and reduction in memory usage. Most functions are now genereated on the fly, reducing compile time (as well as saving memory). It was one of those days when I realized I could do things better (thanks to the Cookbook). I have also updated the documentation (I had mistyped some words and function names).

Where has get_host_objects() gone?

I have been getting a lot of questions about this method in the new version of Nmap::Parser with


Returns an array of all the Nmap::Parser::Host objects for the scan. If the optional status is given, it will only return those hosts that match that status. The status can be any of the following: (up|down|unknown|skipped)

Nmap-Parser-1.01 Released (finally)

After much rewriting and reworking – I am finally proud to announce that 1.01 is released. Why not 1.00? Well, I did not like my CPAN file just having a 1 by its name. Also it did pass 7 of the CPAN testers, so it should be good to go.

Please read the documentation carefully because there have been MAJOR changes. (If you do not want to install and have all your old script breaking). I know some people are going to get mad because of the major changes, but trust me they had to be done. In most cases, you should like the new framework.

Thanks for your patience and understanding. Happy 4th of July!

Real-Time Scanning – (no better time() like ‘now’)

You can run a nmap scan and have the parser parse the information automagically. The only constraint is that you cannot use ‘-oX’, ‘-oN’, or ‘-oG’ as one of your arguments for nmap command line parameters passed to parsescan().

 use Nmap::Parser;

 my $np = new Nmap::Parser;
 my @hosts = @ARGV; #get hosts from cmd line

 #runs the nmap command with hosts and parses it automagically
 $np->parsescan('/usr/bin/nmap','-sS O -p 1-1023',@hosts);

 for my $host ($np->all_hosts()){
        print $host->hostname."\n";
        #do mor stuff...