• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

lib/Email/Address/H09-Jun-2018-681196

t/H09-Jun-2018-1,7311,398

ChangesH A D09-Jun-20181.7 KiB4032

Email-Address-XS.xsH A D09-Jun-201818.2 KiB780621

MANIFESTH A D09-Jun-2018330 1312

META.jsonH A D09-Jun-20181.5 KiB6564

META.ymlH A D09-Jun-2018823 3534

Makefile.PLH A D09-Jun-20181.2 KiB4744

READMEH A D09-Jun-20181.9 KiB5639

dovecot-parser.cH A D09-Jun-201832 KiB1,315933

dovecot-parser.hH A D09-Jun-20181.7 KiB5531

README

1Email-Address-XS
2================
3
4This module implements RFC 5322 parser and formatter of email addresses
5and groups. It parses an input string from email headers which contain
6a list of email addresses or a groups of email addresses (like From,
7To, Cc, Bcc, Reply-To, Sender, ...). Also it can generate a string
8value for those headers from a list of email addresses objects.
9Module is backward compatible with RFC 2822 and RFC 822.
10
11Parser and formatter functionality is implemented in XS and uses
12shared code from Dovecot IMAP server.
13
14It is a drop-in replacement for the Email::Address module which has
15several security issues. E.g. issue CVE-2015-7686 (Algorithmic
16complexity vulnerability) which allows remote attackers to cause
17denial of service, is still present in Email::Address version 1.908.
18
19Email::Address::XS module was created to finally fix CVE-2015-7686.
20
21Existing applications that use Email::Address module could be easily
22switched to Email::Address::XS module. In most cases only changing
23'use Email::Address' to 'use Email::Address::XS' and replacing every
24'Email::Address' occurrence with 'Email::Address::XS' is sufficient.
25
26So unlike Email::Address, this module does not use regular expressions
27for parsing but instead native XS implementation parses input string
28sequentially according to RFC 5322 grammar.
29
30Additionally it has support also for named groups and so can be use
31instead of the Email::Address::List module.
32
33INSTALLATION
34
35To install this module type the following:
36
37   perl Makefile.PL
38   make
39   make test
40   make install
41
42DEPENDENCIES
43
44None
45
46COPYRIGHT AND LICENCE
47
48Copyright (C) 2015-2018 by Pali <pali@cpan.org>
49
50This library is free software; you can redistribute it and/or modify
51it under the same terms as Perl itself, either Perl version 5.6.0 or,
52at your option, any later version of Perl 5 you may have available.
53
54Dovecot parser is licensed under The MIT License and copyrighted by
55Dovecot authors.
56