Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37045369
en ru br
Репозитории ALT
S:1.37-alt1
5.1: 1.33-alt0.M51.1
4.1: 1.31-alt2
4.0: 1.32-alt0.M40.1
+updates:1.31-alt1
3.0: 1.22rc1-alt1
+backports:1.27-alt0.M30.1
www.altlinux.org/Changes

Группа :: Система/Серверы
Пакет: postgrey

 Главная   Изменения   Спек   Патчи   Исходники   Загрузить   Gear   Bugs and FR  Repocop 

#!/usr/bin/perl -w

# This script will output all clients that were automatically whitelisted
# by postgrey's --auto-whitelist-clients option. The default number of
# mails required (5) is hardcoded below!

use BerkeleyDB;
use Socket;

my $dbdir = '/var/lib/postgrey';

sub resolv($) {
my $host = shift;
my $iaddr = inet_aton($host);
return gethostbyaddr($iaddr, AF_INET) || $host;
}

sub dbopen($)
{
my ($dbdir) = @_;
my %db;

my $dbenv = BerkeleyDB::Env->new(
-Home => $dbdir,
-Flags => DB_INIT_TXN|DB_INIT_MPOOL|DB_INIT_LOG,
) or die "ERROR: can't open DB environment: $!\n";

tie(%db, 'BerkeleyDB::Btree',
-Filename => "postgrey_clients.db",
-Flags => DB_RDONLY,
-Env => $dbenv,
) or die "ERROR: can't open database $dbdir/postgrey_clients.db: $!\n";

return \%db;
}

sub main()
{
# go through the database
my $db = dbopen($dbdir);
while (my ($key, $value) = each %$db) {
my ($c,$l) = split(/,/,$value);
$c >= 5 or next;
my $host = resolv($key);
print "$host ($c)\n";
}
}

main;

# vim: sw=4

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin