Package: munin-node
Version: 1.2.0-1
Severity: normal
The current mailman plugin improperly uses domains. Specifically, it
assumes a mailman installation that is different from the current Debian
mailman installation.
I was able to fix the plugin by removing all reference to domains. This
was accomplished by modifying sub paresMailmanLists as follows:
sub parseMailmanLists {
-my @domains = &mailmanDomains;
-for(my $i = 0; $i < @domains; $i++) {
-my @lists = &mailmanLists($domains[$i]);
+my @lists = &mailmanLists();
for(my $j = 0; $j < @lists; $j++) {
-$members += &mailmanMembers($domains[$i], $lists[$j]);
+ $members += &mailmanMembers($lists[$j]);
}
-}
}
The following changes were required in sub mailmanLists:
sub mailmanLists {
-my ($domain) = @_;
-opendir(LISTS, "$libdir/$domain/lists") or exit 3;
+opendir(LISTS, "$libdir/lists") or exit 3;
my @lists = grep { !/^\@/ && !/^\./ && -d "$libdir/$domain/lists/$_" }
readdir(LISTS);
closedir(LISTS);
return @lists;
}
And the following changes were required in mailmanMembers:
sub mailmanMembers {
-my ($domain, $list) = @_;
+my ($list) = @_;
-return 0 unless $domain;
+return 0 unless $list;
my $cnt = 0;
-open(MEMBERS, "DOMAIN=$domain $lister $list|") or exit 3;
+open(MEMBERS, "$lister $list|") or exit 3;
while() {
$cnt++;
}
close(MEMBERS);
return $cnt;
}
Charles
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (90, 'testing'), (80, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.4.26-1um
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Versions of packages munin-node depends on:
ii libnet-server-perl0.87-2 An extensible, general perl server
ii perl 5.8.4-6Larry Wall's Practical Extraction
ii procps1:3.2.1-2 The /proc file system utilities
-- no debconf information
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]