GNU bug report logs - #36852
27.0.50; ietf-drums-parse-address doesn't handle non-ascii properly

Previous Next

Package: emacs;

Reported by: Štěpán Němec <stepnem <at> gmail.com>

Date: Tue, 30 Jul 2019 09:17:02 UTC

Severity: normal

Tags: fixed

Found in version 27.0.50

Fixed in version 27.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Robert Pluim <rpluim <at> gmail.com>
To: Štěpán Němec <stepnem <at> gmail.com>
Cc: 36852 <at> debbugs.gnu.org
Subject: bug#36852: 27.0.50; ietf-drums-parse-address doesn't handle non-ascii properly
Date: Tue, 30 Jul 2019 11:53:36 +0200
>>>>> On Tue, 30 Jul 2019 11:16:53 +0200, Štěpán Němec <stepnem <at> gmail.com> said:

    Štěpán> ietf-drums-parse-address (AKA mail-header-parse-address) uses
    Štěpán> ietf-drums-atext-token to parse display-name, but the regexp range only
    Štěpán> contains ASCII characters, so e.g. as used in debbugs-gnu-show-reports,
    Štěpán> the following happens:

    Štěpán>   (mail-header-parse-address
    Štěpán>    (decode-coding-string "Áaááá Ůůůůů <aaa <at> example.net>" 'utf-8))

    Štěpán>   ;;=> ("aaa <at> example.net" . "aááá")

    Štěpán> It actually only cares about the first char of a word:

    Štěpán>   (let ((ietf-drums-atext-token "-ÁŮ^a-zA-Z0-9!#$%&'*+/=?_`{|}~"))
    Štěpán>     (mail-header-parse-address
    Štěpán>      (decode-coding-string "Áaááá Ůůůůů <aaa <at> example.net>" 'utf-8)))

    Štěpán>   ;;=> ("aaa <at> example.net" . "Áaááá Ůůůůů")

    Štěpán> I'm not quite sure what the proper fix is, as the ASCII-only thing seems
    Štěpán> to be intentional. Maybe it's just not supposed to be used the way it is
    Štěpán> used in debbugs-gnu.el?

Mail headers are defined to be ascii-only, although as Iʼve just
discovered, gmail undoes Gnus' perfectly formatted RFC 2047 encoding
and replaces it with UTF-8 characters. Bad Google, bad.

Perhaps mail-header-parse-address could just discard the complete
display string if it finds a non-ascii char? That would at least
prevent it from propagating.

Robert




This bug report was last modified 5 years and 249 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.