From 45e019f41fc94ae17fd3001bb777f6adc4c3f08f Mon Sep 17 00:00:00 2001 From: ian Date: Tue, 9 Nov 1999 21:13:14 +0000 Subject: [PATCH] As found on chiark in /usr/local/lib/news/feed+read/newsrc-listgroups --- newsrc-lg/newsrc-listgroups | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 newsrc-lg/newsrc-listgroups diff --git a/newsrc-lg/newsrc-listgroups b/newsrc-lg/newsrc-listgroups new file mode 100755 index 0000000..73ad841 --- /dev/null +++ b/newsrc-lg/newsrc-listgroups @@ -0,0 +1,37 @@ +#!/usr/bin/perl + +$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; -- 2.30.2