my ($sport, $saddr) = sockaddr_in($addr);
my ($dport, $daddr) = sockaddr_in(getsockname($sock));
my $size = length($data);
-
+
# Check if this is a survey reply
if ($dport >= $Config::survey_port_low && $dport <= $Config::survey_port_high) {
if (!exists($active_surveys{$dport})) {
next;
}
-
+
# Rate limiting
if (exists($last_sent{$saddr}{$dport})) {
my $elapsed = Time::HiRes::tv_interval($last_sent{$saddr}{$dport}, $now);
if ($elapsed < 1.0) {
print LOG "$dport $size 2\n";
print inet_ntoa($saddr), ", $dport, $size bytes => rate-limited ($elapsed secs since last)\n";
+ next;
}
- next;
}
-
+
# We don't get the packet's destination address, but I guess this should do...
# Check against the ACL.
my $pass = 0;