Revision history:
1.0
- XML scan now uses open3, helps produce more informative error
output when nmap produces an error message.
- Added Nmap::Scanner::Task class to model taskbegin and taskend
XML elements.
- Added Nmap::Scanner::TaskProgress class to model taskbegin and taskend
XML elements.
- Added Nmap::Scanner::Distance class for host->distance.
- Added register_task_started and register_task_ended event
handlers to allow calling programs to be immediately notified
when taskbegin and taskend elements appear in the XML output.
- Added register_task_progress handler to allow calling programs
to be immediately notified when taskprogress elements appear
in XML (good for GUIs).
0.95
- scan_from_file() can now use LWP to retrieve files using
HTTP GET, i.e. http://nmap-scanner.sf.net/scan-test.xml
- Changed model classes to use Class::Generate to make
development and changing of model classes easier
- RPC scan option was broken, fixed now.
- Documentation clean up
- Examples updated and cleaned up
- run-examples.sh driver added to run all examples from one
spot (makes regression testing of the module easier)
- Noted in documentation that ident scan is now deprecated
0.9
- Added Nmap::Scanner::RunStats::Finished class
- Added vendor to Nmap::Scanner::Address class
- Added startstr to Nmap::Scanner::NmapRun class
- Added tunnel to Nmap::Scanner::Service class
- Documentation updates / edits
David Blank-Edelman (dnb ~at~ pobox -.- com)
- XML.pm will now use any XML::SAX parser available on a host,
not just XML::SAX::PurePerl.
- Documentation correction for Nmap::Scanner, where I incorrectly
stated that a port is identified by nmap only when that port
is found to be open. If the port is explicitly passed to -P,
nmap will report it's state regardless of whether it is
open or not.
0.8 - Added port_found call to port() routine as <addport>
was removed from nmap version 3.75
0.7a
- Updated README file with correct information
- Updated tests so tests that require nmap binary get
skipped (instead of failing) if nmap binary not found
- Updated version in lib/Nmap/Scanner.pm to .7
0.7
Will Saxon (WillS --at-- housing dot ufl DOT edu)
- Uninitialized value bug in XML.pm, PORT_COUNT attribute.
Mario Manno (mm AT koeln dot ccc . de)
- Many XML fixes to make Nmap::Scanner XML output comply with nmap DTD
- Code suggestion to separate method that reads nmap scan
from file out of main scan() method.
- Added Nmap::Scanner::OS::Class for use with nmap OS guess output
to account for multiple OS class guesses that may be generated
by using -O switch.
- Patched source to deal with 'defined but false' values for XML
output where class atributes have not been populated.
- Contributed example program that will perform an nmap scan and
generate graphs and charts showing the results of the scan
(see examples/bannerscan/ directory).
- Fix all nmap class names and attributes so they match the names
nmap uses in it's XML output.
- Alter examples to use new attribute / method names
Max Schubert
- Code clean up after applying patches from Mario.
- Perldoc for new methods added by Mario, clean up of some
existing perldoc.
- Clean up of die() calls in scan_from_file method to make
sure messages are clear to user.
- Added code to handle <hostnames> child of <host> element and multiple
<hostname> elements, along with Hostname class.
- Added stub hostnames and ports routines to Nmap::Scanner::Backend::XML
so that running in debug mode does not show unhandled XML warnings.
- Corrected smurf routine mapping so that smurf XML element calls
smurf() routine (instead of hostname()) in Nmap::Scanner::Backend::XML.
- Changed XML for error output so there are two lines; one is nmap output
error string, the other is perl error ($@) as eval{} will catch perl
runtime errors too.
- Altered examples/osguess.pl to work with new module/class names.
- Add code to handle multiple OS guess ports (Bug 906269)
- Alter examples to use new attribute / method names
- Alter tests to use new attribute / method names
0.6.1
- Set up mailing list and fixed link to it in README file .. thanks to
Andrew Thornton (ThorntonA /AT/ nv -dot- doe -dot- gov for pointing
out the bad URL in the file.
- David Klann grunch _AHT_ klann daw-T cx -- patch to
Nmap/Scanner/Scanner.pm to properly anchor nmap binary search in
_find_nmap routine.
0.6
- Jon Amundsen (jamundsen - at - jamundsen dot dydns -dot- org).
* Fix for path with spaces and Win32 (cygwin) nmap search in PATH by
Jon Amundsen
- Anthony Persaud (Anthony_Persaud -at- cargill dot com)
* Tell users defaults are being used and what they are for example
scripts
* Return $self for object chaining where possible in
Nmap::Scanner::Scanner
* Make add_* methods and delete* methods take arrays of args.
* Add open_nmap() method to Nmap::Scanner::Scanner to allow user to just
use Nmap::Scanner::Scanner as front end option processor .. this
method returns the pid of the newly opened nmap process, and the
reader, writer, and error filehandle attached to the nmap pipe;
uses IPC::Open3.
- Add support for -sV switch:
* version_scan() switch in Nmap::Scanner::Scanner
* Add mutators for version, product, and extrainfo to
Nmap::Scanner::Service
- Jasmin L<E9>vesque (jlevesque -At- crosemont.qc _DOT_ ca)
* Add support for parsing/outputting smurf detection.
- Change process() method of Nmap::Scanner::Backend::Processor to
start_nmap(). This method just opens a pipe to nmap; it returns the
pid, reader, writer and error filehandles to the caller. Caller is
responsible for processing errors from nmap. I changed this so that
the backend-processor could produce an error message in the appropriate
format.
0.5
- Changed to using the XML output format from nmap.
- Changed object model to match the XML output.
- Added scan($options) so that users don't have to learn MY method names
just to use the module set.
- Added more examples.
- Eliminated all "normal" output processors and the Factory sub-package, as
it is not needed anymore.
- Eliminated Protocol and ProtocolList models as XML output defines
protocols as ports of type IP.
- Changed tests to ONLY use tcp connect scans so we don't have install
problems for non-root users (reported to me by the CPAN testers ..
thanks!)
- Eliminated all Nmap::Scanner::Util modules except BannerScanner ..
moved others into examples/ as they really aren't core.
0.2
0.01 -- February, 2002
- First attempt at upload and release.