#!/store/bin/perl # # Name: aliases2html # Author: Petter Reinholdtsen # Date: 1997-05-07 # Changed: 1998-08-20 # Version: 1.2 # # Creates an html overview of the aliases file. # # 1998-08-20 v1.2 Added comment about where this program was found # 1997-08-20 v1.1 added NIS-support using module Net::NIS # 1997-05-09 v1.0 released use Getopt::Std; getopts("f:nv"); if ($opt_n) { print STDERR "Reading aliases from NIS\n" if ($opt_v); eval 'use Net::NIS::Table;'; die $@ if ($@); $map = Net::NIS::Table->new("mail.aliases"); $aliases = $map->list(); for $alias (keys %{$aliases}) { chop($$aliases{$alias}) if ($$aliases{$alias} =~ m/\0$/); if ("\@\0" ne $alias) { @e = split(/\s*,\s*/, $$aliases{$alias}); chop($alias) if ($alias =~ m/\0$/); $aliases{$alias} = [@e]; } } } else { if ($opt_f) { print "Reading aliases from $opt_f\n" if ($opt_v); %aliases = &parseAliases($opt_f); } else { %aliases = &parseAliases; } } &expandAliases(); $date = localtime(); print < Aliases Aliases Updated $date EOF for $alias (sort keys %aliases) { print "$alias\n"; } print "\n"; for $alias (sort keys %aliases) { print "$alias\n\n"; for $entry (sort @{$aliases{$alias}}) { $entry = expandEntry($entry); print "$entry\n"; } print "\n"; } print <