NAME
ThreatNet::Filter::ThreatCache - A Threat Cache implementated as a filter
DESCRIPTION
A ThreatNet::Filter::ThreatCache
is a basic filter-based implementation of a Threat Cache, as defined in the ThreatNet concept paper. (http://ali.as/threatnet/)
The consistent use of Threat Caches by all nodes is the key to keeping message quantities to a minimum, and allows the entire network to safely run without any canonical state.
As each message is provided to the filter, it stores an IPs that it sees, filtering out any ips that have already been seen in the last hour (or custom period if provided).
METHODS
new [ $param => $value, ... ]
The new
method creates a new Threat Cache object.
It takes a single optional parameter timeout
which should the positive integer number of seconds the channel dictates as the mimumum time before an event can be rementioned. The default value is 3600 (1 hour).
Returns a new ThreatNet::Filter::ThreatCache
object.
keep $Message
As in the parent ThreatNet::Filter class, the keep
method takes as argument a single ThreatNet::Message
object.
It returns true if the message can be kept, or false if the message should be dropped.
synced
The synced
method checks to see if the Threat Cache has synchronised with the channel.
Returns true if the current time is past the sync time, or false if not.
stats
The stats
method returns a hash with a variety of statistics from the Threat Cache.
Returns the stats as a HASH
reference.
SUPPORT
All bugs should be filed via the bug tracker at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=ThreatNet-Filter
For other issues, or commercial enhancement and support, contact the author
AUTHORS
Adam Kennedy (Maintainer), http://ali.as/, cpan@ali.as
SEE ALSO
http://ali.as/devel/threatnetwork.html, ThreatNet::Filter
COPYRIGHT
Copyright (c) 2005 Adam Kennedy. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.