Your message dated Wed, 12 Dec 2012 09:37:28 +0100 (CET)
with message-id <[email protected]>
and subject line Bummers ...
has caused the Debian Bug report #695632,
regarding alpine: mangles line breaks in plaintext attachments
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
695632: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=695632
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: alpine
Version: 2.02+dfsg-2
Severity: important

Alpine changes thje linebreaks of attached plaintext files to CRLF
before base64-encoding and sending them. This is particularly awesome as
it seems to be a misfeature rather than an arbitrary bug because it
actually fixes this back when asving a plaintext attachment ... or it
does something rather stupid to access plaintext files on disk, who
knows. Either way, data gets corrupted.

Steps to reproduce:

 1. Create some plaintext file - in my case, a diff - with UNIX (LF) line 
endings.
    We call this before.diff .
 2. Send mail to yoursef with alpine and attach before.diff
 3. Open mail in alpine after receiving it, hit V and save the attachment as
    after.diff.
 4. Compare the two files and find that they are identical.
 5. Now open the raw message and copy the base64-encoded block of the attached 
file to
    wire.diff.b64 .
 6. base64 -d wire.diff.b64 >wire.diff
 7. Compare the three files and find that wire.diff has CRLF line endings - 
whoot?

This leads to incompatibility with other mailers and even to data
corruption. What happens if an attached file *is* supposed to have CRLF
line endings? Will they be converted before saving the file?

My best guess is this:

 - alpine reads plaintext files line by line when attaching (which is a bug)
 - alpine defaults to CRLF line endings when handling text data (which is a bug)
 - alpine writes plaintext attachments line by line with system line endings 
(which is a bug)

In most cases, this will not even be noticed. But especially for sending diffs 
it can be fatal.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.6-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/mksh

Versions of packages alpine depends on:
ii  libc6             2.13-37
ii  libgssapi-krb5-2  1.10.1+dfsg-3
ii  libkrb5-3         1.10.1+dfsg-3
ii  libldap-2.4-2     2.4.31-1
ii  libpam0g          1.1.3-7.1
ii  libssl1.0.0       1.0.1c-4
ii  libtinfo5         5.9-10
ii  mlock             8:2007f~dfsg-2

Versions of packages alpine recommends:
ii  alpine-doc  2.02+dfsg-2

Versions of packages alpine suggests:
ii  aspell                          0.60.7~20110707-1
ii  postfix [mail-transport-agent]  2.9.3-2.1

-- no debconf information

--- End Message ---
--- Begin Message ---
... I *really* should not be using the public internet this morning.

-- 
* mirabilos is handling my post-1990 smartphone *
<mirabilos> Aaah, it vibrates! Wherefor art thou, daemonic device??

PGP fingerprint: 2086 9A4B E67D 1DCD FFF6  F6C1 59FC 8E1D 6F2A 8001

--- End Message ---

Reply via email to