in reply to MIME::Lite truncating attachment

Did you try to change $msg->send() to $msg->print() ? This might give you a hint whether the error occurs while constructing or sending the message.

I tested your sub (on linux, without sending the email, just with $msg->print(), some sample data and on the command line instead of on a web server) and it worked fine, nothing got truncated.

I had Mime::Lite version 3.021 and got the following attachement header:

MIME-Version: 1.0 Content-Disposition: attachment Content-Length: 1459 Content-Transfer-Encoding: binary Content-Type: text/csv; name="survey.csv" X-Mailer: MIME::Lite 3.021 (F2.76; T1.24; A2.03; B3.07_01; Q3.07) Date: Tue, 1 Jul 2008 03:53:31 +0200