sisimai 4.25.3-java → 4.25.9-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (739) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +3 -2
  4. data/ANALYTICAL-PRECISION +60 -58
  5. data/Benchmarks.mk +5 -3
  6. data/CONTRIBUTING +4 -0
  7. data/ChangeLog.md +207 -1
  8. data/Developers.mk +3 -74
  9. data/Makefile +5 -1
  10. data/README-JA.md +30 -54
  11. data/README.md +31 -54
  12. data/Repository.mk +1 -1
  13. data/lib/sisimai.rb +20 -74
  14. data/lib/sisimai/address.rb +13 -17
  15. data/lib/sisimai/arf.rb +34 -38
  16. data/lib/sisimai/data.rb +16 -39
  17. data/lib/sisimai/datetime.rb +3 -3
  18. data/lib/sisimai/lhost.rb +79 -0
  19. data/lib/sisimai/lhost/activehunter.rb +78 -0
  20. data/lib/sisimai/lhost/amavis.rb +166 -0
  21. data/lib/sisimai/lhost/amazonses.rb +343 -0
  22. data/lib/sisimai/lhost/amazonworkmail.rb +131 -0
  23. data/lib/sisimai/lhost/aol.rb +128 -0
  24. data/lib/sisimai/lhost/apachejames.rb +120 -0
  25. data/lib/sisimai/lhost/barracuda.rb +94 -0
  26. data/lib/sisimai/lhost/bigfoot.rb +126 -0
  27. data/lib/sisimai/lhost/biglobe.rb +101 -0
  28. data/lib/sisimai/lhost/courier.rb +146 -0
  29. data/lib/sisimai/lhost/domino.rb +118 -0
  30. data/lib/sisimai/lhost/einsundeins.rb +115 -0
  31. data/lib/sisimai/lhost/exchange2003.rb +230 -0
  32. data/lib/sisimai/lhost/exchange2007.rb +153 -0
  33. data/lib/sisimai/{bite/email → lhost}/exim.rb +139 -178
  34. data/lib/sisimai/{bite/email → lhost}/ezweb.rb +65 -97
  35. data/lib/sisimai/{bite/email → lhost}/facebook.rb +61 -98
  36. data/lib/sisimai/lhost/fml.rb +119 -0
  37. data/lib/sisimai/{bite/email/google.rb → lhost/gmail.rb} +58 -97
  38. data/lib/sisimai/lhost/gmx.rb +114 -0
  39. data/lib/sisimai/lhost/googlegroups.rb +77 -0
  40. data/lib/sisimai/lhost/gsuite.rb +196 -0
  41. data/lib/sisimai/lhost/imailserver.rb +118 -0
  42. data/lib/sisimai/lhost/interscanmss.rb +88 -0
  43. data/lib/sisimai/lhost/kddi.rb +113 -0
  44. data/lib/sisimai/lhost/mailfoundry.rb +83 -0
  45. data/lib/sisimai/lhost/mailmarshalsmtp.rb +127 -0
  46. data/lib/sisimai/{bite/email → lhost}/mailru.rb +65 -101
  47. data/lib/sisimai/lhost/mcafee.rb +119 -0
  48. data/lib/sisimai/lhost/messagelabs.rb +123 -0
  49. data/lib/sisimai/lhost/messagingserver.rb +152 -0
  50. data/lib/sisimai/lhost/mfilter.rb +120 -0
  51. data/lib/sisimai/{bite/email → lhost}/mxlogic.rb +55 -93
  52. data/lib/sisimai/lhost/notes.rb +126 -0
  53. data/lib/sisimai/lhost/office365.rb +216 -0
  54. data/lib/sisimai/{bite/email → lhost}/opensmtpd.rb +42 -78
  55. data/lib/sisimai/lhost/outlook.rb +133 -0
  56. data/lib/sisimai/lhost/postfix.rb +249 -0
  57. data/lib/sisimai/lhost/powermta.rb +120 -0
  58. data/lib/sisimai/{bite/email → lhost}/qmail.rb +54 -87
  59. data/lib/sisimai/lhost/receivingses.rb +132 -0
  60. data/lib/sisimai/lhost/sendgrid.rb +150 -0
  61. data/lib/sisimai/lhost/sendmail.rb +207 -0
  62. data/lib/sisimai/lhost/surfcontrol.rb +105 -0
  63. data/lib/sisimai/lhost/v5sendmail.rb +150 -0
  64. data/lib/sisimai/lhost/verizon.rb +164 -0
  65. data/lib/sisimai/lhost/x1.rb +78 -0
  66. data/lib/sisimai/lhost/x2.rb +71 -0
  67. data/lib/sisimai/lhost/x3.rb +92 -0
  68. data/lib/sisimai/{bite/email → lhost}/x4.rb +56 -92
  69. data/lib/sisimai/lhost/x5.rb +114 -0
  70. data/lib/sisimai/lhost/x6.rb +74 -0
  71. data/lib/sisimai/lhost/yahoo.rb +101 -0
  72. data/lib/sisimai/lhost/yandex.rb +123 -0
  73. data/lib/sisimai/lhost/zoho.rb +109 -0
  74. data/lib/sisimai/mail.rb +36 -25
  75. data/lib/sisimai/mail/maildir.rb +31 -36
  76. data/lib/sisimai/mail/mbox.rb +8 -12
  77. data/lib/sisimai/mail/memory.rb +18 -20
  78. data/lib/sisimai/mail/stdin.rb +8 -12
  79. data/lib/sisimai/mda.rb +9 -15
  80. data/lib/sisimai/message.rb +308 -74
  81. data/lib/sisimai/mime.rb +28 -33
  82. data/lib/sisimai/order.rb +179 -4
  83. data/lib/sisimai/reason.rb +29 -20
  84. data/lib/sisimai/reason/blocked.rb +23 -23
  85. data/lib/sisimai/reason/hostunknown.rb +2 -0
  86. data/lib/sisimai/reason/mailererror.rb +1 -1
  87. data/lib/sisimai/reason/norelaying.rb +1 -1
  88. data/lib/sisimai/reason/notaccept.rb +1 -0
  89. data/lib/sisimai/reason/rejected.rb +1 -0
  90. data/lib/sisimai/reason/securityerror.rb +5 -6
  91. data/lib/sisimai/reason/spamdetected.rb +9 -12
  92. data/lib/sisimai/reason/userunknown.rb +32 -26
  93. data/lib/sisimai/reason/virusdetected.rb +1 -0
  94. data/lib/sisimai/rfc1894.rb +3 -3
  95. data/lib/sisimai/rfc3464.rb +49 -67
  96. data/lib/sisimai/rfc3834.rb +14 -26
  97. data/lib/sisimai/rfc5322.rb +21 -33
  98. data/lib/sisimai/rhost.rb +10 -12
  99. data/lib/sisimai/rhost/cox.rb +112 -0
  100. data/lib/sisimai/rhost/exchangeonline.rb +26 -23
  101. data/lib/sisimai/rhost/franceptt.rb +120 -24
  102. data/lib/sisimai/rhost/godaddy.rb +1 -1
  103. data/lib/sisimai/rhost/iua.rb +39 -0
  104. data/lib/sisimai/rhost/spectrum.rb +73 -0
  105. data/lib/sisimai/smtp.rb +0 -13
  106. data/lib/sisimai/smtp/error.rb +7 -7
  107. data/lib/sisimai/smtp/status.rb +1 -1
  108. data/lib/sisimai/string.rb +3 -11
  109. data/lib/sisimai/version.rb +1 -1
  110. data/set-of-emails/README.md +5 -5
  111. data/set-of-emails/maildir/bsd/arf-24.eml +50 -0
  112. data/set-of-emails/maildir/bsd/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  113. data/set-of-emails/maildir/bsd/{email-activehunter-02.eml → lhost-activehunter-02.eml} +0 -0
  114. data/set-of-emails/maildir/bsd/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  115. data/set-of-emails/maildir/bsd/{email-amavis-02.eml → lhost-amavis-02.eml} +0 -0
  116. data/set-of-emails/maildir/bsd/lhost-amavis-03.eml +90 -0
  117. data/set-of-emails/maildir/bsd/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  118. data/set-of-emails/maildir/bsd/{email-amazonses-02.eml → lhost-amazonses-02.eml} +0 -0
  119. data/set-of-emails/maildir/bsd/{email-amazonses-03.eml → lhost-amazonses-03.eml} +0 -0
  120. data/set-of-emails/maildir/bsd/{email-amazonses-05.eml → lhost-amazonses-05.eml} +0 -0
  121. data/set-of-emails/maildir/bsd/{email-amazonses-06.eml → lhost-amazonses-06.eml} +0 -0
  122. data/set-of-emails/maildir/bsd/{email-amazonses-07.eml → lhost-amazonses-07.eml} +0 -0
  123. data/set-of-emails/maildir/bsd/{email-amazonses-08.eml → lhost-amazonses-08.eml} +0 -0
  124. data/set-of-emails/maildir/bsd/{email-amazonses-09.eml → lhost-amazonses-09.eml} +0 -0
  125. data/set-of-emails/maildir/bsd/{email-amazonses-10.eml → lhost-amazonses-10.eml} +0 -0
  126. data/set-of-emails/maildir/bsd/{email-amazonses-11.eml → lhost-amazonses-11.eml} +0 -0
  127. data/set-of-emails/maildir/bsd/{email-amazonses-12.eml → lhost-amazonses-12.eml} +0 -0
  128. data/set-of-emails/maildir/bsd/{email-amazonses-13.eml → lhost-amazonses-13.eml} +0 -0
  129. data/set-of-emails/maildir/bsd/{email-amazonses-14.eml → lhost-amazonses-14.eml} +0 -0
  130. data/set-of-emails/maildir/bsd/{email-amazonses-15.eml → lhost-amazonses-15.eml} +0 -0
  131. data/set-of-emails/maildir/bsd/{email-amazonses-16.eml → lhost-amazonses-16.eml} +0 -0
  132. data/set-of-emails/maildir/bsd/{email-amazonses-17.eml → lhost-amazonses-17.eml} +0 -0
  133. data/set-of-emails/maildir/bsd/{email-amazonses-18.eml → lhost-amazonses-18.eml} +0 -0
  134. data/set-of-emails/maildir/bsd/{email-amazonses-19.eml → lhost-amazonses-19.eml} +0 -0
  135. data/set-of-emails/maildir/bsd/{email-amazonses-20.eml → lhost-amazonses-20.eml} +0 -0
  136. data/set-of-emails/maildir/bsd/{email-amazonses-21.eml → lhost-amazonses-21.eml} +0 -0
  137. data/set-of-emails/maildir/bsd/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  138. data/set-of-emails/maildir/bsd/{email-amazonworkmail-02.eml → lhost-amazonworkmail-02.eml} +0 -0
  139. data/set-of-emails/maildir/bsd/{email-amazonworkmail-03.eml → lhost-amazonworkmail-03.eml} +0 -0
  140. data/set-of-emails/maildir/bsd/{email-amazonworkmail-04.eml → lhost-amazonworkmail-04.eml} +0 -0
  141. data/set-of-emails/maildir/bsd/{email-amazonworkmail-05.eml → lhost-amazonworkmail-05.eml} +0 -0
  142. data/set-of-emails/maildir/bsd/{email-amazonworkmail-07.eml → lhost-amazonworkmail-07.eml} +0 -0
  143. data/set-of-emails/maildir/bsd/{email-amazonworkmail-08.eml → lhost-amazonworkmail-08.eml} +0 -0
  144. data/set-of-emails/maildir/bsd/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  145. data/set-of-emails/maildir/bsd/{email-aol-02.eml → lhost-aol-02.eml} +0 -0
  146. data/set-of-emails/maildir/bsd/{email-aol-03.eml → lhost-aol-03.eml} +0 -0
  147. data/set-of-emails/maildir/bsd/{email-aol-04.eml → lhost-aol-04.eml} +0 -0
  148. data/set-of-emails/maildir/bsd/{email-aol-05.eml → lhost-aol-05.eml} +0 -0
  149. data/set-of-emails/maildir/bsd/{email-aol-06.eml → lhost-aol-06.eml} +0 -0
  150. data/set-of-emails/maildir/bsd/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  151. data/set-of-emails/maildir/bsd/lhost-barracuda-01.eml +67 -0
  152. data/set-of-emails/maildir/bsd/lhost-barracuda-02.eml +71 -0
  153. data/set-of-emails/maildir/bsd/{email-bigfoot-02.eml → lhost-bigfoot-02.eml} +0 -0
  154. data/set-of-emails/maildir/bsd/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  155. data/set-of-emails/maildir/bsd/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  156. data/set-of-emails/maildir/bsd/{email-courier-02.eml → lhost-courier-02.eml} +0 -0
  157. data/set-of-emails/maildir/bsd/{email-courier-03.eml → lhost-courier-03.eml} +0 -0
  158. data/set-of-emails/maildir/bsd/{email-courier-04.eml → lhost-courier-04.eml} +0 -0
  159. data/set-of-emails/maildir/bsd/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  160. data/set-of-emails/maildir/bsd/{email-domino-02.eml → lhost-domino-02.eml} +0 -0
  161. data/set-of-emails/maildir/bsd/{email-domino-03.eml → lhost-domino-03.eml} +0 -0
  162. data/set-of-emails/maildir/bsd/{email-einsundeins-02.eml → lhost-einsundeins-02.eml} +0 -0
  163. data/set-of-emails/maildir/bsd/lhost-einsundeins-03.eml +66 -0
  164. data/set-of-emails/maildir/bsd/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  165. data/set-of-emails/maildir/bsd/{email-exchange2003-02.eml → lhost-exchange2003-02.eml} +0 -0
  166. data/set-of-emails/maildir/bsd/{email-exchange2003-03.eml → lhost-exchange2003-03.eml} +0 -0
  167. data/set-of-emails/maildir/bsd/{email-exchange2003-04.eml → lhost-exchange2003-04.eml} +0 -0
  168. data/set-of-emails/maildir/bsd/{email-exchange2003-05.eml → lhost-exchange2003-05.eml} +0 -0
  169. data/set-of-emails/maildir/bsd/{email-exchange2003-07.eml → lhost-exchange2003-07.eml} +0 -0
  170. data/set-of-emails/maildir/bsd/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  171. data/set-of-emails/maildir/bsd/{email-exchange2007-02.eml → lhost-exchange2007-02.eml} +0 -0
  172. data/set-of-emails/maildir/bsd/{email-exchange2007-03.eml → lhost-exchange2007-03.eml} +0 -0
  173. data/set-of-emails/maildir/bsd/{email-exchange2007-04.eml → lhost-exchange2007-04.eml} +0 -0
  174. data/set-of-emails/maildir/bsd/lhost-exchange2007-05.eml +1469 -0
  175. data/set-of-emails/maildir/bsd/lhost-exchange2007-06.eml +764 -0
  176. data/set-of-emails/maildir/bsd/lhost-exchange2007-07.eml +128 -0
  177. data/set-of-emails/maildir/bsd/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  178. data/set-of-emails/maildir/bsd/{email-exim-02.eml → lhost-exim-02.eml} +0 -0
  179. data/set-of-emails/maildir/bsd/{email-exim-03.eml → lhost-exim-03.eml} +0 -0
  180. data/set-of-emails/maildir/bsd/{email-exim-04.eml → lhost-exim-04.eml} +0 -0
  181. data/set-of-emails/maildir/bsd/{email-exim-05.eml → lhost-exim-05.eml} +0 -0
  182. data/set-of-emails/maildir/bsd/{email-exim-06.eml → lhost-exim-06.eml} +0 -0
  183. data/set-of-emails/maildir/bsd/{email-exim-07.eml → lhost-exim-07.eml} +0 -0
  184. data/set-of-emails/maildir/bsd/{email-exim-08.eml → lhost-exim-08.eml} +0 -0
  185. data/set-of-emails/maildir/bsd/{email-exim-29.eml → lhost-exim-29.eml} +0 -0
  186. data/set-of-emails/maildir/bsd/{email-exim-30.eml → lhost-exim-30.eml} +0 -0
  187. data/set-of-emails/maildir/bsd/{email-exim-31.eml → lhost-exim-31.eml} +0 -0
  188. data/set-of-emails/maildir/bsd/{email-exim-32.eml → lhost-exim-32.eml} +0 -0
  189. data/set-of-emails/maildir/bsd/{email-exim-33.eml → lhost-exim-33.eml} +0 -0
  190. data/set-of-emails/maildir/bsd/{email-exim-34.eml → lhost-exim-34.eml} +0 -0
  191. data/set-of-emails/maildir/bsd/{email-exim-35.eml → lhost-exim-35.eml} +0 -0
  192. data/set-of-emails/maildir/bsd/{email-exim-36.eml → lhost-exim-36.eml} +0 -0
  193. data/set-of-emails/maildir/bsd/{email-exim-37.eml → lhost-exim-37.eml} +0 -0
  194. data/set-of-emails/maildir/bsd/{email-exim-38.eml → lhost-exim-38.eml} +0 -0
  195. data/set-of-emails/maildir/bsd/{email-exim-39.eml → lhost-exim-39.eml} +0 -0
  196. data/set-of-emails/maildir/bsd/{email-exim-40.eml → lhost-exim-40.eml} +0 -0
  197. data/set-of-emails/maildir/bsd/{email-exim-41.eml → lhost-exim-41.eml} +0 -0
  198. data/set-of-emails/maildir/bsd/{email-exim-42.eml → lhost-exim-42.eml} +0 -0
  199. data/set-of-emails/maildir/bsd/{email-exim-43.eml → lhost-exim-43.eml} +0 -0
  200. data/set-of-emails/maildir/bsd/{email-exim-44.eml → lhost-exim-44.eml} +0 -0
  201. data/set-of-emails/maildir/bsd/{email-exim-45.eml → lhost-exim-45.eml} +0 -0
  202. data/set-of-emails/maildir/bsd/{email-exim-46.eml → lhost-exim-46.eml} +0 -0
  203. data/set-of-emails/maildir/bsd/{email-exim-47.eml → lhost-exim-47.eml} +0 -0
  204. data/set-of-emails/maildir/bsd/{email-exim-48.eml → lhost-exim-48.eml} +0 -0
  205. data/set-of-emails/maildir/bsd/{email-exim-49.eml → lhost-exim-49.eml} +0 -0
  206. data/set-of-emails/maildir/bsd/{email-exim-50.eml → lhost-exim-50.eml} +0 -0
  207. data/set-of-emails/maildir/bsd/{email-exim-51.eml → lhost-exim-51.eml} +0 -0
  208. data/set-of-emails/maildir/bsd/{email-exim-52.eml → lhost-exim-52.eml} +0 -0
  209. data/set-of-emails/maildir/bsd/{email-exim-53.eml → lhost-exim-53.eml} +0 -0
  210. data/set-of-emails/maildir/bsd/{email-exim-54.eml → lhost-exim-54.eml} +0 -0
  211. data/set-of-emails/maildir/bsd/{email-exim-55.eml → lhost-exim-55.eml} +0 -0
  212. data/set-of-emails/maildir/bsd/{email-exim-56.eml → lhost-exim-56.eml} +0 -0
  213. data/set-of-emails/maildir/bsd/{email-exim-57.eml → lhost-exim-57.eml} +0 -0
  214. data/set-of-emails/maildir/bsd/{email-exim-58.eml → lhost-exim-58.eml} +0 -0
  215. data/set-of-emails/maildir/bsd/{email-exim-59.eml → lhost-exim-59.eml} +0 -0
  216. data/set-of-emails/maildir/bsd/{email-exim-60.eml → lhost-exim-60.eml} +0 -0
  217. data/set-of-emails/maildir/bsd/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  218. data/set-of-emails/maildir/bsd/{email-ezweb-02.eml → lhost-ezweb-02.eml} +0 -0
  219. data/set-of-emails/maildir/bsd/{email-ezweb-03.eml → lhost-ezweb-03.eml} +0 -0
  220. data/set-of-emails/maildir/bsd/{email-ezweb-04.eml → lhost-ezweb-04.eml} +0 -0
  221. data/set-of-emails/maildir/bsd/{email-ezweb-05.eml → lhost-ezweb-05.eml} +0 -0
  222. data/set-of-emails/maildir/bsd/{email-ezweb-07.eml → lhost-ezweb-07.eml} +0 -0
  223. data/set-of-emails/maildir/bsd/{email-ezweb-08.eml → lhost-ezweb-08.eml} +0 -0
  224. data/set-of-emails/maildir/bsd/{email-facebook-03.eml → lhost-facebook-03.eml} +0 -0
  225. data/set-of-emails/maildir/bsd/{email-facebook-04.eml → lhost-facebook-04.eml} +0 -0
  226. data/set-of-emails/maildir/bsd/{email-fml-02.eml → lhost-fml-02.eml} +0 -0
  227. data/set-of-emails/maildir/bsd/{email-fml-03.eml → lhost-fml-03.eml} +0 -0
  228. data/set-of-emails/maildir/bsd/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  229. data/set-of-emails/maildir/bsd/{email-google-03.eml → lhost-gmail-03.eml} +0 -0
  230. data/set-of-emails/maildir/bsd/{email-google-04.eml → lhost-gmail-04.eml} +0 -0
  231. data/set-of-emails/maildir/bsd/{email-google-05.eml → lhost-gmail-05.eml} +0 -0
  232. data/set-of-emails/maildir/bsd/{email-google-06.eml → lhost-gmail-06.eml} +0 -0
  233. data/set-of-emails/maildir/bsd/{email-google-07.eml → lhost-gmail-07.eml} +0 -0
  234. data/set-of-emails/maildir/bsd/{email-google-08.eml → lhost-gmail-08.eml} +0 -0
  235. data/set-of-emails/maildir/bsd/{email-google-09.eml → lhost-gmail-09.eml} +0 -0
  236. data/set-of-emails/maildir/bsd/{email-google-10.eml → lhost-gmail-10.eml} +0 -0
  237. data/set-of-emails/maildir/bsd/{email-google-11.eml → lhost-gmail-11.eml} +0 -0
  238. data/set-of-emails/maildir/bsd/{email-google-15.eml → lhost-gmail-15.eml} +0 -0
  239. data/set-of-emails/maildir/bsd/{email-google-16.eml → lhost-gmail-16.eml} +0 -0
  240. data/set-of-emails/maildir/bsd/{email-google-17.eml → lhost-gmail-17.eml} +0 -0
  241. data/set-of-emails/maildir/bsd/{email-google-18.eml → lhost-gmail-18.eml} +0 -0
  242. data/set-of-emails/maildir/bsd/{email-google-19.eml → lhost-gmail-19.eml} +0 -0
  243. data/set-of-emails/maildir/bsd/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  244. data/set-of-emails/maildir/bsd/{email-gmx-02.eml → lhost-gmx-02.eml} +0 -0
  245. data/set-of-emails/maildir/bsd/{email-gmx-03.eml → lhost-gmx-03.eml} +0 -0
  246. data/set-of-emails/maildir/bsd/{email-gmx-04.eml → lhost-gmx-04.eml} +0 -0
  247. data/set-of-emails/maildir/bsd/lhost-googlegroups-01.eml +116 -0
  248. data/set-of-emails/maildir/bsd/lhost-googlegroups-02.eml +114 -0
  249. data/set-of-emails/maildir/bsd/lhost-googlegroups-03.eml +116 -0
  250. data/set-of-emails/maildir/bsd/lhost-googlegroups-04.eml +116 -0
  251. data/set-of-emails/maildir/bsd/lhost-googlegroups-05.eml +116 -0
  252. data/set-of-emails/maildir/bsd/lhost-googlegroups-06.eml +116 -0
  253. data/set-of-emails/maildir/bsd/lhost-googlegroups-07.eml +116 -0
  254. data/set-of-emails/maildir/bsd/lhost-googlegroups-08.eml +115 -0
  255. data/set-of-emails/maildir/bsd/lhost-googlegroups-09.eml +116 -0
  256. data/set-of-emails/maildir/bsd/lhost-googlegroups-10.eml +116 -0
  257. data/set-of-emails/maildir/bsd/lhost-googlegroups-11.eml +116 -0
  258. data/set-of-emails/maildir/bsd/lhost-googlegroups-12.eml +116 -0
  259. data/set-of-emails/maildir/bsd/lhost-googlegroups-13.eml +115 -0
  260. data/set-of-emails/maildir/bsd/lhost-googlegroups-14.eml +127 -0
  261. data/set-of-emails/maildir/bsd/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  262. data/set-of-emails/maildir/bsd/{email-gsuite-02.eml → lhost-gsuite-02.eml} +0 -0
  263. data/set-of-emails/maildir/bsd/{email-gsuite-03.eml → lhost-gsuite-03.eml} +0 -0
  264. data/set-of-emails/maildir/bsd/{email-gsuite-04.eml → lhost-gsuite-04.eml} +0 -0
  265. data/set-of-emails/maildir/bsd/{email-gsuite-05.eml → lhost-gsuite-05.eml} +0 -0
  266. data/set-of-emails/maildir/bsd/{email-gsuite-06.eml → lhost-gsuite-06.eml} +0 -0
  267. data/set-of-emails/maildir/bsd/{email-gsuite-07.eml → lhost-gsuite-07.eml} +0 -0
  268. data/set-of-emails/maildir/bsd/{email-gsuite-08.eml → lhost-gsuite-08.eml} +0 -0
  269. data/set-of-emails/maildir/bsd/{email-gsuite-09.eml → lhost-gsuite-09.eml} +0 -0
  270. data/set-of-emails/maildir/bsd/{email-gsuite-10.eml → lhost-gsuite-10.eml} +0 -0
  271. data/set-of-emails/maildir/bsd/{email-gsuite-11.eml → lhost-gsuite-11.eml} +0 -0
  272. data/set-of-emails/maildir/bsd/{email-gsuite-12.eml → lhost-gsuite-12.eml} +0 -0
  273. data/set-of-emails/maildir/bsd/lhost-gsuite-13.eml +261 -0
  274. data/set-of-emails/maildir/bsd/lhost-gsuite-14.eml +273 -0
  275. data/set-of-emails/maildir/bsd/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  276. data/set-of-emails/maildir/bsd/{email-imailserver-02.eml → lhost-imailserver-02.eml} +0 -0
  277. data/set-of-emails/maildir/bsd/{email-imailserver-03.eml → lhost-imailserver-03.eml} +0 -0
  278. data/set-of-emails/maildir/bsd/{email-imailserver-04.eml → lhost-imailserver-04.eml} +0 -0
  279. data/set-of-emails/maildir/bsd/{email-imailserver-06.eml → lhost-imailserver-06.eml} +0 -0
  280. data/set-of-emails/maildir/bsd/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  281. data/set-of-emails/maildir/bsd/lhost-interscanmss-02.eml +70 -0
  282. data/set-of-emails/maildir/bsd/lhost-interscanmss-03.eml +73 -0
  283. data/set-of-emails/maildir/bsd/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  284. data/set-of-emails/maildir/bsd/{email-kddi-02.eml → lhost-kddi-02.eml} +0 -0
  285. data/set-of-emails/maildir/bsd/{email-kddi-03.eml → lhost-kddi-03.eml} +0 -0
  286. data/set-of-emails/maildir/bsd/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  287. data/set-of-emails/maildir/bsd/{email-mailfoundry-02.eml → lhost-mailfoundry-02.eml} +0 -0
  288. data/set-of-emails/maildir/bsd/{email-mailmarshalsmtp-02.eml → lhost-mailmarshalsmtp-02.eml} +0 -0
  289. data/set-of-emails/maildir/bsd/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  290. data/set-of-emails/maildir/bsd/{email-mailru-02.eml → lhost-mailru-02.eml} +0 -0
  291. data/set-of-emails/maildir/bsd/{email-mailru-03.eml → lhost-mailru-03.eml} +0 -0
  292. data/set-of-emails/maildir/bsd/{email-mailru-04.eml → lhost-mailru-04.eml} +0 -0
  293. data/set-of-emails/maildir/bsd/{email-mailru-05.eml → lhost-mailru-05.eml} +0 -0
  294. data/set-of-emails/maildir/bsd/{email-mailru-06.eml → lhost-mailru-06.eml} +0 -0
  295. data/set-of-emails/maildir/bsd/{email-mailru-07.eml → lhost-mailru-07.eml} +0 -0
  296. data/set-of-emails/maildir/bsd/{email-mailru-08.eml → lhost-mailru-08.eml} +0 -0
  297. data/set-of-emails/maildir/bsd/{email-mailru-09.eml → lhost-mailru-09.eml} +0 -0
  298. data/set-of-emails/maildir/bsd/{email-mailru-10.eml → lhost-mailru-10.eml} +0 -0
  299. data/set-of-emails/maildir/bsd/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  300. data/set-of-emails/maildir/bsd/{email-mcafee-02.eml → lhost-mcafee-02.eml} +0 -0
  301. data/set-of-emails/maildir/bsd/{email-mcafee-03.eml → lhost-mcafee-03.eml} +0 -0
  302. data/set-of-emails/maildir/bsd/{email-mcafee-04.eml → lhost-mcafee-04.eml} +0 -0
  303. data/set-of-emails/maildir/bsd/{email-mcafee-05.eml → lhost-mcafee-05.eml} +0 -0
  304. data/set-of-emails/maildir/bsd/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  305. data/set-of-emails/maildir/bsd/{email-messagelabs-02.eml → lhost-messagelabs-02.eml} +0 -0
  306. data/set-of-emails/maildir/bsd/{email-messagelabs-03.eml → lhost-messagelabs-03.eml} +0 -0
  307. data/set-of-emails/maildir/bsd/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  308. data/set-of-emails/maildir/bsd/{email-messagingserver-02.eml → lhost-messagingserver-02.eml} +0 -0
  309. data/set-of-emails/maildir/bsd/{email-messagingserver-03.eml → lhost-messagingserver-03.eml} +0 -0
  310. data/set-of-emails/maildir/bsd/{email-messagingserver-04.eml → lhost-messagingserver-04.eml} +0 -0
  311. data/set-of-emails/maildir/bsd/{email-messagingserver-05.eml → lhost-messagingserver-05.eml} +0 -0
  312. data/set-of-emails/maildir/bsd/{email-messagingserver-06.eml → lhost-messagingserver-06.eml} +0 -0
  313. data/set-of-emails/maildir/bsd/{email-messagingserver-07.eml → lhost-messagingserver-07.eml} +0 -0
  314. data/set-of-emails/maildir/bsd/{email-messagingserver-08.eml → lhost-messagingserver-08.eml} +0 -0
  315. data/set-of-emails/maildir/bsd/{email-messagingserver-09.eml → lhost-messagingserver-09.eml} +0 -0
  316. data/set-of-emails/maildir/bsd/{email-messagingserver-10.eml → lhost-messagingserver-10.eml} +0 -0
  317. data/set-of-emails/maildir/bsd/{email-messagingserver-11.eml → lhost-messagingserver-11.eml} +0 -0
  318. data/set-of-emails/maildir/bsd/{email-messagingserver-12.eml → lhost-messagingserver-12.eml} +0 -0
  319. data/set-of-emails/maildir/bsd/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  320. data/set-of-emails/maildir/bsd/{email-mfilter-02.eml → lhost-mfilter-02.eml} +0 -0
  321. data/set-of-emails/maildir/bsd/{email-mfilter-03.eml → lhost-mfilter-03.eml} +0 -0
  322. data/set-of-emails/maildir/bsd/{email-mfilter-04.eml → lhost-mfilter-04.eml} +0 -0
  323. data/set-of-emails/maildir/bsd/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  324. data/set-of-emails/maildir/bsd/{email-mxlogic-02.eml → lhost-mxlogic-02.eml} +0 -0
  325. data/set-of-emails/maildir/bsd/{email-mxlogic-03.eml → lhost-mxlogic-03.eml} +0 -0
  326. data/set-of-emails/maildir/bsd/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  327. data/set-of-emails/maildir/bsd/{email-notes-02.eml → lhost-notes-02.eml} +0 -0
  328. data/set-of-emails/maildir/bsd/{email-notes-03.eml → lhost-notes-03.eml} +0 -0
  329. data/set-of-emails/maildir/bsd/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  330. data/set-of-emails/maildir/bsd/{email-office365-02.eml → lhost-office365-02.eml} +0 -0
  331. data/set-of-emails/maildir/bsd/{email-office365-03.eml → lhost-office365-03.eml} +0 -0
  332. data/set-of-emails/maildir/bsd/{email-office365-04.eml → lhost-office365-04.eml} +0 -0
  333. data/set-of-emails/maildir/bsd/{email-office365-05.eml → lhost-office365-05.eml} +0 -0
  334. data/set-of-emails/maildir/bsd/{email-office365-06.eml → lhost-office365-06.eml} +0 -0
  335. data/set-of-emails/maildir/bsd/{email-office365-07.eml → lhost-office365-07.eml} +0 -0
  336. data/set-of-emails/maildir/bsd/{email-office365-08.eml → lhost-office365-08.eml} +0 -0
  337. data/set-of-emails/maildir/bsd/{email-office365-09.eml → lhost-office365-09.eml} +0 -0
  338. data/set-of-emails/maildir/bsd/{email-office365-10.eml → lhost-office365-10.eml} +0 -0
  339. data/set-of-emails/maildir/bsd/{email-office365-11.eml → lhost-office365-11.eml} +0 -0
  340. data/set-of-emails/maildir/bsd/{email-office365-12.eml → lhost-office365-12.eml} +0 -0
  341. data/set-of-emails/maildir/bsd/lhost-office365-13.eml +259 -0
  342. data/set-of-emails/maildir/bsd/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  343. data/set-of-emails/maildir/bsd/{email-opensmtpd-02.eml → lhost-opensmtpd-02.eml} +0 -0
  344. data/set-of-emails/maildir/bsd/{email-opensmtpd-03.eml → lhost-opensmtpd-03.eml} +0 -0
  345. data/set-of-emails/maildir/bsd/{email-opensmtpd-04.eml → lhost-opensmtpd-04.eml} +0 -0
  346. data/set-of-emails/maildir/bsd/{email-opensmtpd-05.eml → lhost-opensmtpd-05.eml} +0 -0
  347. data/set-of-emails/maildir/bsd/{email-opensmtpd-06.eml → lhost-opensmtpd-06.eml} +0 -0
  348. data/set-of-emails/maildir/bsd/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  349. data/set-of-emails/maildir/bsd/{email-outlook-02.eml → lhost-outlook-02.eml} +0 -0
  350. data/set-of-emails/maildir/bsd/{email-outlook-03.eml → lhost-outlook-03.eml} +0 -0
  351. data/set-of-emails/maildir/bsd/{email-outlook-04.eml → lhost-outlook-04.eml} +0 -0
  352. data/set-of-emails/maildir/bsd/{email-outlook-06.eml → lhost-outlook-06.eml} +0 -0
  353. data/set-of-emails/maildir/bsd/{email-outlook-07.eml → lhost-outlook-07.eml} +0 -0
  354. data/set-of-emails/maildir/bsd/{email-outlook-08.eml → lhost-outlook-08.eml} +0 -0
  355. data/set-of-emails/maildir/bsd/{email-outlook-09.eml → lhost-outlook-09.eml} +0 -0
  356. data/set-of-emails/maildir/bsd/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  357. data/set-of-emails/maildir/bsd/{email-postfix-02.eml → lhost-postfix-02.eml} +0 -0
  358. data/set-of-emails/maildir/bsd/{email-postfix-03.eml → lhost-postfix-03.eml} +0 -0
  359. data/set-of-emails/maildir/bsd/{email-postfix-04.eml → lhost-postfix-04.eml} +0 -0
  360. data/set-of-emails/maildir/bsd/{email-postfix-05.eml → lhost-postfix-05.eml} +0 -0
  361. data/set-of-emails/maildir/bsd/{email-postfix-06.eml → lhost-postfix-06.eml} +0 -0
  362. data/set-of-emails/maildir/bsd/{email-postfix-07.eml → lhost-postfix-07.eml} +0 -0
  363. data/set-of-emails/maildir/bsd/{email-postfix-08.eml → lhost-postfix-08.eml} +0 -0
  364. data/set-of-emails/maildir/bsd/{email-postfix-09.eml → lhost-postfix-09.eml} +0 -0
  365. data/set-of-emails/maildir/bsd/{email-postfix-10.eml → lhost-postfix-10.eml} +0 -0
  366. data/set-of-emails/maildir/bsd/{email-postfix-11.eml → lhost-postfix-11.eml} +0 -0
  367. data/set-of-emails/maildir/bsd/{email-postfix-13.eml → lhost-postfix-13.eml} +0 -0
  368. data/set-of-emails/maildir/bsd/{email-postfix-14.eml → lhost-postfix-14.eml} +0 -0
  369. data/set-of-emails/maildir/bsd/{email-postfix-15.eml → lhost-postfix-15.eml} +0 -0
  370. data/set-of-emails/maildir/bsd/{email-postfix-16.eml → lhost-postfix-16.eml} +0 -0
  371. data/set-of-emails/maildir/bsd/{email-postfix-17.eml → lhost-postfix-17.eml} +0 -0
  372. data/set-of-emails/maildir/bsd/{email-postfix-28.eml → lhost-postfix-28.eml} +0 -0
  373. data/set-of-emails/maildir/bsd/{email-postfix-29.eml → lhost-postfix-29.eml} +0 -0
  374. data/set-of-emails/maildir/bsd/{email-postfix-30.eml → lhost-postfix-30.eml} +0 -0
  375. data/set-of-emails/maildir/bsd/{email-postfix-31.eml → lhost-postfix-31.eml} +0 -0
  376. data/set-of-emails/maildir/bsd/{email-postfix-32.eml → lhost-postfix-32.eml} +0 -0
  377. data/set-of-emails/maildir/bsd/{email-postfix-33.eml → lhost-postfix-33.eml} +0 -0
  378. data/set-of-emails/maildir/bsd/{email-postfix-34.eml → lhost-postfix-34.eml} +0 -0
  379. data/set-of-emails/maildir/bsd/{email-postfix-35.eml → lhost-postfix-35.eml} +0 -0
  380. data/set-of-emails/maildir/bsd/{email-postfix-36.eml → lhost-postfix-36.eml} +0 -0
  381. data/set-of-emails/maildir/bsd/{email-postfix-37.eml → lhost-postfix-37.eml} +0 -0
  382. data/set-of-emails/maildir/bsd/{email-postfix-38.eml → lhost-postfix-38.eml} +1 -1
  383. data/set-of-emails/maildir/bsd/{email-postfix-39.eml → lhost-postfix-39.eml} +0 -0
  384. data/set-of-emails/maildir/bsd/{email-postfix-40.eml → lhost-postfix-40.eml} +0 -0
  385. data/set-of-emails/maildir/bsd/{email-postfix-41.eml → lhost-postfix-41.eml} +0 -0
  386. data/set-of-emails/maildir/bsd/{email-postfix-42.eml → lhost-postfix-42.eml} +0 -0
  387. data/set-of-emails/maildir/bsd/{email-postfix-43.eml → lhost-postfix-43.eml} +0 -0
  388. data/set-of-emails/maildir/bsd/{email-postfix-44.eml → lhost-postfix-44.eml} +0 -0
  389. data/set-of-emails/maildir/bsd/{email-postfix-45.eml → lhost-postfix-45.eml} +0 -0
  390. data/set-of-emails/maildir/bsd/{email-postfix-46.eml → lhost-postfix-46.eml} +0 -0
  391. data/set-of-emails/maildir/bsd/{email-postfix-47.eml → lhost-postfix-47.eml} +0 -0
  392. data/set-of-emails/maildir/bsd/{email-postfix-48.eml → lhost-postfix-48.eml} +0 -0
  393. data/set-of-emails/maildir/bsd/{email-postfix-49.eml → lhost-postfix-49.eml} +0 -0
  394. data/set-of-emails/maildir/bsd/{email-postfix-50.eml → lhost-postfix-50.eml} +0 -0
  395. data/set-of-emails/maildir/bsd/{email-postfix-51.eml → lhost-postfix-51.eml} +0 -0
  396. data/set-of-emails/maildir/bsd/{email-postfix-52.eml → lhost-postfix-52.eml} +0 -0
  397. data/set-of-emails/maildir/bsd/{email-postfix-53.eml → lhost-postfix-53.eml} +0 -0
  398. data/set-of-emails/maildir/bsd/{email-postfix-54.eml → lhost-postfix-54.eml} +0 -0
  399. data/set-of-emails/maildir/bsd/{email-postfix-55.eml → lhost-postfix-55.eml} +0 -0
  400. data/set-of-emails/maildir/bsd/{email-postfix-56.eml → lhost-postfix-56.eml} +0 -0
  401. data/set-of-emails/maildir/bsd/{email-postfix-57.eml → lhost-postfix-57.eml} +0 -0
  402. data/set-of-emails/maildir/bsd/{email-postfix-58.eml → lhost-postfix-58.eml} +0 -0
  403. data/set-of-emails/maildir/bsd/{email-postfix-59.eml → lhost-postfix-59.eml} +0 -0
  404. data/set-of-emails/maildir/bsd/{email-postfix-60.eml → lhost-postfix-60.eml} +0 -0
  405. data/set-of-emails/maildir/bsd/{email-postfix-61.eml → lhost-postfix-61.eml} +0 -0
  406. data/set-of-emails/maildir/bsd/lhost-postfix-62.eml +105 -0
  407. data/set-of-emails/maildir/bsd/lhost-postfix-63.eml +85 -0
  408. data/set-of-emails/maildir/bsd/lhost-postfix-64.eml +96 -0
  409. data/set-of-emails/maildir/bsd/lhost-postfix-65.eml +69 -0
  410. data/set-of-emails/maildir/bsd/{rfc3464-05.eml → lhost-powermta-01.eml} +19 -18
  411. data/set-of-emails/maildir/bsd/lhost-powermta-02.eml +58 -0
  412. data/set-of-emails/maildir/bsd/lhost-powermta-03.eml +71 -0
  413. data/set-of-emails/maildir/bsd/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  414. data/set-of-emails/maildir/bsd/{email-qmail-02.eml → lhost-qmail-02.eml} +0 -0
  415. data/set-of-emails/maildir/bsd/{email-qmail-03.eml → lhost-qmail-03.eml} +0 -0
  416. data/set-of-emails/maildir/bsd/{email-qmail-04.eml → lhost-qmail-04.eml} +0 -0
  417. data/set-of-emails/maildir/bsd/{email-qmail-05.eml → lhost-qmail-05.eml} +0 -0
  418. data/set-of-emails/maildir/bsd/{email-qmail-06.eml → lhost-qmail-06.eml} +0 -0
  419. data/set-of-emails/maildir/bsd/{email-qmail-07.eml → lhost-qmail-07.eml} +0 -0
  420. data/set-of-emails/maildir/bsd/{email-qmail-08.eml → lhost-qmail-08.eml} +0 -0
  421. data/set-of-emails/maildir/bsd/{email-qmail-09.eml → lhost-qmail-09.eml} +0 -0
  422. data/set-of-emails/maildir/bsd/{email-qmail-10.eml → lhost-qmail-10.eml} +0 -0
  423. data/set-of-emails/maildir/bsd/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  424. data/set-of-emails/maildir/bsd/{email-receivingses-02.eml → lhost-receivingses-02.eml} +0 -0
  425. data/set-of-emails/maildir/bsd/{email-receivingses-03.eml → lhost-receivingses-03.eml} +0 -0
  426. data/set-of-emails/maildir/bsd/{email-receivingses-04.eml → lhost-receivingses-04.eml} +0 -0
  427. data/set-of-emails/maildir/bsd/{email-receivingses-05.eml → lhost-receivingses-05.eml} +0 -0
  428. data/set-of-emails/maildir/bsd/{email-receivingses-06.eml → lhost-receivingses-06.eml} +0 -0
  429. data/set-of-emails/maildir/bsd/{email-receivingses-07.eml → lhost-receivingses-07.eml} +0 -0
  430. data/set-of-emails/maildir/bsd/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  431. data/set-of-emails/maildir/bsd/{email-sendgrid-02.eml → lhost-sendgrid-02.eml} +0 -0
  432. data/set-of-emails/maildir/bsd/{email-sendgrid-03.eml → lhost-sendgrid-03.eml} +0 -0
  433. data/set-of-emails/maildir/bsd/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  434. data/set-of-emails/maildir/bsd/{email-sendmail-02.eml → lhost-sendmail-02.eml} +0 -0
  435. data/set-of-emails/maildir/bsd/{email-sendmail-03.eml → lhost-sendmail-03.eml} +0 -0
  436. data/set-of-emails/maildir/bsd/{email-sendmail-04.eml → lhost-sendmail-04.eml} +0 -0
  437. data/set-of-emails/maildir/bsd/{email-sendmail-05.eml → lhost-sendmail-05.eml} +0 -0
  438. data/set-of-emails/maildir/bsd/{email-sendmail-06.eml → lhost-sendmail-06.eml} +0 -0
  439. data/set-of-emails/maildir/bsd/{email-sendmail-07.eml → lhost-sendmail-07.eml} +0 -0
  440. data/set-of-emails/maildir/bsd/{email-sendmail-08.eml → lhost-sendmail-08.eml} +0 -0
  441. data/set-of-emails/maildir/bsd/{email-sendmail-09.eml → lhost-sendmail-09.eml} +0 -0
  442. data/set-of-emails/maildir/bsd/{email-sendmail-10.eml → lhost-sendmail-10.eml} +0 -0
  443. data/set-of-emails/maildir/bsd/{email-sendmail-11.eml → lhost-sendmail-11.eml} +0 -0
  444. data/set-of-emails/maildir/bsd/{email-sendmail-12.eml → lhost-sendmail-12.eml} +0 -0
  445. data/set-of-emails/maildir/bsd/{email-sendmail-13.eml → lhost-sendmail-13.eml} +0 -0
  446. data/set-of-emails/maildir/bsd/{email-sendmail-14.eml → lhost-sendmail-14.eml} +0 -0
  447. data/set-of-emails/maildir/bsd/{email-sendmail-15.eml → lhost-sendmail-15.eml} +0 -0
  448. data/set-of-emails/maildir/bsd/{email-sendmail-16.eml → lhost-sendmail-16.eml} +0 -0
  449. data/set-of-emails/maildir/bsd/{email-sendmail-17.eml → lhost-sendmail-17.eml} +0 -0
  450. data/set-of-emails/maildir/bsd/{email-sendmail-18.eml → lhost-sendmail-18.eml} +0 -0
  451. data/set-of-emails/maildir/bsd/{email-sendmail-19.eml → lhost-sendmail-19.eml} +0 -0
  452. data/set-of-emails/maildir/bsd/{email-sendmail-20.eml → lhost-sendmail-20.eml} +0 -0
  453. data/set-of-emails/maildir/bsd/{email-sendmail-21.eml → lhost-sendmail-21.eml} +0 -0
  454. data/set-of-emails/maildir/bsd/{email-sendmail-22.eml → lhost-sendmail-22.eml} +0 -0
  455. data/set-of-emails/maildir/bsd/{email-sendmail-24.eml → lhost-sendmail-24.eml} +0 -0
  456. data/set-of-emails/maildir/bsd/{email-sendmail-25.eml → lhost-sendmail-25.eml} +0 -0
  457. data/set-of-emails/maildir/bsd/{email-sendmail-26.eml → lhost-sendmail-26.eml} +0 -0
  458. data/set-of-emails/maildir/bsd/{email-sendmail-27.eml → lhost-sendmail-27.eml} +0 -0
  459. data/set-of-emails/maildir/bsd/{email-sendmail-28.eml → lhost-sendmail-28.eml} +0 -0
  460. data/set-of-emails/maildir/bsd/{email-sendmail-29.eml → lhost-sendmail-29.eml} +0 -0
  461. data/set-of-emails/maildir/bsd/{email-sendmail-30.eml → lhost-sendmail-30.eml} +0 -0
  462. data/set-of-emails/maildir/bsd/{email-sendmail-31.eml → lhost-sendmail-31.eml} +0 -0
  463. data/set-of-emails/maildir/bsd/{email-sendmail-32.eml → lhost-sendmail-32.eml} +0 -0
  464. data/set-of-emails/maildir/bsd/{email-sendmail-33.eml → lhost-sendmail-33.eml} +0 -0
  465. data/set-of-emails/maildir/bsd/{email-sendmail-34.eml → lhost-sendmail-34.eml} +0 -0
  466. data/set-of-emails/maildir/bsd/{email-sendmail-35.eml → lhost-sendmail-35.eml} +0 -0
  467. data/set-of-emails/maildir/bsd/{email-sendmail-36.eml → lhost-sendmail-36.eml} +0 -0
  468. data/set-of-emails/maildir/bsd/{email-sendmail-37.eml → lhost-sendmail-37.eml} +0 -0
  469. data/set-of-emails/maildir/bsd/{email-sendmail-38.eml → lhost-sendmail-38.eml} +0 -0
  470. data/set-of-emails/maildir/bsd/{email-sendmail-39.eml → lhost-sendmail-39.eml} +0 -0
  471. data/set-of-emails/maildir/bsd/{email-sendmail-40.eml → lhost-sendmail-40.eml} +0 -0
  472. data/set-of-emails/maildir/bsd/{email-sendmail-41.eml → lhost-sendmail-41.eml} +0 -0
  473. data/set-of-emails/maildir/bsd/{email-sendmail-42.eml → lhost-sendmail-42.eml} +0 -0
  474. data/set-of-emails/maildir/bsd/{email-sendmail-43.eml → lhost-sendmail-43.eml} +0 -0
  475. data/set-of-emails/maildir/bsd/{email-sendmail-44.eml → lhost-sendmail-44.eml} +0 -0
  476. data/set-of-emails/maildir/bsd/{email-sendmail-45.eml → lhost-sendmail-45.eml} +0 -0
  477. data/set-of-emails/maildir/bsd/{email-sendmail-46.eml → lhost-sendmail-46.eml} +0 -0
  478. data/set-of-emails/maildir/bsd/{email-sendmail-47.eml → lhost-sendmail-47.eml} +0 -0
  479. data/set-of-emails/maildir/bsd/{email-sendmail-48.eml → lhost-sendmail-48.eml} +0 -0
  480. data/set-of-emails/maildir/bsd/{email-sendmail-49.eml → lhost-sendmail-49.eml} +0 -0
  481. data/set-of-emails/maildir/bsd/{email-sendmail-50.eml → lhost-sendmail-50.eml} +0 -0
  482. data/set-of-emails/maildir/bsd/{email-sendmail-51.eml → lhost-sendmail-51.eml} +0 -0
  483. data/set-of-emails/maildir/bsd/{email-sendmail-52.eml → lhost-sendmail-52.eml} +0 -0
  484. data/set-of-emails/maildir/bsd/{email-sendmail-53.eml → lhost-sendmail-53.eml} +0 -0
  485. data/set-of-emails/maildir/bsd/{email-sendmail-54.eml → lhost-sendmail-54.eml} +0 -0
  486. data/set-of-emails/maildir/bsd/{email-sendmail-55.eml → lhost-sendmail-55.eml} +0 -0
  487. data/set-of-emails/maildir/bsd/{email-sendmail-56.eml → lhost-sendmail-56.eml} +0 -0
  488. data/set-of-emails/maildir/bsd/lhost-sendmail-57.eml +59 -0
  489. data/set-of-emails/maildir/bsd/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  490. data/set-of-emails/maildir/bsd/{email-surfcontrol-02.eml → lhost-surfcontrol-02.eml} +0 -0
  491. data/set-of-emails/maildir/bsd/{email-surfcontrol-03.eml → lhost-surfcontrol-03.eml} +0 -0
  492. data/set-of-emails/maildir/bsd/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  493. data/set-of-emails/maildir/bsd/{email-v5sendmail-02.eml → lhost-v5sendmail-02.eml} +0 -0
  494. data/set-of-emails/maildir/bsd/{email-v5sendmail-03.eml → lhost-v5sendmail-03.eml} +0 -0
  495. data/set-of-emails/maildir/bsd/{email-v5sendmail-04.eml → lhost-v5sendmail-04.eml} +0 -0
  496. data/set-of-emails/maildir/bsd/{email-v5sendmail-05.eml → lhost-v5sendmail-05.eml} +0 -0
  497. data/set-of-emails/maildir/bsd/{email-v5sendmail-06.eml → lhost-v5sendmail-06.eml} +0 -0
  498. data/set-of-emails/maildir/bsd/{email-v5sendmail-07.eml → lhost-v5sendmail-07.eml} +0 -0
  499. data/set-of-emails/maildir/bsd/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  500. data/set-of-emails/maildir/bsd/{email-verizon-02.eml → lhost-verizon-02.eml} +0 -0
  501. data/set-of-emails/maildir/bsd/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  502. data/set-of-emails/maildir/bsd/{email-x1-02.eml → lhost-x1-02.eml} +0 -0
  503. data/set-of-emails/maildir/bsd/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  504. data/set-of-emails/maildir/bsd/{email-x2-02.eml → lhost-x2-02.eml} +0 -0
  505. data/set-of-emails/maildir/bsd/{email-x2-03.eml → lhost-x2-03.eml} +0 -0
  506. data/set-of-emails/maildir/bsd/{email-x2-04.eml → lhost-x2-04.eml} +0 -0
  507. data/set-of-emails/maildir/bsd/{email-x2-05.eml → lhost-x2-05.eml} +0 -0
  508. data/set-of-emails/maildir/bsd/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  509. data/set-of-emails/maildir/bsd/{email-x3-02.eml → lhost-x3-02.eml} +0 -0
  510. data/set-of-emails/maildir/bsd/{email-x3-03.eml → lhost-x3-03.eml} +0 -0
  511. data/set-of-emails/maildir/bsd/{email-x3-05.eml → lhost-x3-05.eml} +0 -0
  512. data/set-of-emails/maildir/bsd/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  513. data/set-of-emails/maildir/bsd/{email-x4-08.eml → lhost-x4-08.eml} +0 -0
  514. data/set-of-emails/maildir/bsd/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  515. data/set-of-emails/maildir/bsd/lhost-x6-01.eml +71 -0
  516. data/set-of-emails/maildir/bsd/lhost-x6-02.eml +68 -0
  517. data/set-of-emails/maildir/bsd/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  518. data/set-of-emails/maildir/bsd/{email-yahoo-02.eml → lhost-yahoo-02.eml} +0 -0
  519. data/set-of-emails/maildir/bsd/{email-yahoo-03.eml → lhost-yahoo-03.eml} +0 -0
  520. data/set-of-emails/maildir/bsd/{email-yahoo-04.eml → lhost-yahoo-04.eml} +0 -0
  521. data/set-of-emails/maildir/bsd/{email-yahoo-05.eml → lhost-yahoo-05.eml} +0 -0
  522. data/set-of-emails/maildir/bsd/{email-yahoo-06.eml → lhost-yahoo-06.eml} +0 -0
  523. data/set-of-emails/maildir/bsd/{email-yahoo-07.eml → lhost-yahoo-07.eml} +0 -0
  524. data/set-of-emails/maildir/bsd/{email-yahoo-08.eml → lhost-yahoo-08.eml} +0 -0
  525. data/set-of-emails/maildir/bsd/{email-yahoo-09.eml → lhost-yahoo-09.eml} +0 -0
  526. data/set-of-emails/maildir/bsd/{email-yahoo-10.eml → lhost-yahoo-10.eml} +0 -0
  527. data/set-of-emails/maildir/bsd/{email-yahoo-11.eml → lhost-yahoo-11.eml} +0 -0
  528. data/set-of-emails/maildir/bsd/{email-yahoo-12.eml → lhost-yahoo-12.eml} +0 -0
  529. data/set-of-emails/maildir/bsd/{email-yahoo-13.eml → lhost-yahoo-13.eml} +0 -0
  530. data/set-of-emails/maildir/bsd/{email-yahoo-14.eml → lhost-yahoo-14.eml} +0 -0
  531. data/set-of-emails/maildir/bsd/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  532. data/set-of-emails/maildir/bsd/{email-yandex-02.eml → lhost-yandex-02.eml} +0 -0
  533. data/set-of-emails/maildir/bsd/{email-yandex-03.eml → lhost-yandex-03.eml} +0 -0
  534. data/set-of-emails/maildir/bsd/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  535. data/set-of-emails/maildir/bsd/{email-zoho-02.eml → lhost-zoho-02.eml} +0 -0
  536. data/set-of-emails/maildir/bsd/{email-zoho-03.eml → lhost-zoho-03.eml} +0 -0
  537. data/set-of-emails/maildir/bsd/{email-zoho-04.eml → lhost-zoho-04.eml} +0 -0
  538. data/set-of-emails/maildir/bsd/{email-zoho-05.eml → lhost-zoho-05.eml} +0 -0
  539. data/set-of-emails/maildir/bsd/rfc3834-03.eml +26 -0
  540. data/set-of-emails/maildir/bsd/{rfc3464-41.eml → rfc3834-04.eml} +0 -0
  541. data/set-of-emails/maildir/bsd/rhost-cox-01.eml +192 -0
  542. data/set-of-emails/maildir/bsd/rhost-franceptt-04.eml +66 -0
  543. data/set-of-emails/maildir/bsd/rhost-franceptt-05.eml +96 -0
  544. data/set-of-emails/maildir/bsd/rhost-franceptt-06.eml +100 -0
  545. data/set-of-emails/maildir/bsd/rhost-franceptt-07.eml +97 -0
  546. data/set-of-emails/maildir/bsd/rhost-franceptt-08.eml +78 -0
  547. data/set-of-emails/maildir/bsd/rhost-franceptt-10.eml +79 -0
  548. data/set-of-emails/maildir/bsd/rhost-franceptt-11.eml +96 -0
  549. data/set-of-emails/maildir/bsd/rhost-iua-01.eml +70 -0
  550. data/set-of-emails/maildir/bsd/rhost-spectrum-01.eml +111 -0
  551. data/set-of-emails/maildir/dos/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  552. data/set-of-emails/maildir/dos/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  553. data/set-of-emails/maildir/dos/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  554. data/set-of-emails/maildir/dos/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  555. data/set-of-emails/maildir/dos/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  556. data/set-of-emails/maildir/dos/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  557. data/set-of-emails/maildir/dos/lhost-barracuda-01.eml +67 -0
  558. data/set-of-emails/maildir/dos/{email-bigfoot-01.eml → lhost-bigfoot-01.eml} +0 -0
  559. data/set-of-emails/maildir/dos/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  560. data/set-of-emails/maildir/dos/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  561. data/set-of-emails/maildir/dos/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  562. data/set-of-emails/maildir/dos/{email-einsundeins-01.eml → lhost-einsundeins-01.eml} +0 -0
  563. data/set-of-emails/maildir/dos/{email-exchange-01.eml → lhost-exchange-01.eml} +0 -0
  564. data/set-of-emails/maildir/dos/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  565. data/set-of-emails/maildir/dos/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  566. data/set-of-emails/maildir/dos/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  567. data/set-of-emails/maildir/dos/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  568. data/set-of-emails/maildir/dos/{email-facebook-01.eml → lhost-facebook-01.eml} +0 -0
  569. data/set-of-emails/maildir/dos/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  570. data/set-of-emails/maildir/dos/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  571. data/set-of-emails/maildir/dos/lhost-googlegroups-01.eml +116 -0
  572. data/set-of-emails/maildir/dos/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  573. data/set-of-emails/maildir/dos/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  574. data/set-of-emails/maildir/dos/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  575. data/set-of-emails/maildir/dos/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  576. data/set-of-emails/maildir/dos/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  577. data/set-of-emails/maildir/dos/{email-mailmarshalsmtp-01.eml → lhost-mailmarshalsmtp-01.eml} +0 -0
  578. data/set-of-emails/maildir/dos/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  579. data/set-of-emails/maildir/dos/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  580. data/set-of-emails/maildir/dos/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  581. data/set-of-emails/maildir/dos/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  582. data/set-of-emails/maildir/dos/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  583. data/set-of-emails/maildir/dos/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  584. data/set-of-emails/maildir/dos/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  585. data/set-of-emails/maildir/dos/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  586. data/set-of-emails/maildir/dos/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  587. data/set-of-emails/maildir/dos/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  588. data/set-of-emails/maildir/dos/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  589. data/set-of-emails/maildir/dos/lhost-powermta-01.eml +64 -0
  590. data/set-of-emails/maildir/dos/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  591. data/set-of-emails/maildir/dos/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  592. data/set-of-emails/maildir/dos/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  593. data/set-of-emails/maildir/dos/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  594. data/set-of-emails/maildir/dos/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  595. data/set-of-emails/maildir/dos/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  596. data/set-of-emails/maildir/dos/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  597. data/set-of-emails/maildir/dos/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  598. data/set-of-emails/maildir/dos/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  599. data/set-of-emails/maildir/dos/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  600. data/set-of-emails/maildir/dos/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  601. data/set-of-emails/maildir/dos/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  602. data/set-of-emails/maildir/dos/lhost-x6-01.eml +71 -0
  603. data/set-of-emails/maildir/dos/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  604. data/set-of-emails/maildir/dos/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  605. data/set-of-emails/maildir/dos/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  606. data/set-of-emails/maildir/dos/rhost-iua-01.eml +70 -0
  607. data/set-of-emails/maildir/mac/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  608. data/set-of-emails/maildir/mac/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  609. data/set-of-emails/maildir/mac/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  610. data/set-of-emails/maildir/mac/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  611. data/set-of-emails/maildir/mac/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  612. data/set-of-emails/maildir/mac/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  613. data/set-of-emails/maildir/mac/lhost-barracuda-01.eml +1 -4
  614. data/set-of-emails/maildir/mac/{email-bigfoot-01.eml → lhost-bigfoot-01.eml} +0 -0
  615. data/set-of-emails/maildir/mac/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  616. data/set-of-emails/maildir/mac/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  617. data/set-of-emails/maildir/mac/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  618. data/set-of-emails/maildir/mac/{email-einsundeins-01.eml → lhost-einsundeins-01.eml} +0 -0
  619. data/set-of-emails/maildir/mac/{email-exchange-01.eml → lhost-exchange-01.eml} +0 -0
  620. data/set-of-emails/maildir/mac/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  621. data/set-of-emails/maildir/mac/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  622. data/set-of-emails/maildir/mac/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  623. data/set-of-emails/maildir/mac/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  624. data/set-of-emails/maildir/mac/{email-facebook-01.eml → lhost-facebook-01.eml} +0 -0
  625. data/set-of-emails/maildir/mac/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  626. data/set-of-emails/maildir/mac/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  627. data/set-of-emails/maildir/mac/lhost-googlegroups-01.eml +1 -1
  628. data/set-of-emails/maildir/mac/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  629. data/set-of-emails/maildir/mac/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  630. data/set-of-emails/maildir/mac/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  631. data/set-of-emails/maildir/mac/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  632. data/set-of-emails/maildir/mac/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  633. data/set-of-emails/maildir/mac/{email-mailmarshalsmtp-01.eml → lhost-mailmarshalsmtp-01.eml} +0 -0
  634. data/set-of-emails/maildir/mac/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  635. data/set-of-emails/maildir/mac/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  636. data/set-of-emails/maildir/mac/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  637. data/set-of-emails/maildir/mac/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  638. data/set-of-emails/maildir/mac/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  639. data/set-of-emails/maildir/mac/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  640. data/set-of-emails/maildir/mac/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  641. data/set-of-emails/maildir/mac/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  642. data/set-of-emails/maildir/mac/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  643. data/set-of-emails/maildir/mac/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  644. data/set-of-emails/maildir/mac/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  645. data/set-of-emails/maildir/mac/lhost-powermta-01.eml +1 -4
  646. data/set-of-emails/maildir/mac/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  647. data/set-of-emails/maildir/mac/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  648. data/set-of-emails/maildir/mac/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  649. data/set-of-emails/maildir/mac/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  650. data/set-of-emails/maildir/mac/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  651. data/set-of-emails/maildir/mac/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  652. data/set-of-emails/maildir/mac/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  653. data/set-of-emails/maildir/mac/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  654. data/set-of-emails/maildir/mac/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  655. data/set-of-emails/maildir/mac/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  656. data/set-of-emails/maildir/mac/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  657. data/set-of-emails/maildir/mac/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  658. data/set-of-emails/maildir/mac/lhost-x6-01.eml +1 -3
  659. data/set-of-emails/maildir/mac/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  660. data/set-of-emails/maildir/mac/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  661. data/set-of-emails/maildir/mac/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  662. data/set-of-emails/maildir/mac/rhost-iua-01.eml +1 -4
  663. metadata +617 -584
  664. data/fig/sisimai-architecture.png +0 -0
  665. data/lib/sisimai/bite.rb +0 -37
  666. data/lib/sisimai/bite/email.rb +0 -61
  667. data/lib/sisimai/bite/email/activehunter.rb +0 -117
  668. data/lib/sisimai/bite/email/amavis.rb +0 -133
  669. data/lib/sisimai/bite/email/amazonses.rb +0 -186
  670. data/lib/sisimai/bite/email/amazonworkmail.rb +0 -170
  671. data/lib/sisimai/bite/email/aol.rb +0 -168
  672. data/lib/sisimai/bite/email/apachejames.rb +0 -158
  673. data/lib/sisimai/bite/email/bigfoot.rb +0 -162
  674. data/lib/sisimai/bite/email/biglobe.rb +0 -134
  675. data/lib/sisimai/bite/email/courier.rb +0 -181
  676. data/lib/sisimai/bite/email/domino.rb +0 -156
  677. data/lib/sisimai/bite/email/einsundeins.rb +0 -124
  678. data/lib/sisimai/bite/email/exchange2003.rb +0 -261
  679. data/lib/sisimai/bite/email/exchange2007.rb +0 -164
  680. data/lib/sisimai/bite/email/fml.rb +0 -158
  681. data/lib/sisimai/bite/email/gmx.rb +0 -152
  682. data/lib/sisimai/bite/email/gsuite.rb +0 -228
  683. data/lib/sisimai/bite/email/imailserver.rb +0 -163
  684. data/lib/sisimai/bite/email/interscanmss.rb +0 -133
  685. data/lib/sisimai/bite/email/kddi.rb +0 -146
  686. data/lib/sisimai/bite/email/mailfoundry.rb +0 -120
  687. data/lib/sisimai/bite/email/mailmarshalsmtp.rb +0 -165
  688. data/lib/sisimai/bite/email/mcafee.rb +0 -157
  689. data/lib/sisimai/bite/email/messagelabs.rb +0 -161
  690. data/lib/sisimai/bite/email/messagingserver.rb +0 -187
  691. data/lib/sisimai/bite/email/mfilter.rb +0 -152
  692. data/lib/sisimai/bite/email/notes.rb +0 -167
  693. data/lib/sisimai/bite/email/office365.rb +0 -243
  694. data/lib/sisimai/bite/email/outlook.rb +0 -173
  695. data/lib/sisimai/bite/email/postfix.rb +0 -261
  696. data/lib/sisimai/bite/email/receivingses.rb +0 -173
  697. data/lib/sisimai/bite/email/sendgrid.rb +0 -189
  698. data/lib/sisimai/bite/email/sendmail.rb +0 -247
  699. data/lib/sisimai/bite/email/surfcontrol.rb +0 -147
  700. data/lib/sisimai/bite/email/userdefined.rb +0 -115
  701. data/lib/sisimai/bite/email/v5sendmail.rb +0 -193
  702. data/lib/sisimai/bite/email/verizon.rb +0 -225
  703. data/lib/sisimai/bite/email/x1.rb +0 -114
  704. data/lib/sisimai/bite/email/x2.rb +0 -110
  705. data/lib/sisimai/bite/email/x3.rb +0 -128
  706. data/lib/sisimai/bite/email/x5.rb +0 -153
  707. data/lib/sisimai/bite/email/yahoo.rb +0 -138
  708. data/lib/sisimai/bite/email/yandex.rb +0 -161
  709. data/lib/sisimai/bite/email/zoho.rb +0 -153
  710. data/lib/sisimai/bite/json.rb +0 -36
  711. data/lib/sisimai/bite/json/amazonses.rb +0 -242
  712. data/lib/sisimai/bite/json/sendgrid.rb +0 -123
  713. data/lib/sisimai/message/email.rb +0 -477
  714. data/lib/sisimai/message/json.rb +0 -198
  715. data/lib/sisimai/order/email.rb +0 -205
  716. data/lib/sisimai/order/json.rb +0 -52
  717. data/set-of-emails/jsonobj/json-amazonses-01.json +0 -1
  718. data/set-of-emails/jsonobj/json-amazonses-02.json +0 -11
  719. data/set-of-emails/jsonobj/json-amazonses-03.json +0 -1
  720. data/set-of-emails/jsonobj/json-amazonses-04.json +0 -1
  721. data/set-of-emails/jsonobj/json-amazonses-05.json +0 -1
  722. data/set-of-emails/jsonobj/json-amazonses-06.json +0 -1
  723. data/set-of-emails/jsonobj/json-sendgrid-01.json +0 -1
  724. data/set-of-emails/jsonobj/json-sendgrid-02.json +0 -1
  725. data/set-of-emails/jsonobj/json-sendgrid-03.json +0 -1
  726. data/set-of-emails/jsonobj/json-sendgrid-04.json +0 -1
  727. data/set-of-emails/jsonobj/json-sendgrid-05.json +0 -1
  728. data/set-of-emails/jsonobj/json-sendgrid-06.json +0 -1
  729. data/set-of-emails/jsonobj/json-sendgrid-07.json +0 -1
  730. data/set-of-emails/jsonobj/json-sendgrid-08.json +0 -1
  731. data/set-of-emails/jsonobj/json-sendgrid-09.json +0 -1
  732. data/set-of-emails/jsonobj/json-sendgrid-10.json +0 -1
  733. data/set-of-emails/jsonobj/json-sendgrid-11.json +0 -1
  734. data/set-of-emails/jsonobj/json-sendgrid-12.json +0 -1
  735. data/set-of-emails/jsonobj/json-sendgrid-13.json +0 -1
  736. data/set-of-emails/jsonobj/json-sendgrid-14.json +0 -1
  737. data/set-of-emails/jsonobj/json-sendgrid-15.json +0 -1
  738. data/set-of-emails/jsonobj/json-sendgrid-16.json +0 -1
  739. data/set-of-emails/jsonobj/json-sendgrid-17.json +0 -1
