├── .github └── workflows │ ├── codecovio.yml │ └── make-test.yml ├── .gitignore ├── ANALYTICAL-PRECISION ├── Benchmarks.mk ├── Build.PL ├── CONTRIBUTING ├── ChangeLog.md ├── Changes ├── Developers.mk ├── KNOWNBUGS ├── LICENSE ├── META.json ├── Makefile ├── README-JA.md ├── README.md ├── Repository.mk ├── cpanfile ├── lib ├── Sisimai.pm └── Sisimai │ ├── ARF.pm │ ├── Address.pm │ ├── DateTime.pm │ ├── Fact.pm │ ├── Fact │ ├── JSON.pm │ └── YAML.pm │ ├── LDA.pm │ ├── Lhost.pm │ ├── Lhost │ ├── Activehunter.pm │ ├── AmazonSES.pm │ ├── ApacheJames.pm │ ├── Biglobe.pm │ ├── Courier.pm │ ├── Domino.pm │ ├── DragonFly.pm │ ├── EZweb.pm │ ├── EinsUndEins.pm │ ├── Exchange2003.pm │ ├── Exchange2007.pm │ ├── Exim.pm │ ├── FML.pm │ ├── GMX.pm │ ├── Gmail.pm │ ├── GoogleGroups.pm │ ├── GoogleWorkspace.pm │ ├── IMailServer.pm │ ├── InterScanMSS.pm │ ├── KDDI.pm │ ├── MailFoundry.pm │ ├── MailMarshalSMTP.pm │ ├── MessagingServer.pm │ ├── Notes.pm │ ├── OpenSMTPD.pm │ ├── Postfix.pm │ ├── Sendmail.pm │ ├── V5sendmail.pm │ ├── Verizon.pm │ ├── X1.pm │ ├── X2.pm │ ├── X3.pm │ ├── X6.pm │ ├── Zoho.pm │ ├── mFILTER.pm │ └── qmail.pm │ ├── Mail.pm │ ├── Mail │ ├── Maildir.pm │ ├── Mbox.pm │ ├── Memory.pm │ └── STDIN.pm │ ├── Message.pm │ ├── Order.pm │ ├── RFC1123.pm │ ├── RFC1894.pm │ ├── RFC2045.pm │ ├── RFC3464.pm │ ├── RFC3464 │ └── ThirdParty.pm │ ├── RFC3834.pm │ ├── RFC5322.pm │ ├── RFC5965.pm │ ├── RFC791.pm │ ├── Reason.pm │ ├── Reason │ ├── AuthFailure.pm │ ├── BadReputation.pm │ ├── Blocked.pm │ ├── ContentError.pm │ ├── Delivered.pm │ ├── ExceedLimit.pm │ ├── Expired.pm │ ├── FailedSTARTTLS.pm │ ├── Feedback.pm │ ├── Filtered.pm │ ├── HasMoved.pm │ ├── HostUnknown.pm │ ├── MailboxFull.pm │ ├── MailerError.pm │ ├── MesgTooBig.pm │ ├── NetworkError.pm │ ├── NoRelaying.pm │ ├── NotAccept.pm │ ├── NotCompliantRFC.pm │ ├── OnHold.pm │ ├── PolicyViolation.pm │ ├── Rejected.pm │ ├── RequirePTR.pm │ ├── SecurityError.pm │ ├── SpamDetected.pm │ ├── Speeding.pm │ ├── Suppressed.pm │ ├── Suspend.pm │ ├── SyntaxError.pm │ ├── SystemError.pm │ ├── SystemFull.pm │ ├── TooManyConn.pm │ ├── Undefined.pm │ ├── UserUnknown.pm │ ├── Vacation.pm │ └── VirusDetected.pm │ ├── Rhost.pm │ ├── Rhost │ ├── Aol.pm │ ├── Apple.pm │ ├── Cloudflare.pm │ ├── Cox.pm │ ├── Facebook.pm │ ├── FrancePTT.pm │ ├── GSuite.pm │ ├── GoDaddy.pm │ ├── Google.pm │ ├── IUA.pm │ ├── KDDI.pm │ ├── MessageLabs.pm │ ├── Microsoft.pm │ ├── Mimecast.pm │ ├── NTTDOCOMO.pm │ ├── Outlook.pm │ ├── Spectrum.pm │ ├── Tencent.pm │ └── YahooInc.pm │ ├── SMTP.pm │ ├── SMTP │ ├── Command.pm │ ├── Failure.pm │ ├── Reply.pm │ ├── Status.pm │ └── Transcript.pm │ ├── String.pm │ └── Time.pm ├── minil.toml ├── set-of-emails ├── README.md ├── mailbox │ ├── mbox-0 │ └── mbox-1 ├── maildir │ ├── bsd │ │ ├── arf-01.eml │ │ ├── arf-02.eml │ │ ├── arf-11.eml │ │ ├── arf-12.eml │ │ ├── arf-14.eml │ │ ├── arf-15.eml │ │ ├── arf-16.eml │ │ ├── arf-17.eml │ │ ├── arf-18.eml │ │ ├── arf-19.eml │ │ ├── arf-20.eml │ │ ├── arf-21.eml │ │ ├── arf-22.eml │ │ ├── arf-23.eml │ │ ├── arf-24.eml │ │ ├── arf-25.eml │ │ ├── arf-26.eml │ │ ├── lhost-activehunter-01.eml │ │ ├── lhost-activehunter-02.eml │ │ ├── lhost-amavis-01.eml │ │ ├── lhost-amavis-02.eml │ │ ├── lhost-amavis-03.eml │ │ ├── lhost-amazonses-01.eml │ │ ├── lhost-amazonses-02.eml │ │ ├── lhost-amazonses-03.eml │ │ ├── lhost-amazonses-05.eml │ │ ├── lhost-amazonses-06.eml │ │ ├── lhost-amazonses-07.eml │ │ ├── lhost-amazonses-08.eml │ │ ├── lhost-amazonses-09.eml │ │ ├── lhost-amazonses-10.eml │ │ ├── lhost-amazonses-11.eml │ │ ├── lhost-amazonses-12.eml │ │ ├── lhost-amazonses-13.eml │ │ ├── lhost-amazonses-14.eml │ │ ├── lhost-amazonses-15.eml │ │ ├── lhost-amazonses-16.eml │ │ ├── lhost-amazonses-17.eml │ │ ├── lhost-amazonses-18.eml │ │ ├── lhost-amazonses-19.eml │ │ ├── lhost-amazonses-20.eml │ │ ├── lhost-amazonses-21.eml │ │ ├── lhost-amazonworkmail-01.eml │ │ ├── lhost-amazonworkmail-02.eml │ │ ├── lhost-amazonworkmail-03.eml │ │ ├── lhost-amazonworkmail-04.eml │ │ ├── lhost-amazonworkmail-05.eml │ │ ├── lhost-amazonworkmail-07.eml │ │ ├── lhost-amazonworkmail-08.eml │ │ ├── lhost-apachejames-01.eml │ │ ├── lhost-barracuda-01.eml │ │ ├── lhost-barracuda-02.eml │ │ ├── lhost-bigfoot-02.eml │ │ ├── lhost-biglobe-01.eml │ │ ├── lhost-courier-01.eml │ │ ├── lhost-courier-02.eml │ │ ├── lhost-courier-03.eml │ │ ├── lhost-courier-04.eml │ │ ├── lhost-domino-01.eml │ │ ├── lhost-domino-02.eml │ │ ├── lhost-domino-03.eml │ │ ├── lhost-dragonfly-01.eml │ │ ├── lhost-dragonfly-02.eml │ │ ├── lhost-dragonfly-03.eml │ │ ├── lhost-dragonfly-04.eml │ │ ├── lhost-dragonfly-05.eml │ │ ├── lhost-dragonfly-06.eml │ │ ├── lhost-dragonfly-07.eml │ │ ├── lhost-dragonfly-08.eml │ │ ├── lhost-dragonfly-09.eml │ │ ├── lhost-dragonfly-10.eml │ │ ├── lhost-dragonfly-11.eml │ │ ├── lhost-dragonfly-12.eml │ │ ├── lhost-dragonfly-13.eml │ │ ├── lhost-dragonfly-14.eml │ │ ├── lhost-dragonfly-15.eml │ │ ├── lhost-dragonfly-16.eml │ │ ├── lhost-dragonfly-17.eml │ │ ├── lhost-dragonfly-18.eml │ │ ├── lhost-dragonfly-19.eml │ │ ├── lhost-dragonfly-20.eml │ │ ├── lhost-dragonfly-21.eml │ │ ├── lhost-dragonfly-22.eml │ │ ├── lhost-dragonfly-23.eml │ │ ├── lhost-dragonfly-24.eml │ │ ├── lhost-dragonfly-25.eml │ │ ├── lhost-dragonfly-26.eml │ │ ├── lhost-dragonfly-27.eml │ │ ├── lhost-dragonfly-28.eml │ │ ├── lhost-dragonfly-29.eml │ │ ├── lhost-dragonfly-30.eml │ │ ├── lhost-einsundeins-02.eml │ │ ├── lhost-einsundeins-03.eml │ │ ├── lhost-exchange2003-01.eml │ │ ├── lhost-exchange2003-02.eml │ │ ├── lhost-exchange2003-03.eml │ │ ├── lhost-exchange2003-04.eml │ │ ├── lhost-exchange2003-05.eml │ │ ├── lhost-exchange2003-07.eml │ │ ├── lhost-exchange2007-01.eml │ │ ├── lhost-exchange2007-02.eml │ │ ├── lhost-exchange2007-03.eml │ │ ├── lhost-exchange2007-04.eml │ │ ├── lhost-exchange2007-05.eml │ │ ├── lhost-exchange2007-06.eml │ │ ├── lhost-exchange2007-07.eml │ │ ├── lhost-exim-01.eml │ │ ├── lhost-exim-02.eml │ │ ├── lhost-exim-03.eml │ │ ├── lhost-exim-04.eml │ │ ├── lhost-exim-05.eml │ │ ├── lhost-exim-06.eml │ │ ├── lhost-exim-07.eml │ │ ├── lhost-exim-08.eml │ │ ├── lhost-exim-29.eml │ │ ├── lhost-exim-30.eml │ │ ├── lhost-exim-31.eml │ │ ├── lhost-exim-32.eml │ │ ├── lhost-exim-33.eml │ │ ├── lhost-exim-34.eml │ │ ├── lhost-exim-35.eml │ │ ├── lhost-exim-36.eml │ │ ├── lhost-exim-37.eml │ │ ├── lhost-exim-38.eml │ │ ├── lhost-exim-39.eml │ │ ├── lhost-exim-40.eml │ │ ├── lhost-exim-41.eml │ │ ├── lhost-exim-42.eml │ │ ├── lhost-exim-43.eml │ │ ├── lhost-exim-44.eml │ │ ├── lhost-exim-45.eml │ │ ├── lhost-exim-46.eml │ │ ├── lhost-exim-47.eml │ │ ├── lhost-exim-48.eml │ │ ├── lhost-exim-49.eml │ │ ├── lhost-exim-50.eml │ │ ├── lhost-exim-51.eml │ │ ├── lhost-exim-52.eml │ │ ├── lhost-exim-53.eml │ │ ├── lhost-exim-54.eml │ │ ├── lhost-exim-55.eml │ │ ├── lhost-exim-56.eml │ │ ├── lhost-exim-57.eml │ │ ├── lhost-exim-58.eml │ │ ├── lhost-exim-59.eml │ │ ├── lhost-exim-60.eml │ │ ├── lhost-exim-61.eml │ │ ├── lhost-ezweb-01.eml │ │ ├── lhost-ezweb-02.eml │ │ ├── lhost-ezweb-03.eml │ │ ├── lhost-ezweb-04.eml │ │ ├── lhost-ezweb-05.eml │ │ ├── lhost-ezweb-07.eml │ │ ├── lhost-ezweb-08.eml │ │ ├── lhost-fml-02.eml │ │ ├── lhost-fml-03.eml │ │ ├── lhost-gmail-01.eml │ │ ├── lhost-gmail-03.eml │ │ ├── lhost-gmail-04.eml │ │ ├── lhost-gmail-05.eml │ │ ├── lhost-gmail-06.eml │ │ ├── lhost-gmail-07.eml │ │ ├── lhost-gmail-08.eml │ │ ├── lhost-gmail-09.eml │ │ ├── lhost-gmail-10.eml │ │ ├── lhost-gmail-11.eml │ │ ├── lhost-gmail-15.eml │ │ ├── lhost-gmail-16.eml │ │ ├── lhost-gmail-17.eml │ │ ├── lhost-gmail-18.eml │ │ ├── lhost-gmail-19.eml │ │ ├── lhost-gmx-01.eml │ │ ├── lhost-gmx-02.eml │ │ ├── lhost-gmx-03.eml │ │ ├── lhost-gmx-04.eml │ │ ├── lhost-googlegroups-01.eml │ │ ├── lhost-googlegroups-02.eml │ │ ├── lhost-googlegroups-03.eml │ │ ├── lhost-googlegroups-04.eml │ │ ├── lhost-googlegroups-05.eml │ │ ├── lhost-googlegroups-06.eml │ │ ├── lhost-googlegroups-07.eml │ │ ├── lhost-googlegroups-08.eml │ │ ├── lhost-googlegroups-09.eml │ │ ├── lhost-googlegroups-10.eml │ │ ├── lhost-googlegroups-11.eml │ │ ├── lhost-googlegroups-12.eml │ │ ├── lhost-googlegroups-13.eml │ │ ├── lhost-googlegroups-14.eml │ │ ├── lhost-googleworkspace-01.eml │ │ ├── lhost-imailserver-01.eml │ │ ├── lhost-imailserver-02.eml │ │ ├── lhost-imailserver-03.eml │ │ ├── lhost-imailserver-04.eml │ │ ├── lhost-imailserver-06.eml │ │ ├── lhost-interscanmss-01.eml │ │ ├── lhost-interscanmss-02.eml │ │ ├── lhost-interscanmss-03.eml │ │ ├── lhost-kddi-01.eml │ │ ├── lhost-kddi-02.eml │ │ ├── lhost-kddi-03.eml │ │ ├── lhost-mailfoundry-01.eml │ │ ├── lhost-mailfoundry-02.eml │ │ ├── lhost-mailmarshalsmtp-02.eml │ │ ├── lhost-mailru-01.eml │ │ ├── lhost-mailru-02.eml │ │ ├── lhost-mailru-03.eml │ │ ├── lhost-mailru-04.eml │ │ ├── lhost-mailru-05.eml │ │ ├── lhost-mailru-06.eml │ │ ├── lhost-mailru-07.eml │ │ ├── lhost-mailru-08.eml │ │ ├── lhost-mailru-09.eml │ │ ├── lhost-mailru-10.eml │ │ ├── lhost-mcafee-01.eml │ │ ├── lhost-mcafee-02.eml │ │ ├── lhost-mcafee-03.eml │ │ ├── lhost-mcafee-04.eml │ │ ├── lhost-mcafee-05.eml │ │ ├── lhost-messagingserver-01.eml │ │ ├── lhost-messagingserver-02.eml │ │ ├── lhost-messagingserver-03.eml │ │ ├── lhost-messagingserver-04.eml │ │ ├── lhost-messagingserver-05.eml │ │ ├── lhost-messagingserver-06.eml │ │ ├── lhost-messagingserver-07.eml │ │ ├── lhost-messagingserver-08.eml │ │ ├── lhost-messagingserver-09.eml │ │ ├── lhost-messagingserver-10.eml │ │ ├── lhost-messagingserver-11.eml │ │ ├── lhost-messagingserver-12.eml │ │ ├── lhost-mfilter-01.eml │ │ ├── lhost-mfilter-02.eml │ │ ├── lhost-mfilter-03.eml │ │ ├── lhost-mfilter-04.eml │ │ ├── lhost-mxlogic-01.eml │ │ ├── lhost-mxlogic-02.eml │ │ ├── lhost-mxlogic-03.eml │ │ ├── lhost-notes-01.eml │ │ ├── lhost-notes-02.eml │ │ ├── lhost-notes-03.eml │ │ ├── lhost-office365-01.eml │ │ ├── lhost-office365-02.eml │ │ ├── lhost-office365-03.eml │ │ ├── lhost-office365-04.eml │ │ ├── lhost-office365-05.eml │ │ ├── lhost-office365-06.eml │ │ ├── lhost-office365-07.eml │ │ ├── lhost-office365-08.eml │ │ ├── lhost-office365-09.eml │ │ ├── lhost-office365-10.eml │ │ ├── lhost-office365-11.eml │ │ ├── lhost-office365-12.eml │ │ ├── lhost-office365-13.eml │ │ ├── lhost-opensmtpd-01.eml │ │ ├── lhost-opensmtpd-02.eml │ │ ├── lhost-opensmtpd-03.eml │ │ ├── lhost-opensmtpd-04.eml │ │ ├── lhost-opensmtpd-05.eml │ │ ├── lhost-opensmtpd-06.eml │ │ ├── lhost-opensmtpd-10.eml │ │ ├── lhost-opensmtpd-11.eml │ │ ├── lhost-opensmtpd-12.eml │ │ ├── lhost-opensmtpd-13.eml │ │ ├── lhost-opensmtpd-14.eml │ │ ├── lhost-opensmtpd-15.eml │ │ ├── lhost-opensmtpd-16.eml │ │ ├── lhost-opensmtpd-17.eml │ │ ├── lhost-outlook-01.eml │ │ ├── lhost-outlook-02.eml │ │ ├── lhost-outlook-03.eml │ │ ├── lhost-outlook-04.eml │ │ ├── lhost-outlook-06.eml │ │ ├── lhost-outlook-07.eml │ │ ├── lhost-outlook-08.eml │ │ ├── lhost-outlook-09.eml │ │ ├── lhost-postfix-01.eml │ │ ├── lhost-postfix-02.eml │ │ ├── lhost-postfix-03.eml │ │ ├── lhost-postfix-04.eml │ │ ├── lhost-postfix-05.eml │ │ ├── lhost-postfix-06.eml │ │ ├── lhost-postfix-07.eml │ │ ├── lhost-postfix-08.eml │ │ ├── lhost-postfix-09.eml │ │ ├── lhost-postfix-10.eml │ │ ├── lhost-postfix-11.eml │ │ ├── lhost-postfix-13.eml │ │ ├── lhost-postfix-14.eml │ │ ├── lhost-postfix-15.eml │ │ ├── lhost-postfix-16.eml │ │ ├── lhost-postfix-17.eml │ │ ├── lhost-postfix-28.eml │ │ ├── lhost-postfix-29.eml │ │ ├── lhost-postfix-30.eml │ │ ├── lhost-postfix-31.eml │ │ ├── lhost-postfix-32.eml │ │ ├── lhost-postfix-33.eml │ │ ├── lhost-postfix-34.eml │ │ ├── lhost-postfix-35.eml │ │ ├── lhost-postfix-36.eml │ │ ├── lhost-postfix-37.eml │ │ ├── lhost-postfix-38.eml │ │ ├── lhost-postfix-39.eml │ │ ├── lhost-postfix-40.eml │ │ ├── lhost-postfix-41.eml │ │ ├── lhost-postfix-42.eml │ │ ├── lhost-postfix-43.eml │ │ ├── lhost-postfix-44.eml │ │ ├── lhost-postfix-45.eml │ │ ├── lhost-postfix-46.eml │ │ ├── lhost-postfix-47.eml │ │ ├── lhost-postfix-48.eml │ │ ├── lhost-postfix-49.eml │ │ ├── lhost-postfix-50.eml │ │ ├── lhost-postfix-51.eml │ │ ├── lhost-postfix-52.eml │ │ ├── lhost-postfix-53.eml │ │ ├── lhost-postfix-54.eml │ │ ├── lhost-postfix-55.eml │ │ ├── lhost-postfix-56.eml │ │ ├── lhost-postfix-57.eml │ │ ├── lhost-postfix-58.eml │ │ ├── lhost-postfix-59.eml │ │ ├── lhost-postfix-60.eml │ │ ├── lhost-postfix-61.eml │ │ ├── lhost-postfix-62.eml │ │ ├── lhost-postfix-63.eml │ │ ├── lhost-postfix-64.eml │ │ ├── lhost-postfix-65.eml │ │ ├── lhost-postfix-66.eml │ │ ├── lhost-postfix-67.eml │ │ ├── lhost-postfix-68.eml │ │ ├── lhost-postfix-69.eml │ │ ├── lhost-postfix-70.eml │ │ ├── lhost-postfix-71.eml │ │ ├── lhost-postfix-72.eml │ │ ├── lhost-postfix-73.eml │ │ ├── lhost-postfix-74.eml │ │ ├── lhost-postfix-75.eml │ │ ├── lhost-postfix-76.eml │ │ ├── lhost-postfix-77.eml │ │ ├── lhost-postfix-78.eml │ │ ├── lhost-powermta-01.eml │ │ ├── lhost-powermta-02.eml │ │ ├── lhost-powermta-03.eml │ │ ├── lhost-qmail-01.eml │ │ ├── lhost-qmail-02.eml │ │ ├── lhost-qmail-03.eml │ │ ├── lhost-qmail-04.eml │ │ ├── lhost-qmail-05.eml │ │ ├── lhost-qmail-06.eml │ │ ├── lhost-qmail-07.eml │ │ ├── lhost-qmail-08.eml │ │ ├── lhost-qmail-09.eml │ │ ├── lhost-qmail-10.eml │ │ ├── lhost-qmail-11.eml │ │ ├── lhost-qmail-12.eml │ │ ├── lhost-qmail-13.eml │ │ ├── lhost-qmail-14.eml │ │ ├── lhost-qmail-15.eml │ │ ├── lhost-qmail-16.eml │ │ ├── lhost-qmail-17.eml │ │ ├── lhost-qmail-18.eml │ │ ├── lhost-qmail-19.eml │ │ ├── lhost-qmail-20.eml │ │ ├── lhost-qmail-21.eml │ │ ├── lhost-qmail-22.eml │ │ ├── lhost-qmail-23.eml │ │ ├── lhost-qmail-24.eml │ │ ├── lhost-qmail-25.eml │ │ ├── lhost-receivingses-01.eml │ │ ├── lhost-receivingses-02.eml │ │ ├── lhost-receivingses-03.eml │ │ ├── lhost-receivingses-04.eml │ │ ├── lhost-receivingses-05.eml │ │ ├── lhost-receivingses-06.eml │ │ ├── lhost-receivingses-07.eml │ │ ├── lhost-receivingses-08.eml │ │ ├── lhost-sendgrid-01.eml │ │ ├── lhost-sendgrid-02.eml │ │ ├── lhost-sendgrid-03.eml │ │ ├── lhost-sendmail-01.eml │ │ ├── lhost-sendmail-02.eml │ │ ├── lhost-sendmail-03.eml │ │ ├── lhost-sendmail-04.eml │ │ ├── lhost-sendmail-05.eml │ │ ├── lhost-sendmail-06.eml │ │ ├── lhost-sendmail-07.eml │ │ ├── lhost-sendmail-08.eml │ │ ├── lhost-sendmail-09.eml │ │ ├── lhost-sendmail-10.eml │ │ ├── lhost-sendmail-11.eml │ │ ├── lhost-sendmail-12.eml │ │ ├── lhost-sendmail-13.eml │ │ ├── lhost-sendmail-14.eml │ │ ├── lhost-sendmail-15.eml │ │ ├── lhost-sendmail-16.eml │ │ ├── lhost-sendmail-17.eml │ │ ├── lhost-sendmail-18.eml │ │ ├── lhost-sendmail-19.eml │ │ ├── lhost-sendmail-20.eml │ │ ├── lhost-sendmail-21.eml │ │ ├── lhost-sendmail-22.eml │ │ ├── lhost-sendmail-24.eml │ │ ├── lhost-sendmail-25.eml │ │ ├── lhost-sendmail-26.eml │ │ ├── lhost-sendmail-27.eml │ │ ├── lhost-sendmail-28.eml │ │ ├── lhost-sendmail-29.eml │ │ ├── lhost-sendmail-30.eml │ │ ├── lhost-sendmail-31.eml │ │ ├── lhost-sendmail-32.eml │ │ ├── lhost-sendmail-33.eml │ │ ├── lhost-sendmail-34.eml │ │ ├── lhost-sendmail-35.eml │ │ ├── lhost-sendmail-36.eml │ │ ├── lhost-sendmail-37.eml │ │ ├── lhost-sendmail-38.eml │ │ ├── lhost-sendmail-39.eml │ │ ├── lhost-sendmail-40.eml │ │ ├── lhost-sendmail-41.eml │ │ ├── lhost-sendmail-42.eml │ │ ├── lhost-sendmail-43.eml │ │ ├── lhost-sendmail-44.eml │ │ ├── lhost-sendmail-45.eml │ │ ├── lhost-sendmail-46.eml │ │ ├── lhost-sendmail-47.eml │ │ ├── lhost-sendmail-48.eml │ │ ├── lhost-sendmail-49.eml │ │ ├── lhost-sendmail-50.eml │ │ ├── lhost-sendmail-51.eml │ │ ├── lhost-sendmail-52.eml │ │ ├── lhost-sendmail-53.eml │ │ ├── lhost-sendmail-54.eml │ │ ├── lhost-sendmail-55.eml │ │ ├── lhost-sendmail-56.eml │ │ ├── lhost-sendmail-57.eml │ │ ├── lhost-sendmail-58.eml │ │ ├── lhost-sendmail-59.eml │ │ ├── lhost-sendmail-60.eml │ │ ├── lhost-surfcontrol-01.eml │ │ ├── lhost-surfcontrol-02.eml │ │ ├── lhost-surfcontrol-03.eml │ │ ├── lhost-v5sendmail-01.eml │ │ ├── lhost-v5sendmail-02.eml │ │ ├── lhost-v5sendmail-03.eml │ │ ├── lhost-v5sendmail-04.eml │ │ ├── lhost-v5sendmail-05.eml │ │ ├── lhost-v5sendmail-06.eml │ │ ├── lhost-v5sendmail-07.eml │ │ ├── lhost-verizon-01.eml │ │ ├── lhost-verizon-02.eml │ │ ├── lhost-x1-01.eml │ │ ├── lhost-x1-02.eml │ │ ├── lhost-x2-01.eml │ │ ├── lhost-x2-02.eml │ │ ├── lhost-x2-03.eml │ │ ├── lhost-x2-04.eml │ │ ├── lhost-x2-05.eml │ │ ├── lhost-x2-06.eml │ │ ├── lhost-x3-01.eml │ │ ├── lhost-x3-02.eml │ │ ├── lhost-x3-03.eml │ │ ├── lhost-x3-05.eml │ │ ├── lhost-x3-06.eml │ │ ├── lhost-x4-01.eml │ │ ├── lhost-x5-01.eml │ │ ├── lhost-x6-01.eml │ │ ├── lhost-x6-02.eml │ │ ├── lhost-yahoo-01.eml │ │ ├── lhost-yahoo-02.eml │ │ ├── lhost-yahoo-03.eml │ │ ├── lhost-yahoo-04.eml │ │ ├── lhost-yahoo-05.eml │ │ ├── lhost-yahoo-06.eml │ │ ├── lhost-yahoo-07.eml │ │ ├── lhost-yahoo-08.eml │ │ ├── lhost-yahoo-09.eml │ │ ├── lhost-yahoo-10.eml │ │ ├── lhost-yahoo-11.eml │ │ ├── lhost-yahoo-12.eml │ │ ├── lhost-yahoo-13.eml │ │ ├── lhost-yahoo-14.eml │ │ ├── lhost-yandex-01.eml │ │ ├── lhost-yandex-02.eml │ │ ├── lhost-yandex-03.eml │ │ ├── lhost-zoho-01.eml │ │ ├── lhost-zoho-02.eml │ │ ├── lhost-zoho-03.eml │ │ ├── lhost-zoho-04.eml │ │ ├── lhost-zoho-05.eml │ │ ├── rfc3464-01.eml │ │ ├── rfc3464-03.eml │ │ ├── rfc3464-04.eml │ │ ├── rfc3464-06.eml │ │ ├── rfc3464-07.eml │ │ ├── rfc3464-08.eml │ │ ├── rfc3464-09.eml │ │ ├── rfc3464-10.eml │ │ ├── rfc3464-26.eml │ │ ├── rfc3464-28.eml │ │ ├── rfc3464-29.eml │ │ ├── rfc3464-34.eml │ │ ├── rfc3464-35.eml │ │ ├── rfc3464-36.eml │ │ ├── rfc3464-40.eml │ │ ├── rfc3464-42.eml │ │ ├── rfc3464-43.eml │ │ ├── rfc3464-51.eml │ │ ├── rfc3464-52.eml │ │ ├── rfc3464-53.eml │ │ ├── rfc3464-54.eml │ │ ├── rfc3464-55.eml │ │ ├── rfc3464-56.eml │ │ ├── rfc3464-57.eml │ │ ├── rfc3464-58.eml │ │ ├── rfc3464-59.eml │ │ ├── rfc3464-60.eml │ │ ├── rfc3464-61.eml │ │ ├── rfc3464-62.eml │ │ ├── rfc3464-63.eml │ │ ├── rfc3464-64.eml │ │ ├── rfc3464-65.eml │ │ ├── rfc3834-01.eml │ │ ├── rfc3834-02.eml │ │ ├── rfc3834-03.eml │ │ ├── rfc3834-04.eml │ │ ├── rfc3834-05.eml │ │ ├── rhost-aol-01.eml │ │ ├── rhost-aol-02.eml │ │ ├── rhost-aol-03.eml │ │ ├── rhost-aol-04.eml │ │ ├── rhost-aol-05.eml │ │ ├── rhost-aol-06.eml │ │ ├── rhost-apple-01.eml │ │ ├── rhost-apple-02.eml │ │ ├── rhost-apple-03.eml │ │ ├── rhost-apple-04.eml │ │ ├── rhost-cloudflare-01.eml │ │ ├── rhost-cox-01.eml │ │ ├── rhost-facebook-03.eml │ │ ├── rhost-facebook-04.eml │ │ ├── rhost-franceptt-01.eml │ │ ├── rhost-franceptt-02.eml │ │ ├── rhost-franceptt-03.eml │ │ ├── rhost-franceptt-04.eml │ │ ├── rhost-franceptt-05.eml │ │ ├── rhost-franceptt-06.eml │ │ ├── rhost-franceptt-07.eml │ │ ├── rhost-franceptt-08.eml │ │ ├── rhost-franceptt-10.eml │ │ ├── rhost-franceptt-11.eml │ │ ├── rhost-franceptt-12.eml │ │ ├── rhost-godaddy-02.eml │ │ ├── rhost-godaddy-03.eml │ │ ├── rhost-google-01.eml │ │ ├── rhost-google-02.eml │ │ ├── rhost-google-03.eml │ │ ├── rhost-google-04.eml │ │ ├── rhost-google-05.eml │ │ ├── rhost-google-06.eml │ │ ├── rhost-google-07.eml │ │ ├── rhost-google-08.eml │ │ ├── rhost-gsuite-01.eml │ │ ├── rhost-gsuite-02.eml │ │ ├── rhost-gsuite-03.eml │ │ ├── rhost-gsuite-04.eml │ │ ├── rhost-gsuite-05.eml │ │ ├── rhost-gsuite-06.eml │ │ ├── rhost-gsuite-07.eml │ │ ├── rhost-gsuite-08.eml │ │ ├── rhost-gsuite-09.eml │ │ ├── rhost-gsuite-10.eml │ │ ├── rhost-gsuite-11.eml │ │ ├── rhost-gsuite-12.eml │ │ ├── rhost-gsuite-13.eml │ │ ├── rhost-gsuite-14.eml │ │ ├── rhost-gsuite-15.eml │ │ ├── rhost-iua-01.eml │ │ ├── rhost-kddi-01.eml │ │ ├── rhost-kddi-02.eml │ │ ├── rhost-messagelabs-01.eml │ │ ├── rhost-messagelabs-02.eml │ │ ├── rhost-messagelabs-03.eml │ │ ├── rhost-microsoft-01.eml │ │ ├── rhost-microsoft-02.eml │ │ ├── rhost-microsoft-03.eml │ │ ├── rhost-microsoft-04.eml │ │ ├── rhost-microsoft-05.eml │ │ ├── rhost-mimecast-01.eml │ │ ├── rhost-mimecast-02.eml │ │ ├── rhost-nttdocomo-01.eml │ │ ├── rhost-nttdocomo-02.eml │ │ ├── rhost-nttdocomo-03.eml │ │ ├── rhost-outlook-01.eml │ │ ├── rhost-outlook-02.eml │ │ ├── rhost-outlook-03.eml │ │ ├── rhost-outlook-04.eml │ │ ├── rhost-outlook-06.eml │ │ ├── rhost-outlook-07.eml │ │ ├── rhost-outlook-08.eml │ │ ├── rhost-outlook-09.eml │ │ ├── rhost-spectrum-01.eml │ │ ├── rhost-tencent-01.eml │ │ ├── rhost-tencent-02.eml │ │ ├── rhost-tencent-03.eml │ │ ├── rhost-yahooinc-01.eml │ │ ├── rhost-yahooinc-02.eml │ │ └── rhost-yahooinc-03.eml │ ├── dos │ │ ├── arf-01.eml │ │ ├── lhost-activehunter-01.eml │ │ ├── lhost-amavis-01.eml │ │ ├── lhost-amazonses-01.eml │ │ ├── lhost-amazonworkmail-01.eml │ │ ├── lhost-aol-01.eml │ │ ├── lhost-apachejames-01.eml │ │ ├── lhost-barracuda-01.eml │ │ ├── lhost-bigfoot-01.eml │ │ ├── lhost-biglobe-01.eml │ │ ├── lhost-courier-01.eml │ │ ├── lhost-domino-01.eml │ │ ├── lhost-einsundeins-01.eml │ │ ├── lhost-exchange-01.eml │ │ ├── lhost-exchange2003-01.eml │ │ ├── lhost-exchange2007-01.eml │ │ ├── lhost-exim-01.eml │ │ ├── lhost-ezweb-01.eml │ │ ├── lhost-facebook-01.eml │ │ ├── lhost-gmail-01.eml │ │ ├── lhost-gmx-01.eml │ │ ├── lhost-googlegroups-01.eml │ │ ├── lhost-gsuite-01.eml │ │ ├── lhost-imailserver-01.eml │ │ ├── lhost-interscanmss-01.eml │ │ ├── lhost-kddi-01.eml │ │ ├── lhost-mailfoundry-01.eml │ │ ├── lhost-mailmarshalsmtp-01.eml │ │ ├── lhost-mailru-01.eml │ │ ├── lhost-mcafee-01.eml │ │ ├── lhost-messagelabs-01.eml │ │ ├── lhost-messagingserver-01.eml │ │ ├── lhost-mfilter-01.eml │ │ ├── lhost-mxlogic-01.eml │ │ ├── lhost-notes-01.eml │ │ ├── lhost-office365-01.eml │ │ ├── lhost-opensmtpd-01.eml │ │ ├── lhost-outlook-01.eml │ │ ├── lhost-postfix-01.eml │ │ ├── lhost-powermta-01.eml │ │ ├── lhost-qmail-01.eml │ │ ├── lhost-receivingses-01.eml │ │ ├── lhost-sendgrid-01.eml │ │ ├── lhost-sendmail-01.eml │ │ ├── lhost-surfcontrol-01.eml │ │ ├── lhost-v5sendmail-01.eml │ │ ├── lhost-verizon-01.eml │ │ ├── lhost-x1-01.eml │ │ ├── lhost-x2-01.eml │ │ ├── lhost-x3-01.eml │ │ ├── lhost-x4-01.eml │ │ ├── lhost-x5-01.eml │ │ ├── lhost-x6-01.eml │ │ ├── lhost-yahoo-01.eml │ │ ├── lhost-yandex-01.eml │ │ ├── lhost-zoho-01.eml │ │ ├── rfc3464-01.eml │ │ ├── rfc3834-01.eml │ │ ├── rhost-exchangeonline-01.eml │ │ ├── rhost-franceptt-01.eml │ │ ├── rhost-googleapps-01.eml │ │ ├── rhost-iua-01.eml │ │ ├── rhost-kddi-01.eml │ │ └── rhost-tencentqq-01.eml │ ├── err │ │ ├── make-test-01.eml │ │ ├── make-test-02.eml │ │ ├── make-test-03.eml │ │ ├── make-test-04.eml │ │ ├── make-test-05.eml │ │ ├── make-test-06.eml │ │ ├── make-test-07.eml │ │ ├── make-test-08.eml │ │ ├── make-test-09.eml │ │ ├── make-test-10.eml │ │ ├── make-test-11.eml │ │ ├── make-test-12.eml │ │ ├── make-test-13.eml │ │ ├── make-test-14.eml │ │ ├── make-test-15.eml │ │ ├── make-test-16.eml │ │ ├── make-test-17.eml │ │ ├── make-test-18.eml │ │ ├── make-test-19.eml │ │ ├── make-test-20.eml │ │ ├── make-test-21.eml │ │ ├── make-test-22.eml │ │ ├── make-test-23.eml │ │ ├── make-test-24.eml │ │ ├── make-test-25.eml │ │ ├── make-test-26.eml │ │ ├── make-test-27.eml │ │ ├── make-test-28.eml │ │ ├── make-test-29.eml │ │ ├── make-test-30.eml │ │ ├── make-test-31.eml │ │ ├── make-test-32.eml │ │ ├── make-test-33.eml │ │ ├── make-test-34.eml │ │ ├── make-test-35.eml │ │ ├── make-test-36.eml │ │ └── make-test-37.eml │ ├── mac │ │ ├── arf-01.eml │ │ ├── lhost-activehunter-01.eml │ │ ├── lhost-amavis-01.eml │ │ ├── lhost-amazonses-01.eml │ │ ├── lhost-amazonworkmail-01.eml │ │ ├── lhost-aol-01.eml │ │ ├── lhost-apachejames-01.eml │ │ ├── lhost-barracuda-01.eml │ │ ├── lhost-bigfoot-01.eml │ │ ├── lhost-biglobe-01.eml │ │ ├── lhost-courier-01.eml │ │ ├── lhost-domino-01.eml │ │ ├── lhost-einsundeins-01.eml │ │ ├── lhost-exchange-01.eml │ │ ├── lhost-exchange2003-01.eml │ │ ├── lhost-exchange2007-01.eml │ │ ├── lhost-exim-01.eml │ │ ├── lhost-ezweb-01.eml │ │ ├── lhost-facebook-01.eml │ │ ├── lhost-gmail-01.eml │ │ ├── lhost-gmx-01.eml │ │ ├── lhost-googlegroups-01.eml │ │ ├── lhost-gsuite-01.eml │ │ ├── lhost-imailserver-01.eml │ │ ├── lhost-interscanmss-01.eml │ │ ├── lhost-kddi-01.eml │ │ ├── lhost-mailfoundry-01.eml │ │ ├── lhost-mailmarshalsmtp-01.eml │ │ ├── lhost-mailru-01.eml │ │ ├── lhost-mcafee-01.eml │ │ ├── lhost-messagelabs-01.eml │ │ ├── lhost-messagingserver-01.eml │ │ ├── lhost-mfilter-01.eml │ │ ├── lhost-mxlogic-01.eml │ │ ├── lhost-notes-01.eml │ │ ├── lhost-office365-01.eml │ │ ├── lhost-opensmtpd-01.eml │ │ ├── lhost-outlook-01.eml │ │ ├── lhost-postfix-01.eml │ │ ├── lhost-powermta-01.eml │ │ ├── lhost-qmail-01.eml │ │ ├── lhost-receivingses-01.eml │ │ ├── lhost-sendgrid-01.eml │ │ ├── lhost-sendmail-01.eml │ │ ├── lhost-surfcontrol-01.eml │ │ ├── lhost-v5sendmail-01.eml │ │ ├── lhost-verizon-01.eml │ │ ├── lhost-x1-01.eml │ │ ├── lhost-x2-01.eml │ │ ├── lhost-x3-01.eml │ │ ├── lhost-x4-01.eml │ │ ├── lhost-x5-01.eml │ │ ├── lhost-x6-01.eml │ │ ├── lhost-yahoo-01.eml │ │ ├── lhost-yandex-01.eml │ │ ├── lhost-zoho-01.eml │ │ ├── rfc3464-01.eml │ │ ├── rfc3834-01.eml │ │ ├── rhost-exchangeonline-01.eml │ │ ├── rhost-franceptt-01.eml │ │ ├── rhost-googleapps-01.eml │ │ ├── rhost-iua-01.eml │ │ ├── rhost-kddi-01.eml │ │ └── rhost-tencentqq-01.eml │ ├── not │ │ ├── is-not-bounce-01.eml │ │ └── is-not-bounce-02.eml │ └── tmp │ │ ├── arf-22.eml │ │ ├── arf-23.eml │ │ ├── arf-24.eml │ │ ├── lhost-exim-07.eml │ │ ├── rfc3464-37.eml │ │ ├── rfc3464-38.eml │ │ └── rfc3464-39.eml ├── to-be-debugged-because │ └── something-is-wrong │ │ ├── issue-106-01.eml │ │ ├── issue-106-02.eml │ │ └── issue-106-03.eml └── to-be-parsed-for-test │ └── README.md ├── t ├── 000-compile.t ├── 001-sisimai.t ├── 002-sample-emails.t ├── 010-address.t ├── 011-rfc2045.t ├── 012-string.t ├── 013-datetime.t ├── 014-time.t ├── 020-mail.t ├── 021-mail-mbox.t ├── 022-mail-maildir.t ├── 023-mail-stdin.t ├── 024-mail-memory.t ├── 025-smtp.t ├── 026-smtp-status.t ├── 027-smtp-reply.t ├── 028-smtp-failure.t ├── 029-smtp-transcript.t ├── 030-smtp-command.t ├── 031-rfc5322.t ├── 032-rfc1894.t ├── 033-rfc5965.t ├── 034-rfc1123.t ├── 035-rfc791.t ├── 040-message.t ├── 041-order.t ├── 050-lhost.t ├── 070-lda.t ├── 190-emails-crlf-or-cr.t ├── 200-reason.t ├── 201-reason-children.t ├── 300-rhost.t ├── 301-rhost-google.t ├── 302-rhost-microsoft.t ├── 303-rhost-goddady.t ├── 304-rhost-franceptt.t ├── 305-rhost-kddi.t ├── 306-rhost-tencent.t ├── 307-rhost-iua.t ├── 308-rhost-spectrum.t ├── 309-rhost-cox.t ├── 310-rhost-nttdocomo.t ├── 311-rhost-mimecast.t ├── 312-rhost-yahooinc.t ├── 313-rhost-apple.t ├── 314-rhost-aol.t ├── 315-rhost-facebook.t ├── 317-rhost-messagelabs.t ├── 318-rhost-outlook.t ├── 319-rhost-gsuite.t ├── 320-rhost-cloudflare.t ├── 400-callback-base64.t ├── 500-fact.t ├── 600-lhost-code ├── 610-lhost-activehunter.t ├── 611-lhost-amavis.t ├── 612-lhost-amazonses.t ├── 613-lhost-amazonworkmail.t ├── 615-lhost-apachejames.t ├── 620-lhost-barracuda.t ├── 621-lhost-bigfoot.t ├── 622-lhost-biglobe.t ├── 630-lhost-courier.t ├── 640-lhost-domino.t ├── 641-lhost-dragonfly.t ├── 650-lhost-einsundeins.t ├── 651-lhost-exchange2003.t ├── 652-lhost-exchange2007.t ├── 653-lhost-exim.t ├── 654-lhost-ezweb.t ├── 661-lhost-fml.t ├── 670-lhost-gmail.t ├── 671-lhost-gmx.t ├── 672-lhost-googlegroups.t ├── 673-lhost-googleworkspace.t ├── 690-lhost-imailserver.t ├── 691-lhost-interscanmss.t ├── 710-lhost-kddi.t ├── 730-lhost-mailfoundry.t ├── 731-lhost-mailmarshalsmtp.t ├── 732-lhost-mailru.t ├── 733-lhost-mcafee.t ├── 735-lhost-messagingserver.t ├── 736-lhost-mfilter.t ├── 737-lhost-mxlogic.t ├── 740-lhost-notes.t ├── 750-lhost-office365.t ├── 751-lhost-opensmtpd.t ├── 752-lhost-outlook.t ├── 760-lhost-postfix.t ├── 761-lhost-powermta.t ├── 770-lhost-qmail.t ├── 780-lhost-receivingses.t ├── 790-lhost-sendgrid.t ├── 791-lhost-sendmail.t ├── 792-lhost-surfcontrol.t ├── 800-cannot-parse-yet.t ├── 801-reason-is-undefined.t ├── 802-reason-is-onhold.t ├── 820-lhost-v5sendmail.t ├── 821-lhost-verizon.t ├── 850-lhost-yahoo.t ├── 851-lhost-yandex.t ├── 860-lhost-zoho.t ├── 881-lhost-x1.t ├── 882-lhost-x2.t ├── 883-lhost-x3.t ├── 884-lhost-x4.t ├── 885-lhost-x5.t ├── 886-lhost-x6.t ├── 890-rfc3464.t ├── 891-rfc3834.t ├── 899-arf.t ├── 900-modules.pl └── 999-values.pl └── xt ├── 001-used-modules.t ├── 002-sample-emails.t ├── 610-lhost-activehunter.t ├── 611-lhost-amavis.t ├── 612-lhost-amazonses.t ├── 613-lhost-amazonworkmail.t ├── 614-lhost-aol.t ├── 615-lhost-apachejames.t ├── 620-lhost-barracuda.t ├── 621-lhost-bigfoot.t ├── 622-lhost-biglobe.t ├── 630-lhost-courier.t ├── 640-lhost-domino.t ├── 641-lhost-dragonfly.t ├── 650-lhost-einsundeins.t ├── 651-lhost-exchange2003.t ├── 652-lhost-exchange2007.t ├── 653-lhost-exim.t ├── 654-lhost-ezweb.t ├── 660-lhost-facebook.t ├── 661-lhost-fml.t ├── 670-lhost-gmail.t ├── 671-lhost-gmx.t ├── 672-lhost-googlegroups.t ├── 673-lhost-googleworkspace.t ├── 690-lhost-imailserver.t ├── 691-lhost-interscanmss.t ├── 710-lhost-kddi.t ├── 730-lhost-mailfoundry.t ├── 731-lhost-mailmarshalsmtp.t ├── 732-lhost-mailru.t ├── 733-lhost-mcafee.t ├── 734-lhost-messagelabs.t ├── 735-lhost-messagingserver.t ├── 736-lhost-mfilter.t ├── 737-lhost-mxlogic.t ├── 740-lhost-notes.t ├── 750-lhost-office365.t ├── 751-lhost-opensmtpd.t ├── 752-lhost-outlook.t ├── 760-lhost-postfix.t ├── 761-lhost-powermta.t ├── 770-lhost-qmail.t ├── 780-lhost-receivingses.t ├── 790-lhost-sendgrid.t ├── 791-lhost-sendmail.t ├── 792-lhost-surfcontrol.t ├── 820-lhost-v5sendmail.t ├── 821-lhost-verizon.t ├── 850-lhost-yahoo.t ├── 851-lhost-yandex.t ├── 860-lhost-zoho.t ├── 881-lhost-x1.t ├── 882-lhost-x2.t ├── 883-lhost-x3.t ├── 884-lhost-x4.t ├── 885-lhost-x5.t ├── 886-lhost-x6.t ├── 890-rfc3464.t ├── 891-rfc3834.t └── 899-arf.t /.github/workflows/codecovio.yml: -------------------------------------------------------------------------------- 1 | name: Upload coverage reports to Codecov 2 | on: 3 | push: 4 | branches: ["5-stable"] 5 | pull_request: 6 | branches: ["*"] 7 | jobs: 8 | codecov: 9 | runs-on: ubuntu-latest 10 | container: perl:latest 11 | steps: 12 | - name: Checkout the repository 13 | uses: actions/checkout@v4 14 | with: 15 | ref: ${{ github.event.pull_request.head.ref }} 16 | - name: Install modules 17 | run: cpanm --installdeps . 18 | - name: Install modules for the coverage 19 | run: | 20 | cpanm --quiet --notest Module::Build Module::Build::Tiny Devel::Cover Devel::Cover::Report::Codecovbash 21 | perl Build.PL 22 | ./Build build 23 | - name: Execute cover command 24 | run: cover -test -report codecovbash 25 | - name: Run Codecov on GitHub Actions 26 | uses: codecov/codecov-action@v4.4.0 27 | with: 28 | verbose: true 29 | token: ${{ secrets.CODECOV_TOKEN }} 30 | 31 | -------------------------------------------------------------------------------- /.github/workflows/make-test.yml: -------------------------------------------------------------------------------- 1 | name: make test 2 | on: 3 | push: 4 | branches: ["5-stable"] 5 | pull_request: 6 | branches: ["*"] 7 | jobs: 8 | test: 9 | name: Make Test with Perl ${{ matrix.perl }} 10 | runs-on: ubuntu-latest 11 | strategy: 12 | fail-fast: false 13 | matrix: 14 | perl: ["5.26", "5.38", "5.40"] 15 | steps: 16 | - name: Checkout the repository 17 | uses: actions/checkout@v4 18 | with: 19 | ref: ${{ github.event.pull_request.head.ref }} 20 | - name: Setup Perl 21 | uses: shogo82148/actions-setup-perl@v1 22 | with: 23 | perl-version: ${{ matrix.perl }} 24 | - name: Install modules 25 | run: cpanm --installdeps . 26 | - name: Check the Perl version 27 | run: perl -v 28 | - name: Execute tests 29 | run: make test 30 | 31 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.build/ 2 | /_build/ 3 | /Build 4 | /bin 5 | /blib 6 | /sbin 7 | /set-of-emails/private 8 | /set-of-emails/obsoleted 9 | /var 10 | 11 | # Carton releated files 12 | /carton.lock 13 | /.carton/ 14 | /local/ 15 | 16 | # Devel::NYTProf related files 17 | nytprof* 18 | 19 | # Devel::Cover related files 20 | cover_db/ 21 | 22 | *.bak 23 | *.old 24 | *~ 25 | *.swp 26 | *.o 27 | *.obj 28 | /tmp 29 | cpanm 30 | 31 | !LICENSE 32 | 33 | MYMETA.* 34 | 35 | /Sisimai-* 36 | 37 | # Under the development 38 | -------------------------------------------------------------------------------- /Build.PL: -------------------------------------------------------------------------------- 1 | # ========================================================================= 2 | # THIS FILE IS AUTOMATICALLY GENERATED BY MINILLA. 3 | # DO NOT EDIT DIRECTLY. 4 | # ========================================================================= 5 | 6 | use 5.008_001; 7 | use strict; 8 | 9 | use Module::Build::Tiny 0.035; 10 | 11 | Build_PL(); 12 | 13 | -------------------------------------------------------------------------------- /CONTRIBUTING: -------------------------------------------------------------------------------- 1 | CONTRIBUTING 2 | =============================================================================== 3 | 4 | 5 | -------------------------------------------------------------------------------- /ChangeLog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/ChangeLog.md -------------------------------------------------------------------------------- /Changes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/Changes -------------------------------------------------------------------------------- /KNOWNBUGS: -------------------------------------------------------------------------------- 1 | * https://github.com/sisimai/p5-sisimai/issues?utf8=✓&q=is%3Aissue+is%3Aopen+label%3Abug 2 | * http://www.cpantesters.org/cpan/report/4e07aec4-6c7b-1014-a1cb-f11f8ac59954 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 2-Clause License 2 | 3 | Copyright (c) 2014-2018, azumakuniyuki 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | * Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | * Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 19 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 20 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 22 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 23 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 25 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | 27 | -------------------------------------------------------------------------------- /cpanfile: -------------------------------------------------------------------------------- 1 | # __ _ _ 2 | # ___ _ __ __ _ _ __ / _(_) | ___ 3 | # / __| '_ \ / _` | '_ \| |_| | |/ _ \ 4 | # | (__| |_) | (_| | | | | _| | | __/ 5 | # \___| .__/ \__,_|_| |_|_| |_|_|\___| 6 | # |_| 7 | # - https://perldoc.jp/docs/modules/Module-CPANfile-1.0001/lib/cpanfile.pod 8 | # - https://perldoc.jp/docs/modules/CPAN-Meta-2.132140/lib/CPAN/Meta/Spec.pod#Version32Formats 9 | # ------------------------------------------------------------------------------------------------- 10 | # Perl binary and core modules 11 | requires 'perl', '>= 5.26.0'; 12 | requires 'Module::Load', '>= 0.32'; 13 | requires 'Time::Local', '>= 1.19'; 14 | requires 'Time::Piece', '>= 1.29'; 15 | 16 | # Non-Core modules 17 | requires 'JSON', '>= 2.90'; 18 | requires 'Class::Accessor::Lite', '>= 0.05'; 19 | 20 | # ------------------------------------------------------------------------------------------------- 21 | on 'test' => sub { 22 | requires 'Test::More', '0.98'; 23 | }; 24 | 25 | on 'develop' => sub { 26 | requires 'Test::UsedModules', '0.03'; 27 | }; 28 | 29 | -------------------------------------------------------------------------------- /lib/Sisimai/Lhost/Exchange2007.pm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/lib/Sisimai/Lhost/Exchange2007.pm -------------------------------------------------------------------------------- /lib/Sisimai/RFC1123.pm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/lib/Sisimai/RFC1123.pm -------------------------------------------------------------------------------- /lib/Sisimai/Reason/Feedback.pm: -------------------------------------------------------------------------------- 1 | package Sisimai::Reason::Feedback; 2 | use v5.26; 3 | use strict; 4 | use warnings; 5 | 6 | sub text { 'feedback' } 7 | sub description { 'Email forwarded to the sender as a complaint message from your mailbox provider' } 8 | sub match { return undef } 9 | sub true { return undef } 10 | 1; 11 | 12 | __END__ 13 | 14 | =encoding utf-8 15 | 16 | =head1 NAME 17 | 18 | Sisimai::Reason::Feedback - Email forwarded as a complaint message 19 | 20 | =head1 SYNOPSIS 21 | 22 | use Sisimai::Reason::Feedback; 23 | print Sisimai::Reason::Feedback->text; # feedback 24 | 25 | =head1 DESCRIPTION 26 | 27 | C is for only returning the text and the description. This class is called 28 | only from Creason()> method and C class. 29 | 30 | =head1 CLASS METHODS 31 | 32 | =head2 C> 33 | 34 | C method returns the fixed string C. 35 | 36 | print Sisimai::Reason::Feedback->text; # feedback 37 | 38 | =head2 C)>> 39 | 40 | C method always return C 41 | 42 | =head2 C)>> 43 | 44 | C method always return C 45 | 46 | =head1 AUTHOR 47 | 48 | azumakuniyuki 49 | 50 | =head1 COPYRIGHT 51 | 52 | Copyright (C) 2016,2021,2024 azumakuniyuki, All rights reserved. 53 | 54 | =head1 LICENSE 55 | 56 | This software is distributed under The BSD 2-Clause License. 57 | 58 | =cut 59 | 60 | -------------------------------------------------------------------------------- /lib/Sisimai/Reason/Undefined.pm: -------------------------------------------------------------------------------- 1 | package Sisimai::Reason::Undefined; 2 | use v5.26; 3 | use strict; 4 | use warnings; 5 | 6 | sub text { 'undefined' } 7 | sub description { 'Sisimai could not detect an error reason' } 8 | sub match { return undef } 9 | sub true { return undef } 10 | 1; 11 | 12 | __END__ 13 | 14 | =encoding utf-8 15 | 16 | =head1 NAME 17 | 18 | Sisimai::Reason::Undefined - Sisimai could not detect the error reason. 19 | 20 | =head1 SYNOPSIS 21 | 22 | use Sisimai::Reason::Undefined; 23 | print Sisimai::Reason::Undefined->text; # undefined 24 | 25 | =head1 DESCRIPTION 26 | 27 | C is for only returning the text and the description. 28 | This class is called only from Creason()> method. 29 | 30 | =head1 CLASS METHODS 31 | 32 | =head2 C> 33 | 34 | C method returns the fixed string C. 35 | 36 | print Sisimai::Reason::Undefined->text; # undefined 37 | 38 | =head2 C)>> 39 | 40 | C method always return C 41 | 42 | =head2 C)>> 43 | 44 | C method always return C 45 | 46 | =head1 AUTHOR 47 | 48 | azumakuniyuki 49 | 50 | =head1 COPYRIGHT 51 | 52 | Copyright (C) 2016,2020,2021,2024 azumakuniyuki, All rights reserved. 53 | 54 | =head1 LICENSE 55 | 56 | This software is distributed under The BSD 2-Clause License. 57 | 58 | =cut 59 | 60 | -------------------------------------------------------------------------------- /lib/Sisimai/SMTP.pm: -------------------------------------------------------------------------------- 1 | package Sisimai::SMTP; 2 | use v5.26; 3 | use strict; 4 | use warnings; 5 | 1; 6 | __END__ 7 | 8 | =encoding utf-8 9 | 10 | =head1 NAME 11 | 12 | Sisimai::SMTP - SMTP Status Codes related utilities 13 | 14 | =head1 SYNOPSIS 15 | 16 | use Sisimai::SMTP; 17 | 18 | =head1 DESCRIPTION 19 | 20 | C is a parent class of C, and C. 21 | 22 | =head1 AUTHOR 23 | 24 | azumakuniyuki 25 | 26 | =head1 COPYRIGHT 27 | 28 | Copyright (C) 2015-2016,2020,2022,2024 azumakuniyuki, All rights reserved. 29 | 30 | =head1 LICENSE 31 | 32 | This software is distributed under The BSD 2-Clause License. 33 | 34 | =cut 35 | 36 | -------------------------------------------------------------------------------- /lib/Sisimai/String.pm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/lib/Sisimai/String.pm -------------------------------------------------------------------------------- /lib/Sisimai/Time.pm: -------------------------------------------------------------------------------- 1 | package Sisimai::Time; 2 | use parent 'Time::Piece'; 3 | use v5.26; 4 | use strict; 5 | use warnings; 6 | 7 | sub TO_JSON { 8 | # Instance method for JSON::encode() 9 | # @return [Integer] Machine time 10 | my $self = shift; 11 | return $self->epoch; 12 | } 13 | 14 | 1; 15 | __END__ 16 | 17 | =encoding utf-8 18 | 19 | =head1 NAME 20 | 21 | Sisimai::Time - Child class of C for C 22 | 23 | =head1 SYNOPSIS 24 | 25 | use Sisimai::Time; 26 | my $v = Sisimai::Time->new; 27 | 28 | =head1 DESCRIPTION 29 | 30 | C is a child class of C for C. 31 | 32 | =head1 AUTHOR 33 | 34 | azumakuniyuki 35 | 36 | =head1 COPYRIGHT 37 | 38 | Copyright (C) 2015,2020 azumakuniyuki, All rights reserved. 39 | 40 | =head1 LICENSE 41 | 42 | This software is distributed under The BSD 2-Clause License. 43 | 44 | =cut 45 | 46 | -------------------------------------------------------------------------------- /minil.toml: -------------------------------------------------------------------------------- 1 | name = "Sisimai" 2 | license = "freebsd" 3 | homepage = "https://libsisimai.org/" 4 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/arf-11.eml: -------------------------------------------------------------------------------- 1 | From: 2 | Date: Thu, 9 Apr 2006 23:34:45 JST 3 | Subject: FW: Nyaaan 4 | To: 5 | MIME-Version: 1.0 6 | Content-Type: multipart/report; report-type=feedback-report; boundary="fffffff_000.000000000_b" 7 | 8 | --fffffff_000.000000000_b 9 | Content-Type: text/plain; charset="US-ASCII" 10 | Content-Transfer-Encoding: 7bit 11 | 12 | This is an email abuse report for an email message received from IP 192.0.2.2 on Thu, 9 Apr 2006 23:34:45 JST. 13 | For more information about this format please see http://www.example.org/arf/. 14 | 15 | --fffffff_000.000000000_b 16 | Content-Type: message/feedback-report 17 | 18 | Feedback-Type: abuse 19 | User-Agent: ARF-Agent/1.0 20 | Version: 0.1 21 | 22 | --fffffff_000.000000000_b 23 | Content-Type: message/rfc822 24 | Content-Disposition: inline 25 | 26 | From: 27 | Received: from mx53.example.net (mx53.example.net [192.0.2.2]) 28 | by example.com with ESMTP id 00000000000fff; Thu, 09 Apr 2006 23:34:45 +0900 29 | To: 30 | Subject: Nyaaan 31 | MIME-Version: 1.0 32 | Content-type: text/plain 33 | Message-ID: ffffffffffffffffffffffffff0000000000@example.net 34 | Date: Thu, 09 Apr 2006 23:34:45 +0900 35 | 36 | Nyaaaaaaaaan 37 | --fffffff_000.000000000_b-- 38 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/arf-12.eml: -------------------------------------------------------------------------------- 1 | From: 2 | Date: Thu, 9 Apr 2006 23:34:45 JST 3 | Subject: FW: Nyaaan 4 | To: 5 | MIME-Version: 1.0 6 | Content-Type: multipart/report; report-type=feedback-report; 7 | boundary="bx1111_00.ffffffffffff" 8 | 9 | --bx1111_00.ffffffffffff 10 | Content-Type: text/plain; charset="US-ASCII" 11 | Content-Transfer-Encoding: 7bit 12 | 13 | This is an opt-out report for an email message received from IP 14 | 192.0.2.89 on Thu, 9 Apr 2006 23:34:45 JST. For more information 15 | about this format please see http://www.example.org/arf/. 16 | 17 | --bx1111_00.ffffffffffff 18 | Content-Type: message/feedback-report 19 | 20 | Feedback-Type: opt-out 21 | User-Agent: ARF-Agent/1.0 22 | Version: 0.1 23 | Removal-Recipient: user@example.com 24 | 25 | --bx1111_00.ffffffffffff 26 | Content-Type: text/rfc822-header 27 | 28 | From: 29 | Received: from mx90.example.net (mx90.example.net [192.0.2.89]) 30 | by example.com with ESMTP id ffffffffffff00; Thu, 09 Apr 2006 23:34:45 +0900 31 | To: 32 | Subject: Nyaaan 33 | MIME-Version: 1.0 34 | Content-type: text/plain 35 | Message-ID: 0000000000000000000000000@example.net 36 | Date: Thu, 02 Sep 2006 23:34:45 +0900 37 | 38 | Nyaaaan 39 | --bx1111_00.ffffffffffff-- 40 | 41 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/arf-26.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 2 May 2024 17:48:55 +0000 (UTC) 2 | From: example@icloud.com 3 | Reply-To: example@icloud.com 4 | To: opt-out-100731.e75std53hz8rnmy4r@example.org 5 | Message-ID: <898B6152-36BC-4F4B-ABF8-2694A88CB5FC@icloud.com> 6 | Subject: unsubscribe 7 | MIME-Version: 1.0 8 | Content-Type: text/plain; charset=UTF-8 9 | Content-Transfer-Encoding: quoted-printable 10 | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=icloud.com; 11 | s=1a1hai; t=1714672136; bh=63IYtxpNtEan90vzJQT9iqnMeWHy9rlx8iFLnco1rRc=; 12 | h=Content-Type:From:Mime-Version:Date:Subject:Message-Id:To; 13 | b=AoovfvadwxCx8Pp5yD62kw1AcKMQV32RhSrBsyw4qLr/CVsQo1tIh+xCUPdI7So9i 14 | paxzn20YdVvHuP3f8CxT/q3x9WaQV3NDAmbbQumYwOpJk7yNXRkuWNjIlt6isZM0tb 15 | FK8v+Tq3j3Va83mZ6OeR8ZjvfY8ImjewEOTEZ79sNxToaaHvRuDWRbzt4uaktRuL44 16 | j1wEjiKxgy6f7bOC2XJyRaf41BtCm4V6TGtcBF9hOEMzn6LulaLgashs3yGQ92wkb9 17 | OLSy1uP0iA4nj/qAM+QaauAFzmqYmqa9r7rUFCjqf01q4gvn1QfO4QVqiRQXiMXc8e 18 | QPSqskbSbsIQA== 19 | X-Proofpoint-GUID: fiybgv3DewxSxApGH8GnpeSw3OZld4ll 20 | Auto-Submitted: auto-replied 21 | X-Apple-Unsubscribe: true 22 | X-Proofpoint-ORIG-GUID: fiybgv3DewxSxApGH8GnpeSw3OZld4ll 23 | X-Virus-Status: Clean 24 | 25 | Apple Mail sent this email to unsubscribe from the message =E2=80=9Cunsubsc= 26 | ribe=E2=80=9D. 27 | 28 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-domino-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mta52.example.jp (mta52.example.jp [192.0.2.89]) 3 | by mx.example.com (8.14.1/8.12.11) with ESMTP id o000000000 4 | for ; Tue, 29 Apr 2010 10:45:04 -0700 5 | Received: from mta52.example.jp (MTAXYZ [127.0.0.1]) 6 | by mx0.example.jp (localhost) with ESMTP id 0000000000 7 | for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) 8 | Received: from x.mail.example.jp (x.mail.example.jp [192.0.2.25]) 9 | by mta52.example.jp (localhost) with ESMTP id 8888888888 10 | for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) 11 | Date: Tue, 29 Apr 2010 10:54:01 -0700 12 | MIME-Version: 1.0 13 | From: Postmaster@example.jp 14 | To: Sender Address 15 | Subject: DELIVERY FAILURE: User Kijitoranyan (kijitora@example.jp) not listed in 16 | Domino Directory 17 | X-OriginalArrivalTime: 29 Apr 2010 19:02:59.0038 (UTC) FILETIME=[00000000:00000000] 18 | Message-ID: <0000000000.000000000-000000000.00000000-00000000.00000000@example.com> 19 | Content-Type: Text/Plain 20 | Content-Transfer-Encoding: 8bit 21 | 22 | Your message 23 | 24 | Subject: Test Bounce 25 | 26 | was not delivered to: 27 | 28 | kijitora@example.jp 29 | 30 | because: 31 | 32 | User some.name (kijitora@example.jp) not listed in Domino Directory 33 | 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-03.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0720 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:09:35 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:09:35 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mta5.am0.yahoodns.net [67.195.204.79] did not like our final DATA: 17 | 554 5.7.9 Message not accepted for policy reasons. See https://senders.yahooinc.com/error-codes 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e06d1 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:09:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:09:33 +0900 30 | Message-Id: <6668144d.e06d1.1bdca37a@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-04.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0724 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:15:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:15:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | DNS lookup failure: host cx.libsisimai.org not found 17 | 18 | Message headers follow. 19 | 20 | Received: from root (uid 0) 21 | (envelope-from kijitora@df.example.jp) 22 | id e0722 23 | by df.example.jp (DragonFly Mail Agent v0.13); 24 | Tue, 11 Jun 2024 18:15:33 +0900 25 | Subject: Nyaan 01 26 | To: 27 | User-Agent: mail (GNU Mailutils 3.14) 28 | Date: Tue, 11 Jun 2024 18:15:33 +0900 29 | Message-Id: <666815b5.e0722.4e479ce6@df.example.jp> 30 | From: 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-05.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0724 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:17:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:17:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.7.26 : Recipient address rejected: Multiple authentication checks failed 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0722 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:17:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:17:33 +0900 30 | Message-Id: <6668162d.e0722.3a6a6f36@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-06.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0726 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:21:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:21:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.7.25 : Recipient address rejected: Reverse DNS validation failed: See https://libsisimai.org/en/reason/#blocked 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0724 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:21:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:21:33 +0900 30 | Message-Id: <6668171d.e0724.4a78d49a@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-07.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0726 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:23:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:23:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.6.0 : Recipient address rejected: Media error. See https://libsisimai.org/en/reason/#contenterror 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0724 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:23:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:23:33 +0900 30 | Message-Id: <66681795.e0724.764d9012@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-08.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0726 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:25:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:25:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 552 5.2.3 : Recipient address rejected: Message length exceeds administrative limit. See https://libsisimai.org/en/reason/#exceedlimit 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0724 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:25:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:25:33 +0900 30 | Message-Id: <6668180d.e0724.7c2abac3@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-09.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:29:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:29:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.2.1 : Recipient address rejected: User unknown. See https://libsisimai.org/en/reason/#filtered 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:29:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:29:33 +0900 30 | Message-Id: <666818fd.e0726.7e456d07@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-10.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:31:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:31:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.1.6 : Recipient address rejected: Destination mailbox has moved, No forwarding address. See https://libsisimai.org/en/reason/#hasmoved 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:31:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:31:33 +0900 30 | Message-Id: <66681975.e0726.7dcedb39@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-11.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:33:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:33:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.1.2 : Recipient address rejected: Bad destination system address. See https://libsisimai.org/en/reason/#hostunknown 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:33:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:33:33 +0900 30 | Message-Id: <666819ed.e0726.115fa400@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-12.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:35:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:35:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 552 5.2.2 : Recipient address rejected: Mailbox full. See https://libsisimai.org/en/reason/#mailboxfull 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:35:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:35:33 +0900 30 | Message-Id: <66681a65.e0726.29ed079c@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-13.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:37:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:37:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 554 5.3.0 : Recipient address rejected: Mailer error. See https://libsisimai.org/en/reason/#mailererror 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:37:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:37:33 +0900 30 | Message-Id: <66681add.e0726.72bc0b4c@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-14.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0728 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:39:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:39:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 554 5.3.4 : Recipient address rejected: Message too big for system. See https://libsisimai.org/en/reason/#mesgtoobig 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0726 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:39:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:39:33 +0900 30 | Message-Id: <66681b55.e0726.3201b1e4@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-15.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072a 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:43:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:43:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.7.0 : Recipient address rejected: No relaying. See https://libsisimai.org/en/reason/#norelaying 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0728 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:43:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:43:33 +0900 30 | Message-Id: <66681c45.e0728.e963bd9@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-16.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072a 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:45:33 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:45:33 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 521 5.3.2 : Recipient address rejected: System not accepting network messages. See https://libsisimai.org/en/reason/#notaccept 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0728 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:45:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:45:33 +0900 30 | Message-Id: <66681cbd.e0728.29f828c0@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-17.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072a 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:47:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:47:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.0.0 : Recipient address rejected: On hold. See https://libsisimai.org/en/reason/#onhold 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0728 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:47:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:47:33 +0900 30 | Message-Id: <66681d35.e0728.180b873f@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-18.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072a 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:49:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:49:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.7.0 : Recipient address rejected: Policy violation. See https://libsisimai.org/en/reason/#policyviolation 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0728 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:49:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:49:33 +0900 30 | Message-Id: <66681dad.e0728.6b657381@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-19.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072c 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:53:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:53:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 551 5.7.1 : Recipient address rejected: Delivery not authorized. See https://libsisimai.org/en/reason/#securityerror 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e072a 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:53:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:53:33 +0900 30 | Message-Id: <66681e9d.e072a.9c343d6@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-20.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072c 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:55:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:55:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.7.0 : Recipient address rejected: Spam detected. See https://libsisimai.org/en/reason/#spamdetected 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e072a 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:55:33 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:55:33 +0900 30 | Message-Id: <66681f15.e072a.19d854c3@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-21.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072e 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 18:59:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 18:59:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 525 5.7.13 : Recipient address rejected: User account disabled. See https://libsisimai.org/en/reason/#suspend 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e072c 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:59:34 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:59:34 +0900 30 | Message-Id: <66682006.e072c.184b1dc1@df.example.jp> 31 | From: 32 | 33 | 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-22.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072e 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 19:01:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 19:01:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 501 5.1.3 : Recipient address rejected: Bad destination mailbox address syntax. See https://libsisimai.org/en/reason/#syntaxerror 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e072c 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 19:01:34 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 19:01:34 +0900 30 | Message-Id: <6668207e.e072c.4296cb8d@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-23.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e072e 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 19:03:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 19:03:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 554 5.3.0 : Recipient address rejected: Internal system error. See https://libsisimai.org/en/reason/#systemerror 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e072c 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 19:03:34 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 19:03:34 +0900 30 | Message-Id: <666820f6.e072c.44bd3f67@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-24.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e0734 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Tue, 11 Jun 2024 19:11:34 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Tue, 11 Jun 2024 19:11:34 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 17 | 550 5.1.1 : Recipient address rejected: User unknown. See https://libsisimai.org/en/reason/#userunknown 18 | 19 | Message headers follow. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0732 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 19:11:34 +0900 26 | Subject: Nyaan 01 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 19:11:34 +0900 30 | Message-Id: <666822d6.e0732.f6410e7@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-25.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Tue Jun 11 19:13:34 2024 2 | Received: from MAILER-DAEMON 3 | id e0734 4 | by df.example.jp (DragonFly Mail Agent v0.13); 5 | Tue, 11 Jun 2024 19:13:34 +0900 6 | X-Original-To: 7 | From: MAILER-DAEMON <> 8 | To: kijitora@df.example.jp 9 | Subject: Mail delivery failed 10 | Message-Id: 11 | Date: Tue, 11 Jun 2024 19:13:34 +0900 12 | 13 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 14 | 15 | There was an error delivering your mail to . 16 | 17 | mail-inbound.libsisimai.net [192.0.2.25] did not like our RCPT TO: 18 | 550 5.7.0 : Recipient address rejected: Virus detected. See https://libsisimai.org/en/reason/#virusdetected 19 | 20 | Message headers follow. 21 | 22 | Received: from root (uid 0) 23 | (envelope-from kijitora@df.example.jp) 24 | id e0732 25 | by df.example.jp (DragonFly Mail Agent v0.13); 26 | Tue, 11 Jun 2024 19:13:34 +0900 27 | Subject: Nyaan 01 28 | To: 29 | User-Agent: mail (GNU Mailutils 3.14) 30 | Date: Tue, 11 Jun 2024 19:13:34 +0900 31 | Message-Id: <6668234e.e0732.58e0b9ce@df.example.jp> 32 | From: 33 | 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-26.eml: -------------------------------------------------------------------------------- 1 | Received: from MAILER-DAEMON 2 | id e071e 3 | by df.example.jp (DragonFly Mail Agent v0.13); 4 | Wed, 12 Jun 2024 08:46:42 +0900 5 | X-Original-To: 6 | From: MAILER-DAEMON <> 7 | To: kijitora@df.example.jp 8 | Subject: Mail delivery failed 9 | Message-Id: 10 | Date: Wed, 12 Jun 2024 08:46:42 +0900 11 | 12 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 13 | 14 | There was an error delivering your mail to . 15 | 16 | mbox.example.org [192.0.2.25] did not like our RCPT TO: 17 | 550 5.1.1 : Recipient address rejected: User unknown 18 | 19 | Original message follows. 20 | 21 | Received: from root (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0003 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Wed, 12 Jun 2024 08:46:42 +0900 26 | Subject: Nyaan ? 27 | To: nekochan 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Wed, 12 Jun 2024 08:46:42 +0900 30 | Message-Id: <6668e1e2.e0003.9b9b713@df.example.jp> 31 | From: 32 | 33 | df.example.jp 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-29.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Sun Jun 16 18:30:26 2024 2 | Received: from MAILER-DAEMON 3 | id e06d1 4 | by df.example.jp (DragonFly Mail Agent v0.13); 5 | Sun, 16 Jun 2024 18:30:26 +0900 6 | X-Original-To: 7 | From: MAILER-DAEMON <> 8 | To: kijitora@df.example.jp 9 | Subject: Mail delivery failed 10 | Message-Id: 11 | Date: Sun, 16 Jun 2024 18:30:26 +0900 12 | 13 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 14 | 15 | There was an error delivering your mail to . 16 | 17 | Could not deliver for the last 432000 seconds. Giving up. 18 | 19 | Message headers follow. 20 | 21 | Received: from kijitora (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e0724 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:27:33 +0900 26 | Subject: Nyaan 02 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:27:33 +0900 30 | Message-Id: <66681885.e0724.329a3871@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-dragonfly-30.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Sun Jun 16 18:15:07 2024 2 | Received: from MAILER-DAEMON 3 | id e070f 4 | by df.example.jp (DragonFly Mail Agent v0.13); 5 | Sun, 16 Jun 2024 18:15:07 +0900 6 | X-Original-To: 7 | From: MAILER-DAEMON <> 8 | To: kijitora@df.example.jp 9 | Subject: Mail delivery failed 10 | Message-Id: 11 | Date: Sun, 16 Jun 2024 18:15:07 +0900 12 | 13 | This is the DragonFly Mail Agent v0.13 at df.example.jp. 14 | 15 | There was an error delivering your mail to . 16 | 17 | Could not deliver for the last 432000 seconds. Giving up. 18 | 19 | Message headers follow. 20 | 21 | Received: from kijitora (uid 0) 22 | (envelope-from kijitora@df.example.jp) 23 | id e06d1 24 | by df.example.jp (DragonFly Mail Agent v0.13); 25 | Tue, 11 Jun 2024 18:11:33 +0900 26 | Subject: Nyaan 02 27 | To: 28 | User-Agent: mail (GNU Mailutils 3.14) 29 | Date: Tue, 11 Jun 2024 18:11:33 +0900 30 | Message-Id: <666814c5.e06d1.45bde26c@df.example.jp> 31 | From: 32 | 33 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-exchange2003-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from gw.example.com ([192.0.2.23]) 3 | by gw2.ext.example.net (Post.Office MTA v0.0.0 4 | release (P0000-000x) ID# 0-00000000000000000) with ESMTP 5 | id 0000001 for ; 6 | Thu, 29 Apr 2010 00:00:00 -0000 7 | Received: by gw with Internet Mail Service (5.5.1960.3) 8 | id <00000000>; Thu, 29 Apr 2010 00:00:00 -0000 9 | Message-ID: <00000000000000000000000000000000000000@gw.example.com> 10 | From: System Administrator 11 | To: shironeko@example.com 12 | Subject: Undeliverable: Kijitora Cat 13 | Date: Thu, 29 Apr 2010 00:00:00 -0000 14 | X-MS-TNEF-Correlator: <00000000000000000000000000000000000000@example.com> 15 | X-Mailer: Internet Mail Service (5.5.1960.3) 16 | X-MS-Embedded-Report: 17 | 18 | Your message 19 | 20 | To: shironeko@example.com 21 | Subject: Kijitora Cat 22 | Sent: Thu, 29 Apr 2010 00:00:00 -0000 23 | 24 | did not reach the following recipient(s): 25 | 26 | kijitora@example.jp on Thu, 29 Apr 2010 00:00:00 -0000 27 | The recipient name is not recognized 28 | MSEXCH:IMS:NNN:KIJITORACAT:NEKO 0 (000C05A6) 29 | Unknown Recipient 30 | 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-exchange2003-04.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from mx8.example.com ([192.0.2.87]) 3 | by relay9.example.ne.jp (Post.Office MTA v3.1.2 release (PO203-101c) 4 | ID# 0-00000000000000000) with SMTP id 00000000for ; 5 | Thu, 29 Apr 2001 23:34:45 +0900 6 | Received: by mx8.example.com with SMTP 7 | (Microsoft Exchange Server Internet Mail Connector Version 4.0.994.63) 8 | id <00000000.00000000@mx8.example.com>; Thu, 29 Apr 2001 23:34:45 +0900 9 | Message-ID: <00000000.00000000@mx8.example.com> 10 | From: System Administrator 11 | To: 12 | Subject: Undeliverable: Nyaan 13 | Date: Thu, 29 Apr 2001 23:34:45 +0900 14 | X-Mailer: Microsoft Exchange Server Internet Mail Connector Version 4.0.994.63 15 | 16 | 17 | Your message did not reach some or all of the intended recipients. 18 | 19 | To: shironeko@example.jp 20 | Subject: Nyaan 21 | Sent: 4/29/01 11:34:45 PM 22 | 23 | The following recipient(s) could not be reached: 24 | 25 | kijitora@example.com on 4/29/01 11:34:45 PM 26 | Recipient Not Found 27 | MSEXCH:IMC:NEKO:KIJITORA:CAT 28 | 29 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-exim-07.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Mon 1 Jan 2015 00:00:00 +0900 2 | Return-Path: <> 3 | X-Original-To: shironeko@example.ad.jp 4 | Delivered-To: shironeko@example.ad.jp 5 | Received: from shiba@example.com 6 | by xxxxxx (Postfix) with ESMTPS id xxxxxx 7 | for shironeko@example.ad.jp; Mon, 1 Jan 2015 00:00:00 +0900 (JST) 8 | Received: from Debian-exim by xxxxxx with local 9 | id xxxxxxx; Mon, 1 Jan 2015 00:00:00 +0900 10 | X-Failed-Recipients: shiba@example.com 11 | Reply-To: shiba@example.com 12 | Auto-Submitted: auto-replied 13 | From: Mail Delivery System 14 | To: shironeko@example.ad.jp 15 | Subject: Mail delivery failed: returning message to sender 16 | Date: Mon, 1 Jan 2015 00:00:00 +0900 17 | 18 | This message was created automatically by mail delivery software. 19 | 20 | A message that you sent could not be delivered to one or more of its 21 | recipients. This is a permanent error. The following address(es) failed: 22 | 23 | save to xxxx 24 | generated by xxxx 25 | mailbox is full: retry timeout exceeded 26 | 27 | ------ This is a copy of the message, including all the headers. ------ 28 | 29 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-exim-52.eml: -------------------------------------------------------------------------------- 1 | Return-path: <> 2 | Envelope-to: sironeko@neko.example.com 3 | Delivery-date: Thu, 29 Apr 2016 23:45:56 +0900 4 | Received: from nekochan by neko.example.com with local (Exim 4.86) 5 | id 2neko2-222222-22 6 | for sironeko@neko.example.com; Thu, 29 Apr 2016 23:45:56 +0900 7 | Auto-Submitted: auto-replied 8 | From: Mail Delivery System 9 | To: sironeko@neko.example.com 10 | Subject: Mail failure - malformed recipient address 11 | Message-Id: 12 | Date: Thu, 29 Apr 2016 23:45:56 +0900 13 | 14 | A message that you sent contained one or more recipient addresses that were 15 | incorrectly constructed: 16 | 17 | kijitora@example.com : malformed address: may not follow kijitora@example.com 18 | 19 | This address has been ignored. The other addresses in the message were 20 | syntactically valid and have been passed on for an attempt at delivery. 21 | 22 | ------ This is a copy of your message, including all the headers. ------ 23 | 24 | To: neko@example.net 25 | Subject: Nyaan 26 | MIME-Version: 1.0 27 | Content-type: text/html; charset=utf-8 28 | To: kijitora@example.com 29 | From: "Sironeko" 30 | Message-Id: <2222CAT-222222-22@neko.example.com> 31 | Date: Thu, 29 Apr 2016 23:45:56 +0900 32 | 33 | Nyaan 34 | 35 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-ezweb-02.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/set-of-emails/maildir/bsd/lhost-ezweb-02.eml -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-ezweb-03.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/set-of-emails/maildir/bsd/lhost-ezweb-03.eml -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-ezweb-04.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/set-of-emails/maildir/bsd/lhost-ezweb-04.eml -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-ezweb-05.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sisimai/p5-sisimai/885af1e9b9b31a8e51d13420a870b0887ac3eb36/set-of-emails/maildir/bsd/lhost-ezweb-05.eml -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-imailserver-01.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 29 Apr 2009 23:45:10 -0600 2 | Message-Id: <00000000000.fffffff@example.org> 3 | From: "Postmaster" 4 | Sender: 5 | To: 6 | Subject: Undeliverable Mail 7 | X-Mailer: 8 | 9 | Unknown user: kijitora@example.com 10 | 11 | 12 | Original message follows. 13 | 14 | Received: from example.org [192.0.2.88] by example.org with ESMTP 15 | (SMTPD32-5.05) id 000000000000 Thu, 29 Apr 2009 23:45:10 -0600 16 | Message-ID: <00000000.ffffffff@example.org> 17 | Date: Thu, 29 Apr 2009 23:45:10 -0800 18 | From: Karen Alton 19 | Reply-To: nekochan@example.org 20 | MIME-Version: 1.0 21 | To: kijitora@example.com 22 | Subject: Nyaaan 23 | Content-Type: text/plain; charset=us-ascii 24 | Content-Transfer-Encoding: 7bit 25 | 26 | Nyaan 27 | 28 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-imailserver-02.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | X-Original-To: shironeko@example.jp 3 | Delivered-To: shironeko@example.jp 4 | Received: from mx9.example.co.jp (unknown [192.0.2.126]) 5 | by mx.example.jp (Postfix) with ESMTP id 0000000000 6 | for ; Thu, 29 Apr 2010 23:45:10 +0900 (JST) 7 | Date: Thu, 29 Apr 2010 23:45:10 +0900 8 | Message-Id: <00000000000.0000000@example.co.jp> 9 | Mime-Version: 1.0 10 | Content-Type: text/plain; charset=us-ascii 11 | From: "Postmaster" 12 | Sender: 13 | To: shironeko@example.jp 14 | Subject: Undeliverable Mail 15 | X-Mailer: 16 | 17 | User mailbox exceeds allowed size: kijitora@example.co.jp 18 | 19 | 20 | Original message follows. 21 | 22 | Received: from smtp8.relay1.example.ne.jp [192.0.2.209] by mx4.example.co.jp 23 | (SMTPD-8.22) id 00000000; Thu, 29 Apr 2010 23:45:10 +0900 24 | Received: from unknown (HELO smtp5.example.ne.jp) (192.0.2.201) 25 | by 0 with SMTP; 29 Apr 2010 23:45:10 -0000 26 | Message-ID: <00000000000000000000000@smtp5.example.ne.jp> 27 | Date: Thu, 29 Apr 2010 23:45:10 +0900 (JST) 28 | From: Shironeko 29 | Reply-To: neko@example.ne.jp 30 | To: kijitora@example.co.jp 31 | Subject: Nyaaaan 32 | MIME-Version: 1.0 33 | Content-Type: text/plain; charset=ISO-2022-JP 34 | Content-Transfer-Encoding: 7bit 35 | 36 | Nyaan 37 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-imailserver-03.eml: -------------------------------------------------------------------------------- 1 | From <> Thu Apr 29 23:45:10 2008 2 | Date: Thu, 29 Apr 2008 23:45:10 -0500 3 | Message-Id: <00000000000.00000000000@neko.example.co.jp> 4 | Mime-Version: 1.0 5 | Content-Type: text/plain; charset=us-ascii 6 | From: "Postmaster" 7 | Sender: 8 | To: 9 | Subject: Undeliverable Mail 10 | X-Mailer: 11 | 12 | Invalid final delivery userid: kijitora@neko.example.co.jp 13 | 14 | 15 | Original message follows. 16 | 17 | Date: Thu, 29 Apr 2008 23:45:10 -0500 18 | Message-Id: <200804292345.00000000000@neko.example.co.jp> 19 | Mime-Version: 1.0 20 | Content-Type: text/plain; charset=us-ascii 21 | Reply-To: 22 | To: 23 | Subject: Nyaan 24 | X-Mailer: 25 | From: "Shironeko" 26 | 27 | Nyaan 28 | 29 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-imailserver-04.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 29 Apr 2008 23:45:10 -0000 2 | Message-Id: <00000000000.0000000@example.net> 3 | Mime-Version: 1.0 4 | Content-Type: text/plain; charset=us-ascii 5 | From: "Postmaster" 6 | Sender: 7 | To: 8 | Subject: Undeliverable Mail 9 | X-Mailer: 10 | 11 | Delivery failed 20 attempts: kijitora@example.com 12 | 13 | 14 | Original message follows. 15 | ====================================END 16 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-imailserver-06.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 29 Apr 2008 14:45:56 +0900 2 | Message-Id: <1001011111.FF00134@mail.example.com> 3 | Mime-Version: 1.0 4 | Content-Type: text/plain; charset=us-ascii 5 | From: "Postmaster" 6 | Sender: 7 | To: 8 | Subject: Undeliverable Mail 9 | X-Mailer: 10 | X-RCPT-TO: 11 | Status: 12 | X-UIDL: 000000000 13 | X-IMail-ThreadID: 0000000000000000 14 | 15 | Save to the following Address Book: 16 | 17 | To: shironeko@neko.example.com 18 | CC: 19 | Date: Thursday, Apr 29, 2008 2:45:56 PM 20 | Subject: Undeliverable Mail 21 | 22 | undeliverable to kijitora@example.jp 23 | 24 | Body of message generated response: 25 | 550-REJECTED - Blacklisted URL in message. (example.com) in [black]. 26 | 550-See http://lookup.uribl.com. - Blacklisted Link - X=pascal 27 | 550-H=mail.example.com [192.0.2.11] HELO=[mail.example.com] 28 | 550-F=[shironeko@neko.example.com] T=[kijitora@example.jp] S=[HOT 29 | 550 DEALS UPDATE - 04/29/08 (Special Update - Family Sale) 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-mailmarshalsmtp-02.eml: -------------------------------------------------------------------------------- 1 | Received: from MailMarshal.Sender ([127.0.0.1]) by rr1.example.com 2 | id ; Thu, 29 Apr 2015 23:34:45 +0000 3 | Message-ID: 4 | From: postmaster@neko.example.com 5 | To: sironeko@example.com 6 | CC: 7 | Date: Thu, 29 Apr 2015 23:34:45 +0000 8 | Subject: Undeliverable Mail: "Nyaan" 9 | MIME-Version: 1.0 10 | Content-Type: multipart/mixed; 11 | boundary="--=00ffff00-0000-0000-0000-eefe00002022" 12 | 13 | 14 | ----=00ffff00-0000-0000-0000-eefe00002022 15 | Content-Type: text/plain; 16 | charset="iso-8859-1" 17 | Content-Transfer-Encoding: 7bit 18 | 19 | Your message: 20 | From: sironeko@example.com 21 | Subject: Nyaan 22 | 23 | Could not be delivered because of 24 | 25 | 550 5.1.1 User unknown 26 | 27 | The following recipients were affected: 28 | kijitora@nyaan.example.com 29 | 30 | 31 | 32 | 33 | Additional Information 34 | ====================== 35 | Original Sender: 36 | Sender-MTA: <192.0.2.250> 37 | Remote-MTA: <203.0.113.2> 38 | Reporting-MTA: 39 | MessageName: 40 | Last-Attempt-Date: <23:34:45 qui, 29 Abril 2015> 41 | 42 | ----=00ffff00-0000-0000-0000-eefe00002022-- 43 | 44 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-opensmtpd-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from vagrant-centos65.example.com (c213502.kyoto.example.ne.jp [192.0.2.135]) 3 | by aneyakoji.example.jp (V8/cf) with ESMTP id s6HB0VsJ028505 4 | for ; Thu, 17 Jul 2014 20:00:32 +0900 5 | Message-Id: <201407171100.s6HB0VsJ028505@aneyakoji.example.jp> 6 | Received: from localhost (localhost [local]); 7 | by localhost (OpenSMTPD) with ESMTPA id 1e2a9eaa; 8 | for ; 9 | Thu, 17 Jul 2014 11:20:14 +0000 (UTC) 10 | Subject: Delivery status notification: error 11 | From: Mailer Daemon 12 | To: kijitora@example.jp 13 | Date: Thu, 17 Jul 2014 11:20:14 +0000 (UTC) 14 | 15 | Hi! 16 | 17 | This is the MAILER-DAEMON, please DO NOT REPLY to this e-mail. 18 | 19 | An error has occurred while attempting to deliver a message for 20 | the following list of recipients: 21 | 22 | apdugoaidugoaidugoaeiudggadi@gmail.com: 550 5.1.1 http://support.google.com/mail/bin/answer.py?answer=6596 ad1si1997204pbd.83 - gsmtp 23 | 24 | Below is a copy of the original message: 25 | 26 | Received: from [127.0.0.1] (localhost [127.0.0.1]); 27 | by localhost (OpenSMTPD) with ESMTP id d70f9624; 28 | for ; 29 | Thu, 17 Jul 2014 11:19:54 +0000 (UTC) 30 | Subject: test from OpenSMTPD 31 | From: kijitora@example.jp 32 | 33 | test 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-opensmtpd-02.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from vagrant-centos65.example.com (c21352.kyoto.example.ne.jp [192.0.2.135]) 3 | by aneyakoji.example.jp (V8/cf) with ESMTP id s6HAuIEE027507 4 | for ; Thu, 17 Jul 2014 19:56:19 +0900 5 | Message-Id: <201407171056.s6HAuIEE027507@aneyakoji.example.jp> 6 | Received: from localhost (localhost [local]); 7 | by localhost (OpenSMTPD) with ESMTPA id 700fd087; 8 | for ; 9 | Thu, 17 Jul 2014 11:15:48 +0000 (UTC) 10 | Subject: Delivery status notification: error 11 | From: Mailer Daemon 12 | To: kijitora@example.jp 13 | Date: Thu, 17 Jul 2014 11:15:48 +0000 (UTC) 14 | 15 | Hi! 16 | 17 | This is the MAILER-DAEMON, please DO NOT REPLY to this e-mail. 18 | 19 | An error has occurred while attempting to deliver a message for 20 | the following list of recipients: 21 | 22 | mailboxfull@example.jp: 550 5.2.2 ... Mailbox Full 23 | userunknown@example.jp: 550 5.1.1 ... User Unknown 24 | 25 | Below is a copy of the original message: 26 | 27 | Received: from [127.0.0.1] (localhost [127.0.0.1]); 28 | by localhost (OpenSMTPD) with ESMTP id 966254b0; 29 | Thu, 17 Jul 2014 11:15:29 +0000 (UTC) 30 | Subject: test from OpenSMTPD 31 | From: kijitora@example.jp 32 | 33 | test 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-03.eml: -------------------------------------------------------------------------------- 1 | Received: (qmail 1111 invoked for bounce); 29 Apr 2010 07:55:24 -0000 2 | Date: 29 Apr 2010 07:55:24 -0000 3 | From: MAILER-DAEMON@nijo.example.jp 4 | To: root@nijo.example.jp 5 | Subject: failure notice 6 | 7 | Hi. This is the qmail-send program at nijo.example.jp. 8 | I'm afraid I wasn't able to deliver your message to the following addresses. 9 | This is a permanent error; I've given up. Sorry it didn't work out. 10 | 11 | : 12 | Connected to 192.0.2.225 but sender was rejected. 13 | Remote host said: 550 5.7.1 ... Access denied 14 | 15 | --- Below this line is a copy of the message. 16 | 17 | Return-Path: 18 | Received: (qmail 8888 invoked by uid 0); 29 Apr 2010 07:55:23 -0000 19 | Date: 29 Apr 2010 07:55:23 -0000 20 | Message-ID: <00000000000000.5529.qmail@nijo.example.jp> 21 | From: root@nijo.example.jp 22 | To: kijitora@example.org 23 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-04.eml: -------------------------------------------------------------------------------- 1 | Received: (qmail 1111 invoked for bounce); 29 Apr 2010 00:00:00 -0000 2 | Date: 29 Apr 2010 00:00:00 -0000 3 | From: MAILER-DAEMON@nijo.example.jp 4 | To: root@nijo.example.jp 5 | Subject: failure notice 6 | 7 | Hi. This is the qmail-send program at mx.example.jp. 8 | I'm afraid I wasn't able to deliver your message to the following addresses. 9 | This is a permanent error; I've given up. Sorry it didn't work out. 10 | 11 | : 12 | Connected to 192.0.2.112 but my name was rejected. 13 | Remote host said: 501 5.0.0 Invalid domain name 14 | I'm not going to try again; this message has been in the queue too long. 15 | 16 | --- Below this line is a copy of the message. 17 | 18 | Return-Path: 19 | Received: (qmail 0000 invoked from network); 29 Apr 2010 23:45:43 -0000 20 | Received: from unknown (HELO example.jp) (192.0.2.24) 21 | by mx.example.jp with SMTP; 29 Apr 2010 23:45:43 -0000 22 | Message-ID: <00000000.000000000@example.jp> 23 | Date: Thu, 29 Apr 2010 23:45:40 +0900 24 | From: Shironeko 25 | MIME-Version: 1.0 26 | To: "Kijitora Cat" 27 | Subject: Nyaaaaaaaaaaaaaaaaaaaaaaaaaaan 28 | Content-Type: text/plain; charset=us-ascii; format=flowed 29 | Content-Transfer-Encoding: 7bit 30 | 31 | Nyaa 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-05.eml: -------------------------------------------------------------------------------- 1 | Received: (qmail 1111 invoked for bounce); 29 Apr 2010 00:00:00 -0000 2 | Date: 29 Apr 2010 00:00:00 -0000 3 | From: MAILER-DAEMON@nijo.example.jp 4 | To: root@nijo.example.jp 5 | Subject: failure notice 6 | 7 | Hi. This is the qmail-send program at mx.example.jp. 8 | I'm afraid I wasn't able to deliver your message to the following addresses. 9 | This is a permanent error; I've given up. Sorry it didn't work out. 10 | 11 | : 12 | Unable to contact LDAP server. (#4.4.3)I'm not going to try again; this 13 | message has been in the queue too long. 14 | 15 | --- Below this line is a copy of the message. 16 | 17 | Return-Path: 18 | Received: (qmail 0000 invoked from network); 29 Apr 2010 23:45:43 -0000 19 | Received: from unknown (HELO example.jp) (192.0.2.24) 20 | by mx.example.jp with SMTP; 29 Apr 2010 23:45:43 -0000 21 | Message-ID: <00000000.000000000@example.jp> 22 | Date: Thu, 29 Apr 2010 23:45:40 +0900 23 | From: Shironeko 24 | MIME-Version: 1.0 25 | To: "Kijitora Cat" 26 | Subject: Nyaaaaaaaaaaaaaaaaaaaaaaaaaaan 27 | Content-Type: text/plain; charset=us-ascii; format=flowed 28 | Content-Transfer-Encoding: 7bit 29 | 30 | Nyaa 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-07.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Fri Jan 1 00:0:00 2015 2 | Return-Path: <> 3 | X-Original-To: shironeko@example.ad.jp 4 | Delivered-To: shironeko@example.ad.jp 5 | Received: from host (mta1) 6 | by mta.example.jp (Postfix) with SMTP id F00000 7 | for shironeko@example.ad.jp; Fri, 1 Jan 2015 00:00:00 +0900 (JST) 8 | Received: (qmail host invoked for bounce); 1 Jan 2015 00:00:00 +0900 9 | Date: 1 Jan 2015 00:00:00 +0900 10 | From: MAILER-DAEMON@example.jp 11 | To: shironeko@example.ad.jp 12 | Subject: failure notice 13 | 14 | Hi. This is the qmail-send program at MTA. 15 | I'm afraid I wasn't able to deliver your message to the following addresses. 16 | This is a permanent error; I've given up. Sorry it didn't work out. 17 | 18 | : 19 | Sorry, I wasn't able to establish an SMTP connection. (#4.4.1) 20 | I'm not going to try again; this message has been in the queue too long. 21 | 22 | --- Below this line is a copy of the message. 23 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-08.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Mon Jan 1 00:00:00 2015 2 | Return-Path: <> 3 | X-Original-To: shironeko@example.ad.jp 4 | Delivered-To:shironeko@example.ad.jp 5 | Received: from mta.example.jp 6 | by mx.example.jp (Postfix) with SMTP id ffffffff 7 | for ; Mon, 1 Jan 2015 00:00:00 +0900 (JST) 8 | Received: (qmail 7120 invoked for bounce); 1 Jan 2015 00:00:00 +0900 9 | Date: 1 Jan 2015 00:00:00 +0900 10 | From: MAILER-DAEMON@example.ad.jp 11 | To: shironeko@example.ad.jp 12 | Subject: failure notice 13 | 14 | Hi. This is the qmail-send program at example.ad.jp. 15 | I'm afraid I wasn't able to deliver your message to the following addresses. 16 | This is a permanent error; I've given up. Sorry it didn't work out. 17 | 18 | : 19 | 192.0.2.1 does not like recipient. 20 | Remote host said: 552 Error: disk quota exceeded 21 | Giving up on 192.0.2.20. 22 | 23 | --- Below this line is a copy of the message. 24 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-11.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 44378 invoked by alias); 24 Jun 2024 08:48:01 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 44375 invoked for bounce); 24 Jun 2024 08:48:01 -0000 6 | Date: 24 Jun 2024 08:48:01 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | Sorry, I couldn't find a mail exchanger or IP address. (#5.4.4) 17 | 18 | --- Below this line is a copy of the message. 19 | 20 | Return-Path: 21 | Received: (qmail 44372 invoked by uid 0); 24 Jun 2024 08:48:01 -0000 22 | Date: 24 Jun 2024 08:48:01 -0000 23 | Message-ID: <20240624084801.44371.qmail@nq.example.jp> 24 | From: kijitora@nq.example.jp 25 | To: neko@nyaan.jp 26 | Subject: Nyaan? 27 | 28 | Nyaaaaaan 29 | 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-12.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 44416 invoked by alias); 24 Jun 2024 08:50:01 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 44413 invoked for bounce); 24 Jun 2024 08:50:01 -0000 6 | Date: 24 Jun 2024 08:50:01 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | Sorry, I couldn't find a mail exchanger or IP address. (#5.4.4) 17 | 18 | --- Below this line is a copy of the message. 19 | 20 | Return-Path: 21 | Received: (qmail 44410 invoked by uid 0); 24 Jun 2024 08:50:01 -0000 22 | Date: 24 Jun 2024 08:50:01 -0000 23 | Message-ID: <20240624085001.44409.qmail@nq.example.jp> 24 | From: kijitora@nq.example.jp 25 | To: nyaan@example.jp 26 | Subject: Nyaan? 27 | 28 | Nyaaaaaan 29 | 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-13.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 44453 invoked by alias); 24 Jun 2024 08:52:01 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 44450 invoked for bounce); 24 Jun 2024 08:52:01 -0000 6 | Date: 24 Jun 2024 08:52:01 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | Sorry, I couldn't find any host named cx.libsisimai.com. (#5.1.2) 17 | 18 | --- Below this line is a copy of the message. 19 | 20 | Return-Path: 21 | Received: (qmail 44447 invoked by uid 0); 24 Jun 2024 08:52:01 -0000 22 | Date: 24 Jun 2024 08:52:01 -0000 23 | Message-ID: <20240624085201.44446.qmail@nq.example.jp> 24 | From: kijitora@nq.example.jp 25 | To: nekochan@cx.libsisimai.com 26 | Subject: Nyaan? 27 | 28 | Nyaaaaaan 29 | 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-16.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 44594 invoked by alias); 24 Jun 2024 09:00:01 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 44591 invoked for bounce); 24 Jun 2024 09:00:01 -0000 6 | Date: 24 Jun 2024 09:00:01 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | 192.0.2.25 does not like recipient. 17 | Remote host said: 550 5.1.1 : Recipient address rejected: User unknown. See https://libsisimai.org/en/reason/#userunknown 18 | Giving up on 192.0.2.25. 19 | 20 | --- Below this line is a copy of the message. 21 | 22 | Return-Path: 23 | Received: (qmail 44588 invoked by uid 0); 24 Jun 2024 09:00:01 -0000 24 | Date: 24 Jun 2024 09:00:01 -0000 25 | Message-ID: <20240624090001.44587.qmail@nq.example.jp> 26 | From: kijitora@nq.example.jp 27 | To: userunknown@libsisimai.net 28 | Subject: Nyaan? 29 | 30 | Nyaaaaaan 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-18.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 44325 invoked by alias); 24 Jun 2024 08:46:37 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 44322 invoked for bounce); 24 Jun 2024 08:46:37 -0000 6 | Date: 24 Jun 2024 08:46:37 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | 192.0.2.25 does not like recipient. 17 | Remote host said: 550 5.1.1 : Recipient address rejected: User unknown. See https://libsisimai.org/en/reason/#userunknown 18 | Giving up on 192.0.2.25. 19 | 20 | --- Below this line is a copy of the message. 21 | 22 | Return-Path: 23 | Received: (qmail 44319 invoked by uid 0); 24 Jun 2024 08:46:36 -0000 24 | Date: 24 Jun 2024 08:46:36 -0000 25 | Message-ID: <20240624084636.44318.qmail@nq.example.jp> 26 | From: kijitora@nq.example.jp 27 | To: userunknown@libsisimai.net 28 | Subject: Nyaan? 29 | 30 | Nyaaaaaan 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-qmail-19.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Delivered-To: nyaaaaan@nq.example.jp 3 | Received: (qmail 3019 invoked by alias); 25 Jun 2024 10:36:44 -0000 4 | Delivered-To: kijitora@nq.example.jp 5 | Received: (qmail 3016 invoked for bounce); 25 Jun 2024 10:36:44 -0000 6 | Date: 25 Jun 2024 10:36:44 -0000 7 | From: MAILER-DAEMON@nq.example.jp 8 | To: kijitora@nq.example.jp 9 | Subject: failure notice 10 | 11 | Hi. This is the qmail-send program at nq.example.jp. 12 | I'm afraid I wasn't able to deliver your message to the following addresses. 13 | This is a permanent error; I've given up. Sorry it didn't work out. 14 | 15 | : 16 | Connected to 98.136.96.74 but sender was rejected. 17 | Remote host said: 421 4.7.0 [TSS04] Messages from 192.0.2.25 temporarily deferred due to unexpected volume or user complaints - 4.16.55.1; see https://postmaster.yahooinc.com/error-codes 18 | I'm not going to try again; this message has been in the queue too long. 19 | 20 | --- Below this line is a copy of the message. 21 | 22 | Return-Path: 23 | Received: (qmail 40682 invoked by uid 0); 24 Jun 2024 06:10:02 -0000 24 | Date: 24 Jun 2024 06:10:02 -0000 25 | Message-ID: <20240624061002.40681.qmail@nq.example.jp> 26 | From: nyaaaaan@nq.example.jp 27 | To: pseudo-local-part-of-yahoo-inc@yahoo.com 28 | Subject: Nyaan? 29 | 30 | Nyaaaaaan 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-v5sendmail-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx1.example.com ([192.0.2.55]) 3 | by mx5.example.net (Post.Office MTA v3.1.2 release (FF000-0000) ID# 0-00000000000000000) 4 | with SMTP id 00000000 for ; 5 | Thu, 29 Apr 1998 23:34:45 -0700 6 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 7 | Sat, 29 Apr 1995 23:34:45 +0900 8 | Date: Sat, 29 Apr 1995 23:34:45 +0900 9 | From: Mail Delivery Subsystem 10 | Subject: Returned mail: Cannot send message for 4 days 11 | Message-Id: <0000000000.0000000@mx5.example.com> 12 | To: shironeko@example.co.jp 13 | 14 | ----- Transcript of session follows ----- 15 | 421 example.com (smtp)... Deferred: Connection timed out during user open with example.com 16 | 17 | ----- Unsent message follows ----- 18 | Received: by mx9.example.com; (5.65/1.37) id 0000000; 19 | Thu, 29 Apr 1995 23:34:45 +0900 20 | From: shironeko@example.co.jp 21 | To: kijitora@example.com 22 | Subject: Nyaaan 23 | 24 | Nyaaaaaaaaaaaaaaaan 25 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-v5sendmail-02.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx5.example.com ([192.0.2.50]) 3 | by mx5.r.example.com (Post.Office MTA v3.1.2 4 | release (FF000-0000) ID# 0-00000000000000000) 5 | with SMTP id 0000000 for ; 6 | Thu, 29 Apr 1998 23:34:45 +0900 7 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 8 | Thu, 29 Sep 1998 23:34:45 +0900 9 | Date: Thu, 29 Sep 1998 23:34:45 +0900 10 | From: Mail Delivery Subsystem 11 | Subject: Returned mail: Host unknown 12 | Message-Id: <0000000000.0000000@mx5.example.com> 13 | To: shironeko@example.jp 14 | 15 | ----- Transcript of session follows ----- 16 | 550 neko.example.org (smtp)... 550 Host unknown 17 | 554 ... 550 Host unknown (Authoritative answer from name server) 18 | 19 | ----- Unsent message follows ----- 20 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 21 | Wed, 27 Sep 1998 23:34:45 +0900 22 | From: shironeko@example.jp 23 | To: kijitora@neko.example.org 24 | Subject: Nyaaan 25 | 26 | Nyaaan 27 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-v5sendmail-03.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx5.example.com ([192.0.2.155]) 3 | by mx5.r.example.com (Post.Office MTA v3.1.2 4 | release (FF000-0000) ID# 0-00000000000000000) with SMTP 5 | id 0000000 for ; 6 | Thu, 28 Sep 1998 23:34:45 -0700 7 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 8 | Thu, 29 Sep 1995 23:34:45 +0900 9 | Date: Thu, 29 Sep 1995 23:34:45 +0900 10 | From: Mail Delivery Subsystem 11 | Subject: Returned mail: Deferred: Connection timed out during user open with example.org 12 | Message-Id: <0000000000.0000000@mx5.example.com> 13 | To: webmaster@exampe.com 14 | 15 | ----- Transcript of session follows ----- 16 | While talking to smtp.example.com: 17 | >>> RCPT To: 18 | <<< 550 , User Unknown 19 | 550 ... User unknown 20 | 421 example.org (smtp)... Deferred: Connection timed out during user open with example.org 21 | 22 | ----- Unsent message follows ----- 23 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 24 | Thu, 29 Apr 1995 23:34:45 +0900 25 | From: webmaster@exampe.com 26 | To: kijitora@exampe.org 27 | Subject: Nyaaan 28 | 29 | Nyaan 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-v5sendmail-04.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx8.example.com ([192.0.2.55]) 3 | by mx6.example.com (Post.Office MTA v3.1.2 4 | release (FF000+0900) ID# 0+09000000000000000) with SMTP id 0000000 5 | for ; 6 | Thu, 29 Apr 1999 23:34:45 +0900 7 | Received: by mx8.example.com; (5.65/1.37) id 0000000; 8 | Thu, 29 Apr 1999 23:34:45 +0900 9 | Date: Thu, 29 Apr 1999 23:34:45 +0900 10 | From: Mail Delivery Subsystem 11 | Subject: Returned mail: Deferred: Host Name Lookup Failure 12 | Message-Id: <0000000000.0000000@mx8.example.com> 13 | To: shironeko@example.org 14 | 15 | ----- Transcript of session follows ----- 16 | 550 example.ed.jp (smtp)... 550 Host unknown 17 | 554 ... 550 Host unknown (Authoritative answer from name server) 18 | 550 example.ac.jp (smtp)... 550 Host unknown 19 | 554 ... 550 Host unknown (Authoritative answer from name server) 20 | 250 example.ad.jp (smtp)... 250 Deferred 21 | 22 | ----- Unsent message follows ----- 23 | Received: by mx8.example.com; (5.65/1.36) id 0000000; 24 | Thu, 29 Apr 1999 23:34:45 +0900 25 | From: shironeko@example.org 26 | To: kijitora@example.ed.jp 27 | Subject: Nyaaaaaan 28 | 29 | Nyaaan 30 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-v5sendmail-06.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx1.example.net ([192.0.2.120]) 3 | by mx9.example.net (Post.Office MTA v3.1.2 release (FF000+0900) 4 | ID# 0+09000000000000000) with SMTP id 0000000 for ; 5 | Thu, 29 Apr 1999 23:34:45 +0900 6 | Received: by mx1.example.net; (5.65/1.37) id 0000000; Thu, 29 Apr 1999 23:34:45 +0900 7 | Date: Thu, 29 Apr 1999 23:34:45 +0900 8 | From: Mail Delivery Subsystem 9 | Subject: Returned mail: Deferred: Connection timed out during user open with example.org 10 | Message-Id: <0000000000.0000000@mx1.example.net> 11 | To: shironeko@example.jp 12 | 13 | ----- Transcript of session follows ----- 14 | While talking to mx.example.edu: 15 | >>> MAIL From: 16 | <<< 550 Insecure Mail Relay 17 | 554 ... Remote protocol error 18 | 421 example.org (smtp)... Deferred: Connection timed out during user open with example.org 19 | 20 | ----- Unsent message follows ----- 21 | Received: by mx1.example.net; (5.65/1.37) id 0000000; 22 | Thu, 29 Apr 1999 23:34:45 +0900 23 | From: shironeko@example.jp 24 | To: kijitora@example.edu 25 | Subject: Nyaaaaan 26 | 27 | Nyaaaan 28 | 29 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-verizon-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from njbrspamp1.vtext.com (njbrspamp1.vtext.com [192.0.2.146]) 3 | by nijo.example.jp (V8/cf) with ESMTP id r5KATqOU002339 4 | for ; Thu, 20 Jun 2013 06:29:53 -0400 5 | Received: from 39.example.com (HELO m01.vzwpix.com) ([192.0.2.39]) 6 | by njbrspamp1.vtext.com with SMTP; 20 Jun 2013 10:29:52 +0000 7 | From:MMSC NDR Administrator 8 | To:kijitora@example.jp 9 | Subject:Undeliverable Message 10 | Message-ID: <212238484192055707@-212238484192055708> 11 | Date: Wed, 20 Jun 2013 10:29:52 +0000 12 | Content-Type: multipart/mixed; boundary="----=ThisIsTheBoundaryStringaaa" 13 | 14 | 15 | ------=ThisIsTheBoundaryStringaaa 16 | Content-Type: text/plain; charset=US-ASCII 17 | 18 | Message could not be delivered to mobile. 19 | Error: No valid recipients for this MM 20 | 21 | 22 | Original Message: 23 | From: azumakuniyuki 24 | To: 0000000000@vzwpix.com 25 | Subject: test for bounce 26 | Date: Wed, 20 Jun 2013 10:29:52 +0000 27 | 28 | ------=ThisIsTheBoundaryStringaaa-- 29 | Content-Type: text/plain 30 | 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-x2-03.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Thu Apr 29 23:34:45 2009 2 | Return-path: <> 3 | Envelope-to: shironeko@example.co.jp 4 | Delivery-date: Thu, 12 Sep 2009 23:34:45 +0100 5 | Date: 12 Sep 2009 23:34:45 +0000 6 | From: MAILER-DAEMON@example.com 7 | To: shironeko@example.co.jp 8 | Subject: failed delivery 9 | 10 | Message from example.com. 11 | Unable to deliver message to the following address(es). 12 | 13 | : 14 | unable to connect to remote server [192.0.2.222:25]: Operation timed 15 | out 16 | I'm not going to try again; this message has been in the queue too long. 17 | 18 | --- Original message follows. 19 | 20 | Return-Path: 21 | X-Originating-IP: [192.0.2.222] 22 | Authentication-Results: mx4.example.com 23 | from=example.co.jp; domainkeys=neutral (no sig) 24 | From: Nyanko 25 | To: kijitora@example.org 26 | Subject: Nyaaaan 27 | Message-ID: <00000000000000000@example.co.jp> 28 | MIME-Version: 1.0 29 | Content-Type: text/plain; charset=utf-8 30 | Content-Transfer-Encoding: 7bit 31 | Sender: HassleMe 32 | Date: Thu, 11 Sep 2009 23:34:45 +0100 33 | 34 | Nyaaan 35 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/lhost-x2-06.eml: -------------------------------------------------------------------------------- 1 | Return-path: 2 | Received: from e3.rr.example.net [203.0.113.225] by r0.example.com [192.0.2.55] 3 | with SMTP (postmaster.v3.5.6) for ; 4 | Thu, 29 Apr 2005 23:34:45 +0000 5 | Received: from e3.rr.example.net for kijitora@neko.example.com; 6 | Apr 29 23:34:45 2005 +0000 7 | Message-ID: <20050429233445.999999.ee@e3.rr.example.net> 8 | Date: 29 Apr 2005 23:34:45 -0000 9 | From: MAILER-DAEMON@example.net 10 | To: sironeko@example.org 11 | Subject: Permanent Delivery Failure 12 | 13 | Message from example.com. 14 | Unable to deliver message to the following address(es). 15 | 16 | : 17 | Sorry, I wasn't able to establish an SMTP connection. (#4.4.1) 18 | I'm not going to try again; this message has been in the queue too long. 19 | 20 | --- Original message follows. 21 | 22 | Return-Path: 23 | Received: from r7.e.example.or.jp (HELO localhost) (203.0.113.90) 24 | by smtp1.r5.esample.com with SMTP; 29 Apr 2005 23:34:45 +0000 25 | From: Sironeko 26 | To: kijitora-nyaan@neko.example.com 27 | Date: Thu, 29 Apr 2005 23:34:45 +0000 28 | Subject: Nyaan 29 | MIME-Version: 1.0 30 | Content-Type: text/plain; charset=iso-8859-1 31 | Content-Transfer-Encoding: 7bit 32 | 33 | Nyaan 34 | 35 | --0000-ffff-0022-x8sub924ga-- 36 | 37 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/rfc3834-01.eml: -------------------------------------------------------------------------------- 1 | Return-path: 2 | Envelope-to: neko@libsisimai.org 3 | Delivery-date: Thu, 29 Apr 2005 23:34:45 +0900 4 | Received: from mta2.relay2.example.org ([192.0.2.222]:22222) 5 | by nyaan.example.com with esmtps (TLSv1:DHE-RSA-AES256-SHA:256) 6 | (Exim 4.81) 7 | (envelope-from ) 8 | id 2NEKOS-222222-22 9 | for neko@libsisimai.org; Thu, 29 Apr 2005 23:34:45 +0900 10 | Received: from neko.example.org (neko.soto.example.org [192.0.2.22]) 11 | by mta2.relay2.example.org (8.12.8/8.12.8) with ESMTP id j3QNaaaa222222 12 | for ; Thu, 29 Apr 2005 23:34:45 +0900 13 | Date: Thu, 29 Apr 2005 23:34:45 +0900 14 | Message-Id: <200503142138.j3QNaaaa222222@neko.example.org> 15 | To: neko@libsisimai.org 16 | Auto-Submitted: auto-replied 17 | From: kijitora@example.net 18 | Subject: Away until May 5 19 | 20 | I am currently away returning to the office on May 5th. I will have limited access to email and will respond to you upon my return. 21 | 22 | Kijitora, Nyaan. 23 | 24 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/rfc3834-02.eml: -------------------------------------------------------------------------------- 1 | Return-path: <> 2 | Envelope-to: kijitora@example.com 3 | Delivery-date: Thu, 17 Jul 2013 23:34:45 -0500 4 | Received: from smtpd-02.example.com ([203.0.113.1]:2202) 5 | by neko2.example.com with esmtp (Exim 4.80) 6 | id 2Aeeee-00002R-AA 7 | for kijitora@example.com; Thu, 17 Jul 2013 23:34:45 -0500 8 | Received: from neko.nyaan.example.net ([fe80::ffff:ffff:ffff:0000%22]) by 9 | neko1.nyaan2.example.net ([fe80::0000:0000:0000:ffff%22]) with Microsoft 10 | SMTP Server id 14.02.0318.004; Thu, 17 Jul 2013 23:34:45 -0400 11 | From: "Neko, Nyaan" 12 | To: Kijitora 13 | Subject: Automatic reply: Nyaan 14 | Date: Thu, 17 Jul 2013 23:34:45 +0000 15 | Message-ID: 16 | X-Auto-Response-Suppress: All 17 | X-MS-Exchange-Inbox-Rules-Loop: nekonyaan@example.org 18 | X-MS-TNEF-Correlator: 19 | Content-Type: text/plain; charset="us-ascii" 20 | Content-Transfer-Encoding: quoted-printable 21 | MIME-Version: 1.0 22 | 23 | I'm out of the office Friday. For pressing news matters, Nyaan. 24 | 25 | -------------------------------------------------------------------------------- /set-of-emails/maildir/bsd/rfc3834-05.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Mon Sep 20 19:29:27 2021 2 | Return-Path: <> 3 | X-Original-To: postmaster@peter.otto.org 4 | Delivered-To: blackhole@localhost 5 | From: 6 | To: postmaster@any.com 7 | Message-ID: 8 | Date: Mon, 20 Sep 2021 21:29:21 +0200 (CEST) 9 | X-RZG-CLASS-ID: mi 10 | X-RZG-TRIGGERING-SMTP-ID: qcZaAFivUJ 11 | MIME-Version: 1.0 12 | Content-Type: text/plain; charset="UTF-8" 13 | Content-Transfer-Encoding: quoted-printable 14 | Subject: kitununulinitoquekegu 15 | In-Reply-To: 16 | Auto-Submitted: auto-replied 17 | 18 | zuk=C3=BCnftig 19 | karl@hanz.de 20 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-domino-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mta52.example.jp (mta52.example.jp [192.0.2.89]) 3 | by mx.example.com (8.14.1/8.12.11) with ESMTP id o000000000 4 | for ; Tue, 29 Apr 2010 10:45:04 -0700 5 | Received: from mta52.example.jp (MTAXYZ [127.0.0.1]) 6 | by mx0.example.jp (localhost) with ESMTP id 0000000000 7 | for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) 8 | Received: from x.mail.example.jp (x.mail.example.jp [192.0.2.25]) 9 | by mta52.example.jp (localhost) with ESMTP id 8888888888 10 | for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) 11 | Date: Tue, 29 Apr 2010 10:54:01 -0700 12 | MIME-Version: 1.0 13 | From: Postmaster@example.jp 14 | To: Sender Address 15 | Subject: DELIVERY FAILURE: User Kijitoranyan (kijitora@example.jp) not listed in 16 | Domino Directory 17 | X-OriginalArrivalTime: 29 Apr 2010 19:02:59.0038 (UTC) FILETIME=[00000000:00000000] 18 | Message-ID: <0000000000.000000000-000000000.00000000-00000000.00000000@example.com> 19 | Content-Type: Text/Plain 20 | Content-Transfer-Encoding: 8bit 21 | 22 | Your message 23 | 24 | Subject: Test Bounce 25 | 26 | was not delivered to: 27 | 28 | kijitora@example.jp 29 | 30 | because: 31 | 32 | User some.name (kijitora@example.jp) not listed in Domino Directory 33 | 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-exchange-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from gw.example.com ([192.0.2.23]) 3 | by gw2.ext.example.net (Post.Office MTA v0.0.0 4 | release (P0000-000x) ID# 0-00000000000000000) with ESMTP 5 | id 0000001 for ; 6 | Thu, 29 Apr 2010 00:00:00 -0000 7 | Received: by gw with Internet Mail Service (5.5.1960.3) 8 | id <00000000>; Thu, 29 Apr 2010 00:00:00 -0000 9 | Message-ID: <00000000000000000000000000000000000000@gw.example.com> 10 | From: System Administrator 11 | To: shironeko@example.com 12 | Subject: Undeliverable: Kijitora Cat 13 | Date: Thu, 29 Apr 2010 00:00:00 -0000 14 | X-MS-TNEF-Correlator: <00000000000000000000000000000000000000@example.com> 15 | X-Mailer: Internet Mail Service (5.5.1960.3) 16 | X-MS-Embedded-Report: 17 | 18 | Your message 19 | 20 | To: shironeko@example.com 21 | Subject: Kijitora Cat 22 | Sent: Thu, 29 Apr 2010 00:00:00 -0000 23 | 24 | did not reach the following recipient(s): 25 | 26 | kijitora@example.jp on Thu, 29 Apr 2010 00:00:00 -0000 27 | The recipient name is not recognized 28 | MSEXCH:IMS:NNN:KIJITORACAT:NEKO 0 (000C05A6) 29 | Unknown Recipient 30 | 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-exchange2003-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from gw.example.com ([192.0.2.23]) 3 | by gw2.ext.example.net (Post.Office MTA v0.0.0 4 | release (P0000-000x) ID# 0-00000000000000000) with ESMTP 5 | id 0000001 for ; 6 | Thu, 29 Apr 2010 00:00:00 -0000 7 | Received: by gw with Internet Mail Service (5.5.1960.3) 8 | id <00000000>; Thu, 29 Apr 2010 00:00:00 -0000 9 | Message-ID: <00000000000000000000000000000000000000@gw.example.com> 10 | From: System Administrator 11 | To: shironeko@example.com 12 | Subject: Undeliverable: Kijitora Cat 13 | Date: Thu, 29 Apr 2010 00:00:00 -0000 14 | X-MS-TNEF-Correlator: <00000000000000000000000000000000000000@example.com> 15 | X-Mailer: Internet Mail Service (5.5.1960.3) 16 | X-MS-Embedded-Report: 17 | 18 | Your message 19 | 20 | To: shironeko@example.com 21 | Subject: Kijitora Cat 22 | Sent: Thu, 29 Apr 2010 00:00:00 -0000 23 | 24 | did not reach the following recipient(s): 25 | 26 | kijitora@example.jp on Thu, 29 Apr 2010 00:00:00 -0000 27 | The recipient name is not recognized 28 | MSEXCH:IMS:NNN:KIJITORACAT:NEKO 0 (000C05A6) 29 | Unknown Recipient 30 | 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-imailserver-01.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 29 Apr 2009 23:45:10 -0600 2 | Message-Id: <00000000000.fffffff@example.org> 3 | From: "Postmaster" 4 | Sender: 5 | To: 6 | Subject: Undeliverable Mail 7 | X-Mailer: 8 | 9 | Unknown user: kijitora@example.com 10 | 11 | 12 | Original message follows. 13 | 14 | Received: from example.org [192.0.2.88] by example.org with ESMTP 15 | (SMTPD32-5.05) id 000000000000 Thu, 29 Apr 2009 23:45:10 -0600 16 | Message-ID: <00000000.ffffffff@example.org> 17 | Date: Thu, 29 Apr 2009 23:45:10 -0800 18 | From: Karen Alton 19 | Reply-To: nekochan@example.org 20 | MIME-Version: 1.0 21 | To: kijitora@example.com 22 | Subject: Nyaaan 23 | Content-Type: text/plain; charset=us-ascii 24 | Content-Transfer-Encoding: 7bit 25 | 26 | Nyaan 27 | 28 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-mailmarshalsmtp-01.eml: -------------------------------------------------------------------------------- 1 | Received: from MailMarshal.Sender ([127.0.0.1]) by relay.xxxxxxxxx.com 2 | id ; Mon, 22 Dec 2014 16:21:07 +0000 3 | Message-ID: 4 | From: postmaster@igfej.xxxxxxxxxxxx.com 5 | To: originalsender@example.com 6 | CC: 7 | Date: Mon, 22 Dec 2014 16:21:07 +0000 8 | Subject: Undeliverable Mail: "IIdentificaゥンゥルo" 9 | MIME-Version: 1.0 10 | Content-Type: multipart/mixed; 11 | boundary="--=30ecf893-1096-4eca-ba85-bc3fca72024d" 12 | 13 | 14 | ----=30ecf893-1096-4eca-ba85-bc3fca72024d 15 | Content-Type: text/plain; 16 | charset="iso-8859-1" 17 | Content-Transfer-Encoding: 7bit 18 | 19 | Your message: 20 | From: originalsender@example.com 21 | Subject: IIdentificaゥンゥルo 22 | 23 | Could not be delivered because of 24 | 25 | 550 5.1.1 User unknown 26 | 27 | The following recipients were affected: 28 | dummyuser@blabla.xxxxxxxxxxxx.com 29 | 30 | 31 | 32 | 33 | Additional Information 34 | ====================== 35 | Original Sender: 36 | Sender-MTA: <10.11.12.13> 37 | Remote-MTA: <10.0.0.1> 38 | Reporting-MTA: 39 | MessageName: 40 | Last-Attempt-Date: <16:21:07 seg, 22 Dezembro 2014> 41 | 42 | ----=30ecf893-1096-4eca-ba85-bc3fca72024d-- 43 | 44 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-opensmtpd-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from vagrant-centos65.example.com (c213502.kyoto.example.ne.jp [192.0.2.135]) 3 | by aneyakoji.example.jp (V8/cf) with ESMTP id s6HB0VsJ028505 4 | for ; Thu, 17 Jul 2014 20:00:32 +0900 5 | Message-Id: <201407171100.s6HB0VsJ028505@aneyakoji.example.jp> 6 | Received: from localhost (localhost [local]); 7 | by localhost (OpenSMTPD) with ESMTPA id 1e2a9eaa; 8 | for ; 9 | Thu, 17 Jul 2014 11:20:14 +0000 (UTC) 10 | Subject: Delivery status notification: error 11 | From: Mailer Daemon 12 | To: kijitora@example.jp 13 | Date: Thu, 17 Jul 2014 11:20:14 +0000 (UTC) 14 | 15 | Hi! 16 | 17 | This is the MAILER-DAEMON, please DO NOT REPLY to this e-mail. 18 | 19 | An error has occurred while attempting to deliver a message for 20 | the following list of recipients: 21 | 22 | apdugoaidugoaidugoaeiudggadi@gmail.com: 550 5.1.1 http://support.google.com/mail/bin/answer.py?answer=6596 ad1si1997204pbd.83 - gsmtp 23 | 24 | Below is a copy of the original message: 25 | 26 | Received: from [127.0.0.1] (localhost [127.0.0.1]); 27 | by localhost (OpenSMTPD) with ESMTP id d70f9624; 28 | for ; 29 | Thu, 17 Jul 2014 11:19:54 +0000 (UTC) 30 | Subject: test from OpenSMTPD 31 | From: kijitora@example.jp 32 | 33 | test 34 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-v5sendmail-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from mx1.example.com ([192.0.2.55]) 3 | by mx5.example.net (Post.Office MTA v3.1.2 release (FF000-0000) ID# 0-00000000000000000) 4 | with SMTP id 00000000 for ; 5 | Thu, 29 Apr 1998 23:34:45 -0700 6 | Received: by mx5.example.com; (5.65/1.37) id 0000000; 7 | Sat, 29 Apr 1995 23:34:45 +0900 8 | Date: Sat, 29 Apr 1995 23:34:45 +0900 9 | From: Mail Delivery Subsystem 10 | Subject: Returned mail: Cannot send message for 4 days 11 | Message-Id: <0000000000.0000000@mx5.example.com> 12 | To: shironeko@example.co.jp 13 | 14 | ----- Transcript of session follows ----- 15 | 421 example.com (smtp)... Deferred: Connection timed out during user open with example.com 16 | 17 | ----- Unsent message follows ----- 18 | Received: by mx9.example.com; (5.65/1.37) id 0000000; 19 | Thu, 29 Apr 1995 23:34:45 +0900 20 | From: shironeko@example.co.jp 21 | To: kijitora@example.com 22 | Subject: Nyaaan 23 | 24 | Nyaaaaaaaaaaaaaaaan 25 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/lhost-verizon-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> 2 | Received: from njbrspamp1.vtext.com (njbrspamp1.vtext.com [192.0.2.146]) 3 | by nijo.example.jp (V8/cf) with ESMTP id r5KATqOU002339 4 | for ; Thu, 20 Jun 2013 06:29:53 -0400 5 | Received: from 39.example.com (HELO m01.vzwpix.com) ([192.0.2.39]) 6 | by njbrspamp1.vtext.com with SMTP; 20 Jun 2013 10:29:52 +0000 7 | From:MMSC NDR Administrator 8 | To:kijitora@example.jp 9 | Subject:Undeliverable Message 10 | Message-ID: <212238484192055707@-212238484192055708> 11 | Date: Wed, 20 Jun 2013 10:29:52 +0000 12 | Content-Type: multipart/mixed; boundary="----=ThisIsTheBoundaryStringaaa" 13 | 14 | 15 | ------=ThisIsTheBoundaryStringaaa 16 | Content-Type: text/plain; charset=US-ASCII 17 | 18 | Message could not be delivered to mobile. 19 | Error: No valid recipients for this MM 20 | 21 | 22 | Original Message: 23 | From: azumakuniyuki 24 | To: 0000000000@vzwpix.com 25 | Subject: test for bounce 26 | Date: Wed, 20 Jun 2013 10:29:52 +0000 27 | 28 | ------=ThisIsTheBoundaryStringaaa-- 29 | Content-Type: text/plain 30 | 31 | 32 | -------------------------------------------------------------------------------- /set-of-emails/maildir/dos/rfc3834-01.eml: -------------------------------------------------------------------------------- 1 | Return-path: 2 | Envelope-to: neko@libsisimai.org 3 | Delivery-date: Thu, 29 Apr 2005 23:34:45 +0900 4 | Received: from mta2.relay2.example.org ([192.0.2.222]:22222) 5 | by nyaan.example.com with esmtps (TLSv1:DHE-RSA-AES256-SHA:256) 6 | (Exim 4.81) 7 | (envelope-from ) 8 | id 2NEKOS-222222-22 9 | for neko@libsisimai.org; Thu, 29 Apr 2005 23:34:45 +0900 10 | Received: from neko.example.org (neko.soto.example.org [192.0.2.22]) 11 | by mta2.relay2.example.org (8.12.8/8.12.8) with ESMTP id j3QNaaaa222222 12 | for ; Thu, 29 Apr 2005 23:34:45 +0900 13 | Date: Thu, 29 Apr 2005 23:34:45 +0900 14 | Message-Id: <200503142138.j3QNaaaa222222@neko.example.org> 15 | To: neko@libsisimai.org 16 | Auto-Submitted: auto-replied 17 | From: kijitora@example.net 18 | Subject: Away until May 5 19 | 20 | I am currently away returning to the office on May 5th. I will have limited access to email and will respond to you upon my return. 21 | 22 | Kijitora, Nyaan. 23 | 24 | -------------------------------------------------------------------------------- /set-of-emails/maildir/err/make-test-07.eml: -------------------------------------------------------------------------------- 1 | Received: (qmail 3622 invoked for bounce); 30 Mar 2009 08:18:21 -0000 2 | Date: 30 Mar 2009 08:18:21 -0000 3 | From: MAILER-DAEMON@example.co.jp 4 | To: root@psuketarozaemon.jp 5 | Subject: failure notice 6 | 7 | Hi. This is the qmail-send program at mta.example.co.jp 8 | I'm afraid I wasn't able to deliver your message to the following addresses. 9 | This is a permanent error; I've given up. Sorry it didn't work out. 10 | 11 | : 12 | 192.0.2.135 does not like recipient. 13 | Remote host said: 550 5.1.1 ... User Unknown 14 | Giving up on 192.0.2.135. 15 | 16 | --- Below this line is a copy of the message. 17 | 18 | Return-Path: 19 | Received: (qmail 3620 invoked by uid 0); 30 Mar 2009 08:18:19 -0000 20 | Date: 30 Mar 2009 08:18:19 -0000 21 | Message-ID: <20090330081819.3619.qmail@mta.example.co.jp> 22 | From: root@example.co.jp 23 | to: userunknown@example.com 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-domino-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: Received: from mta52.example.jp (mta52.example.jp [192.0.2.89]) by mx.example.com (8.14.1/8.12.11) with ESMTP id o000000000 for ; Tue, 29 Apr 2010 10:45:04 -0700 Received: from mta52.example.jp (MTAXYZ [127.0.0.1]) by mx0.example.jp (localhost) with ESMTP id 0000000000 for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) Received: from x.mail.example.jp (x.mail.example.jp [192.0.2.25]) by mta52.example.jp (localhost) with ESMTP id 8888888888 for ; Tue, 29 Apr 2010 12:34:45 +0900 (JST) Date: Tue, 29 Apr 2010 10:54:01 -0700 MIME-Version: 1.0 From: Postmaster@example.jp To: Sender Address Subject: DELIVERY FAILURE: User Kijitoranyan (kijitora@example.jp) not listed in Domino Directory X-OriginalArrivalTime: 29 Apr 2010 19:02:59.0038 (UTC) FILETIME=[00000000:00000000] Message-ID: <0000000000.000000000-000000000.00000000-00000000.00000000@example.com> Content-Type: Text/Plain Content-Transfer-Encoding: 8bit Your message Subject: Test Bounce was not delivered to: kijitora@example.jp because: User some.name (kijitora@example.jp) not listed in Domino Directory -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-einsundeins-01.eml: -------------------------------------------------------------------------------- 1 | From: "Mail Delivery System" To: user1@xxxxxxxxxxxxxxxxxxx.pt Date: Tue, 23 Dec 2014 21:39:30 +0100 Subject: Mail delivery failed: returning message to sender MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-UI-Out-Filterresults: unknown:0; This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address failed: general@example.eu For the following reason: Mail size limit exceeded. For explanation visit http://postmaster.1and1.com/en/error-messages?ip=%1s --- The header of the original message is following. --- Received: (qmail 22456 invoked from network); 23 Dec 2014 20:39:27 -0000 Received: from unknown (HELO php09) (10.11.12.13) by relay.local with SMTP; 23 Dec 2014 20:39:27 -0000 Date: Tue, 23 Dec 2014 20:39:24 +0000 Message-ID: <2014122.Horde.aVib3NKNmpMSMBPv_KPp-w9@mail.xxxxxxxxxxxxxxxxxxx.pt> From: user1@xxxxxxxxxxxxxxxxxxx.pt To: Joaquim Subject: BOAS FESTAS! In-Reply-To: Content-Type: multipart/alternative; boundary="=_Bj5UaGbJV86-J0NyTypbMg8" MIME-Version: 1.0 -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-exchange-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> Received: from gw.example.com ([192.0.2.23]) by gw2.ext.example.net (Post.Office MTA v0.0.0 release (P0000-000x) ID# 0-00000000000000000) with ESMTP id 0000001 for ; Thu, 29 Apr 2010 00:00:00 -0000 Received: by gw with Internet Mail Service (5.5.1960.3) id <00000000>; Thu, 29 Apr 2010 00:00:00 -0000 Message-ID: <00000000000000000000000000000000000000@gw.example.com> From: System Administrator To: shironeko@example.com Subject: Undeliverable: Kijitora Cat Date: Thu, 29 Apr 2010 00:00:00 -0000 X-MS-TNEF-Correlator: <00000000000000000000000000000000000000@example.com> X-Mailer: Internet Mail Service (5.5.1960.3) X-MS-Embedded-Report: Your message To: shironeko@example.com Subject: Kijitora Cat Sent: Thu, 29 Apr 2010 00:00:00 -0000 did not reach the following recipient(s): kijitora@example.jp on Thu, 29 Apr 2010 00:00:00 -0000 The recipient name is not recognized MSEXCH:IMS:NNN:KIJITORACAT:NEKO 0 (000C05A6) Unknown Recipient -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-exchange2003-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> Received: from gw.example.com ([192.0.2.23]) by gw2.ext.example.net (Post.Office MTA v0.0.0 release (P0000-000x) ID# 0-00000000000000000) with ESMTP id 0000001 for ; Thu, 29 Apr 2010 00:00:00 -0000 Received: by gw with Internet Mail Service (5.5.1960.3) id <00000000>; Thu, 29 Apr 2010 00:00:00 -0000 Message-ID: <00000000000000000000000000000000000000@gw.example.com> From: System Administrator To: shironeko@example.com Subject: Undeliverable: Kijitora Cat Date: Thu, 29 Apr 2010 00:00:00 -0000 X-MS-TNEF-Correlator: <00000000000000000000000000000000000000@example.com> X-Mailer: Internet Mail Service (5.5.1960.3) X-MS-Embedded-Report: Your message To: shironeko@example.com Subject: Kijitora Cat Sent: Thu, 29 Apr 2010 00:00:00 -0000 did not reach the following recipient(s): kijitora@example.jp on Thu, 29 Apr 2010 00:00:00 -0000 The recipient name is not recognized MSEXCH:IMS:NNN:KIJITORACAT:NEKO 0 (000C05A6) Unknown Recipient -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-imailserver-01.eml: -------------------------------------------------------------------------------- 1 | Date: Thu, 29 Apr 2009 23:45:10 -0600 Message-Id: <00000000000.fffffff@example.org> From: "Postmaster" Sender: To: Subject: Undeliverable Mail X-Mailer: Unknown user: kijitora@example.com Original message follows. Received: from example.org [192.0.2.88] by example.org with ESMTP (SMTPD32-5.05) id 000000000000 Thu, 29 Apr 2009 23:45:10 -0600 Message-ID: <00000000.ffffffff@example.org> Date: Thu, 29 Apr 2009 23:45:10 -0800 From: Karen Alton Reply-To: nekochan@example.org MIME-Version: 1.0 To: kijitora@example.com Subject: Nyaaan Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Nyaan -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-mailmarshalsmtp-01.eml: -------------------------------------------------------------------------------- 1 | Received: from MailMarshal.Sender ([127.0.0.1]) by relay.xxxxxxxxx.com id ; Mon, 22 Dec 2014 16:21:07 +0000 Message-ID: From: postmaster@igfej.xxxxxxxxxxxx.com To: originalsender@example.com CC: Date: Mon, 22 Dec 2014 16:21:07 +0000 Subject: Undeliverable Mail: "IIdentificaゥンゥルo" MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="--=30ecf893-1096-4eca-ba85-bc3fca72024d" ----=30ecf893-1096-4eca-ba85-bc3fca72024d Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Your message: From: originalsender@example.com Subject: IIdentificaゥンゥルo Could not be delivered because of 550 5.1.1 User unknown The following recipients were affected: dummyuser@blabla.xxxxxxxxxxxx.com Additional Information ====================== Original Sender: Sender-MTA: <10.11.12.13> Remote-MTA: <10.0.0.1> Reporting-MTA: MessageName: Last-Attempt-Date: <16:21:07 seg, 22 Dezembro 2014> ----=30ecf893-1096-4eca-ba85-bc3fca72024d-- -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-opensmtpd-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> Received: from vagrant-centos65.example.com (c213502.kyoto.example.ne.jp [192.0.2.135]) by aneyakoji.example.jp (V8/cf) with ESMTP id s6HB0VsJ028505 for ; Thu, 17 Jul 2014 20:00:32 +0900 Message-Id: <201407171100.s6HB0VsJ028505@aneyakoji.example.jp> Received: from localhost (localhost [local]); by localhost (OpenSMTPD) with ESMTPA id 1e2a9eaa; for ; Thu, 17 Jul 2014 11:20:14 +0000 (UTC) Subject: Delivery status notification: error From: Mailer Daemon To: kijitora@example.jp Date: Thu, 17 Jul 2014 11:20:14 +0000 (UTC) Hi! This is the MAILER-DAEMON, please DO NOT REPLY to this e-mail. An error has occurred while attempting to deliver a message for the following list of recipients: apdugoaidugoaidugoaeiudggadi@gmail.com: 550 5.1.1 http://support.google.com/mail/bin/answer.py?answer=6596 ad1si1997204pbd.83 - gsmtp Below is a copy of the original message: Received: from [127.0.0.1] (localhost [127.0.0.1]); by localhost (OpenSMTPD) with ESMTP id d70f9624; for ; Thu, 17 Jul 2014 11:19:54 +0000 (UTC) Subject: test from OpenSMTPD From: kijitora@example.jp test -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-v5sendmail-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: Received: from mx1.example.com ([192.0.2.55]) by mx5.example.net (Post.Office MTA v3.1.2 release (FF000-0000) ID# 0-00000000000000000) with SMTP id 00000000 for ; Thu, 29 Apr 1998 23:34:45 -0700 Received: by mx5.example.com; (5.65/1.37) id 0000000; Sat, 29 Apr 1995 23:34:45 +0900 Date: Sat, 29 Apr 1995 23:34:45 +0900 From: Mail Delivery Subsystem Subject: Returned mail: Cannot send message for 4 days Message-Id: <0000000000.0000000@mx5.example.com> To: shironeko@example.co.jp ----- Transcript of session follows ----- 421 example.com (smtp)... Deferred: Connection timed out during user open with example.com ----- Unsent message follows ----- Received: by mx9.example.com; (5.65/1.37) id 0000000; Thu, 29 Apr 1995 23:34:45 +0900 From: shironeko@example.co.jp To: kijitora@example.com Subject: Nyaaan Nyaaaaaaaaaaaaaaaan -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/lhost-verizon-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: <> Received: from njbrspamp1.vtext.com (njbrspamp1.vtext.com [192.0.2.146]) by nijo.example.jp (V8/cf) with ESMTP id r5KATqOU002339 for ; Thu, 20 Jun 2013 06:29:53 -0400 Received: from 39.example.com (HELO m01.vzwpix.com) ([192.0.2.39]) by njbrspamp1.vtext.com with SMTP; 20 Jun 2013 10:29:52 +0000 From:MMSC NDR Administrator To:kijitora@example.jp Subject:Undeliverable Message Message-ID: <212238484192055707@-212238484192055708> Date: Wed, 20 Jun 2013 10:29:52 +0000 Content-Type: multipart/mixed; boundary="----=ThisIsTheBoundaryStringaaa" ------=ThisIsTheBoundaryStringaaa Content-Type: text/plain; charset=US-ASCII Message could not be delivered to mobile. Error: No valid recipients for this MM Original Message: From: azumakuniyuki To: 0000000000@vzwpix.com Subject: test for bounce Date: Wed, 20 Jun 2013 10:29:52 +0000 ------=ThisIsTheBoundaryStringaaa-- Content-Type: text/plain -------------------------------------------------------------------------------- /set-of-emails/maildir/mac/rfc3834-01.eml: -------------------------------------------------------------------------------- 1 | Return-path: Envelope-to: neko@libsisimai.org Delivery-date: Thu, 29 Apr 2005 23:34:45 +0900 Received: from mta2.relay2.example.org ([192.0.2.222]:22222) by nyaan.example.com with esmtps (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.81) (envelope-from ) id 2NEKOS-222222-22 for neko@libsisimai.org; Thu, 29 Apr 2005 23:34:45 +0900 Received: from neko.example.org (neko.soto.example.org [192.0.2.22]) by mta2.relay2.example.org (8.12.8/8.12.8) with ESMTP id j3QNaaaa222222 for ; Thu, 29 Apr 2005 23:34:45 +0900 Date: Thu, 29 Apr 2005 23:34:45 +0900 Message-Id: <200503142138.j3QNaaaa222222@neko.example.org> To: neko@libsisimai.org Auto-Submitted: auto-replied From: kijitora@example.net Subject: Away until May 5 I am currently away returning to the office on May 5th. I will have limited access to email and will respond to you upon my return. Kijitora, Nyaan. -------------------------------------------------------------------------------- /set-of-emails/maildir/not/is-not-bounce-01.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from haineko.example.jp (c135.kyoto.example.ne.jp. [192.0.2.135]) 3 | by mx.example.com with ESMTPSA id uj1sm5989012pac.21.2013.07.15.13.16.37 4 | for 5 | (version=TLSv1 cipher=RC4-SHA bits=128/128); 6 | Mon, 15 Jul 2013 13:16:38 -0700 (PDT) 7 | Received: from [127.0.0.1] ([127.0.0.1]) by haineko.example.jp with HTTP id 8 | r6G5GZa04810SOeg; Tue, 16 Jul 2013 05:16:35 JST 9 | To: kijitora@example.jp 10 | Subject: =?UTF-8?B?44Gr44KD44KT44GT?= 11 | X-SMTP-Engine: Haineko 0.0.1 12 | X-Originating-IP: 127.0.0.1 13 | X-Mailer: curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 14 | OpenSSL/0.9.8x zlib/1.2.5 15 | Reply-to: mikeneko@example.org 16 | X-HTTP-Referer: 17 | Date: Mon, 15 Jul 2013 13:16:38 -0700 (PDT) 18 | Message-Id: <51e458a6.21eb420a.5f83.4ce2@mx.example.com> 19 | From: Kijitora 20 | MIME-Version: 1.0 21 | Content-Type: text/plain; charset="UTF-8" 22 | Content-Transfer-Encoding: 8bit 23 | 24 | にゃーーーーーーーーーーー 25 | 26 | -------------------------------------------------------------------------------- /set-of-emails/maildir/tmp/lhost-exim-07.eml: -------------------------------------------------------------------------------- 1 | From MAILER-DAEMON Mon 1 Jan 2015 00:00:00 +0900 2 | Return-Path: <> 3 | X-Original-To: shironeko@example.ad.jp 4 | Delivered-To: shironeko@example.ad.jp 5 | Received: from shiba@example.com 6 | by xxxxxx (Postfix) with ESMTPS id xxxxxx 7 | for shironeko@example.ad.jp; Mon, 1 Jan 2015 00:00:00 +0900 (JST) 8 | Received: from Debian-exim by xxxxxx with local 9 | id xxxxxxx; Mon, 1 Jan 2015 00:00:00 +0900 10 | X-Failed-Recipients: shiba@example.com 11 | Reply-To: shiba@example.com 12 | Auto-Submitted: auto-replied 13 | From: Mail Delivery System 14 | To: shironeko@example.ad.jp 15 | Subject: Mail delivery failed: returning message to sender 16 | Date: Mon, 1 Jan 2015 00:00:00 +0900 17 | 18 | This message was created automatically by mail delivery software. 19 | 20 | A message that you sent could not be delivered to one or more of its 21 | recipients. This is a permanent error. The following address(es) failed: 22 | 23 | save to xxxx 24 | generated by xxxx 25 | mailbox is full: retry timeout exceeded 26 | 27 | ------ This is a copy of the message, including all the headers. ------ 28 | 29 | -------------------------------------------------------------------------------- /set-of-emails/maildir/tmp/rfc3464-38.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from r8-2.example.com (r8-2.example.com [207.115.63.49]) 3 | by w4-1.example.com (8.13.1/8.13.0) with ESMTP id m3TNYjK31707 4 | for ; Thu, 29 Apr 2008 23:34:45 +0000 5 | Received: (from root@localhost) 6 | by r8-2.example.com (8.13.1/8.13.0) id m3TNYjK00002 7 | for sironeko@example.org; Thu, 29 Apr 2008 23:34:45 +0000 8 | From: MAILER-DAEMON@example.com 9 | Message-Id: <20080429233445.m3TNYjK00000@r8-2.example.com> 10 | Date: Thu, 29 Apr 2008 23:34:45 +0000 11 | To: 12 | Subject: Returned mail: Nyaan 13 | 14 | User's mailbox is full: 15 | Unable to deliver mail. 16 | 17 | 18 | -------------------------------------------------------------------------------- /set-of-emails/maildir/tmp/rfc3464-39.eml: -------------------------------------------------------------------------------- 1 | Return-Path: 2 | Received: from r2.nyaan.example.net (www.nyaan.example.net [207.178.107.65]) 3 | by r8-5.neko.example.com (8.13.1/8.13.1) with ESMTP id l6TNYjZ31744 4 | for ; Thu, 29 Apr 2007 23:34:45 +0000 5 | Message-ID: 6 | From: Postmaster 7 | To: sironeko-nyaan@example.org 8 | Subject: Undeliverable: kijitora@nyaan.example.net 9 | Date: Wed, 3 May 2007 23:34:45 10 | MIME-Version: 1.0 11 | Content-Type: text/plain; charset="us-ascii" 12 | 13 | -------------------------------------------------------------------------------- 14 | Your Message 15 | 16 | To: 17 | 18 | Subject: Nyaan 19 | 20 | Date: Thu, 29 Apr 2007 23:34:45 +0000 21 | 22 | Did not reach the following recipient: kijitora@nyaan.example.net 23 | 24 | -------------------------------------------------------------------------------- /set-of-emails/to-be-parsed-for-test/README.md: -------------------------------------------------------------------------------- 1 | About Sample Emails in set-of-emails/to-be-parsed-for-test Directory 2 | ==================================================================== 3 | 4 | If you want to know whether the latest version of Sisimai ( both Perl version and 5 | Ruby version) can parse bounce emails you have or not, fork this repository and 6 | add these emails to this repository. 7 | 8 | ``` 9 | % cd /usr/local/src 10 | % git clone https://github.com/sisimai/set-of-emails.git 11 | ... 12 | 13 | % cd set-of-emails 14 | % git checkout -b add-emails-from- 15 | % cp /path/to/some/where/*.eml ./to-be-parsed-for-test/ 16 | % git add ./to-be-parsed-for-test/*.eml 17 | % git commit -m 'Your commit message here' ./to-be-parsed-for-test/ 18 | % git push origin master 19 | ``` 20 | 21 | -------------------------------------------------------------------------------- /t/000-compile.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | require './t/900-modules.pl'; 5 | 6 | for my $e ( @{ Sisimai::Test::Modules->list() } ) { 7 | my $v = $e; $v =~ s|/|::|g; $v =~ s/[.]pm//g; 8 | use_ok $v; 9 | } 10 | done_testing; 11 | -------------------------------------------------------------------------------- /t/002-sample-emails.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use IO::File; 4 | 5 | my $checkuntil = 2; 6 | my $sampledirs = [ 7 | './set-of-emails/mailbox', 8 | './set-of-emails/maildir/err', 9 | './set-of-emails/maildir/bsd', 10 | './set-of-emails/maildir/dos', 11 | './set-of-emails/to-be-debugged-because/something-is-wrong', 12 | './set-of-emails/to-be-parsed-for-test', 13 | ]; 14 | 15 | for my $de ( @$sampledirs ) { 16 | ok -d $de; 17 | ok -r $de; 18 | ok -x $de; 19 | opendir(my $dr, $de); 20 | while( my $ce = readdir $dr ) { 21 | next if $ce eq '.'; 22 | next if $ce eq '..'; 23 | 24 | my $emailfn = sprintf("%s/%s", $de, $ce); 25 | my $lnindex = 0; 26 | my $fhandle = undef; 27 | 28 | ok -f $emailfn, sprintf("%s: FILE", $ce); 29 | ok -T $emailfn, sprintf("%s: TEXT", $ce); 30 | ok -r $emailfn, sprintf("%s: READ", $ce); 31 | ok -s $emailfn, sprintf("%s: SIZE", $ce); 32 | 33 | $fhandle = IO::File->new($emailfn, 'r'); 34 | while( my $r = <$fhandle> ) { 35 | $lnindex++; 36 | like $r, qr/\x0a\z/, sprintf("%s: LINE(%02d)", $ce, $lnindex); 37 | last if $lnindex > $checkuntil; 38 | } 39 | $fhandle->close; 40 | } 41 | close $dr; 42 | } 43 | 44 | done_testing; 45 | 46 | -------------------------------------------------------------------------------- /t/014-time.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | no warnings 'once'; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | use Sisimai::Time; 6 | 7 | my $Package = 'Sisimai::Time'; 8 | my $Methods = { 9 | 'class' => [], 10 | 'object' => ['TO_JSON'], 11 | }; 12 | 13 | use_ok $Package; 14 | can_ok $Package, @{ $Methods->{'object'} }; 15 | 16 | MAKETEST: { 17 | my $v = $Package->new; 18 | my $t = Time::Piece->new; 19 | 20 | isa_ok $v, $Package; 21 | is $v->TO_JSON, $v->epoch, 'TO_JSON() = '.$v->epoch; 22 | } 23 | 24 | done_testing(); 25 | -------------------------------------------------------------------------------- /t/025-smtp.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | use Sisimai::SMTP; 5 | 6 | my $Package = 'Sisimai::SMTP'; 7 | my $Methods = { 'class' => [], 'object' => [] }; 8 | 9 | use_ok $Package; 10 | done_testing; 11 | -------------------------------------------------------------------------------- /t/033-rfc5965.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | use Sisimai::RFC5965; 5 | 6 | my $Package = 'Sisimai::RFC5965'; 7 | my $Methods = { 8 | 'class' => [], 9 | 'object' => [], 10 | }; 11 | 12 | use_ok $Package; 13 | 14 | MAKETEST: { 15 | my $v = $Package->FIELDINDEX; 16 | isa_ok $v, 'ARRAY', '->FIELDINDEX returns ARRAY'; 17 | ok scalar @$v, '->FIELDINDEX returns ARRAY'; 18 | } 19 | 20 | done_testing; 21 | 22 | -------------------------------------------------------------------------------- /t/041-order.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | use Sisimai::Order; 5 | 6 | my $Package = 'Sisimai::Order'; 7 | my $Methods = { 8 | 'class' => ['make', 'another'], 9 | 'object' => [], 10 | }; 11 | 12 | use_ok $Package; 13 | can_ok $Package, @{ $Methods->{'class'} }; 14 | 15 | MAKETEST: { 16 | my $pattern = $Package->make('delivery failure'); 17 | my $another = $Package->another; 18 | 19 | isa_ok $pattern, 'ARRAY'; 20 | isa_ok $another, 'ARRAY'; 21 | 22 | ok scalar @$pattern, scalar(@$pattern).' Modules'; 23 | ok scalar @$another, scalar(@$another).' Modules'; 24 | 25 | for my $v ( @$pattern, @$another ) { 26 | # Module name test 27 | like $v, qr/\ASisimai::Lhost::/, $v; 28 | use_ok $v; 29 | } 30 | } 31 | 32 | done_testing; 33 | 34 | -------------------------------------------------------------------------------- /t/050-lhost.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | use Sisimai::Lhost; 5 | 6 | my $Package = 'Sisimai::Lhost'; 7 | my $Methods = { 8 | 'class' => [ 'description', 'inquire', 'index', 'path', 'DELIVERYSTATUS', 'INDICATORS' ], 9 | 'object' => [], 10 | }; 11 | 12 | use_ok $Package; 13 | can_ok $Package, @{ $Methods->{'class'} }; 14 | 15 | MAKETEST: { 16 | is $Package->description, '', '->description'; 17 | is $Package->inquire, undef, '->inquire'; 18 | 19 | isa_ok $Package->index, 'ARRAY'; 20 | ok scalar @{ $Package->index }; 21 | 22 | isa_ok $Package->path, 'HASH'; 23 | ok scalar keys %{ $Package->path }; 24 | 25 | isa_ok $Package->DELIVERYSTATUS, 'HASH'; 26 | is scalar(keys %{ $Package->DELIVERYSTATUS }), 14; 27 | 28 | isa_ok $Package->INDICATORS, 'HASH'; 29 | is scalar(keys %{ $Package->INDICATORS }), 2; 30 | } 31 | done_testing; 32 | -------------------------------------------------------------------------------- /t/301-rhost-google.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Google'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.1', '550', 'suspend', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.7.26', '550', 'authfailure', 0]], 14 | '04' => [['5.7.26', '550', 'authfailure', 0]], 15 | '05' => [['5.2.2', '552', 'mailboxfull', 0]], 16 | '06' => [['5.7.25', '550', 'requireptr', 0]], 17 | '07' => [['5.2.1', '550', 'suspend', 0]], 18 | '08' => [['5.7.1', '550', 'notcompliantrfc', 0]], 19 | }; 20 | 21 | $enginetest->($enginename, $isexpected); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /t/302-rhost-microsoft.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Microsoft'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.7.606', '550', 'blocked', 0]], 12 | '02' => [['5.4.1', '550', 'userunknown', 1]], 13 | '03' => [['5.1.10', '550', 'userunknown', 1]], 14 | '04' => [['5.7.509', '550', 'authfailure', 0]], 15 | '05' => [['4.7.650', '451', 'badreputation', 0]], 16 | }; 17 | 18 | $enginetest->($enginename, $isexpected); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /t/303-rhost-goddady.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GoDaddy'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '02' => [['5.1.3', '553', 'blocked', 0]], 12 | '03' => [['5.1.1', '550', 'speeding', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/304-rhost-franceptt.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'FrancePTT'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.5.0', '550', 'userunknown', 1]], 13 | '03' => [['5.2.0', '550', 'spamdetected', 0]], 14 | '04' => [['5.2.0', '550', 'spamdetected', 0]], 15 | '05' => [['5.5.0', '550', 'suspend', 0]], 16 | '06' => [['4.0.0', '', 'blocked', 0]], 17 | '07' => [['4.0.0', '421', 'blocked', 0]], 18 | '08' => [['4.2.0', '421', 'systemerror', 0]], 19 | '10' => [['5.5.0', '550', 'blocked', 0]], 20 | '11' => [['4.2.1', '421', 'blocked', 0]], 21 | '12' => [['5.7.1', '554', 'policyviolation', 0]], 22 | }; 23 | 24 | $enginetest->($enginename, $isexpected); 25 | done_testing; 26 | 27 | -------------------------------------------------------------------------------- /t/305-rhost-kddi.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'KDDI'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.0', '550', 'filtered', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/306-rhost-tencent.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Tencent'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.0', '550', 'toomanyconn', 0]], 12 | '02' => [['5.0.0', '550', 'toomanyconn', 0]], 13 | '03' => [['5.0.0', '550', 'authfailure', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/307-rhost-iua.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'IUA'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.0', '550', 'suspend', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/308-rhost-spectrum.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Spectrum'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.0', '550', 'toomanyconn', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/309-rhost-cox.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Cox'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.0', '550', 'blocked', 0], 12 | ['5.1.0', '550', 'blocked', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/310-rhost-nttdocomo.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'NTTDOCOMO'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.0', '550', 'filtered', 0]], 12 | '02' => [['5.0.0', '550', 'userunknown', 1]], 13 | '03' => [['5.0.0', '550', 'userunknown', 1]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/311-rhost-mimecast.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Mimecast'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.0', '554', 'policyviolation', 0]], 12 | '02' => [['5.0.0', '554', 'virusdetected', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/312-rhost-yahooinc.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'YahooInc'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.7.9', '554', 'policyviolation', 0]], 12 | '02' => [['4.7.0', '421', 'rejected', 0]], 13 | '03' => [['5.0.0', '554', 'userunknown', 1]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/313-rhost-apple.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Apple'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.6', '550', 'hasmoved', 1]], 12 | '02' => [['5.7.1', '554', 'authfailure', 0]], 13 | '03' => [['5.2.2', '552', 'mailboxfull', 0]], 14 | '04' => [['5.1.1', '550', 'userunknown', 1]], 15 | }; 16 | 17 | $enginetest->($enginename, $isexpected); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /t/314-rhost-aol.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Aol'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.4.4', '', 'hostunknown', 1]], 12 | '02' => [['5.2.2', '550', 'mailboxfull', 0]], 13 | '03' => [['5.2.2', '550', 'mailboxfull', 0], 14 | ['5.1.1', '550', 'userunknown', 1]], 15 | '04' => [['5.1.1', '550', 'userunknown', 1]], 16 | '05' => [['5.4.4', '', 'hostunknown', 1]], 17 | '06' => [['5.4.4', '', 'notaccept', 1]], 18 | }; 19 | 20 | $enginetest->($enginename, $isexpected); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /t/315-rhost-facebook.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Facebook'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '03' => [['5.1.1', '550', 'filtered', 0]], 12 | '04' => [['5.1.1', '550', 'userunknown', 1]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/317-rhost-messagelabs.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MessageLabs'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.0', '550', 'securityerror', 0]], 12 | '02' => [['5.0.0', '550', 'userunknown', 1]], 13 | '03' => [['5.0.0', '', 'userunknown', 1]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/318-rhost-outlook.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Outlook'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.2', '550', 'mailboxfull', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.5.0', '554', 'hostunknown', 1]], 14 | '04' => [['5.1.1', '550', 'userunknown', 1], 15 | ['5.2.2', '550', 'mailboxfull', 0]], 16 | '06' => [['4.4.7', '', 'expired', 0]], 17 | '07' => [['4.4.7', '', 'expired', 0]], 18 | '08' => [['5.5.0', '550', 'userunknown', 1]], 19 | '09' => [['5.5.0', '550', 'requireptr', 0]], 20 | }; 21 | 22 | $enginetest->($enginename, $isexpected); 23 | done_testing; 24 | 25 | -------------------------------------------------------------------------------- /t/319-rhost-gsuite.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GSuite'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | "01" => [["5.1.0", "550", "userunknown", 1]], 12 | "02" => [["5.0.0", "", "userunknown", 1]], 13 | "03" => [["4.0.0", "", "notaccept", 0]], 14 | "04" => [["4.0.0", "", "networkerror", 0]], 15 | "05" => [["4.0.0", "", "networkerror", 0]], 16 | "06" => [["4.4.1", "", "expired", 0]], 17 | "07" => [["4.4.1", "", "expired", 0]], 18 | "08" => [["5.0.0", "550", "filtered", 0]], 19 | "09" => [["5.0.0", "550", "userunknown", 1]], 20 | "10" => [["4.0.0", "", "notaccept", 0]], 21 | "11" => [["5.1.8", "501", "rejected", 0]], 22 | "12" => [["5.0.0", "", "spamdetected", 0]], 23 | "13" => [["4.0.0", "", "networkerror", 0]], 24 | "14" => [["5.1.1", "550", "userunknown", 1]], 25 | }; 26 | 27 | $enginetest->($enginename, $isexpected); 28 | done_testing; 29 | 30 | -------------------------------------------------------------------------------- /t/320-rhost-cloudflare.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Cloudflare'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | "01" => [["4.3.0", "421", "systemerror", 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/400-callback-base64.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use Test::More; 3 | use lib qw(./lib ./blib/lib); 4 | use Sisimai::Fact; 5 | use IO::File; 6 | 7 | my $SampleEmails = ['lhost-domino-03.eml', 'lhost-mfilter-04.eml']; 8 | 9 | MAKETEST: { 10 | my $callbackto = sub { 11 | my $argvs = shift; 12 | my $catch = { 'passed' => 0, 'base64' => 0 }; 13 | 14 | for my $v ( split(/\n/, $argvs->{'message'}) ) { 15 | next unless $v =~ m|\A[0-9A-Za-z=/]{32,64}\z|; 16 | $catch->{'base64'} = 1; 17 | last; 18 | } 19 | $catch->{'passed'} = 1; 20 | return $catch; 21 | }; 22 | 23 | for my $e ( @$SampleEmails ) { 24 | my $filehandle = IO::File->new('set-of-emails/maildir/bsd/'.$e, 'r'); 25 | my $mailastext = ''; 26 | 27 | while( my $r = <$filehandle> ) { 28 | $mailastext .= $r; 29 | } 30 | $filehandle->close; 31 | ok length $mailastext; 32 | 33 | my $p = shift @{ Sisimai::Fact->rise({ 'data' => $mailastext, 'hook' => $callbackto }) }; 34 | isa_ok $p, 'Sisimai::Fact'; 35 | 36 | isa_ok $p->catch, 'HASH'; 37 | is $p->catch->{'passed'}, 1, '->catch->passed = 1'; 38 | is $p->catch->{'base64'}, 0, '->catch->base64 = 0'; 39 | } 40 | } 41 | done_testing; 42 | 43 | -------------------------------------------------------------------------------- /t/610-lhost-activehunter.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Activehunter'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.0.910', '550', 'filtered', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/611-lhost-amavis.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Amavis'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.7.0', '554', 'notcompliantrfc', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/613-lhost-amazonworkmail.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'AmazonWorkMail'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.1', '550', 'filtered', 0]], 13 | '03' => [['5.3.5', '550', 'systemerror', 0]], 14 | '04' => [['5.2.2', '550', 'mailboxfull', 0]], 15 | '05' => [['4.4.2', '421', 'expired', 0]], 16 | '07' => [['4.4.2', '421', 'expired', 0]], 17 | '08' => [['5.2.2', '550', 'mailboxfull', 0]], 18 | }; 19 | 20 | $enginetest->($enginename, $isexpected); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /t/615-lhost-apachejames.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'ApacheJames'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '550', 'filtered', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/620-lhost-barracuda.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Barracuda'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.7.1', '550', 'spamdetected', 0]], 12 | '02' => [['5.7.1', '550', 'spamdetected', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/621-lhost-bigfoot.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Bigfoot'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '02' => [['5.7.1', '553', 'userunknown', 1]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/622-lhost-biglobe.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Biglobe'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.922', '', 'mailboxfull', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/630-lhost-courier.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Courier'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.0.0', '550', 'filtered', 0]], 13 | '03' => [['5.7.1', '550', 'rejected', 0]], 14 | '04' => [['5.0.0', '', 'hostunknown', 1]], 15 | }; 16 | 17 | $enginetest->($enginename, $isexpected); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /t/640-lhost-domino.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Domino'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.911', '', 'userunknown', 1]], 12 | '02' => [['5.0.0', '', 'userunknown', 1]], 13 | '03' => [['5.0.0', '', 'networkerror', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/650-lhost-einsundeins.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'EinsUndEins'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '02' => [['5.0.934', '', 'mesgtoobig', 0]], 12 | '03' => [['5.2.0', '550', 'spamdetected', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/651-lhost-exchange2003.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Exchange2003'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.911', '', 'userunknown', 1]], 12 | '02' => [['5.0.911', '', 'userunknown', 1], 13 | ['5.0.911', '', 'userunknown', 1]], 14 | '03' => [['5.0.911', '', 'userunknown', 1]], 15 | '04' => [['5.0.910', '', 'filtered', 0]], 16 | '05' => [['5.0.911', '', 'userunknown', 1]], 17 | '07' => [['5.0.911', '', 'userunknown', 1]], 18 | }; 19 | 20 | $enginetest->($enginename, $isexpected); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /t/652-lhost-exchange2007.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Exchange2007'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.2', '550', 'mailboxfull', 0]], 13 | '03' => [['5.2.3', '550', 'exceedlimit', 0]], 14 | '04' => [['5.7.1', '550', 'securityerror', 0]], 15 | '05' => [['4.4.1', '', 'expired', 0]], 16 | '06' => [['5.1.1', '550', 'userunknown', 1]], 17 | '07' => [['5.1.1', '550', 'userunknown', 1]], 18 | }; 19 | 20 | $enginetest->($enginename, $isexpected); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /t/654-lhost-ezweb.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'EZweb'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '', 'filtered', 0]], 12 | '02' => [['5.0.0', '550', 'suspend', 0]], 13 | '03' => [['5.0.921', '', 'suspend', 0]], 14 | '04' => [['5.0.911', '550', 'userunknown', 1]], 15 | '05' => [['5.0.947', '', 'expired', 0]], 16 | '07' => [['5.0.911', '550', 'userunknown', 1]], 17 | '08' => [['5.0.971', '550', 'blocked', 0]], 18 | }; 19 | 20 | $enginetest->($enginename, $isexpected); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /t/661-lhost-fml.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'FML'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '02' => [['5.0.918', '', 'rejected', 0]], 12 | '03' => [['5.0.930', '', 'systemerror', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/670-lhost-gmail.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Gmail'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '03' => [['5.7.0', '554', 'filtered', 0]], 13 | '04' => [['5.7.1', '554', 'blocked', 0]], 14 | '05' => [['5.7.1', '550', 'securityerror', 0]], 15 | '06' => [['4.2.2', '450', 'mailboxfull', 0]], 16 | '07' => [['5.0.976', '500', 'failedstarttls', 0]], 17 | '08' => [['5.0.947', '', 'expired', 0]], 18 | '09' => [['4.0.947', '', 'expired', 0]], 19 | '10' => [['5.0.947', '', 'expired', 0]], 20 | '11' => [['5.0.947', '', 'expired', 0]], 21 | '15' => [['5.0.947', '', 'expired', 0]], 22 | '16' => [['5.2.2', '550', 'mailboxfull', 0]], 23 | '17' => [['4.0.947', '', 'expired', 0]], 24 | '18' => [['5.1.1', '550', 'userunknown', 1]], 25 | '19' => [['5.0.922', '', 'mailboxfull', 0]], 26 | }; 27 | 28 | $enginetest->($enginename, $isexpected); 29 | done_testing; 30 | 31 | 32 | -------------------------------------------------------------------------------- /t/671-lhost-gmx.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GMX'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.2', '', 'mailboxfull', 0]], 12 | '02' => [['5.1.1', '', 'userunknown', 1]], 13 | '03' => [['5.2.1', '', 'userunknown', 1], 14 | ['5.2.2', '', 'mailboxfull', 0]], 15 | '04' => [['5.0.947', '', 'expired', 0]], 16 | }; 17 | 18 | $enginetest->($enginename, $isexpected); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /t/672-lhost-googlegroups.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GoogleGroups'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.918', '', 'rejected', 0]], 12 | '02' => [['5.0.918', '', 'rejected', 0]], 13 | '03' => [['5.0.918', '', 'rejected', 0]], 14 | '04' => [['5.0.918', '', 'rejected', 0]], 15 | '05' => [['5.0.918', '', 'rejected', 0]], 16 | '06' => [['5.0.918', '', 'rejected', 0]], 17 | '07' => [['5.0.918', '', 'rejected', 0]], 18 | '08' => [['5.0.918', '', 'rejected', 0]], 19 | '09' => [['5.0.918', '', 'rejected', 0]], 20 | '10' => [['5.0.918', '', 'rejected', 0]], 21 | '11' => [['5.0.918', '', 'rejected', 0]], 22 | '12' => [['5.0.918', '', 'rejected', 0]], 23 | '13' => [['5.0.918', '', 'rejected', 0]], 24 | '14' => [['5.0.918', '', 'rejected', 0]], 25 | }; 26 | 27 | $enginetest->($enginename, $isexpected); 28 | done_testing; 29 | 30 | -------------------------------------------------------------------------------- /t/673-lhost-googleworkspace.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GoogleWorkspace'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.918', '', 'rejected', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/690-lhost-imailserver.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'IMailServer'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.911', '', 'userunknown', 1]], 12 | '02' => [['5.0.922', '', 'mailboxfull', 0]], 13 | '03' => [['5.0.911', '', 'userunknown', 1]], 14 | '04' => [['5.0.947', '', 'expired', 0]], 15 | '06' => [['5.0.980', '550', 'spamdetected', 0]], 16 | }; 17 | 18 | $enginetest->($enginename, $isexpected); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /t/691-lhost-interscanmss.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'InterScanMSS'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.0.911', '', 'userunknown', 1]], 13 | '03' => [['5.0.911', '', 'userunknown', 1]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/710-lhost-kddi.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'KDDI'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.922', '', 'mailboxfull', 0]], 12 | '02' => [['5.0.922', '', 'mailboxfull', 0]], 13 | '03' => [['5.0.922', '', 'mailboxfull', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/730-lhost-mailfoundry.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailFoundry'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '550', 'filtered', 0]], 12 | '02' => [['5.1.1', '552', 'mailboxfull', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/731-lhost-mailmarshalsmtp.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailMarshalSMTP'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '02' => [['5.1.1', '550', 'userunknown', 1]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/732-lhost-mailru.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailRu'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.2', '550', 'mailboxfull', 0]], 13 | '03' => [['5.2.2', '550', 'mailboxfull', 0], 14 | ['5.2.1', '550', 'userunknown', 1]], 15 | '04' => [['5.1.1', '550', 'userunknown', 1]], 16 | '05' => [['5.0.932', '', 'notaccept', 1]], 17 | '06' => [['5.0.912', '', 'hostunknown', 1]], 18 | '07' => [['5.0.910', '550', 'filtered', 0]], 19 | '08' => [['5.0.911', '550', 'userunknown', 1]], 20 | '09' => [['5.1.8', '501', 'rejected', 0]], 21 | '10' => [['4.0.947', '', 'expired', 0]], 22 | }; 23 | 24 | $enginetest->($enginename, $isexpected); 25 | done_testing; 26 | 27 | -------------------------------------------------------------------------------- /t/733-lhost-mcafee.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'McAfee'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '550', 'filtered', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.1.1', '550', 'userunknown', 1]], 14 | '04' => [['5.0.910', '550', 'filtered', 0]], 15 | '05' => [['5.0.910', '550', 'filtered', 0]], 16 | }; 17 | 18 | $enginetest->($enginename, $isexpected); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /t/735-lhost-messagingserver.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MessagingServer'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.0', '', 'mailboxfull', 0]], 13 | '03' => [['5.7.1', '550', 'filtered', 0], 14 | ['5.7.1', '550', 'filtered', 0]], 15 | '04' => [['5.2.2', '550', 'mailboxfull', 0]], 16 | '05' => [['5.4.4', '', 'hostunknown', 1]], 17 | '06' => [['5.2.1', '550', 'filtered', 0]], 18 | '07' => [['4.4.7', '', 'expired', 0]], 19 | '08' => [['5.0.0', '550', 'filtered', 0]], 20 | '09' => [['5.0.0', '550', 'userunknown', 1]], 21 | '10' => [['5.1.10', '', 'notaccept', 1]], 22 | '11' => [['5.1.8', '501', 'rejected', 0]], 23 | '12' => [['4.2.2', '', 'mailboxfull', 0]], 24 | }; 25 | 26 | $enginetest->($enginename, $isexpected); 27 | done_testing; 28 | 29 | -------------------------------------------------------------------------------- /t/736-lhost-mfilter.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'mFILTER'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '550', 'filtered', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.0.910', '550', 'filtered', 0]], 14 | '04' => [['5.4.1', '550', 'rejected', 0]], 15 | }; 16 | 17 | $enginetest->($enginename, $isexpected); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /t/737-lhost-mxlogic.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MXLogic'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.0.910', '550', 'filtered', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/740-lhost-notes.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Notes'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.901', '', 'onhold', 0]], 12 | '02' => [['5.0.911', '', 'userunknown', 1]], 13 | '03' => [['5.0.911', '', 'userunknown', 1]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/750-lhost-office365.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Office365'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.10', '550', 'userunknown', 1]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.1.0', '550', 'authfailure', 0]], 14 | '04' => [['5.1.351', '550', 'filtered', 0]], 15 | '05' => [['5.1.8', '501', 'rejected', 0]], 16 | '06' => [['5.4.312', '550', 'networkerror', 0]], 17 | '07' => [['5.1.351', '550', 'userunknown', 1]], 18 | '08' => [['5.4.316', '550', 'networkerror', 0]], 19 | '09' => [['5.1.351', '550', 'userunknown', 1]], 20 | '10' => [['5.1.351', '550', 'userunknown', 1]], 21 | '11' => [['5.1.1', '550', 'userunknown', 1]], 22 | '12' => [['5.2.2', '550', 'mailboxfull', 0]], 23 | '13' => [['5.1.10', '550', 'userunknown', 1]], 24 | }; 25 | 26 | $enginetest->($enginename, $isexpected); 27 | done_testing; 28 | 29 | -------------------------------------------------------------------------------- /t/751-lhost-opensmtpd.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'OpenSMTPD'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.2', '550', 'mailboxfull', 0], 13 | ['5.1.1', '550', 'userunknown', 1]], 14 | '03' => [['5.0.912', '', 'hostunknown', 1]], 15 | '04' => [['5.0.944', '', 'networkerror', 0]], 16 | '05' => [['5.0.947', '', 'expired', 0]], 17 | '06' => [['5.0.947', '', 'expired', 0]], 18 | '10' => [['5.0.912', '', 'hostunknown', 1]], 19 | '11' => [['5.7.26', '550', 'authfailure', 0]], 20 | '12' => [['5.0.932', '', 'notaccept', 1]], 21 | '13' => [['4.7.0', '421', 'badreputation', 0]], 22 | '14' => [['5.7.25', '550', 'requireptr', 0]], 23 | '15' => [['5.0.947', '', 'expired', 0]], 24 | '16' => [['5.0.947', '', 'expired', 0]], 25 | '17' => [['5.1.1', '550', 'userunknown', 1], 26 | ['5.2.2', '552', 'mailboxfull', 0]], 27 | }; 28 | 29 | $enginetest->($enginename, $isexpected); 30 | done_testing; 31 | 32 | -------------------------------------------------------------------------------- /t/752-lhost-outlook.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Outlook'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | "01" => [["5.2.2", "550", "mailboxfull", 0]], 12 | "02" => [["5.1.1", "550", "userunknown", 1]], 13 | "03" => [["5.5.0", "554", "hostunknown", 1]], 14 | "04" => [["5.1.1", "550", "userunknown", 1], 15 | ["5.2.2", "550", "mailboxfull", 0]], 16 | "06" => [["4.4.7", "", "expired", 0]], 17 | "07" => [["4.4.7", "", "expired", 0]], 18 | "08" => [["5.5.0", "550", "userunknown", 1]], 19 | "09" => [["5.5.0", "550", "requireptr", 0]], 20 | }; 21 | 22 | $enginetest->($enginename, $isexpected); 23 | done_testing; 24 | 25 | -------------------------------------------------------------------------------- /t/761-lhost-powermta.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'PowerMTA'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.2.1', '550', 'suspend', 0]], 12 | '02' => [['5.0.0', '554', 'userunknown', 1]], 13 | '03' => [['5.2.1', '550', 'suspend', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | 20 | -------------------------------------------------------------------------------- /t/780-lhost-receivingses.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'ReceivingSES'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['4.0.0', '450', 'onhold', 0]], 14 | '04' => [['5.2.2', '552', 'mailboxfull', 0]], 15 | '05' => [['5.3.4', '552', 'mesgtoobig', 0]], 16 | '06' => [['5.6.1', '500', 'spamdetected', 0]], 17 | '07' => [['5.2.0', '550', 'filtered', 0]], 18 | '08' => [['5.2.3', '552', 'exceedlimit', 0]], 19 | }; 20 | 21 | $enginetest->($enginename, $isexpected); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /t/790-lhost-sendgrid.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'SendGrid'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | '03' => [['5.0.947', '', 'expired', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/792-lhost-surfcontrol.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'SurfControl'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.0', '550', 'filtered', 0]], 12 | '02' => [['5.0.0', '554', 'systemerror', 0]], 13 | '03' => [['5.0.0', '554', 'systemerror', 0]], 14 | }; 15 | 16 | $enginetest->($enginename, $isexpected); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /t/820-lhost-v5sendmail.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'V5sendmail'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['4.0.947', '421', 'expired', 0]], 12 | '02' => [['5.0.912', '550', 'hostunknown', 1]], 13 | '03' => [['5.0.911', '550', 'userunknown', 1]], 14 | '04' => [['5.0.912', '550', 'hostunknown', 1], 15 | ['5.0.912', '550', 'hostunknown', 1]], 16 | '05' => [['5.0.971', '550', 'blocked', 0], 17 | ['5.0.912', '550', 'hostunknown', 1], 18 | ['5.0.912', '550', 'hostunknown', 1], 19 | ['5.0.911', '550', 'userunknown', 1]], 20 | '06' => [['5.0.909', '550', 'norelaying', 0]], 21 | '07' => [['5.0.971', '554', 'blocked', 0], 22 | ['5.0.912', '550', 'hostunknown', 1], 23 | ['5.0.911', '550', 'userunknown', 1]], 24 | }; 25 | 26 | $enginetest->($enginename, $isexpected); 27 | done_testing; 28 | 29 | -------------------------------------------------------------------------------- /t/821-lhost-verizon.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Verizon'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.911', '', 'userunknown', 1]], 12 | '02' => [['5.0.911', '550', 'userunknown', 1]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/850-lhost-yahoo.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Yahoo'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.2', '550', 'mailboxfull', 0]], 13 | '03' => [['5.1.1', '550', 'userunknown', 1]], 14 | '04' => [['5.2.2', '550', 'mailboxfull', 0]], 15 | '05' => [['5.2.1', '550', 'userunknown', 1]], 16 | '06' => [['5.0.910', '550', 'filtered', 0]], 17 | '07' => [['5.0.911', '550', 'userunknown', 1]], 18 | '08' => [['5.2.2', '550', 'mailboxfull', 0]], 19 | '09' => [['5.0.932', '', 'notaccept', 1]], 20 | '10' => [['5.1.1', '550', 'userunknown', 1]], 21 | '11' => [['5.1.8', '501', 'rejected', 0]], 22 | '12' => [['5.1.8', '501', 'rejected', 0]], 23 | '13' => [['5.0.930', '', 'systemerror', 0]], 24 | '14' => [['5.0.971', '554', 'blocked', 0]], 25 | }; 26 | 27 | $enginetest->($enginename, $isexpected); 28 | done_testing; 29 | 30 | 31 | -------------------------------------------------------------------------------- /t/851-lhost-yandex.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Yandex'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.1', '550', 'userunknown', 1], 13 | ['5.2.2', '550', 'mailboxfull', 0]], 14 | '03' => [['4.4.1', '', 'expired', 0]], 15 | }; 16 | 17 | $enginetest->($enginename, $isexpected); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /t/860-lhost-zoho.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Zoho'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | '02' => [['5.2.1', '550', 'filtered', 0], 13 | ['5.2.2', '550', 'mailboxfull', 0]], 14 | '03' => [['5.0.910', '550', 'filtered', 0]], 15 | '04' => [['4.0.947', '421', 'expired', 0]], 16 | '05' => [['4.0.947', '421', 'expired', 0]], 17 | }; 18 | 19 | $enginetest->($enginename, $isexpected); 20 | done_testing; 21 | 22 | -------------------------------------------------------------------------------- /t/881-lhost-x1.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X1'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '', 'filtered', 0]], 12 | '02' => [['5.0.910', '', 'filtered', 0]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/882-lhost-x2.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X2'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.910', '', 'filtered', 0]], 12 | '02' => [['5.0.910', '', 'filtered', 0], 13 | ['5.0.921', '', 'suspend', 0], 14 | ['5.0.910', '', 'filtered', 0]], 15 | '03' => [['5.0.947', '', 'expired', 0]], 16 | '04' => [['5.0.922', '', 'mailboxfull', 0]], 17 | '05' => [['4.1.9', '', 'expired', 0]], 18 | '06' => [['4.4.1', '', 'expired', 0]], 19 | }; 20 | 21 | $enginetest->($enginename, $isexpected); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /t/883-lhost-x3.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X3'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.3.0', '553', 'userunknown', 1]], 12 | '02' => [['5.0.947', '', 'expired', 0]], 13 | '03' => [['5.3.0', '553', 'userunknown', 1]], 14 | '05' => [['5.0.900', '', 'undefined', 0]], 15 | '06' => [['5.2.2', '552', 'mailboxfull', 0]], 16 | }; 17 | 18 | $enginetest->($enginename, $isexpected); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /t/884-lhost-x4.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X4'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.0.922', '', 'mailboxfull', 0]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/885-lhost-x5.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X5'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.1.1', '550', 'userunknown', 1]], 12 | }; 13 | 14 | $enginetest->($enginename, $isexpected); 15 | done_testing; 16 | 17 | -------------------------------------------------------------------------------- /t/886-lhost-x6.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X6'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['5.4.6', '554', 'networkerror', 0]], 12 | '02' => [['5.1.1', '550', 'userunknown', 1]], 13 | }; 14 | 15 | $enginetest->($enginename, $isexpected); 16 | done_testing; 17 | 18 | -------------------------------------------------------------------------------- /t/891-rfc3834.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'RFC3834'; 8 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 9 | my $isexpected = { 10 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 11 | '01' => [['', '', 'vacation', 0]], 12 | '02' => [['', '', 'vacation', 0]], 13 | '03' => [['', '', 'vacation', 0]], 14 | '04' => [['', '', 'vacation', 0]], 15 | '05' => [['', '', 'vacation', 0]], 16 | }; 17 | $enginetest->($enginename, $isexpected); 18 | 19 | is Sisimai::RFC3834->inquire({}), undef; 20 | is Sisimai::RFC3834->inquire({'neko' => 2}, []), undef; 21 | 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /t/999-values.pl: -------------------------------------------------------------------------------- 1 | package Sisimai::Test::Values; 2 | 3 | our $Minus = [-1, -2, -1e1, -1e2]; 4 | our $False = [0, "0", "", undef, ()]; 5 | our $Zeros = [ 6 | 0, 0.0, 00_00, -0, +0, 0e0, 0e1, 0e-1, 0b0000, 0x0, 00, 000, 0000, 7 | 0<<0, 0<<1, 0>>0, 0>>1, 0%1, "0", '0', q( ), qq( ), 8 | ]; 9 | our $ESCChars = ["\a", "a\b", "\t", "\n", "\f", "\r", "\0","\e"]; 10 | our $CTLChars = [ 11 | "\c@", "\cA", "\cB", "\cC", "\cD", "\cE", "\cF", "\cG", "a\cH", "\cI", 12 | "\cJ", "\cK", "\cL", "\cM", "\cN", "\cO", "\cP", "\cQ", "\cR", "\cS", 13 | "\cT", "\cU", "\cV", "\cW", "\cX", "\cY", "\cZ", "\c[", "\c\\", "\c]", 14 | "\c^", "\c_", "\c?", 15 | ]; 16 | 17 | 1; 18 | -------------------------------------------------------------------------------- /xt/001-used-modules.t: -------------------------------------------------------------------------------- 1 | use Test::More; 2 | use Module::Load; 3 | 4 | eval { Module::Load::load 'Test::UsedModules'; }; 5 | plan 'skip_all' => 'No Test::UsedModules' if $@; 6 | 7 | require './t/900-modules.pl'; 8 | 9 | for my $e ( @{ Sisimai::Test::Modules->list() } ) { 10 | my $v = 'lib/'.$e; 11 | next if $e eq 'Sisimai/Lhost.pm'; 12 | next if $e eq 'Sisimai/Message.pm'; 13 | ok -f $v, $v; 14 | Test::UsedModules::used_modules_ok($v); 15 | } 16 | done_testing; 17 | -------------------------------------------------------------------------------- /xt/610-lhost-activehunter.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Activehunter'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.910', '550', 'filtered', 0]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.3.0' , '553', 'filtered', 0]], 15 | '1004' => [['5.7.17', '550', 'filtered', 0]], 16 | '1005' => [['5.1.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.1.1', '550', 'userunknown', 1]], 18 | '1007' => [['5.0.910', '550', 'filtered', 0]], 19 | '1008' => [['5.0.910', '550', 'filtered', 0]], 20 | '1009' => [['5.1.1', '550', 'userunknown', 1]], 21 | '1010' => [['5.3.0', '553', 'filtered', 0]], 22 | '1011' => [['5.7.17', '550', 'filtered', 0]], 23 | '1012' => [['5.1.1', '550', 'userunknown', 1]], 24 | }; 25 | 26 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 27 | $enginetest->($enginename, $isexpected, 1, 0); 28 | done_testing; 29 | 30 | -------------------------------------------------------------------------------- /xt/611-lhost-amavis.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Amavis'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.7.0', '554', 'notcompliantrfc', 0]], 15 | }; 16 | 17 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 18 | $enginetest->($enginename, $isexpected, 1, 0); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /xt/613-lhost-amazonworkmail.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'AmazonWorkMail'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.2.1', '550', 'filtered', 0]], 14 | '1003' => [['5.3.5', '550', 'systemerror', 0]], 15 | '1004' => [['5.2.2', '550', 'mailboxfull', 0]], 16 | '1005' => [['4.4.2', '421', 'expired', 0]], 17 | '1006' => [['5.2.2', '550', 'mailboxfull', 0]], 18 | }; 19 | 20 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 21 | $enginetest->($enginename, $isexpected, 1, 0); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /xt/615-lhost-apachejames.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'ApacheJames'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.910', '550', 'filtered', 0]], 13 | '1002' => [['5.0.910', '550', 'filtered', 0]], 14 | '1003' => [['5.0.910', '550', 'filtered', 0]], 15 | '1004' => [['5.0.901', '', 'onhold', 0]], 16 | '1005' => [['5.0.901', '', 'onhold', 0]], 17 | }; 18 | 19 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 20 | $enginetest->($enginename, $isexpected, 1, 0); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /xt/620-lhost-barracuda.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Barracuda'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.7.1', '550', 'spamdetected', 0]], 13 | '1002' => [['5.7.1', '550', 'spamdetected', 0]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/621-lhost-bigfoot.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Bigfoot'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.0', '554', 'spamdetected', 0]], 13 | '1002' => [['5.7.1', '553', 'userunknown', 1]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/622-lhost-biglobe.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Biglobe'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.922', '', 'mailboxfull', 0]], 13 | '1002' => [['5.0.922', '', 'mailboxfull', 0]], 14 | '1003' => [['5.0.922', '', 'mailboxfull', 0]], 15 | '1004' => [['5.0.922', '', 'mailboxfull', 0]], 16 | '1005' => [['5.0.910', '', 'filtered', 0]], 17 | '1006' => [['5.0.910', '', 'filtered', 0]], 18 | }; 19 | 20 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 21 | $enginetest->($enginename, $isexpected, 1, 0); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /xt/630-lhost-courier.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Courier'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.0', '550', 'userunknown', 1]], 13 | '1002' => [['5.0.0', '550', 'userunknown', 1]], 14 | '1003' => [['5.7.1', '550', 'rejected', 0]], 15 | '1004' => [['5.0.0', '550', 'userunknown', 1]], 16 | '1005' => [['5.1.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.1.1', '550', 'userunknown', 1]], 18 | '1007' => [['5.0.0', '550', 'userunknown', 1]], 19 | '1008' => [['5.1.1', '550', 'userunknown', 1]], 20 | '1009' => [['5.0.0', '550', 'filtered', 0]], 21 | '1010' => [['5.7.1', '550', 'rejected', 0]], 22 | '1011' => [['5.0.0', '', 'hostunknown', 1]], 23 | '1012' => [['5.0.0', '', 'hostunknown', 1]], 24 | }; 25 | 26 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 27 | $enginetest->($enginename, $isexpected, 1, 0); 28 | done_testing; 29 | 30 | -------------------------------------------------------------------------------- /xt/641-lhost-dragonfly.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'DragonFly'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.7.26', '550', 'authfailure', 0]], 13 | '1002' => [['5.0.947', '', 'expired', 0]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/650-lhost-einsundeins.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'EinsUndEins'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.922', '', 'mailboxfull', 0]], 13 | '1002' => [['5.0.922', '', 'mailboxfull', 0]], 14 | '1003' => [['5.0.934', '', 'mesgtoobig', 0]], 15 | '1004' => [['5.1.1', '550', 'userunknown', 1]], 16 | '1005' => [['5.4.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.4.1', '550', 'userunknown', 1]], 18 | '1007' => [['5.4.1', '550', 'userunknown', 1]], 19 | '1008' => [['5.4.1', '550', 'userunknown', 1]], 20 | '1009' => [['5.1.1', '550', 'userunknown', 1]], 21 | '1010' => [['5.1.1', '550', 'userunknown', 1]], 22 | '1011' => [['5.4.1', '550', 'userunknown', 1]], 23 | '1012' => [['5.4.1', '550', 'userunknown', 1]], 24 | '1013' => [['5.4.1', '550', 'userunknown', 1]], 25 | }; 26 | 27 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 28 | $enginetest->($enginename, $isexpected, 1, 0); 29 | done_testing; 30 | 31 | -------------------------------------------------------------------------------- /xt/660-lhost-facebook.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Facebook'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'filtered', 0]], 13 | '1002' => [['5.1.1', '550', 'filtered', 0]], 14 | '1003' => [['5.1.1', '550', 'userunknown', 1]], 15 | }; 16 | 17 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 18 | $enginetest->($enginename, $isexpected, 1, 0); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /xt/661-lhost-fml.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'FML'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.930', '', 'systemerror', 0]], 13 | '1002' => [['5.0.918', '', 'rejected', 0]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/671-lhost-gmx.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GMX'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.947', '', 'expired', 0]], 13 | '1002' => [['5.1.1', '', 'userunknown', 1]], 14 | '1003' => [['5.2.2', '', 'mailboxfull', 0]], 15 | '1004' => [['5.2.1', '', 'userunknown', 1], 16 | ['5.2.2', '', 'mailboxfull', 0]], 17 | }; 18 | 19 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 20 | $enginetest->($enginename, $isexpected, 1, 0); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /xt/673-lhost-googleworkspace.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'GoogleWorkspace'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.918', '', 'rejected', 0]], 13 | }; 14 | 15 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 16 | $enginetest->($enginename, $isexpected, 1, 0); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /xt/710-lhost-kddi.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'KDDI'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.922', '', 'mailboxfull', 0]], 13 | '1002' => [['5.0.922', '', 'mailboxfull', 0]], 14 | '1003' => [['5.0.922', '', 'mailboxfull', 0]], 15 | }; 16 | 17 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 18 | $enginetest->($enginename, $isexpected, 1, 0); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /xt/730-lhost-mailfoundry.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailFoundry'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.910', '550', 'filtered', 0]], 13 | '1002' => [['5.1.1', '552', 'mailboxfull', 0]], 14 | '1003' => [['5.1.1', '550', 'userunknown', 1]], 15 | '1004' => [['5.0.910', '550', 'filtered', 0]], 16 | '1005' => [['5.1.1', '552', 'mailboxfull', 0]], 17 | }; 18 | 19 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 20 | $enginetest->($enginename, $isexpected, 1, 0); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /xt/731-lhost-mailmarshalsmtp.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailMarshalSMTP'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.3.0', '553', 'filtered', 0], 13 | ['5.3.0', '553', 'filtered', 0]], 14 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 15 | }; 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/732-lhost-mailru.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MailRu'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.911', '', 'userunknown', 1]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.2.2', '550', 'mailboxfull', 0]], 15 | '1004' => [['5.2.2', '550', 'mailboxfull', 0], 16 | ['5.2.1', '550', 'userunknown', 1]], 17 | '1005' => [['5.0.910', '', 'filtered', 0]], 18 | '1006' => [['5.2.2', '550', 'mailboxfull', 0]], 19 | '1007' => [['5.0.911', '', 'userunknown', 1]], 20 | '1008' => [['5.1.1', '550', 'userunknown', 1]], 21 | '1009' => [['5.0.910', '550', 'filtered', 0]], 22 | '1010' => [['5.0.911', '550', 'userunknown', 1]], 23 | '1011' => [['5.1.8', '501', 'rejected', 0]], 24 | }; 25 | 26 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 27 | $enginetest->($enginename, $isexpected, 1, 0); 28 | done_testing; 29 | 30 | -------------------------------------------------------------------------------- /xt/733-lhost-mcafee.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'McAfee'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.911', '550', 'userunknown', 1]], 13 | '1002' => [['5.0.910', '550', 'filtered', 0]], 14 | '1003' => [['5.1.1', '550', 'userunknown', 1]], 15 | '1004' => [['5.1.1', '550', 'userunknown', 1]], 16 | '1005' => [['5.1.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.1.1', '550', 'userunknown', 1]], 18 | '1007' => [['5.0.911', '550', 'userunknown', 1]], 19 | '1008' => [['5.0.910', '550', 'filtered', 0]], 20 | '1009' => [['5.0.910', '550', 'filtered', 0]], 21 | }; 22 | 23 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 24 | $enginetest->($enginename, $isexpected, 1, 0); 25 | done_testing; 26 | 27 | -------------------------------------------------------------------------------- /xt/734-lhost-messagelabs.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MessageLabs'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.0.0', '550', 'securityerror', 0]], 14 | '1003' => [['5.0.0', '', 'userunknown', 1]], 15 | '1004' => [['5.0.0', '550', 'userunknown', 1]], 16 | }; 17 | 18 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 19 | $enginetest->($enginename, $isexpected, 1, 0); 20 | done_testing; 21 | 22 | -------------------------------------------------------------------------------- /xt/736-lhost-mfilter.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'mFILTER'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.910', '550', 'filtered', 0]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.0.910', '550', 'filtered', 0]], 15 | '1004' => [['5.0.910', '550', 'filtered', 0]], 16 | '1005' => [['5.1.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.0.910', '550', 'filtered', 0]], 18 | '1007' => [['5.0.911', '550', 'userunknown', 1]], 19 | '1008' => [['5.4.1', '550', 'rejected', 0]], 20 | '1009' => [['5.4.1', '550', 'rejected', 0]], 21 | }; 22 | 23 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 24 | $enginetest->($enginename, $isexpected, 1, 0); 25 | done_testing; 26 | 27 | -------------------------------------------------------------------------------- /xt/737-lhost-mxlogic.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'MXLogic'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.1.1', '550', 'userunknown', 1]], 15 | '1004' => [['5.1.1', '550', 'userunknown', 1]], 16 | '1005' => [['5.1.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.1.1', '550', 'userunknown', 1]], 18 | '1007' => [['5.1.1', '550', 'userunknown', 1]], 19 | '1008' => [['5.1.1', '550', 'userunknown', 1]], 20 | '1009' => [['5.1.1', '550', 'userunknown', 1]], 21 | '1010' => [['5.0.910', '550', 'filtered', 0]], 22 | '1011' => [['5.0.910', '550', 'filtered', 0]], 23 | }; 24 | 25 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 26 | $enginetest->($enginename, $isexpected, 1, 0); 27 | done_testing; 28 | 29 | -------------------------------------------------------------------------------- /xt/740-lhost-notes.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Notes'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.911', '', 'userunknown', 1]], 13 | '1002' => [['5.0.901', '', 'onhold', 0]], 14 | '1003' => [['5.0.901', '', 'onhold', 0]], 15 | '1004' => [['5.0.911', '', 'userunknown', 1]], 16 | '1005' => [['5.0.901', '', 'onhold', 0]], 17 | '1006' => [['5.0.911', '', 'userunknown', 1]], 18 | '1007' => [['5.0.911', '', 'userunknown', 1]], 19 | '1008' => [['5.0.911', '', 'userunknown', 1]], 20 | '1009' => [['5.0.911', '', 'userunknown', 1]], 21 | '1010' => [['5.0.944', '', 'networkerror', 0]], 22 | }; 23 | 24 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 25 | $enginetest->($enginename, $isexpected, 1, 0); 26 | done_testing; 27 | 28 | -------------------------------------------------------------------------------- /xt/761-lhost-powermta.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'PowerMTA'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.0', '554', 'userunknown', 1]], 13 | '1002' => [['5.2.1', '550', 'suspend', 0]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/780-lhost-receivingses.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'ReceivingSES'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.2.3', '552', 'exceedlimit', 0]], 13 | }; 14 | 15 | plan 'skip_all', sprintf("no private sample"); 16 | $enginetest->($enginename, $isexpected, 1, 0); 17 | done_testing; 18 | 19 | -------------------------------------------------------------------------------- /xt/790-lhost-sendgrid.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'SendGrid'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | '1003' => [['5.0.947', '', 'expired', 0]], 15 | '1004' => [['5.0.911', '550', 'userunknown', 1]], 16 | '1005' => [['5.2.1', '550', 'userunknown', 1]], 17 | '1006' => [['5.2.2', '550', 'mailboxfull', 0]], 18 | '1007' => [['5.1.1', '550', 'userunknown', 1]], 19 | '1008' => [['5.0.911', '554', 'userunknown', 1]], 20 | '1009' => [['5.0.911', '550', 'userunknown', 1]], 21 | }; 22 | 23 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 24 | $enginetest->($enginename, $isexpected, 1, 0); 25 | done_testing; 26 | 27 | -------------------------------------------------------------------------------- /xt/792-lhost-surfcontrol.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'SurfControl'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.0', '550', 'filtered', 0]], 13 | '1002' => [['5.0.0', '550', 'filtered', 0]], 14 | '1003' => [['5.0.0', '550', 'filtered', 0]], 15 | '1004' => [['5.0.0', '554', 'systemerror', 0]], 16 | '1005' => [['5.0.0', '554', 'systemerror', 0]], 17 | }; 18 | 19 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 20 | $enginetest->($enginename, $isexpected, 1, 0); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /xt/821-lhost-verizon.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Verizon'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.911', '', 'userunknown', 1]], 13 | '1002' => [['5.0.911', '550', 'userunknown', 1]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/850-lhost-yahoo.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Yahoo'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.2.2', '550', 'mailboxfull', 0]], 14 | '1003' => [['5.2.1', '550', 'userunknown', 1]], 15 | '1004' => [['5.1.1', '550', 'userunknown', 1]], 16 | '1005' => [['5.0.971', '554', 'blocked', 0]], 17 | '1006' => [['5.0.911', '550', 'userunknown', 1]], 18 | '1007' => [['5.2.2', '550', 'mailboxfull', 0]], 19 | '1008' => [['5.0.932', '', 'notaccept', 1]], 20 | '1009' => [['5.1.1', '550', 'userunknown', 1]], 21 | '1010' => [['5.1.8', '501', 'rejected', 0]], 22 | '1011' => [['5.0.971', '554', 'blocked', 0]], 23 | }; 24 | 25 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 26 | $enginetest->($enginename, $isexpected, 1, 0); 27 | done_testing; 28 | 29 | -------------------------------------------------------------------------------- /xt/851-lhost-yandex.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Yandex'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.2.1', '550', 'userunknown', 1], 14 | ['5.2.2', '550', 'mailboxfull', 0]], 15 | }; 16 | 17 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 18 | $enginetest->($enginename, $isexpected, 1, 0); 19 | done_testing; 20 | 21 | -------------------------------------------------------------------------------- /xt/860-lhost-zoho.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'Zoho'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.2.1', '550', 'filtered', 0], 14 | ['5.2.2', '550', 'mailboxfull', 0]], 15 | '1003' => [['5.0.910', '550', 'filtered', 0]], 16 | '1004' => [['4.0.947', '421', 'expired', 0]], 17 | }; 18 | 19 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 20 | $enginetest->($enginename, $isexpected, 1, 0); 21 | done_testing; 22 | 23 | -------------------------------------------------------------------------------- /xt/881-lhost-x1.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X1'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.0.910', '', 'filtered', 0]], 13 | '1002' => [['5.0.910', '', 'filtered', 0], 14 | ['5.0.910', '', 'filtered', 0]], 15 | '1003' => [['5.0.910', '', 'filtered', 0]], 16 | '1004' => [['5.0.910', '', 'filtered', 0]], 17 | '1005' => [['5.0.910', '', 'filtered', 0]], 18 | }; 19 | 20 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 21 | $enginetest->($enginename, $isexpected, 1, 0); 22 | done_testing; 23 | 24 | -------------------------------------------------------------------------------- /xt/883-lhost-x3.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X3'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.3.0', '553', 'userunknown', 1]], 13 | '1002' => [['5.0.900', '', 'undefined', 0]], 14 | '1003' => [['5.0.947', '', 'expired', 0]], 15 | '1004' => [['5.3.0', '553', 'userunknown', 1]], 16 | '1005' => [['5.0.900', '', 'undefined', 0]], 17 | '1006' => [['5.3.0', '553', 'userunknown', 1]], 18 | '1007' => [['5.0.947', '', 'expired', 0]], 19 | '1008' => [['5.3.0', '553', 'userunknown', 1]], 20 | }; 21 | 22 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 23 | $enginetest->($enginename, $isexpected, 1, 0); 24 | done_testing; 25 | 26 | -------------------------------------------------------------------------------- /xt/885-lhost-x5.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'X5'; 8 | my $samplepath = sprintf("./set-of-emails/private/lhost-%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['5.1.1', '550', 'userunknown', 1]], 13 | '1002' => [['5.1.1', '550', 'userunknown', 1]], 14 | }; 15 | 16 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 17 | $enginetest->($enginename, $isexpected, 1, 0); 18 | done_testing; 19 | 20 | -------------------------------------------------------------------------------- /xt/891-rfc3834.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | use Test::More; 4 | use lib qw(./lib ./blib/lib); 5 | require './t/600-lhost-code'; 6 | 7 | my $enginename = 'RFC3834'; 8 | my $samplepath = sprintf("./set-of-emails/private/%s", lc $enginename); 9 | my $enginetest = Sisimai::Lhost::Code->makeinquiry; 10 | my $isexpected = { 11 | # INDEX => [['D.S.N.', 'replycode', 'REASON', 'hardbounce'], [...]] 12 | '1001' => [['', '', 'vacation', 0]], 13 | '1002' => [['', '', 'vacation', 0]], 14 | '1003' => [['', '', 'vacation', 0]], 15 | '1004' => [['', '', 'vacation', 0]], 16 | '1005' => [['', '', 'vacation', 0]], 17 | '1006' => [['', '', 'vacation', 0]], 18 | '1007' => [['', '', 'vacation', 0]], 19 | '1008' => [['', '', 'vacation', 0]], 20 | '1009' => [['', '', 'vacation', 0]], 21 | '1010' => [['', '', 'vacation', 0]], 22 | '1011' => [['', '', 'vacation', 0]], 23 | '1012' => [['', '', 'vacation', 0]], 24 | '1013' => [['', '', 'vacation', 0]], 25 | }; 26 | 27 | plan 'skip_all', sprintf("%s not found", $samplepath) unless -d $samplepath; 28 | $enginetest->($enginename, $isexpected, 1, 0); 29 | done_testing; 30 | 31 | --------------------------------------------------------------------------------