diff options
author | Matthias Andreas Benkard <code@mail.matthias.benkard.de> | 2012-10-03 18:59:16 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <code@mail.matthias.benkard.de> | 2012-10-03 18:59:16 +0200 |
commit | 08b9ee11fe5e5a54af866a061c9e8d7782cac3c7 (patch) | |
tree | 5715109aa14dee38c368118abec0495d8d3e91fd /www/common.pl | |
parent | 72abba77573c3583dc373526f6ce86b895eacc6d (diff) |
Make /etc/aliases optional. Add configurability through setup.pl.
Diffstat (limited to 'www/common.pl')
-rw-r--r-- | www/common.pl | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/www/common.pl b/www/common.pl new file mode 100644 index 0000000..7590fba --- /dev/null +++ b/www/common.pl @@ -0,0 +1,24 @@ +#! /usr/bin/env perl +# Copyright 2012, Matthias Andreas Benkard <code@mail.matthias.benkard.de>. + +use common::sense; +#use Modern::Perl 2011; +use Modern::Perl; + +use Mail::ExpandAliases; + + +sub email_users($$) { + ($config, $email) = @_; + my $alias; + if ($email =~ /^(.*?)@/) { $alias = $1; } + my $aliases_file = $config->{aliases}; + if (not ($aliases_file eq ".")) { + my $aliases = Mail::ExpandAliases->new($aliases_file); + my $session_user = $session->param('user'); + my $email_users = $aliases->expand($alias) or die "User not found"; + return @$email_users; + } else { + return ($alias); + } +} |