#!/usr/bin/perl # Copyright (C) 1999,2003 Ian Jackson # # This is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with userv-utils; if not, write to the Free Software # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # $Id$ $minreaddays= 21; $maxperuser= 250; open(CONF,"$ARGV[0]") or die $!; while() { next if m/^\#/ || !m/^\S/; next if m/^(myfqdn|xref|server|server-nosearch|fetch|read|post|permit|believe|extrarc)\s/; if (m/^minreaddays\s+(\d+)\s+$/) { $minreaddays= $1; } elsif (m/^maxperuser\s+(\d+)\s+$/) { $maxperuser= $1; } else { die "$_ ?"; } } $newsrc= ".newsrc"; exit 0 if -l $newsrc || ! -f _ || -M _ > $minreaddays; @g= (); open NEWSRC, $newsrc or die $!; while () { next unless s/:.*\n$//; next unless m/^[-a-z0-9+]+\.[-a-z0-9+._]+$/i; push @g, "$_\n"; } close NEWSRC or die $!; exit 0 if @g > $maxperuser; print sort @g or die $!; close STDOUT or die $!; exit 0;