summaryrefslogtreecommitdiff
path: root/localmkpostfixvirtual
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2006-08-22 23:11:33 +0000
committerJonas Smedegaard <dr@jones.dk>2006-08-22 23:11:33 +0000
commit4eaaf99e7103394fcb8fd652f39ccde2eb89bbb4 (patch)
tree92f5baa09274a149e1aecd74e20c1ee42fd31578 /localmkpostfixvirtual
parent58bbac09f033ed50d5751afe45bf5c9f0521dd05 (diff)
Fix including warning with normal output for users with no addresses.
Diffstat (limited to 'localmkpostfixvirtual')
-rwxr-xr-xlocalmkpostfixvirtual34
1 files changed, 16 insertions, 18 deletions
diff --git a/localmkpostfixvirtual b/localmkpostfixvirtual
index bc9aa70..40d12df 100755
--- a/localmkpostfixvirtual
+++ b/localmkpostfixvirtual
@@ -3,7 +3,7 @@
# /usr/local/sbin/localmkpostfixvirtual
# Copyright 2001-2006 Jonas Smedegaard <dr@jones.dk>
#
-# $Id: localmkpostfixvirtual,v 1.27 2006-08-22 23:03:24 jonas Exp $
+# $Id: localmkpostfixvirtual,v 1.28 2006-08-22 23:11:33 jonas Exp $
#
# Generate virtual file for postfix
#
@@ -85,31 +85,29 @@ sub print_accounts($$$$) {
my ($username, $mailgroup, $maildomain, $pre_text, $post_fallback_text) = @_;
($pre_text) && print $pre_text . "\n";
- my $user_seen;
my $joker_seen;
#DEBUG: print STDERR "$mailgroup $maildomain\n";
#DEBUG: ($username eq "annette") and print STDERR Dumper(@{$addresshints{$username}});
- if (not &warnonce(defined(@{$addresshints{$username}}), "addresshints_$username", "Skipping non-hinted username \"$username\".")) {
- return '';
- }
- my @localparthints = @{$addresshints{$username}};
- my @localparts = grep {s/(.+)@($mailgroup|$maildomain)?$/$1/} @localparthints;
- foreach my $localpart (@localparts) {
- for ($localpart) {
- if (/^\+$/) {
- if (!$joker_seen) {
- print "\@$maildomain $username\n";
- $joker_seen = $username;
+ if (&warnonce(defined(@{$addresshints{$username}}), "addresshints_$username", "Skipping non-hinted username \"$username\".")) {
+ my @localparthints = @{$addresshints{$username}};
+ my @localparts = grep {s/(.+)@($mailgroup|$maildomain)?$/$1/} @localparthints;
+ foreach my $localpart (@localparts) {
+ for ($localpart) {
+ if (/^\+$/) {
+ if (!$joker_seen) {
+ print "\@$maildomain $username\n";
+ $joker_seen = $username;
+ } else {
+ print "#WARNING: Catch-all for $maildomain already set to $joker_seen!";
+ }
} else {
- print "#WARNING: Catch-all for $maildomain already set to $joker_seen!";
+ print "$localpart\@$maildomain $username\n";
}
- } else {
- print "$localpart\@$maildomain $username\n";
}
}
- $user_seen++;
+ } else {
+ print $post_fallback_text . "\n" if ($post_fallback_text);
}
- print $post_fallback_text . "\n" if ($post_fallback_text && !$user_seen);
print "\n";
}