aboutsummaryrefslogtreecommitdiffstats
path: root/misc/mklist/mklist.pl
diff options
context:
space:
mode:
Diffstat (limited to 'misc/mklist/mklist.pl')
-rwxr-xr-xmisc/mklist/mklist.pl9
1 files changed, 6 insertions, 3 deletions
diff --git a/misc/mklist/mklist.pl b/misc/mklist/mklist.pl
index ac5f526..3223c45 100755
--- a/misc/mklist/mklist.pl
+++ b/misc/mklist/mklist.pl
@@ -29,6 +29,8 @@ use Config::Auto;
use lib 'lib';
use Mail::GnuPG;
use MIME::Parser;
+use MIME::QuotedPrint;
+use Net::IDN::Encode qw/email_to_ascii/;
use Fripost::Schema;
my $transport = shift;
@@ -92,9 +94,10 @@ my ($list, $owner, $password);
# address.
my @body = grep { !/^\s*$/ }
(split /\s*\n\s*/, $msg->parts(0)->stringify_body);
- $list = shift @body;
- $owner = shift @body;
- $password = shift @body;
+ $list = decode_qp(shift @body);
+ Encode::_utf8_on($list); $list = email_to_ascii($list);
+ $owner = decode_qp(shift @body);
+ $password = decode_qp(shift @body);
# TODO: idealy the email would be encrypted (at least for schleuder),
# since it contains a password.
}