Object Methods
new()
Returns a new Stumbler object.
parseNSSummaryLine($line)
Params: -string A line from a summary file Returns: an array of seperated values corresponding to output of a NetStumbler summary export **NOTE** <li>Conversion of the verbose GPS data to doubles in standard GPS format</li> <li>Blank SSID will be set to "Hidden"</li> <li>The time data will have GMT stripped off</li> <li>If the line is not correctly formed return an empty list</li> Example: my @line = $obj->parseNSSummaryLine($line); print "Line [@line]\n";
isSummary($file)
Params: -string fully qualified filename Returns: true if the file is in NetStumbler Summary format Example: if($obj->isSummary($file)) { # do something here }
isNS1($file)
Params: -string fully qualified filename Returns: true if the file is in NetStumbler NS1 file Example: if($obj->isNS1($file)) { # do something here }
isKismetCSV($file)
Params: -string fully qualified filename Returns: true if the file is in Kismet CSV file Example: if($obj->isKismetCSV($file)) { # do something here }
parseKismetCSV($file)
Params: -string fully qualified filename Returns: list of lists each item in the sublist corresponds to a list from kismet summary file Example: $ref = $obj->parseKismetCSV($file); # The list is as follows 0 Network 1 NetType 2 ESSID 3 BSSID 4 Info 5 Channel 6 Cloaked 7 WEP 8 Decrypted 9 MaxRate 10 MaxSeenRate 11 Beacon 12 LLC 13 Data 14 Crypt 15 Weak 16 Total 17 Carrier 18 Encoding 19 FirstTime 20 LastTime 21 BestQuality 22 BestSignal 23 BestNoise 24 GPSMinLat 25 GPSMinLon 26 GPSMinAlt 27 GPSMinSpd 28 GPSMaxLat 29 GPSMaxLon 30 GPSMaxAlt 31 GPSMaxSpd 32 GPSBestLat 33 GPSBestLon 34 GPSBestAlt 35 DataSize 36 IPType 37 IP #
parseNS1($file)
Params: -string fully qualified filename Returns: list of lists each item in the sublist corresponds to a list from parseNSSummary Example: $ref = $obj->parseNS1($file);
Private Methods
readAPInfo($fileHandle,$fileVersion)
Params: reference - Filehandle reference number - NS1 Version Returns: list - smae format as parseNSSummary
readAPData($fileHandle,$fileVersion)
Params: reference - Filehandle reference number - NS1 Version Returns: nothing TODO: Add a return value to this method to build graphs
readGPSData($fileHandle)
Params: reference - Filehandle reference Returns: nothing TODO: Add a return value to this method to build graphs
readint64($fileHandle)
Params: reference - Filehandle reference Returns: a 64bit number
readDouble($fileHandle)
Params: reference - Filehandle reference Returns: a double
readint32($fileHandle)
Params: reference - Filehandle reference Returns: a 32bit number
readUint32($fileHandle)
Params: reference - Filehandle reference Returns: an unsigned 32bit number
readUint8($fileHandle)
Params: reference - Filehandle reference Returns: an unsigned 8bit number
readChars($fileHandle,$length)
Params: reference - Filehandle reference length - number of bytes to read Returns: a string
ensurePos($fileHandle,$prePosition,$postPosition,$amountNeeded)
This method was aadded due to an odd behavior with Perl5.8 read would sometimes put the file pointer 1 byte beyond where it was supposed to be. This method fixes that issue Params: reference - Filehandle reference number - Pre read position of the file number - Post position of the file number - Correct amount to data that was supposed to be read
NAME
NetStumbler::Stumbler - Module to parse netstumbler data
SYNOPSIS
use NetStumbler::Stumbler;
my $lin = NetStumbler::Stumbler->new();
$lin->isSummary($file);
$lin->isNS1($file);
$lin->parseNS1($file);
DESCRIPTION
This class has several methods to parse NetStumbler data file TODO: add Kismet and iStumbler support
EXPORT
None by default.
SEE ALSO
http://www.netstumbler.org Net Stumbler http://stumbler.net/ns1files.html NS1 Information
AUTHOR
Salvatore E. ScottoDiLuzio<lt>washu@olypmus.net<gt>
COPYRIGHT AND LICENSE
Copyright (C) 2004 by Salvatore ScottoDiLuzio
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.3 or, at your option, any later version of Perl 5 you may have available.