sisimai 4.21.1-java → 4.22.0-java
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sisimai might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/ANALYTICAL-PRECISION +56 -56
- data/ChangeLog.md +16 -0
- data/Developers.mk +15 -33
- data/LICENSE +1 -1
- data/README-JA.md +11 -11
- data/README.md +11 -11
- data/fig/sisimai-architecture.png +0 -0
- data/lib/sisimai.rb +4 -4
- data/lib/sisimai/address.rb +254 -5
- data/lib/sisimai/arf.rb +6 -6
- data/lib/sisimai/bite.rb +37 -0
- data/lib/sisimai/bite/email.rb +53 -0
- data/lib/sisimai/bite/email/activehunter.rb +124 -0
- data/lib/sisimai/bite/email/amazonses.rb +247 -0
- data/lib/sisimai/bite/email/amazonworkmail.rb +192 -0
- data/lib/sisimai/bite/email/aol.rb +208 -0
- data/lib/sisimai/bite/email/apachejames.rb +169 -0
- data/lib/sisimai/bite/email/bigfoot.rb +207 -0
- data/lib/sisimai/bite/email/biglobe.rb +148 -0
- data/lib/sisimai/bite/email/courier.rb +265 -0
- data/lib/sisimai/bite/email/domino.rb +174 -0
- data/lib/sisimai/bite/email/einsundeins.rb +143 -0
- data/lib/sisimai/bite/email/exchange2003.rb +284 -0
- data/lib/sisimai/bite/email/exchange2007.rb +178 -0
- data/lib/sisimai/bite/email/exim.rb +522 -0
- data/lib/sisimai/bite/email/ezweb.rb +260 -0
- data/lib/sisimai/bite/email/facebook.rb +274 -0
- data/lib/sisimai/bite/email/gmx.rb +167 -0
- data/lib/sisimai/bite/email/google.rb +320 -0
- data/lib/sisimai/bite/email/gsuite.rb +273 -0
- data/lib/sisimai/bite/email/imailserver.rb +181 -0
- data/lib/sisimai/bite/email/interscanmss.rb +146 -0
- data/lib/sisimai/bite/email/kddi.rb +166 -0
- data/lib/sisimai/bite/email/mailfoundry.rb +133 -0
- data/lib/sisimai/bite/email/mailmarshalsmtp.rb +173 -0
- data/lib/sisimai/bite/email/mailru.rb +271 -0
- data/lib/sisimai/bite/email/mcafee.rb +169 -0
- data/lib/sisimai/bite/email/messagelabs.rb +213 -0
- data/lib/sisimai/bite/email/messagingserver.rb +206 -0
- data/lib/sisimai/bite/email/mfilter.rb +165 -0
- data/lib/sisimai/bite/email/mxlogic.rb +253 -0
- data/lib/sisimai/bite/email/notes.rb +181 -0
- data/lib/sisimai/bite/email/office365.rb +262 -0
- data/lib/sisimai/bite/email/opensmtpd.rb +192 -0
- data/lib/sisimai/bite/email/outlook.rb +207 -0
- data/lib/sisimai/bite/email/postfix.rb +310 -0
- data/lib/sisimai/bite/email/qmail.rb +304 -0
- data/lib/sisimai/bite/email/receivingses.rb +221 -0
- data/lib/sisimai/bite/email/sendgrid.rb +223 -0
- data/lib/sisimai/bite/email/sendmail.rb +290 -0
- data/lib/sisimai/bite/email/surfcontrol.rb +162 -0
- data/lib/sisimai/bite/email/userdefined.rb +129 -0
- data/lib/sisimai/bite/email/v5sendmail.rb +208 -0
- data/lib/sisimai/bite/email/verizon.rb +265 -0
- data/lib/sisimai/bite/email/x1.rb +124 -0
- data/lib/sisimai/bite/email/x2.rb +125 -0
- data/lib/sisimai/bite/email/x3.rb +141 -0
- data/lib/sisimai/bite/email/x4.rb +325 -0
- data/lib/sisimai/bite/email/x5.rb +178 -0
- data/lib/sisimai/bite/email/yahoo.rb +148 -0
- data/lib/sisimai/bite/email/yandex.rb +204 -0
- data/lib/sisimai/bite/email/zoho.rb +167 -0
- data/lib/sisimai/bite/json.rb +38 -0
- data/lib/sisimai/bite/json/amazonses.rb +255 -0
- data/lib/sisimai/bite/json/sendgrid.rb +79 -0
- data/lib/sisimai/ced.rb +30 -6
- data/lib/sisimai/data.rb +5 -5
- data/lib/sisimai/message.rb +6 -6
- data/lib/sisimai/message/email.rb +12 -11
- data/lib/sisimai/message/json.rb +20 -19
- data/lib/sisimai/msp.rb +15 -3
- data/lib/sisimai/mta.rb +15 -3
- data/lib/sisimai/order.rb +1 -1
- data/lib/sisimai/order/email.rb +113 -119
- data/lib/sisimai/order/json.rb +11 -10
- data/lib/sisimai/reason.rb +5 -4
- data/lib/sisimai/reason/policyviolation.rb +64 -0
- data/lib/sisimai/reason/securityerror.rb +13 -23
- data/lib/sisimai/reason/spamdetected.rb +1 -0
- data/lib/sisimai/reason/syntaxerror.rb +1 -0
- data/lib/sisimai/reason/virusdetected.rb +56 -0
- data/lib/sisimai/rfc3464.rb +8 -8
- data/lib/sisimai/rfc3834.rb +2 -2
- data/lib/sisimai/rfc5322.rb +1 -1
- data/lib/sisimai/skeleton.rb +1 -1
- data/lib/sisimai/smtp/error.rb +3 -3
- data/lib/sisimai/smtp/status.rb +26 -24
- data/lib/sisimai/version.rb +1 -1
- data/set-of-emails/README.md +1 -0
- data/set-of-emails/{jsonapi/ced-us-amazonses-01.json → jsonobj/json-amazonses-01.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-amazonses-02.json → jsonobj/json-amazonses-02.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-amazonses-03.json → jsonobj/json-amazonses-03.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-amazonses-04.json → jsonobj/json-amazonses-04.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-amazonses-05.json → jsonobj/json-amazonses-05.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-01.json → jsonobj/json-sendgrid-01.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-02.json → jsonobj/json-sendgrid-02.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-03.json → jsonobj/json-sendgrid-03.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-04.json → jsonobj/json-sendgrid-04.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-05.json → jsonobj/json-sendgrid-05.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-06.json → jsonobj/json-sendgrid-06.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-07.json → jsonobj/json-sendgrid-07.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-08.json → jsonobj/json-sendgrid-08.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-09.json → jsonobj/json-sendgrid-09.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-10.json → jsonobj/json-sendgrid-10.json} +0 -0
- data/set-of-emails/{jsonapi/ced-us-sendgrid-11.json → jsonobj/json-sendgrid-11.json} +0 -0
- data/set-of-emails/maildir/bsd/README.md +25 -17
- data/set-of-emails/maildir/bsd/{mta-activehunter-01.eml → email-activehunter-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-activehunter-02.eml → email-activehunter-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-01.eml → email-amazonses-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-02.eml → email-amazonses-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-03.eml → email-amazonses-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-04.eml → email-amazonses-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-05.eml → email-amazonses-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-06.eml → email-amazonses-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-07.eml → email-amazonses-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonses-08.eml → email-amazonses-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{ced-us-amazonses-01.eml → email-amazonses-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{ced-us-amazonses-02.eml → email-amazonses-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{ced-us-amazonses-03.eml → email-amazonses-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{ced-us-amazonses-04.eml → email-amazonses-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{ced-us-amazonses-05.eml → email-amazonses-13.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-01.eml → email-amazonworkmail-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-02.eml → email-amazonworkmail-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-03.eml → email-amazonworkmail-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-04.eml → email-amazonworkmail-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-05.eml → email-amazonworkmail-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-06.eml → email-amazonworkmail-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-amazonworkmail-07.eml → email-amazonworkmail-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-01.eml → email-aol-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-02.eml → email-aol-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-03.eml → email-aol-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-04.eml → email-aol-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-05.eml → email-aol-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-aol-06.eml → email-aol-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-apachejames-01.eml → email-apachejames-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-bigfoot-01.eml → email-bigfoot-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-biglobe-01.eml → email-biglobe-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-courier-01.eml → email-courier-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-courier-02.eml → email-courier-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-courier-03.eml → email-courier-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-courier-04.eml → email-courier-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-domino-01.eml → email-domino-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-domino-02.eml → email-domino-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-de-einsundeins-01.eml → email-einsundeins-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-01.eml → email-exchange2003-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-02.eml → email-exchange2003-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-03.eml → email-exchange2003-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-04.eml → email-exchange2003-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-05.eml → email-exchange2003-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2003-06.eml → email-exchange2003-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2007-01.eml → email-exchange2007-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2007-02.eml → email-exchange2007-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exchange2007-03.eml → email-exchange2007-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-01.eml → email-exim-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-02.eml → email-exim-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-03.eml → email-exim-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-04.eml → email-exim-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-05.eml → email-exim-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-06.eml → email-exim-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-07.eml → email-exim-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-08.eml → email-exim-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-09.eml → email-exim-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-10.eml → email-exim-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-11.eml → email-exim-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-12.eml → email-exim-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-13.eml → email-exim-13.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-14.eml → email-exim-14.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-15.eml → email-exim-15.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-16.eml → email-exim-16.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-17.eml → email-exim-17.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-18.eml → email-exim-18.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-19.eml → email-exim-19.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-20.eml → email-exim-20.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-21.eml → email-exim-21.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-22.eml → email-exim-22.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-23.eml → email-exim-23.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-24.eml → email-exim-24.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-25.eml → email-exim-25.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-26.eml → email-exim-26.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-27.eml → email-exim-27.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-28.eml → email-exim-28.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-29.eml → email-exim-29.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-exim-30.eml → email-exim-30.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-01.eml → email-ezweb-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-02.eml → email-ezweb-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-03.eml → email-ezweb-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-04.eml → email-ezweb-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-05.eml → email-ezweb-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-ezweb-06.eml → email-ezweb-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-facebook-01.eml → email-facebook-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-facebook-02.eml → email-facebook-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-de-gmx-01.eml → email-gmx-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-de-gmx-02.eml → email-gmx-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-de-gmx-03.eml → email-gmx-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-de-gmx-04.eml → email-gmx-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-01.eml → email-google-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-02.eml → email-google-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-03.eml → email-google-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-04.eml → email-google-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-05.eml → email-google-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-06.eml → email-google-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-07.eml → email-google-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-08.eml → email-google-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-09.eml → email-google-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-10.eml → email-google-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-11.eml → email-google-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-12.eml → email-google-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-13.eml → email-google-13.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-14.eml → email-google-14.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-15.eml → email-google-15.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-16.eml → email-google-16.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-google-17.eml → email-google-17.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-01.eml → email-gsuite-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-02.eml → email-gsuite-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-03.eml → email-gsuite-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-04.eml → email-gsuite-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-05.eml → email-gsuite-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-06.eml → email-gsuite-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-gsuite-07.eml → email-gsuite-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-01.eml → email-imailserver-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-02.eml → email-imailserver-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-03.eml → email-imailserver-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-04.eml → email-imailserver-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-05.eml → email-imailserver-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-imailserver-06.eml → email-imailserver-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-interscanmss-01.eml → email-interscanmss-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-interscanmss-02.eml → email-interscanmss-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-kddi-01.eml → email-kddi-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-kddi-02.eml → email-kddi-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-jp-kddi-03.eml → email-kddi-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mailfoundry-01.eml → email-mailfoundry-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mailfoundry-02.eml → email-mailfoundry-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mailmarshalsmtp-01.eml → email-mailmarshalsmtp-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-01.eml → email-mailru-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-02.eml → email-mailru-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-03.eml → email-mailru-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-04.eml → email-mailru-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-05.eml → email-mailru-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-mailru-06.eml → email-mailru-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mcafee-01.eml → email-mcafee-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mcafee-02.eml → email-mcafee-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mcafee-03.eml → email-mcafee-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-uk-messagelabs-01.eml → email-messagelabs-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-01.eml → email-messagingserver-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-02.eml → email-messagingserver-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-03.eml → email-messagingserver-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-04.eml → email-messagingserver-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-05.eml → email-messagingserver-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-06.eml → email-messagingserver-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-messagingserver-07.eml → email-messagingserver-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mfilter-01.eml → email-mfilter-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mfilter-02.eml → email-mfilter-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mfilter-03.eml → email-mfilter-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mxlogic-01.eml → email-mxlogic-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mxlogic-02.eml → email-mxlogic-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-mxlogic-03.eml → email-mxlogic-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-notes-01.eml → email-notes-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-notes-02.eml → email-notes-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-notes-03.eml → email-notes-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-notes-04.eml → email-notes-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-office365-01.eml → email-office365-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-office365-02.eml → email-office365-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-01.eml → email-opensmtpd-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-02.eml → email-opensmtpd-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-03.eml → email-opensmtpd-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-04.eml → email-opensmtpd-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-05.eml → email-opensmtpd-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-opensmtpd-06.eml → email-opensmtpd-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-01.eml → email-outlook-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-02.eml → email-outlook-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-03.eml → email-outlook-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-04.eml → email-outlook-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-05.eml → email-outlook-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-06.eml → email-outlook-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-outlook-07.eml → email-outlook-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-01.eml → email-postfix-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-02.eml → email-postfix-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-03.eml → email-postfix-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-04.eml → email-postfix-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-05.eml → email-postfix-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-06.eml → email-postfix-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-07.eml → email-postfix-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-08.eml → email-postfix-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-09.eml → email-postfix-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-10.eml → email-postfix-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-11.eml → email-postfix-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-12.eml → email-postfix-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-13.eml → email-postfix-13.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-14.eml → email-postfix-14.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-15.eml → email-postfix-15.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-16.eml → email-postfix-16.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-17.eml → email-postfix-17.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-18.eml → email-postfix-18.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-19.eml → email-postfix-19.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-20.eml → email-postfix-20.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-21.eml → email-postfix-21.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-22.eml → email-postfix-22.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-23.eml → email-postfix-23.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-24.eml → email-postfix-24.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-25.eml → email-postfix-25.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-26.eml → email-postfix-26.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-27.eml → email-postfix-27.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-28.eml → email-postfix-28.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-postfix-29.eml → email-postfix-29.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-01.eml → email-qmail-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-02.eml → email-qmail-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-03.eml → email-qmail-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-04.eml → email-qmail-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-05.eml → email-qmail-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-06.eml → email-qmail-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-07.eml → email-qmail-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-08.eml → email-qmail-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-09.eml → email-qmail-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-10.eml → email-qmail-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-11.eml → email-qmail-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-qmail-12.eml → email-qmail-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-01.eml → email-receivingses-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-02.eml → email-receivingses-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-03.eml → email-receivingses-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-04.eml → email-receivingses-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-05.eml → email-receivingses-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-06.eml → email-receivingses-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-receivingses-07.eml → email-receivingses-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-sendgrid-01.eml → email-sendgrid-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-sendgrid-02.eml → email-sendgrid-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-sendgrid-03.eml → email-sendgrid-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-01.eml → email-sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-02.eml → email-sendmail-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-03.eml → email-sendmail-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-04.eml → email-sendmail-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-05.eml → email-sendmail-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-06.eml → email-sendmail-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-07.eml → email-sendmail-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-08.eml → email-sendmail-08.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-09.eml → email-sendmail-09.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-10.eml → email-sendmail-10.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-11.eml → email-sendmail-11.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-12.eml → email-sendmail-12.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-13.eml → email-sendmail-13.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-14.eml → email-sendmail-14.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-15.eml → email-sendmail-15.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-16.eml → email-sendmail-16.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-17.eml → email-sendmail-17.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-18.eml → email-sendmail-18.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-19.eml → email-sendmail-19.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-20.eml → email-sendmail-20.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-21.eml → email-sendmail-21.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-22.eml → email-sendmail-22.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-23.eml → email-sendmail-23.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-24.eml → email-sendmail-24.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-25.eml → email-sendmail-25.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-26.eml → email-sendmail-26.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-27.eml → email-sendmail-27.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-28.eml → email-sendmail-28.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-29.eml → email-sendmail-29.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-30.eml → email-sendmail-30.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-31.eml → email-sendmail-31.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-32.eml → email-sendmail-32.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-33.eml → email-sendmail-33.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-34.eml → email-sendmail-34.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-35.eml → email-sendmail-35.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-36.eml → email-sendmail-36.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-37.eml → email-sendmail-37.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-38.eml → email-sendmail-38.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-39.eml → email-sendmail-39.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-40.eml → email-sendmail-40.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-41.eml → email-sendmail-41.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-42.eml → email-sendmail-42.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-sendmail-43.eml → email-sendmail-43.eml} +0 -0
- data/set-of-emails/maildir/bsd/email-sendmail-44.eml +67 -0
- data/set-of-emails/maildir/bsd/{mta-surfcontrol-01.eml → email-surfcontrol-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-surfcontrol-02.eml → email-surfcontrol-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-surfcontrol-03.eml → email-surfcontrol-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-01.eml → email-v5sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-02.eml → email-v5sendmail-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-03.eml → email-v5sendmail-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-04.eml → email-v5sendmail-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-05.eml → email-v5sendmail-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-06.eml → email-v5sendmail-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-v5sendmail-07.eml → email-v5sendmail-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-verizon-01.eml → email-verizon-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-verizon-02.eml → email-verizon-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x1-01.eml → email-x1-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x1-02.eml → email-x1-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x2-01.eml → email-x2-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x2-02.eml → email-x2-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x2-03.eml → email-x2-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x2-04.eml → email-x2-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x2-05.eml → email-x2-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x3-01.eml → email-x3-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x3-02.eml → email-x3-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x3-03.eml → email-x3-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x3-04.eml → email-x3-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-01.eml → email-x4-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-02.eml → email-x4-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-03.eml → email-x4-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-04.eml → email-x4-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-05.eml → email-x4-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-06.eml → email-x4-06.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x4-07.eml → email-x4-07.eml} +0 -0
- data/set-of-emails/maildir/bsd/{mta-x5-01.eml → email-x5-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-yahoo-01.eml → email-yahoo-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-yahoo-02.eml → email-yahoo-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-yahoo-03.eml → email-yahoo-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-yahoo-04.eml → email-yahoo-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-yahoo-05.eml → email-yahoo-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-yandex-01.eml → email-yandex-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-yandex-02.eml → email-yandex-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-ru-yandex-03.eml → email-yandex-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-zoho-01.eml → email-zoho-01.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-zoho-02.eml → email-zoho-02.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-zoho-03.eml → email-zoho-03.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-zoho-04.eml → email-zoho-04.eml} +0 -0
- data/set-of-emails/maildir/bsd/{msp-us-zoho-05.eml → email-zoho-05.eml} +0 -0
- data/set-of-emails/maildir/bsd/rfc3464-31.eml +141 -0
- data/set-of-emails/maildir/bsd/rfc3464-32.eml +158 -0
- data/set-of-emails/maildir/dos/{mta-activehunter-01.eml → email-activehunter-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-amazonses-01.eml → email-amazonses-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-amazonworkmail-01.eml → email-amazonworkmail-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-aol-01.eml → email-aol-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-apachejames-01.eml → email-apachejames-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-bigfoot-01.eml → email-bigfoot-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-jp-biglobe-01.eml → email-biglobe-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-courier-01.eml → email-courier-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-domino-01.eml → email-domino-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-de-einsundeins-01.eml → email-einsundeins-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-exchange-01.eml → email-exchange-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-exchange2003-01.eml → email-exchange2003-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-exchange2007-01.eml → email-exchange2007-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-exim-01.eml → email-exim-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-jp-ezweb-01.eml → email-ezweb-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-facebook-01.eml → email-facebook-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-de-gmx-01.eml → email-gmx-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-google-01.eml → email-google-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-imailserver-01.eml → email-imailserver-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-interscanmss-01.eml → email-interscanmss-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-jp-kddi-01.eml → email-kddi-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-mailfoundry-01.eml → email-mailfoundry-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-mailmarshalsmtp-01.eml → email-mailmarshalsmtp-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-ru-mailru-01.eml → email-mailru-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-mcafee-01.eml → email-mcafee-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-uk-messagelabs-01.eml → email-messagelabs-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-messagingserver-01.eml → email-messagingserver-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-mfilter-01.eml → email-mfilter-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-mxlogic-01.eml → email-mxlogic-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-notes-01.eml → email-notes-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-office365-01.eml → email-office365-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-opensmtpd-01.eml → email-opensmtpd-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-outlook-01.eml → email-outlook-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-postfix-01.eml → email-postfix-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-qmail-01.eml → email-qmail-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-receivingses-01.eml → email-receivingses-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-sendgrid-01.eml → email-sendgrid-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-sendmail-01.eml → email-sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-surfcontrol-01.eml → email-surfcontrol-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-v5sendmail-01.eml → email-v5sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-verizon-01.eml → email-verizon-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-x1-01.eml → email-x1-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-x2-01.eml → email-x2-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-x3-01.eml → email-x3-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-x4-01.eml → email-x4-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{mta-x5-01.eml → email-x5-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-yahoo-01.eml → email-yahoo-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-ru-yandex-01.eml → email-yandex-01.eml} +0 -0
- data/set-of-emails/maildir/dos/{msp-us-zoho-01.eml → email-zoho-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-activehunter-01.eml → email-activehunter-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-amazonses-01.eml → email-amazonses-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-amazonworkmail-01.eml → email-amazonworkmail-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-aol-01.eml → email-aol-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-apachejames-01.eml → email-apachejames-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-bigfoot-01.eml → email-bigfoot-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-jp-biglobe-01.eml → email-biglobe-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-courier-01.eml → email-courier-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-domino-01.eml → email-domino-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-de-einsundeins-01.eml → email-einsundeins-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-exchange-01.eml → email-exchange-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-exchange2003-01.eml → email-exchange2003-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-exchange2007-01.eml → email-exchange2007-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-exim-01.eml → email-exim-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-jp-ezweb-01.eml → email-ezweb-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-facebook-01.eml → email-facebook-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-de-gmx-01.eml → email-gmx-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-google-01.eml → email-google-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-imailserver-01.eml → email-imailserver-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-interscanmss-01.eml → email-interscanmss-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-jp-kddi-01.eml → email-kddi-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-mailfoundry-01.eml → email-mailfoundry-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-mailmarshalsmtp-01.eml → email-mailmarshalsmtp-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-ru-mailru-01.eml → email-mailru-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-mcafee-01.eml → email-mcafee-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-uk-messagelabs-01.eml → email-messagelabs-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-messagingserver-01.eml → email-messagingserver-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-mfilter-01.eml → email-mfilter-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-mxlogic-01.eml → email-mxlogic-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-notes-01.eml → email-notes-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-office365-01.eml → email-office365-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-opensmtpd-01.eml → email-opensmtpd-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-outlook-01.eml → email-outlook-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-postfix-01.eml → email-postfix-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-qmail-01.eml → email-qmail-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-receivingses-01.eml → email-receivingses-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-sendgrid-01.eml → email-sendgrid-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-sendmail-01.eml → email-sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-surfcontrol-01.eml → email-surfcontrol-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-v5sendmail-01.eml → email-v5sendmail-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-verizon-01.eml → email-verizon-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-x1-01.eml → email-x1-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-x2-01.eml → email-x2-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-x3-01.eml → email-x3-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-x4-01.eml → email-x4-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{mta-x5-01.eml → email-x5-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-yahoo-01.eml → email-yahoo-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-ru-yandex-01.eml → email-yandex-01.eml} +0 -0
- data/set-of-emails/maildir/mac/{msp-us-zoho-01.eml → email-zoho-01.eml} +0 -0
- metadata +483 -478
- data/lib/sisimai/ced/us/amazonses.rb +0 -269
- data/lib/sisimai/ced/us/sendgrid.rb +0 -86
- data/lib/sisimai/msp/de/einsundeins.rb +0 -146
- data/lib/sisimai/msp/de/gmx.rb +0 -170
- data/lib/sisimai/msp/jp/biglobe.rb +0 -150
- data/lib/sisimai/msp/jp/ezweb.rb +0 -262
- data/lib/sisimai/msp/jp/kddi.rb +0 -168
- data/lib/sisimai/msp/ru/mailru.rb +0 -274
- data/lib/sisimai/msp/ru/yandex.rb +0 -207
- data/lib/sisimai/msp/uk/messagelabs.rb +0 -216
- data/lib/sisimai/msp/us/amazonses.rb +0 -237
- data/lib/sisimai/msp/us/amazonworkmail.rb +0 -195
- data/lib/sisimai/msp/us/aol.rb +0 -211
- data/lib/sisimai/msp/us/bigfoot.rb +0 -210
- data/lib/sisimai/msp/us/facebook.rb +0 -277
- data/lib/sisimai/msp/us/google.rb +0 -323
- data/lib/sisimai/msp/us/gsuite.rb +0 -277
- data/lib/sisimai/msp/us/office365.rb +0 -264
- data/lib/sisimai/msp/us/outlook.rb +0 -209
- data/lib/sisimai/msp/us/receivingses.rb +0 -224
- data/lib/sisimai/msp/us/sendgrid.rb +0 -226
- data/lib/sisimai/msp/us/verizon.rb +0 -267
- data/lib/sisimai/msp/us/yahoo.rb +0 -150
- data/lib/sisimai/msp/us/zoho.rb +0 -170
- data/lib/sisimai/mta/activehunter.rb +0 -126
- data/lib/sisimai/mta/apachejames.rb +0 -172
- data/lib/sisimai/mta/courier.rb +0 -268
- data/lib/sisimai/mta/domino.rb +0 -177
- data/lib/sisimai/mta/exchange2003.rb +0 -287
- data/lib/sisimai/mta/exchange2007.rb +0 -182
- data/lib/sisimai/mta/exim.rb +0 -525
- data/lib/sisimai/mta/imailserver.rb +0 -182
- data/lib/sisimai/mta/interscanmss.rb +0 -149
- data/lib/sisimai/mta/mailfoundry.rb +0 -137
- data/lib/sisimai/mta/mailmarshalsmtp.rb +0 -176
- data/lib/sisimai/mta/mcafee.rb +0 -172
- data/lib/sisimai/mta/messagingserver.rb +0 -208
- data/lib/sisimai/mta/mfilter.rb +0 -167
- data/lib/sisimai/mta/mxlogic.rb +0 -255
- data/lib/sisimai/mta/notes.rb +0 -183
- data/lib/sisimai/mta/opensmtpd.rb +0 -195
- data/lib/sisimai/mta/postfix.rb +0 -312
- data/lib/sisimai/mta/qmail.rb +0 -307
- data/lib/sisimai/mta/sendmail.rb +0 -293
- data/lib/sisimai/mta/surfcontrol.rb +0 -164
- data/lib/sisimai/mta/userdefined.rb +0 -132
- data/lib/sisimai/mta/v5sendmail.rb +0 -210
- data/lib/sisimai/mta/x1.rb +0 -127
- data/lib/sisimai/mta/x2.rb +0 -128
- data/lib/sisimai/mta/x3.rb +0 -144
- data/lib/sisimai/mta/x4.rb +0 -328
- data/lib/sisimai/mta/x5.rb +0 -181
- data/set-of-emails/maildir/bsd/mta-README.md +0 -319
- data/set-of-emails/maildir/dos/ced-us-amazonses-01.eml +0 -47
- data/set-of-emails/maildir/mac/ced-us-amazonses-01.eml +0 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 380a919d6366c40fb138073540ad3c0402d24519
|
4
|
+
data.tar.gz: 4563a380fc2bc772525479279738b28982dd4771
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 14580ebfd9a5908ca0da1625a8a2c71515a04383a25a1ae338cf3c2bd8c90d7a13354d28c4d6d80c14f789e1be5678d28f451ec27915adc6118ad105ca030481
|
7
|
+
data.tar.gz: 511a8644c47d1c5d3a291b4012383361b9c4e32054a34d0240f404e99df9cbc53767443054dc9c1c6790d3ddbf56c468ed0860bb929fb3eb322eb129d5070dbc
|
data/ANALYTICAL-PRECISION
CHANGED
@@ -1,60 +1,60 @@
|
|
1
1
|
bounceHammer 2.7.13p3
|
2
2
|
MTA MODULE NAME CAN PARSE RATIO NOTES
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
3
|
+
--------------------------------------------------------------------------------
|
4
|
+
Email::Activehunter ..... 0/0014 0.0000 TransWARE Active!hunter
|
5
|
+
Email::AmazonSES ........ 22/0031 0.7097 Amazon SES(Sending): http://aws.amazon.com/ses/
|
6
|
+
Email::AmazonWorkMail ... 8/0012 0.6667 Amazon WorkMail: https://aws.amazon.com/workmail/
|
7
|
+
Email::Aol .............. 20/0023 0.8696 Aol Mail: http://www.aol.com
|
8
|
+
Email::ApacheJames ...... 0/0006 0.0000 Java Apache Mail Enterprise Server
|
9
|
+
Email::Bigfoot .......... 2/0002 1.0000 Bigfoot: http://www.bigfoot.com
|
10
|
+
Email::Biglobe .......... 5/0007 0.7143 BIGLOBE: http://www.biglobe.ne.jp
|
11
|
+
Email::Courier .......... 14/0016 0.8750 Courier MTA
|
12
|
+
Email::Domino ........... 6/0015 0.4000 IBM Domino Server
|
13
|
+
Email::EZweb ............ 130/0125 1.0000 au EZweb: http://www.au.kddi.com/mobile/
|
14
|
+
Email::EinsUndEins ...... 0/0003 0.0000 1&1: http://www.1and1.de
|
15
|
+
Email::Exchange2003 ..... 1/0051 0.0196 Microsoft Exchange Server 2003
|
16
|
+
Email::Exchange2007 ..... 6/0007 0.8571 Microsoft Exchange Server 2007
|
17
|
+
Email::Exim ............. 146/0176 0.8295 Exim
|
18
|
+
Email::Facebook ......... 3/0003 1.0000 Facebook: https://www.facebook.com
|
19
|
+
Email::GMX .............. 0/0010 0.0000 GMX: http://www.gmx.net
|
20
|
+
Email::GSuite ........... 9/0009 1.0000 G Suite: https://gsuite.google.com/
|
21
|
+
Email::Google ........... 58/0062 0.9355 Google Gmail: https://mail.google.com
|
22
|
+
Email::IMailServer ...... 0/0045 0.0000 IPSWITCH IMail Server
|
23
|
+
Email::InterScanMSS ..... 0/0009 0.0000 Trend Micro InterScan Messaging Security Suite
|
24
|
+
Email::KDDI ............. 6/0006 1.0000 au by KDDI: http://www.au.kddi.com
|
25
|
+
Email::MXLogic .......... 0/0014 0.0000 McAfee SaaS
|
26
|
+
Email::MailFoundry ...... 0/0007 0.0000 MailFoundry
|
27
|
+
Email::MailMarshalSMTP .. 0/0003 0.0000 Trustwave Secure Email Gateway
|
28
|
+
Email::MailRu ........... 4/0016 0.2500 @mail.ru: https://mail.ru
|
29
|
+
Email::McAfee ........... 0/0010 0.0000 McAfee Email Appliance
|
30
|
+
Email::MessageLabs ...... 2/0002 1.0000 Symantec.cloud http://www.messagelabs.com
|
31
|
+
Email::MessagingServer .. 19/0022 0.8636 Oracle Communications Messaging Server
|
32
|
+
Email::Notes ............ 0/0012 0.0000 Lotus Notes
|
33
|
+
Email::Office365 ........ 8/0011 0.7273 Microsoft Office 365: http://office.microsoft.com/
|
34
|
+
Email::OpenSMTPD ........ 6/0024 0.2500 OpenSMTPD
|
35
|
+
Email::Outlook .......... 19/0021 0.9048 Microsoft Outlook.com: https://www.outlook.com/
|
36
|
+
Email::Postfix .......... 175/0193 0.9067 Postfix
|
37
|
+
Email::ReceivingSES ..... 0/0007 0.0000 Amazon SES(Receiving): http://aws.amazon.com/ses/
|
38
|
+
Email::SendGrid ......... 7/0012 0.5833 SendGrid: http://sendgrid.com/
|
39
|
+
Email::Sendmail ......... 334/0257 1.0000 V8Sendmail: /usr/sbin/sendmail
|
40
|
+
Email::SurfControl ...... 6/0008 0.7500 WebSense SurfControl
|
41
|
+
Email::V5sendmail ....... 0/0386 0.0000 Sendmail version 5
|
42
|
+
Email::Verizon .......... 4/0004 1.0000 Verizon Wireless: http://www.verizonwireless.com
|
43
|
+
Email::X1 ............... 0/0007 0.0000 Unknown MTA #1
|
44
|
+
Email::X2 ............... 0/0069 0.0000 Unknown MTA #2
|
45
|
+
Email::X3 ............... 0/0012 0.0000 Unknown MTA #3
|
46
|
+
Email::X4 ............... 0/0029 0.0000 Unknown MTA #4 qmail clones
|
47
|
+
Email::X5 ............... 3/0003 1.0000 Unknown MTA #5
|
48
|
+
Email::Yahoo ............ 0/0009 0.0000 Yahoo! MAIL: https://www.yahoo.com
|
49
|
+
Email::Yandex ........... 4/0007 0.5714 Yandex.Mail: http://www.yandex.ru
|
50
|
+
Email::Zoho ............. 0/0011 0.0000 Zoho Mail: https://www.zoho.com
|
51
|
+
Email::MFILTER .......... 0/0009 0.0000 Digital Arts m-FILTER
|
52
|
+
Email::Qmail ............ 53/0082 0.6463 qmail
|
53
|
+
JSON::AmazonSES ......... 22/0031 0.7097 Amazon SES(JSON): http://aws.amazon.com/ses/
|
54
|
+
JSON::SendGrid .......... 7/0012 0.5833 SendGrid(JSON): http://sendgrid.com/
|
55
55
|
ARF ..................... 9/0050 0.1800 Abuse Feedback Reporting Format
|
56
|
-
RFC3464 ................. 136/
|
56
|
+
RFC3464 ................. 136/0280 0.4857 Fallback Module for MTAs
|
57
57
|
RFC3834 ................. 0/0007 0.0000 Detector for auto replied message
|
58
|
-
|
59
|
-
bounceHammer 2.7.13p3
|
60
|
-
Sisimai 4.
|
58
|
+
--------------------------------------------------------------------------------
|
59
|
+
bounceHammer 2.7.13p3 1254/2259 0.5551
|
60
|
+
Sisimai 4.22.0 2259/2259 1.0000
|
data/ChangeLog.md
CHANGED
@@ -3,6 +3,22 @@ RELEASE NOTES for Ruby version of Sisimai
|
|
3
3
|
- releases: "https://github.com/sisimai/rb-Sisimai/releases"
|
4
4
|
- download: "https://rubygems.org/gems/sisimai"
|
5
5
|
|
6
|
+
v4.22.0
|
7
|
+
--------------------------------------------------------------------------------
|
8
|
+
- release: "Tue, 22 Aug 2017 18:25:55 +0900 (JST)"
|
9
|
+
- version: "4.22.0"
|
10
|
+
- changes:
|
11
|
+
- Import Pull-Request sisimai/p5-Sisimai#225, bounce reason: "securityerror"
|
12
|
+
has been divided into the following three reasons:
|
13
|
+
- securityerror
|
14
|
+
- virusdetected
|
15
|
+
- policyviolation
|
16
|
+
- Issue #78 All the MTA modules have been moved to Sisimai::Bite::* and old
|
17
|
+
MTA modules: Sisimai::MTA, Sisimai::MSP, Sisimai::CED, and all the methods
|
18
|
+
in these classes have been marked as obsoleted.
|
19
|
+
- Import Pull-Request sisimai/p5-Sisimai#230 Sisimai::Address.find method has
|
20
|
+
been implemented experimentaly as bourne again parser for email addresses.
|
21
|
+
|
6
22
|
v4.21.1
|
7
23
|
--------------------------------------------------------------------------------
|
8
24
|
- release: "Mon, 29 May 2017 14:22:22 +0900 (JST)"
|
data/Developers.mk
CHANGED
@@ -21,9 +21,8 @@ PERL_SISIMAI := p5-Sisimai
|
|
21
21
|
PRECISIONTAB := ANALYTICAL-PRECISION
|
22
22
|
BENCHMARKDIR := tmp/benchmark
|
23
23
|
PARSERLOGDIR := var/log
|
24
|
-
|
25
|
-
|
26
|
-
MSPMODULEDIR := lib/sisimai/msp
|
24
|
+
MAILCLASSDIR := lib/$(NAME)/Bite/Email
|
25
|
+
JSONCLASSDIR := lib/$(NAME)/Bite/JSON
|
27
26
|
MTARELATIVES := ARF rfc3464 rfc3834
|
28
27
|
EMAIL_PARSER := sbin/emparser
|
29
28
|
BENCHMARKEMP := sbin/mp
|
@@ -37,10 +36,11 @@ DOSFORMATSET := $(SET_OF_EMAIL)/maildir/dos
|
|
37
36
|
MACFORMATSET := $(SET_OF_EMAIL)/maildir/mac
|
38
37
|
|
39
38
|
INDEX_LENGTH := 24
|
40
|
-
DESCR_LENGTH :=
|
39
|
+
DESCR_LENGTH := 50
|
41
40
|
BH_CAN_PARSE := courier exim messagingserver postfix sendmail surfcontrol x5 \
|
42
|
-
|
43
|
-
|
41
|
+
ezweb kddi yandex messagelabs amazonses aol bigfoot facebook \
|
42
|
+
outlook verizon
|
43
|
+
|
44
44
|
|
45
45
|
# -----------------------------------------------------------------------------
|
46
46
|
.PHONY: clean
|
@@ -51,8 +51,8 @@ private-sample:
|
|
51
51
|
|
52
52
|
precision-table:
|
53
53
|
cat ../$(PERL_SISIMAI)/$(PRECISIONTAB) | sed \
|
54
|
-
-e 's/
|
55
|
-
-e 's/
|
54
|
+
-e 's/Email::qmail/Email::Qmail/g' \
|
55
|
+
-e 's/Email::mFILTER/Email::MFILTER/g' > $(PRECISIONTAB)
|
56
56
|
|
57
57
|
update-sample-emails:
|
58
58
|
for v in `find $(PUBLICEMAILS) -name '*-01.eml' -type f`; do \
|
@@ -62,29 +62,11 @@ update-sample-emails:
|
|
62
62
|
done
|
63
63
|
|
64
64
|
sample:
|
65
|
-
for v in `$(LS) ./$(
|
66
|
-
MTA=`echo $$v | cut -d/ -
|
67
|
-
$(MKDIR) $(BENCHMARKSET)
|
68
|
-
$(CP) $(PUBLICEMAILS)
|
69
|
-
$(CP) $(PRIVATEMAILS)
|
70
|
-
done
|
71
|
-
for c in `$(LS) ./$(MSPMODULEDIR)`; do \
|
72
|
-
for v in `$(LS) ./$(MSPMODULEDIR)/$$c/*.rb`; do \
|
73
|
-
DIR=`echo $$c | tr '[A-Z]' '[a-z]' | tr -d '/'` ;\
|
74
|
-
MSP="`echo $$v | cut -d/ -f6 | tr '[A-Z]' '[a-z]' | sed 's/.rb//g'`" ;\
|
75
|
-
$(MKDIR) $(BENCHMARKSET)/$$DIR-$$MSP ;\
|
76
|
-
$(CP) $(PUBLICEMAILS)/$$DIR-$$MSP-*.eml $(BENCHMARKSET)/$$DIR-$$MSP/ ;\
|
77
|
-
$(CP) $(PRIVATEMAILS)/$$DIR-$$MSP/* $(BENCHMARKSET)/$$DIR-$$MSP/ ;\
|
78
|
-
done ;\
|
79
|
-
done
|
80
|
-
for c in `$(LS) ./$(CEDMODULEDIR)`; do \
|
81
|
-
for v in `$(LS) ./$(CEDMODULEDIR)/$$c/*.rb`; do \
|
82
|
-
DIR=`echo $$c | tr '[A-Z]' '[a-z]' | tr -d '/'` ;\
|
83
|
-
CED="`echo $$v | cut -d/ -f6 | tr '[A-Z]' '[a-z]' | sed 's/.rb//g'`" ;\
|
84
|
-
$(MKDIR) $(BENCHMARKSET)/$$DIR-$$CED ;\
|
85
|
-
$(CP) $(PUBLICEMAILS)/$$DIR-$$CED-*.eml $(BENCHMARKSET)/$$DIR-$$CED/ ;\
|
86
|
-
$(CP) $(PRIVATEMAILS)/$$DIR-$$CED/* $(BENCHMARKSET)/$$DIR-$$CED/ ;\
|
87
|
-
done ;\
|
65
|
+
for v in `$(LS) ./$(MAILCLASSDIR)/*.rb | grep -v userdefined`; do \
|
66
|
+
MTA=`echo $$v | cut -d/ -f6 | tr '[A-Z]' '[a-z]' | sed 's/.rb//g'` ;\
|
67
|
+
$(MKDIR) $(BENCHMARKSET)/email-$$MTA ;\
|
68
|
+
$(CP) $(PUBLICEMAILS)/email-$$MTA-*.eml $(BENCHMARKSET)/email-$$MTA/ ;\
|
69
|
+
$(CP) $(PRIVATEMAILS)/email-$$MTA/* $(BENCHMARKSET)/email-$$MTA/ ;\
|
88
70
|
done
|
89
71
|
for v in arf rfc3464 rfc3834; do \
|
90
72
|
$(MKDIR) $(BENCHMARKSET)/$$v ;\
|
@@ -98,8 +80,8 @@ profile: benchmark-mbox
|
|
98
80
|
velocity-measurement:
|
99
81
|
@ $(MKDIR) $(VELOCITYTEST)
|
100
82
|
@ for v in $(BH_CAN_PARSE); do \
|
101
|
-
$(CP) $(PUBLICEMAILS)
|
102
|
-
$(CP) $(PRIVATEMAILS)
|
83
|
+
$(CP) $(PUBLICEMAILS)/email-$$v-*.eml $(VELOCITYTEST)/; \
|
84
|
+
$(CP) $(PRIVATEMAILS)/email-$$v/*.eml $(VELOCITYTEST)/; \
|
103
85
|
done
|
104
86
|
@ echo -------------------------------------------------------------------
|
105
87
|
@ echo `$(LS) $(VELOCITYTEST) | wc -l` emails in $(VELOCITYTEST)
|
data/LICENSE
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
THIS SOFTWARE IS DISTRIBUTED UNDER THE FOLLOWING BSD 2-CLAUSE LICENSE:
|
2
2
|
|
3
|
-
Copyright (C) 2015
|
3
|
+
Copyright (C) 2015-2017 azumakuniyuki, All rights reserved.
|
4
4
|
|
5
5
|
Redistribution and use in source and binary forms, with or without modification,
|
6
6
|
are permitted provided that the following conditions are met:
|
data/README-JA.md
CHANGED
@@ -58,7 +58,7 @@ Key features
|
|
58
58
|
* 22種類の著名なMSPに対応
|
59
59
|
* 2種類の著名なメール配信クラウドに対応(JSON)
|
60
60
|
* Feedback Loopにも対応
|
61
|
-
*
|
61
|
+
* 29種類のエラー理由を検出
|
62
62
|
|
63
63
|
Setting Up Sisimai
|
64
64
|
===============================================================================
|
@@ -80,10 +80,10 @@ Install
|
|
80
80
|
|
81
81
|
```shell
|
82
82
|
$ sudo gem install sisimai
|
83
|
-
Fetching: sisimai-4.
|
84
|
-
Successfully installed sisimai-4.
|
85
|
-
Parsing documentation for sisimai-4.
|
86
|
-
Installing ri documentation for sisimai-4.
|
83
|
+
Fetching: sisimai-4.22.0.gem (100%)
|
84
|
+
Successfully installed sisimai-4.22.0
|
85
|
+
Parsing documentation for sisimai-4.22.0
|
86
|
+
Installing ri documentation for sisimai-4.22.0
|
87
87
|
Done installing documentation for sisimai after 6 seconds
|
88
88
|
1 gem installed
|
89
89
|
```
|
@@ -99,8 +99,8 @@ gem install bundle rake rspec coveralls
|
|
99
99
|
...
|
100
100
|
4 gems installed
|
101
101
|
bundle exec rake install
|
102
|
-
sisimai 4.
|
103
|
-
sisimai (4.
|
102
|
+
sisimai 4.22.0 built to pkg/sisimai-4.22.0.gem.
|
103
|
+
sisimai (4.22.0) installed.
|
104
104
|
```
|
105
105
|
|
106
106
|
Usage
|
@@ -219,7 +219,7 @@ Output example
|
|
219
219
|
![](http://libsisimai.org/static/images/demo/sisimai-dump-02.gif)
|
220
220
|
|
221
221
|
```json
|
222
|
-
[{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Sendmail"}]
|
222
|
+
[{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Email::Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Email::Sendmail"}]
|
223
223
|
```
|
224
224
|
|
225
225
|
Sisimai Specification
|
@@ -237,10 +237,10 @@ Differences between Ruby version and Perl version
|
|
237
237
|
| | JRuby 9.0.4.0- | |
|
238
238
|
| 解析精度の割合(2000通のメール)[1] | 1.00 | 1.00 |
|
239
239
|
| メール解析速度(1000通のメール) | 3.30秒 | 2.33秒 |
|
240
|
-
| インストール方法 | gem install | cpanm
|
240
|
+
| インストール方法 | gem install | cpanm, cpm |
|
241
241
|
| 依存モジュール数(コアモジュールを除く) | 1モジュール | 2モジュール |
|
242
|
-
| LOC:ソースコードの行数 | 12400行 |
|
243
|
-
| テスト件数(spec/,t/,xt/ディレクトリ) |
|
242
|
+
| LOC:ソースコードの行数 | 12400行 | 9100行 |
|
243
|
+
| テスト件数(spec/,t/,xt/ディレクトリ) | 205700件 | 202400件 |
|
244
244
|
| ライセンス | 二条項BSD | 二条項BSD |
|
245
245
|
| 開発会社によるサポート契約 | 準備中 | 提供中 |
|
246
246
|
|
data/README.md
CHANGED
@@ -57,7 +57,7 @@ Key Features
|
|
57
57
|
* Support 22 major MSPs(Mail Service Providers)
|
58
58
|
* Support 2 major Cloud Email Delivery Services(JSON format)
|
59
59
|
* Support Feedback Loop Message(ARF)
|
60
|
-
* Can detect
|
60
|
+
* Can detect 29 error reasons
|
61
61
|
|
62
62
|
Command line demo
|
63
63
|
-------------------------------------------------------------------------------
|
@@ -85,10 +85,10 @@ Install
|
|
85
85
|
|
86
86
|
```shell
|
87
87
|
$ sudo gem install sisimai
|
88
|
-
Fetching: sisimai-4.
|
89
|
-
Successfully installed sisimai-4.
|
90
|
-
Parsing documentation for sisimai-4.
|
91
|
-
Installing ri documentation for sisimai-4.
|
88
|
+
Fetching: sisimai-4.22.0.gem (100%)
|
89
|
+
Successfully installed sisimai-4.22.0
|
90
|
+
Parsing documentation for sisimai-4.22.0
|
91
|
+
Installing ri documentation for sisimai-4.22.0
|
92
92
|
Done installing documentation for sisimai after 6 seconds
|
93
93
|
1 gem installed
|
94
94
|
```
|
@@ -104,8 +104,8 @@ gem install bundle rake rspec coveralls
|
|
104
104
|
...
|
105
105
|
4 gems installed
|
106
106
|
bundle exec rake install
|
107
|
-
sisimai 4.
|
108
|
-
sisimai (4.
|
107
|
+
sisimai 4.22.0 built to pkg/sisimai-4.22.0.gem.
|
108
|
+
sisimai (4.22.0) installed.
|
109
109
|
```
|
110
110
|
|
111
111
|
Usage
|
@@ -222,7 +222,7 @@ Output example
|
|
222
222
|
![](http://libsisimai.org/static/images/demo/sisimai-dump-02.gif)
|
223
223
|
|
224
224
|
```json
|
225
|
-
[{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Sendmail"}]
|
225
|
+
[{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Email::Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Email::Sendmail"}]
|
226
226
|
```
|
227
227
|
|
228
228
|
Sisimai Specification
|
@@ -241,10 +241,10 @@ and bounceHammer are available at
|
|
241
241
|
| | JRuby 9.0.4.0- | |
|
242
242
|
| Analytical precision ratio(2000 emails)[1] | 1.00 | 1.00 |
|
243
243
|
| The speed of parsing email(1000 emails) | 3.30s | 2.33s |
|
244
|
-
| How to install | gem install | cpanm
|
244
|
+
| How to install | gem install | cpanm, cpm |
|
245
245
|
| Dependencies (Except core modules) | 1 module | 2 modules |
|
246
|
-
| LOC:Source lines of code | 12400 lines |
|
247
|
-
| The number of tests(spec/,t/,xt/) directory |
|
246
|
+
| LOC:Source lines of code | 12400 lines | 9100 lines |
|
247
|
+
| The number of tests(spec/,t/,xt/) directory | 205700 tests | 202400 tests |
|
248
248
|
| License | BSD 2-Clause | BSD 2-Clause |
|
249
249
|
| Support Contract provided by Developer | Coming soon | Available |
|
250
250
|
|
Binary file
|
data/lib/sisimai.rb
CHANGED
@@ -131,18 +131,18 @@ module Sisimai
|
|
131
131
|
return jsonstring
|
132
132
|
end
|
133
133
|
|
134
|
-
# Parser engine list (MTA
|
134
|
+
# Parser engine list (MTA modules)
|
135
135
|
# @return [Hash] Parser engine table
|
136
136
|
def engine
|
137
|
-
names = %w|
|
137
|
+
names = %w|Bite::Email Bite::JSON ARF RFC3464 RFC3834|
|
138
138
|
table = {}
|
139
139
|
|
140
140
|
names.each do |e|
|
141
141
|
r = 'Sisimai::' + e
|
142
142
|
require r.gsub('::', '/').downcase
|
143
143
|
|
144
|
-
if e
|
145
|
-
# Sisimai::
|
144
|
+
if e =~ /\ABite::(?:Email|JSON)\z/
|
145
|
+
# Sisimai::Bite::Email or Sisimai::Bite::JSON
|
146
146
|
Module.const_get(r).send(:index).each do |ee|
|
147
147
|
# Load and get the value of "description" from each module
|
148
148
|
rr = sprintf('Sisimai::%s::%s', e, ee)
|
data/lib/sisimai/address.rb
CHANGED
@@ -16,6 +16,255 @@ module Sisimai
|
|
16
16
|
return sprintf('undisclosed-%s-in-headers@libsisimai.org.invalid', local)
|
17
17
|
end
|
18
18
|
|
19
|
+
def self.find(argvs, addrs = nil)
|
20
|
+
# Email address parser with a name and a comment
|
21
|
+
# @param [String] argvs String including email address
|
22
|
+
# @param [Boolean] addrs true: Returns list including all the elements
|
23
|
+
# false: Returns list including email addresses only
|
24
|
+
# @return [Array, Nil] Email address list or Undef when there is no
|
25
|
+
# email address in the argument
|
26
|
+
# @example Parse email address
|
27
|
+
# input: parse('Neko <neko@example.cat>')
|
28
|
+
# output: [{'address' => 'neko@example.cat', 'name' => 'Neko'}]
|
29
|
+
return nil unless argvs
|
30
|
+
argvs = argvs.gsub(/[\r\n]/, '')
|
31
|
+
|
32
|
+
emailtable = { 'address' => '', 'name' => '', 'comment' => '' }
|
33
|
+
addrtables = []
|
34
|
+
readcursor = 0
|
35
|
+
delimiters = ['<', '>', '(', ')', '"', ',']
|
36
|
+
indicators = {
|
37
|
+
:'email-address' => (1 << 0), # <neko@example.org>
|
38
|
+
:'quoted-string' => (1 << 1), # "Neko, Nyaan"
|
39
|
+
:'comment-block' => (1 << 2), # (neko)
|
40
|
+
}
|
41
|
+
characters = argvs.split('')
|
42
|
+
readbuffer = []
|
43
|
+
|
44
|
+
v = emailtable # temporary buffer
|
45
|
+
p = '' # current position
|
46
|
+
|
47
|
+
characters.each do |e|
|
48
|
+
# Check each characters
|
49
|
+
if delimiters.detect { |r| r == e }
|
50
|
+
# The character is a delimiter character
|
51
|
+
if e == ','
|
52
|
+
# Separator of email addresses or not
|
53
|
+
if v['address'] =~ /\A[<].+[@].+[>]\z/
|
54
|
+
# An email address has already been picked
|
55
|
+
|
56
|
+
if readcursor & indicators[:'comment-block'] > 0
|
57
|
+
# The cursor is in the comment block (Neko, Nyaan)
|
58
|
+
v['comment'] += e
|
59
|
+
|
60
|
+
elsif readcursor & indicators[:'quoted-string'] > 0
|
61
|
+
# "Neko, Nyaan"
|
62
|
+
v['name'] += e
|
63
|
+
|
64
|
+
else
|
65
|
+
# The cursor is not in neither the quoted-string nor the comment block
|
66
|
+
readcursor = 0 # reset cursor position
|
67
|
+
readbuffer << v
|
68
|
+
v = { 'address' => '', 'name' => '', 'comment' => '' }
|
69
|
+
p = ''
|
70
|
+
end
|
71
|
+
else
|
72
|
+
# "Neko, Nyaan" <neko@nyaan.example.org> OR <"neko,nyaan"@example.org>
|
73
|
+
p.size > 0 ? (v[p] += e) : (v['name'] += e)
|
74
|
+
end
|
75
|
+
next
|
76
|
+
end # End of if(',')
|
77
|
+
|
78
|
+
if e == '<'
|
79
|
+
# <: The beginning of an email address or not
|
80
|
+
if v['address'].size > 0
|
81
|
+
p.size > 0 ? (v[p] += e) : (v['name'] += e)
|
82
|
+
|
83
|
+
else
|
84
|
+
# <neko@nyaan.example.org>
|
85
|
+
readcursor |= indicators[:'email-address']
|
86
|
+
v['address'] += e
|
87
|
+
p = 'address'
|
88
|
+
end
|
89
|
+
next
|
90
|
+
end
|
91
|
+
# End of if('<')
|
92
|
+
|
93
|
+
if e == '>'
|
94
|
+
# >: The end of an email address or not
|
95
|
+
if readcursor & indicators[:'email-address'] > 0
|
96
|
+
# <neko@example.org>
|
97
|
+
readcursor &= ~indicators[:'email-address']
|
98
|
+
v['address'] += e
|
99
|
+
p = ''
|
100
|
+
else
|
101
|
+
# a comment block or a display name
|
102
|
+
p.size > 0 ? (v['comment'] += e) : (v['name'] += e)
|
103
|
+
end
|
104
|
+
next
|
105
|
+
end # End of if('>')
|
106
|
+
|
107
|
+
if e == '('
|
108
|
+
# The beginning of a comment block or not
|
109
|
+
if readcursor & indicators[:'email-address'] > 0
|
110
|
+
# <"neko(nyaan)"@example.org> or <neko(nyaan)@example.org>
|
111
|
+
if v['address'] =~ /["]/
|
112
|
+
# Quoted local part: <"neko(nyaan)"@example.org>
|
113
|
+
v['address'] += e
|
114
|
+
|
115
|
+
else
|
116
|
+
# Comment: <neko(nyaan)@example.org>
|
117
|
+
readcursor |= indicators[:'comment-block']
|
118
|
+
v['comment'] += e
|
119
|
+
p = 'comment'
|
120
|
+
end
|
121
|
+
elsif readcursor & indicators[:'comment-block'] > 0
|
122
|
+
# Comment at the outside of an email address (...(...)
|
123
|
+
v['comment'] += e
|
124
|
+
|
125
|
+
elsif readcursor & indicators[:'quoted-string'] > 0
|
126
|
+
# "Neko, Nyaan(cat)", Deal as a display name
|
127
|
+
v['name'] += e
|
128
|
+
|
129
|
+
else
|
130
|
+
# The beginning of a comment block
|
131
|
+
readcursor |= indicators[:'comment-block']
|
132
|
+
v['comment'] += e
|
133
|
+
p = 'comment'
|
134
|
+
end
|
135
|
+
next
|
136
|
+
end # End of if('(')
|
137
|
+
|
138
|
+
if e == ')'
|
139
|
+
# The end of a comment block or not
|
140
|
+
if readcursor & indicators[:'email-address'] > 0
|
141
|
+
# <"neko(nyaan)"@example.org> OR <neko(nyaan)@example.org>
|
142
|
+
if v['address'] =~ /["]/
|
143
|
+
# Quoted string in the local part: <"neko(nyaan)"@example.org>
|
144
|
+
v['address'] += e
|
145
|
+
|
146
|
+
else
|
147
|
+
# Comment: <neko(nyaan)@example.org>
|
148
|
+
readcursor &= ~indicators[:'comment-block']
|
149
|
+
v['comment'] += e
|
150
|
+
p = 'address'
|
151
|
+
end
|
152
|
+
elsif readcursor & indicators[:'comment-block'] > 0
|
153
|
+
# Comment at the outside of an email address (...(...)
|
154
|
+
readcursor &= ~indicators[:'comment-block']
|
155
|
+
v['comment'] += e
|
156
|
+
p = ''
|
157
|
+
|
158
|
+
else
|
159
|
+
# Deal as a display name
|
160
|
+
readcursor &= ~indicators[:'comment-block']
|
161
|
+
v['name'] = e
|
162
|
+
p = ''
|
163
|
+
end
|
164
|
+
next
|
165
|
+
end # End of if(')')
|
166
|
+
|
167
|
+
if e == '"'
|
168
|
+
# The beginning or the end of a quoted-string
|
169
|
+
if p.size > 0
|
170
|
+
# email-address or comment-block
|
171
|
+
v[p] += e
|
172
|
+
else
|
173
|
+
# Display name
|
174
|
+
v['name'] += e
|
175
|
+
if readcursor & indicators[:'quoted-string'] > 0
|
176
|
+
# "Neko, Nyaan"
|
177
|
+
unless v['name'] =~ /\x5c["]\z/
|
178
|
+
# "Neko, Nyaan \"...
|
179
|
+
readcursor &= ~indicators[:'quoted-string']
|
180
|
+
p = ''
|
181
|
+
end
|
182
|
+
else
|
183
|
+
if readcursor & indicators[:'email-address'] == 0 &&
|
184
|
+
readcursor & indicators[:'comment-block'] == 0
|
185
|
+
# Deal as the beginning of a display name
|
186
|
+
readcursor |= indicators[:'quoted-string']
|
187
|
+
p = 'name'
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
next
|
192
|
+
end # End of if('"')
|
193
|
+
else
|
194
|
+
# The character is not a delimiter
|
195
|
+
p.size > 0 ? (v[p] += e) : (v['name'] += e)
|
196
|
+
next
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
200
|
+
if v['address'].size > 0
|
201
|
+
# Push the latest values
|
202
|
+
readbuffer << v
|
203
|
+
else
|
204
|
+
# No email address like <neko@example.org> in the argument
|
205
|
+
if v['name'] =~ /[@]/
|
206
|
+
# String like an email address will be set to the value of "address"
|
207
|
+
if cv = v['name'].match(/(["].+?["][@][^ ]+)/)
|
208
|
+
# "neko nyaan"@example.org
|
209
|
+
v['address'] = cv[1]
|
210
|
+
|
211
|
+
elsif cv = v['name'].match(/([^\s]+[@][^\s]+)/)
|
212
|
+
# neko-nyaan@example.org
|
213
|
+
v['address'] = cv[1]
|
214
|
+
end
|
215
|
+
elsif Sisimai::RFC5322.is_mailerdaemon(v['name'])
|
216
|
+
# Allow if the argument is MAILER-DAEMON
|
217
|
+
v['address'] = v['name']
|
218
|
+
end
|
219
|
+
|
220
|
+
if v['address'].size > 0
|
221
|
+
# Remove the value of "name" and remove the comment from the address
|
222
|
+
if cv = v['address'].match(/(.*)([(].+[)])(.*)/)
|
223
|
+
# (nyaan)nekochan@example.org, nekochan(nyaan)cat@example.org or
|
224
|
+
# nekochan(nyaan)@example.org
|
225
|
+
v['address'] = cv[1] + cv[3]
|
226
|
+
v['comment'] = cv[2]
|
227
|
+
end
|
228
|
+
v['name'] = ''
|
229
|
+
readbuffer << v
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
readbuffer.each do |e|
|
234
|
+
unless e['address'] =~ /\A.+[@].+\z/
|
235
|
+
# Allow if the argument is MAILER-DAEMON
|
236
|
+
next unless Sisimai::RFC5322.is_mailerdaemon(e['address'])
|
237
|
+
end
|
238
|
+
|
239
|
+
e['address'] = e['address'].sub(/\A[\[<{('`]/, '')
|
240
|
+
e['address'] = e['address'].sub(/['`>})\]]\z/, '')
|
241
|
+
|
242
|
+
unless e['address'] =~ /\A["].+["][@]/
|
243
|
+
# Remove double-quotations
|
244
|
+
e['address'] = e['address'].sub(/\A["]/, '')
|
245
|
+
e['address'] = e['address'].sub(/["]\z/, '')
|
246
|
+
end
|
247
|
+
|
248
|
+
if addrs
|
249
|
+
# Almost compatible with parse() method, returns email address only
|
250
|
+
e.delete('name')
|
251
|
+
e.delete('comment')
|
252
|
+
else
|
253
|
+
# Remove double-quotations, trailing spaces.
|
254
|
+
%w|name comment|.each do |f|
|
255
|
+
e[f] = e[f].sub(/\A\s*/, '')
|
256
|
+
e[f] = e[f].sub(/\s*\z/, '')
|
257
|
+
end
|
258
|
+
e['name'] = e['name'].sub(/\A["]/, '')
|
259
|
+
e['name'] = e['name'].sub(/["]\z/, '')
|
260
|
+
end
|
261
|
+
addrtables << e
|
262
|
+
end
|
263
|
+
|
264
|
+
return nil if addrtables.empty?
|
265
|
+
return addrtables
|
266
|
+
end
|
267
|
+
|
19
268
|
# Email address parser
|
20
269
|
# @param [Array] argvs List of strings including email address
|
21
270
|
# @return [Array, Nil] Email address list or Undef when there is no
|
@@ -55,8 +304,8 @@ module Sisimai
|
|
55
304
|
unless input =~ /[ ]/
|
56
305
|
# no space character between " and < .
|
57
306
|
# no space character between " and < .
|
58
|
-
input = input.sub(/\A(.+)"<(.+)\z/, '\1" <\2') # "=?ISO-2022-JP?B?....?="<user@example.
|
59
|
-
input = input.sub(/\A(.+)[?]=<(.+)\z/, '\1?= <\2') # =?ISO-2022-JP?B?....?=<user@example.
|
307
|
+
input = input.sub(/\A(.+)"<(.+)\z/, '\1" <\2') # "=?ISO-2022-JP?B?....?="<user@example.org>,
|
308
|
+
input = input.sub(/\A(.+)[?]=<(.+)\z/, '\1?= <\2') # =?ISO-2022-JP?B?....?=<user@example.org>
|
60
309
|
|
61
310
|
# comment-part<localpart@domainpart>
|
62
311
|
input = input.sub(/[<]/, ' <') unless input =~ /\A[<]/
|
@@ -101,7 +350,7 @@ module Sisimai
|
|
101
350
|
canon = canon.delete('<>[]():;') # Remove brackets, colons
|
102
351
|
|
103
352
|
if canon =~ /\A["].+["][@].+\z/
|
104
|
-
canon = canon.delete(%q|{}'`|) # "localpart..."@example.
|
353
|
+
canon = canon.delete(%q|{}'`|) # "localpart..."@example.org
|
105
354
|
else
|
106
355
|
canon = canon.delete(%q|{}'"`|) # Remove brackets, quotations
|
107
356
|
end
|
@@ -113,7 +362,7 @@ module Sisimai
|
|
113
362
|
# @param [String] email VERP Address
|
114
363
|
# @return [String] Email address
|
115
364
|
# @example Expand VERP address
|
116
|
-
# expand_verp('bounce+neko=example.
|
365
|
+
# expand_verp('bounce+neko=example.org@example.org') #=> 'neko@example.org'
|
117
366
|
def self.expand_verp(email)
|
118
367
|
local = email.split('@', 2).first
|
119
368
|
verp0 = ''
|
@@ -131,7 +380,7 @@ module Sisimai
|
|
131
380
|
# @param [String] email Email alias string
|
132
381
|
# @return [String] Expanded email address
|
133
382
|
# @example Expand alias
|
134
|
-
# expand_alias('neko+straycat@example.
|
383
|
+
# expand_alias('neko+straycat@example.org') #=> 'neko@example.org'
|
135
384
|
def self.expand_alias(email)
|
136
385
|
return '' unless Sisimai::RFC5322.is_emailaddress(email)
|
137
386
|
|