Your message dated Mon, 02 May 2016 01:46:10 +0000
with message-id <[email protected]>
and subject line Bug#818709: Removed package(s) from unstable
has caused the Debian Bug report #660160,
regarding php-mail-mimedecode: _decodeHeader is recursive
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.)


-- 
660160: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=660160
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: php-mail-mimedecode
Version: 1.5.0-3
Severity: normal


_decodeHeader is recursive in nature re-parsing its output until no
more is found. this leads to some headers that contain encoded versions 
of what looks like RFC2047 data to be misrepresented,

EG: "test =?us-ascii?B?PT9VVEYtOD9RP3h4Pz0=?= 123"
should decode to "test =?UTF-8?Q?xx?= 123"
but does not.

it also folds all character sets together losing some of the
information it it meant to retrieve, 

here is a corrected version which consistently outputs utf-8:


function _decodeHeader($input) /* undo rfc2047 encoding */
    {
        $output='';
        // Remove white space between encoded-words
        $input = preg_replace('/(=\?[^?]+\?(q|b)\?[^?]*\?=)(\s)+=\?/i', '\1=?', 
$input);

        // For each encoded-word...
        while (preg_match('/(=\?([^?]+)\?(q|b)\?([^?]*)\?=)/i', $input, 
$matches)) {

            $encoded  = $matches[1];
            $charset  = $matches[2];
            $encoding = $matches[3];
            $text     = $matches[4];

            switch (strtolower($encoding)) {
                case 'b':
                    $text = base64_decode($text);
                    break;

                case 'q':
                    $text = str_replace('_', ' ', $text);
                    preg_match_all('/=([a-f0-9]{2})/i', $text, $matches);
                    foreach($matches[1] as $value)
                        $text = str_replace('='.$value, chr(hexdec($value)), 
$text);
                    break;
            }

            $text= iconv($charset,'UTF-8',$text); // you may not want this?

            $pos=strpos($input,$encoded);
            $len=strlen($encoded);
            $output.=substr($input,0,$pos).$text;
            $input=substr($input,$pos+$len);
        }
        $output .= $input;
        return $output;
    }


-- System Information:
Debian Release: 6.0.4
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_NZ.UTF-8, LC_CTYPE=en_NZ.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages php-mail-mimedecode depends on:
ii  php-pear                5.3.3-7+squeeze6 PEAR - PHP Extension and Applicati

php-mail-mimedecode recommends no packages.

php-mail-mimedecode suggests no packages.

-- debconf-show failed



--- End Message ---
--- Begin Message ---
Version: 1.5.5-3+rm

Dear submitter,

as the package php-mail-mimedecode has just been removed from the Debian archive
unstable we hereby close the associated bug reports.  We are sorry
that we couldn't deal with your issue properly.

For details on the removal, please see https://bugs.debian.org/818709

The version of this package that was in Debian prior to this removal
can still be found using http://snapshot.debian.org/.

This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
[email protected].

Debian distribution maintenance software
pp.
Scott Kitterman (the ftpmaster behind the curtain)

--- End Message ---

Reply via email to