Email header:
To: =?utf-8?Q?a=40a?= <test@example.com>
code:
email, err := letters.ParseEmail(r)
if err != nil {
log.Fatal(err)
}
Panic when header contains a=40a
output
letters.ParseEmail: cannot parse headers: letters.parsers.parseHeaders: cannot parse To header: letters.parsers.parseAddressListHeader: cannot parse address list header "=?utf-8?Q?a=40a?= <test@example.com>": mail: expected comma
mime decode test:
name := "=?utf-8?Q?=40?="
header, err := new(mime.WordDecoder).DecodeHeader(name)
if err != nil {
panic(err)
}
fmt.Println(header)
// output: a@a