| 1 |
package Echolot::Pinger; |
package Echolot::Pinger; |
| 2 |
|
|
| 3 |
# (c) 2002 Peter Palfrader <peter@palfrader.org> |
# (c) 2002 Peter Palfrader <peter@palfrader.org> |
| 4 |
# $Id: Pinger.pm,v 1.6 2002/06/18 17:21:51 weasel Exp $ |
# $Id: Pinger.pm,v 1.7 2002/06/20 04:29:38 weasel Exp $ |
| 5 |
# |
# |
| 6 |
|
|
| 7 |
=pod |
=pod |
| 23 |
use Echolot::Pinger::Mix; |
use Echolot::Pinger::Mix; |
| 24 |
use Echolot::Pinger::CPunk; |
use Echolot::Pinger::CPunk; |
| 25 |
|
|
| 26 |
|
my @primes = qw{13 1997 173 1051 59 6 97883 197 3 2 109 127 7}; |
| 27 |
sub makeHash($) { |
sub makeHash($) { |
| 28 |
my ($text) = @_; |
my ($text) = @_; |
| 29 |
my $sum = 0; |
my $sum = 0; |
| 30 |
for (my $i=0; $i < length($text); $i++) { |
for (my $i=0; $i < length($text); $i++) { |
| 31 |
$sum += ord( substr($text, $i, 1) ) |
$sum += ord( substr($text, $i, 1) ) * $primes[ $i % (scalar @primes) ]; |
| 32 |
}; |
}; |
| 33 |
return $sum; |
return $sum; |
| 34 |
}; |
}; |