@@ -0,0 +1,150 @@
1
+ module Sisimai::Lhost
2
+ # Sisimai::Lhost::V5sendmail parses a bounce email which created by
3
+ # Sendmail version 5.
4
+ # Methods in the module are called from only Sisimai::Message.
5
+ module V5sendmail
6
+ class << self
7
+ # Imported from p5-Sisimail/lib/Sisimai/Lhost/V5sendmail.pm
8
+ require 'sisimai/lhost'
9
+
10
+ Indicators = Sisimai::Lhost.INDICATORS
11
+ ReBackbone = %r/^[ ]+-----[ ](?:Unsent[ ]message[ ]follows|No[ ]message[ ]was[ ]collected)[ ]-----/.freeze
12
+ StartingOf = { message: ['----- Transcript of session follows -----'] }
13
+ MarkingsOf = {
14
+ # Error text regular expressions which defined in src/savemail.c
15
+ # savemail.c:485| (void) fflush(stdout);
16
+ # savemail.c:486| p = queuename(e->e_parent, 'x');
17
+ # savemail.c:487| if ((xfile = fopen(p, "r")) == NULL)
18
+ # savemail.c:488| {
19
+ # savemail.c:489| syserr("Cannot open %s", p);
20
+ # savemail.c:490| fprintf(fp, " ----- Transcript of session is unavailable -----\n");
21
+ # savemail.c:491| }
22
+ # savemail.c:492| else
23
+ # savemail.c:493| {
24
+ # savemail.c:494| fprintf(fp, " ----- Transcript of session follows -----\n");
25
+ # savemail.c:495| if (e->e_xfp != NULL)
26
+ # savemail.c:496| (void) fflush(e->e_xfp);
27
+ # savemail.c:497| while (fgets(buf, sizeof buf, xfile) != NULL)
28
+ # savemail.c:498| putline(buf, fp, m);
29
+ # savemail.c:499| (void) fclose(xfile);
30
+ error: %r/\A[.]+ while talking to .+[:]\z/,
31
+ }.freeze
32
+
33
+ # Parse bounce messages from Sendmail version 5
34
+ # @param [Hash] mhead Message headers of a bounce email
35
+ # @param [String] mbody Message body of a bounce email
36
+ # @return [Hash] Bounce data list and message/rfc822 part
37
+ # @return [Nil] it failed to parse or the arguments are missing
38
+ def make(mhead, mbody)
39
+ # :from => %r/\AMail Delivery Subsystem/,
40
+ return nil unless mhead['subject'] =~ /\AReturned mail: [A-Z]/
41
+
42
+ emailsteak = Sisimai::RFC5322.fillet(mbody, ReBackbone)
43
+ return nil if emailsteak[1].empty?
44
+
45
+ dscontents = [Sisimai::Lhost.DELIVERYSTATUS]
46
+ bodyslices = emailsteak[0].split("\n")
47
+ readcursor = 0 # (Integer) Points the current cursor position
48
+ recipients = 0 # (Integer) The number of 'Final-Recipient' header
49
+ responding = [] # (Array) Responses from remote server
50
+ commandset = [] # (Array) SMTP command which is sent to remote server
51
+ anotherset = {} # (Hash) Another error information
52
+ errorindex = -1 # (Integer)
53
+ v = nil
54
+
55
+ while e = bodyslices.shift do
56
+ # Read error messages and delivery status lines from the head of the email
57
+ # to the previous line of the beginning of the original message.
58
+ if readcursor == 0
59
+ # Beginning of the bounce message or delivery status part
60
+ readcursor |= Indicators[:deliverystatus] if e.include?(StartingOf[:message][0])
61
+ next
62
+ end
63
+ next if (readcursor & Indicators[:deliverystatus]) == 0
64
+ next if e.empty?
65
+
66
+ # ----- Transcript of session follows -----
67
+ # While talking to smtp.example.com:
68
+ # >>> RCPT To:<kijitora@example.org>
69
+ # <<< 550 <kijitora@example.org>, User Unknown
70
+ # 550 <kijitora@example.org>... User unknown
71
+ # 421 example.org (smtp)... Deferred: Connection timed out during user open with example.org
72
+ v = dscontents[-1]
73
+
74
+ if cv = e.match(/\A\d{3}[ ]+[<]([^ ]+[@][^ ]+)[>][.]{3}[ ]*(.+)\z/)
75
+ # 550 <kijitora@example.org>... User unknown
76
+ if v['recipient']
77
+ # There are multiple recipient addresses in the message body.
78
+ dscontents << Sisimai::Lhost.DELIVERYSTATUS
79
+ v = dscontents[-1]
80
+ end
81
+ v['recipient'] = cv[1]
82
+ v['diagnosis'] = cv[2]
83
+
84
+ # Concatenate the response of the server and error message
85
+ v['diagnosis'] << ': ' << responding[recipients] if responding[recipients]
86
+ recipients += 1
87
+
88
+ elsif cv = e.match(/\A[>]{3}[ ]*([A-Z]{4})[ ]*/)
89
+ # >>> RCPT To:<kijitora@example.org>
90
+ commandset[recipients] = cv[1]
91
+
92
+ elsif cv = e.match(/\A[<]{3}[ ]+(.+)\z/)
93
+ # <<< Response
94
+ # <<< 501 <shironeko@example.co.jp>... no access from mail server [192.0.2.55] which is an open relay.
95
+ # <<< 550 Requested User Mailbox not found. No such user here.
96
+ responding[recipients] = cv[1]
97
+ else
98
+ # Detect SMTP session error or connection error
99
+ next if v['sessionerr']
100
+
101
+ if e =~ MarkingsOf[:error]
102
+ # ----- Transcript of session follows -----
103
+ # ... while talking to mta.example.org.:
104
+ v['sessionerr'] = true
105
+ next
106
+ end
107
+
108
+ if cv = e.match(/\A\d{3}[ ]+.+[.]{3}[ \t]*(.+)\z/)
109
+ # 421 example.org (smtp)... Deferred: Connection timed out during user open with example.org
110
+ anotherset['diagnosis'] = cv[1]
111
+ end
112
+ end
113
+ end
114
+
115
+ if recipients == 0 && cv = emailsteak[1].match(/^To:[ ]*(.+)$/)
116
+ # Get the recipient address from "To:" header at the original message
117
+ dscontents[0]['recipient'] = Sisimai::Address.s3s4(cv[1])
118
+ recipients = 1
119
+ end
120
+ return nil unless recipients > 0
121
+
122
+ dscontents.each do |e|
123
+ errorindex += 1
124
+ e['command'] = commandset[errorindex] || ''
125
+ e['diagnosis'] ||= if anotherset['diagnosis'].to_s.size > 0
126
+ # Copy alternative error message
127
+ anotherset['diagnosis']
128
+ else
129
+ # Set server response as a error message
130
+ responding[errorindex]
131
+ end
132
+ e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'])
133
+
134
+ unless e['recipient'] =~ /\A[^ ]+[@][^ ]+\z/
135
+ # @example.jp, no local part
136
+ if cv = e['diagnosis'].match(/[<]([^ ]+[@][^ ]+)[>]/)
137
+ # Get email address from the value of Diagnostic-Code header
138
+ e['recipient'] = cv[1]
139
+ end
140
+ end
141
+ e.delete('sessionerr')
142
+ end
143
+
144
+ return { 'ds' => dscontents, 'rfc822' => emailsteak[1] }
145
+ end
146
+ def description; return 'Sendmail version 5'; end
147
+ end
148
+ end
149
+ end
150
+
@@ -0,0 +1,164 @@
1
+ module Sisimai::Lhost
2
+ # Sisimai::Lhost::Verizon parses a bounce email which created by
3
+ # Verizon Wireless.
4
+ # Methods in the module are called from only Sisimai::Message.
5
+ module Verizon
6
+ class << self
7
+ # Imported from p5-Sisimail/lib/Sisimai/Lhost/Verizon.pm
8
+ require 'sisimai/lhost'
9
+ Indicators = Sisimai::Lhost.INDICATORS
10
+
11
+ # Parse bounce messages from Verizon
12
+ # @param [Hash] mhead Message headers of a bounce email
13
+ # @param [String] mbody Message body of a bounce email
14
+ # @return [Hash] Bounce data list and message/rfc822 part
15
+ # @return [Nil] it failed to parse or the arguments are missing
16
+ def make(mhead, mbody)
17
+ match = -1
18
+ while true
19
+ # Check the value of "From" header
20
+ # :'subject' => %r/Undeliverable Message/,
21
+ break unless mhead['received'].any? { |a| a.include?('.vtext.com (') }
22
+ match = 1 if mhead['from'] == 'post_master@vtext.com'
23
+ match = 0 if mhead['from'] =~ /[<]?sysadmin[@].+[.]vzwpix[.]com[>]?\z/
24
+ break
25
+ end
26
+ return nil if match < 0
27
+
28
+ dscontents = [Sisimai::Lhost.DELIVERYSTATUS]
29
+ rebackbone = /^__BOUNDARY_STRING_HERE__/
30
+ readcursor = 0 # (Integer) Points the current cursor position
31
+ recipients = 0 # (Integer) The number of 'Final-Recipient' header
32
+ senderaddr = '' # (String) Sender address in the message body
33
+ subjecttxt = '' # (String) Subject of the original message
34
+
35
+ markingsof = {} # (Hash) Delimiter patterns
36
+ startingof = {} # (Hash) Delimiter strings
37
+ messagesof = {} # (Hash) Error message patterns
38
+ v = nil
39
+
40
+ if match == 1
41
+ # vtext.com
42
+ markingsof = { message: %r/\AError:[ \t]/ }
43
+ messagesof = {
44
+ # The attempted recipient address does not exist.
45
+ 'userunknown' => ['550 - Requested action not taken: no such user here'],
46
+ }
47
+ boundary00 = Sisimai::MIME.boundary(mhead['content-type']) || ''
48
+ rebackbone = Regexp.new('^' << Regexp.escape('--' << boundary00 << '--')) unless boundary00.empty?
49
+ emailsteak = Sisimai::RFC5322.fillet(mbody, rebackbone)
50
+ bodyslices = emailsteak[0].split("\n")
51
+
52
+ while e = bodyslices.shift do
53
+ # Read error messages and delivery status lines from the head of the email
54
+ # to the previous line of the beginning of the original message.
55
+ if readcursor == 0
56
+ # Beginning of the bounce message or delivery status part
57
+ readcursor |= Indicators[:deliverystatus] if e =~ markingsof[:message]
58
+ next
59
+ end
60
+ next if (readcursor & Indicators[:deliverystatus]) == 0
61
+ next if e.empty?
62
+
63
+ # Message details:
64
+ # Subject: Test message
65
+ # Sent date: Wed Jun 12 02:21:53 GMT 2013
66
+ # MAIL FROM: *******@hg.example.com
67
+ # RCPT TO: *****@vtext.com
68
+ v = dscontents[-1]
69
+ if cv = e.match(/\A[ \t]+RCPT TO: (.*)\z/)
70
+ if v['recipient']
71
+ # There are multiple recipient addresses in the message body.
72
+ dscontents << Sisimai::Lhost.DELIVERYSTATUS
73
+ v = dscontents[-1]
74
+ end
75
+
76
+ v['recipient'] = cv[1]
77
+ recipients += 1
78
+ next
79
+
80
+ elsif cv = e.match(/\A[ \t]+MAIL FROM:[ \t](.+)\z/)
81
+ # MAIL FROM: *******@hg.example.com
82
+ senderaddr = cv[1] if senderaddr.empty?
83
+
84
+ elsif cv = e.match(/\A[ \t]+Subject:[ \t](.+)\z/)
85
+ # Subject:
86
+ subjecttxt = cv[1] if subjecttxt.empty?
87
+ else
88
+ # 550 - Requested action not taken: no such user here
89
+ v['diagnosis'] = e if e =~ /\A(\d{3})[ \t][-][ \t](.*)\z/
90
+ end
91
+ end
92
+ else
93
+ # vzwpix.com
94
+ startingof = { message: ['Message could not be delivered to mobile'] }
95
+ messagesof = { 'userunknown' => ['No valid recipients for this MM'] }
96
+ boundary00 = Sisimai::MIME.boundary(mhead['content-type'])
97
+ rebackbone = Regexp.new('^' << Regexp.escape('--' << boundary00 << '--')) unless boundary00.empty?
98
+ emailsteak = Sisimai::RFC5322.fillet(mbody, rebackbone)
99
+ bodyslices = emailsteak[0].split("\n")
100
+
101
+ while e = bodyslices.shift do
102
+ # Read error messages and delivery status lines from the head of the email
103
+ # to the previous line of the beginning of the original message.
104
+ if readcursor == 0
105
+ # Beginning of the bounce message or delivery status part
106
+ readcursor |= Indicators[:deliverystatus] if e.start_with?(startingof[:message][0])
107
+ next
108
+ end
109
+ next if (readcursor & Indicators[:deliverystatus]) == 0
110
+ next if e.empty?
111
+
112
+ # Original Message:
113
+ # From: kijitora <kijitora@example.jp>
114
+ # To: 0000000000@vzwpix.com
115
+ # Subject: test for bounce
116
+ # Date: Wed, 20 Jun 2013 10:29:52 +0000
117
+ v = dscontents[-1]
118
+ if cv = e.match(/\ATo:[ \t]+(.*)\z/)
119
+ if v['recipient']
120
+ # There are multiple recipient addresses in the message body.
121
+ dscontents << Sisimai::Lhost.DELIVERYSTATUS
122
+ v = dscontents[-1]
123
+ end
124
+ v['recipient'] = Sisimai::Address.s3s4(cv[1])
125
+ recipients += 1
126
+ next
127
+
128
+ elsif cv = e.match(/\AFrom:[ \t](.+)\z/)
129
+ # From: kijitora <kijitora@example.jp>
130
+ senderaddr = Sisimai::Address.s3s4(cv[1]) if senderaddr.empty?
131
+
132
+ elsif cv = e.match(/\ASubject:[ \t](.+)\z/)
133
+ # Subject:
134
+ subjecttxt = cv[1] if subjecttxt.empty?
135
+ else
136
+ # Message could not be delivered to mobile.
137
+ # Error: No valid recipients for this MM
138
+ v['diagnosis'] = e if e =~ /\AError:[ \t]+(.+)\z/
139
+ end
140
+ end
141
+ end
142
+ return nil unless recipients > 0
143
+
144
+ # Set the value of "MAIL FROM:" and "From:"
145
+ emailsteak[1] << ('From: ' << senderaddr << "\n") unless emailsteak[1] =~ /^From: /
146
+ emailsteak[1] << ('Subject: ' << subjecttxt << "\n") unless emailsteak[1] =~ /^Subject: /
147
+
148
+ dscontents.each do |e|
149
+ e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'])
150
+ messagesof.each_key do |r|
151
+ # Verify each regular expression of session errors
152
+ next unless messagesof[r].any? { |a| e['diagnosis'].include?(a) }
153
+ e['reason'] = r
154
+ break
155
+ end
156
+ end
157
+
158
+ return { 'ds' => dscontents, 'rfc822' => emailsteak[1] }
159
+ end
160
+ def description; return 'Verizon Wireless: https://www.verizonwireless.com'; end
161
+ end
162
+ end
163
+ end
164
+
@@ -0,0 +1,78 @@
1
+ module Sisimai::Lhost
2
+ # Sisimai::Lhost::X1 parses a bounce email which created by Unknown MTA #1.
3
+ # Methods in the module are called from only Sisimai::Message.
4
+ module X1
5
+ class << self
6
+ # Imported from p5-Sisimail/lib/Sisimai/Lhost/X1.pm
7
+ require 'sisimai/lhost'
8
+
9
+ Indicators = Sisimai::Lhost.INDICATORS
10
+ ReBackbone = %r|^Received: from \d+[.]\d+[.]\d+[.]\d|.freeze
11
+ MarkingsOf = { message: %r/\AThe original message was received at (.+)\z/ }.freeze
12
+
13
+ # Parse bounce messages from Unknown MTA #1
14
+ # @param [Hash] mhead Message headers of a bounce email
15
+ # @param [String] mbody Message body of a bounce email
16
+ # @return [Hash] Bounce data list and message/rfc822 part
17
+ # @return [Nil] it failed to parse or the arguments are missing
18
+ def make(mhead, mbody)
19
+ return nil unless mhead['subject'].start_with?('Returned Mail: ')
20
+ return nil unless mhead['from'].start_with?('"Mail Deliver System" ')
21
+
22
+ dscontents = [Sisimai::Lhost.DELIVERYSTATUS]
23
+ emailsteak = Sisimai::RFC5322.fillet(mbody, ReBackbone)
24
+ bodyslices = emailsteak[0].split("\n")
25
+ readcursor = 0 # (Integer) Points the current cursor position
26
+ recipients = 0 # (Integer) The number of 'Final-Recipient' header
27
+ datestring = '' # (String) Date string
28
+ v = nil
29
+
30
+ while e = bodyslices.shift do
31
+ # Read error messages and delivery status lines from the head of the email
32
+ # to the previous line of the beginning of the original message.
33
+ if readcursor == 0
34
+ # Beginning of the bounce message or delivery status part
35
+ readcursor |= Indicators[:deliverystatus] if e =~ MarkingsOf[:message]
36
+ next
37
+ end
38
+ next if (readcursor & Indicators[:deliverystatus]) == 0
39
+ next if e.empty?
40
+
41
+ # The original message was received at Thu, 29 Apr 2010 23:34:45 +0900 (JST)
42
+ # from shironeko@example.jp
43
+ #
44
+ # ---The following addresses had delivery errors---
45
+ #
46
+ # kijitora@example.co.jp [User unknown]
47
+ v = dscontents[-1]
48
+
49
+ if cv = e.match(/\A([^ ]+?[@][^ ]+?)[ ]+\[(.+)\]\z/)
50
+ # kijitora@example.co.jp [User unknown]
51
+ if v['recipient']
52
+ # There are multiple recipient addresses in the message body.
53
+ dscontents << Sisimai::Lhost.DELIVERYSTATUS
54
+ v = dscontents[-1]
55
+ end
56
+ v['recipient'] = cv[1]
57
+ v['diagnosis'] = cv[2]
58
+ recipients += 1
59
+
60
+ elsif cv = e.match(MarkingsOf[:message])
61
+ # The original message was received at Thu, 29 Apr 2010 23:34:45 +0900 (JST)
62
+ datestring = cv[1]
63
+ end
64
+ end
65
+ return nil unless recipients > 0
66
+
67
+ dscontents.each do |e|
68
+ e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'])
69
+ e['date'] = datestring || ''
70
+ end
71
+
72
+ return { 'ds' => dscontents, 'rfc822' => emailsteak[1] }
73
+ end
74
+ def description; return 'Unknown MTA #1'; end
75
+ end
76
+ end
77
+ end
78
+
@@ -0,0 +1,71 @@
1
+ module Sisimai::Lhost
2
+ # Sisimai::Lhost::X2 parses a bounce email which created by Unknown MTA #2.
3
+ # Methods in the module are called from only Sisimai::Message.
4
+ module X2
5
+ class << self
6
+ # Imported from p5-Sisimail/lib/Sisimai/Lhost/X2.pm
7
+ require 'sisimai/lhost'
8
+
9
+ Indicators = Sisimai::Lhost.INDICATORS
10
+ ReBackbone = %r|^--- Original message follows[.]|.freeze
11
+ StartingOf = { message: ['Unable to deliver message to the following address'] }.freeze
12
+
13
+ # Parse bounce messages from Unknown MTA #2
14
+ # @param [Hash] mhead Message headers of a bounce email
15
+ # @param [String] mbody Message body of a bounce email
16
+ # @return [Hash] Bounce data list and message/rfc822 part
17
+ # @return [Nil] it failed to parse or the arguments are missing
18
+ def make(mhead, mbody)
19
+ return nil unless mhead['from'].include?('MAILER-DAEMON@')
20
+ return nil unless mhead['subject'] =~ %r/\A(?>Delivery failure|fail(?:ure|ed) delivery)/
21
+
22
+ dscontents = [Sisimai::Lhost.DELIVERYSTATUS]
23
+ emailsteak = Sisimai::RFC5322.fillet(mbody, ReBackbone)
24
+ bodyslices = emailsteak[0].split("\n")
25
+ readcursor = 0 # (Integer) Points the current cursor position
26
+ recipients = 0 # (Integer) The number of 'Final-Recipient' header
27
+ v = nil
28
+
29
+ while e = bodyslices.shift do
30
+ # Read error messages and delivery status lines from the head of the email
31
+ # to the previous line of the beginning of the original message.
32
+ if readcursor == 0
33
+ # Beginning of the bounce message or delivery status part
34
+ readcursor |= Indicators[:deliverystatus] if e.start_with?(StartingOf[:message][0])
35
+ next
36
+ end
37
+ next if (readcursor & Indicators[:deliverystatus]) == 0
38
+ next if e.empty?
39
+
40
+ # Message from example.com.
41
+ # Unable to deliver message to the following address(es).
42
+ #
43
+ # <kijitora@example.com>:
44
+ # This user doesn't have a example.com account (kijitora@example.com) [0]
45
+ v = dscontents[-1]
46
+
47
+ if cv = e.match(/\A[<]([^ ]+[@][^ ]+)[>]:\z/)
48
+ # <kijitora@example.com>:
49
+ if v['recipient']
50
+ # There are multiple recipient addresses in the message body.
51
+ dscontents << Sisimai::Lhost.DELIVERYSTATUS
52
+ v = dscontents[-1]
53
+ end
54
+ v['recipient'] = cv[1]
55
+ recipients += 1
56
+ else
57
+ # This user doesn't have a example.com account (kijitora@example.com) [0]
58
+ v['diagnosis'] ||= ''
59
+ v['diagnosis'] << ' ' << e
60
+ end
61
+ end
62
+ return nil unless recipients > 0
63
+
64
+ dscontents.each { |e| e['diagnosis'] = Sisimai::String.sweep(e['diagnosis']) }
65
+ return { 'ds' => dscontents, 'rfc822' => emailsteak[1] }
66
+ end
67
+ def description; return 'Unknown MTA #2'; end
68
+ end
69
+ end
70
+ end
71
+