sisimai 4.25.3 → 4.25.8

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sisimai might be problematic. Click here for more details.

Files changed (731) hide show
  1. checksums.yaml +5 -5
  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 +195 -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 +19 -73
  14. data/lib/sisimai/address.rb +13 -17
  15. data/lib/sisimai/arf.rb +26 -32
  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 +136 -175
  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 +54 -92
  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 +47 -80
  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 +48 -84
  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 +7 -13
  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/norelaying.rb +1 -1
  85. data/lib/sisimai/reason/rejected.rb +1 -0
  86. data/lib/sisimai/reason/userunknown.rb +13 -6
  87. data/lib/sisimai/reason/virusdetected.rb +1 -0
  88. data/lib/sisimai/rfc1894.rb +3 -3
  89. data/lib/sisimai/rfc3464.rb +49 -67
  90. data/lib/sisimai/rfc3834.rb +14 -26
  91. data/lib/sisimai/rfc5322.rb +21 -33
  92. data/lib/sisimai/rhost.rb +10 -12
  93. data/lib/sisimai/rhost/cox.rb +112 -0
  94. data/lib/sisimai/rhost/exchangeonline.rb +26 -23
  95. data/lib/sisimai/rhost/franceptt.rb +120 -24
  96. data/lib/sisimai/rhost/godaddy.rb +1 -1
  97. data/lib/sisimai/rhost/iua.rb +39 -0
  98. data/lib/sisimai/rhost/spectrum.rb +73 -0
  99. data/lib/sisimai/smtp.rb +0 -13
  100. data/lib/sisimai/smtp/error.rb +7 -7
  101. data/lib/sisimai/string.rb +3 -11
  102. data/lib/sisimai/version.rb +1 -1
  103. data/set-of-emails/README.md +5 -5
  104. data/set-of-emails/maildir/bsd/arf-24.eml +50 -0
  105. data/set-of-emails/maildir/bsd/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  106. data/set-of-emails/maildir/bsd/{email-activehunter-02.eml → lhost-activehunter-02.eml} +0 -0
  107. data/set-of-emails/maildir/bsd/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  108. data/set-of-emails/maildir/bsd/{email-amavis-02.eml → lhost-amavis-02.eml} +0 -0
  109. data/set-of-emails/maildir/bsd/lhost-amavis-03.eml +90 -0
  110. data/set-of-emails/maildir/bsd/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  111. data/set-of-emails/maildir/bsd/{email-amazonses-02.eml → lhost-amazonses-02.eml} +0 -0
  112. data/set-of-emails/maildir/bsd/{email-amazonses-03.eml → lhost-amazonses-03.eml} +0 -0
  113. data/set-of-emails/maildir/bsd/{email-amazonses-05.eml → lhost-amazonses-05.eml} +0 -0
  114. data/set-of-emails/maildir/bsd/{email-amazonses-06.eml → lhost-amazonses-06.eml} +0 -0
  115. data/set-of-emails/maildir/bsd/{email-amazonses-07.eml → lhost-amazonses-07.eml} +0 -0
  116. data/set-of-emails/maildir/bsd/{email-amazonses-08.eml → lhost-amazonses-08.eml} +0 -0
  117. data/set-of-emails/maildir/bsd/{email-amazonses-09.eml → lhost-amazonses-09.eml} +0 -0
  118. data/set-of-emails/maildir/bsd/{email-amazonses-10.eml → lhost-amazonses-10.eml} +0 -0
  119. data/set-of-emails/maildir/bsd/{email-amazonses-11.eml → lhost-amazonses-11.eml} +0 -0
  120. data/set-of-emails/maildir/bsd/{email-amazonses-12.eml → lhost-amazonses-12.eml} +0 -0
  121. data/set-of-emails/maildir/bsd/{email-amazonses-13.eml → lhost-amazonses-13.eml} +0 -0
  122. data/set-of-emails/maildir/bsd/{email-amazonses-14.eml → lhost-amazonses-14.eml} +0 -0
  123. data/set-of-emails/maildir/bsd/{email-amazonses-15.eml → lhost-amazonses-15.eml} +0 -0
  124. data/set-of-emails/maildir/bsd/{email-amazonses-16.eml → lhost-amazonses-16.eml} +0 -0
  125. data/set-of-emails/maildir/bsd/{email-amazonses-17.eml → lhost-amazonses-17.eml} +0 -0
  126. data/set-of-emails/maildir/bsd/{email-amazonses-18.eml → lhost-amazonses-18.eml} +0 -0
  127. data/set-of-emails/maildir/bsd/{email-amazonses-19.eml → lhost-amazonses-19.eml} +0 -0
  128. data/set-of-emails/maildir/bsd/{email-amazonses-20.eml → lhost-amazonses-20.eml} +0 -0
  129. data/set-of-emails/maildir/bsd/{email-amazonses-21.eml → lhost-amazonses-21.eml} +0 -0
  130. data/set-of-emails/maildir/bsd/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  131. data/set-of-emails/maildir/bsd/{email-amazonworkmail-02.eml → lhost-amazonworkmail-02.eml} +0 -0
  132. data/set-of-emails/maildir/bsd/{email-amazonworkmail-03.eml → lhost-amazonworkmail-03.eml} +0 -0
  133. data/set-of-emails/maildir/bsd/{email-amazonworkmail-04.eml → lhost-amazonworkmail-04.eml} +0 -0
  134. data/set-of-emails/maildir/bsd/{email-amazonworkmail-05.eml → lhost-amazonworkmail-05.eml} +0 -0
  135. data/set-of-emails/maildir/bsd/{email-amazonworkmail-07.eml → lhost-amazonworkmail-07.eml} +0 -0
  136. data/set-of-emails/maildir/bsd/{email-amazonworkmail-08.eml → lhost-amazonworkmail-08.eml} +0 -0
  137. data/set-of-emails/maildir/bsd/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  138. data/set-of-emails/maildir/bsd/{email-aol-02.eml → lhost-aol-02.eml} +0 -0
  139. data/set-of-emails/maildir/bsd/{email-aol-03.eml → lhost-aol-03.eml} +0 -0
  140. data/set-of-emails/maildir/bsd/{email-aol-04.eml → lhost-aol-04.eml} +0 -0
  141. data/set-of-emails/maildir/bsd/{email-aol-05.eml → lhost-aol-05.eml} +0 -0
  142. data/set-of-emails/maildir/bsd/{email-aol-06.eml → lhost-aol-06.eml} +0 -0
  143. data/set-of-emails/maildir/bsd/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  144. data/set-of-emails/maildir/bsd/lhost-barracuda-01.eml +67 -0
  145. data/set-of-emails/maildir/bsd/lhost-barracuda-02.eml +71 -0
  146. data/set-of-emails/maildir/bsd/{email-bigfoot-02.eml → lhost-bigfoot-02.eml} +0 -0
  147. data/set-of-emails/maildir/bsd/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  148. data/set-of-emails/maildir/bsd/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  149. data/set-of-emails/maildir/bsd/{email-courier-02.eml → lhost-courier-02.eml} +0 -0
  150. data/set-of-emails/maildir/bsd/{email-courier-03.eml → lhost-courier-03.eml} +0 -0
  151. data/set-of-emails/maildir/bsd/{email-courier-04.eml → lhost-courier-04.eml} +0 -0
  152. data/set-of-emails/maildir/bsd/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  153. data/set-of-emails/maildir/bsd/{email-domino-02.eml → lhost-domino-02.eml} +0 -0
  154. data/set-of-emails/maildir/bsd/{email-domino-03.eml → lhost-domino-03.eml} +0 -0
  155. data/set-of-emails/maildir/bsd/{email-einsundeins-02.eml → lhost-einsundeins-02.eml} +0 -0
  156. data/set-of-emails/maildir/bsd/lhost-einsundeins-03.eml +66 -0
  157. data/set-of-emails/maildir/bsd/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  158. data/set-of-emails/maildir/bsd/{email-exchange2003-02.eml → lhost-exchange2003-02.eml} +0 -0
  159. data/set-of-emails/maildir/bsd/{email-exchange2003-03.eml → lhost-exchange2003-03.eml} +0 -0
  160. data/set-of-emails/maildir/bsd/{email-exchange2003-04.eml → lhost-exchange2003-04.eml} +0 -0
  161. data/set-of-emails/maildir/bsd/{email-exchange2003-05.eml → lhost-exchange2003-05.eml} +0 -0
  162. data/set-of-emails/maildir/bsd/{email-exchange2003-07.eml → lhost-exchange2003-07.eml} +0 -0
  163. data/set-of-emails/maildir/bsd/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  164. data/set-of-emails/maildir/bsd/{email-exchange2007-02.eml → lhost-exchange2007-02.eml} +0 -0
  165. data/set-of-emails/maildir/bsd/{email-exchange2007-03.eml → lhost-exchange2007-03.eml} +0 -0
  166. data/set-of-emails/maildir/bsd/{email-exchange2007-04.eml → lhost-exchange2007-04.eml} +0 -0
  167. data/set-of-emails/maildir/bsd/lhost-exchange2007-05.eml +1469 -0
  168. data/set-of-emails/maildir/bsd/lhost-exchange2007-06.eml +764 -0
  169. data/set-of-emails/maildir/bsd/lhost-exchange2007-07.eml +128 -0
  170. data/set-of-emails/maildir/bsd/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  171. data/set-of-emails/maildir/bsd/{email-exim-02.eml → lhost-exim-02.eml} +0 -0
  172. data/set-of-emails/maildir/bsd/{email-exim-03.eml → lhost-exim-03.eml} +0 -0
  173. data/set-of-emails/maildir/bsd/{email-exim-04.eml → lhost-exim-04.eml} +0 -0
  174. data/set-of-emails/maildir/bsd/{email-exim-05.eml → lhost-exim-05.eml} +0 -0
  175. data/set-of-emails/maildir/bsd/{email-exim-06.eml → lhost-exim-06.eml} +0 -0
  176. data/set-of-emails/maildir/bsd/{email-exim-07.eml → lhost-exim-07.eml} +0 -0
  177. data/set-of-emails/maildir/bsd/{email-exim-08.eml → lhost-exim-08.eml} +0 -0
  178. data/set-of-emails/maildir/bsd/{email-exim-29.eml → lhost-exim-29.eml} +0 -0
  179. data/set-of-emails/maildir/bsd/{email-exim-30.eml → lhost-exim-30.eml} +0 -0
  180. data/set-of-emails/maildir/bsd/{email-exim-31.eml → lhost-exim-31.eml} +0 -0
  181. data/set-of-emails/maildir/bsd/{email-exim-32.eml → lhost-exim-32.eml} +0 -0
  182. data/set-of-emails/maildir/bsd/{email-exim-33.eml → lhost-exim-33.eml} +0 -0
  183. data/set-of-emails/maildir/bsd/{email-exim-34.eml → lhost-exim-34.eml} +0 -0
  184. data/set-of-emails/maildir/bsd/{email-exim-35.eml → lhost-exim-35.eml} +0 -0
  185. data/set-of-emails/maildir/bsd/{email-exim-36.eml → lhost-exim-36.eml} +0 -0
  186. data/set-of-emails/maildir/bsd/{email-exim-37.eml → lhost-exim-37.eml} +0 -0
  187. data/set-of-emails/maildir/bsd/{email-exim-38.eml → lhost-exim-38.eml} +0 -0
  188. data/set-of-emails/maildir/bsd/{email-exim-39.eml → lhost-exim-39.eml} +0 -0
  189. data/set-of-emails/maildir/bsd/{email-exim-40.eml → lhost-exim-40.eml} +0 -0
  190. data/set-of-emails/maildir/bsd/{email-exim-41.eml → lhost-exim-41.eml} +0 -0
  191. data/set-of-emails/maildir/bsd/{email-exim-42.eml → lhost-exim-42.eml} +0 -0
  192. data/set-of-emails/maildir/bsd/{email-exim-43.eml → lhost-exim-43.eml} +0 -0
  193. data/set-of-emails/maildir/bsd/{email-exim-44.eml → lhost-exim-44.eml} +0 -0
  194. data/set-of-emails/maildir/bsd/{email-exim-45.eml → lhost-exim-45.eml} +0 -0
  195. data/set-of-emails/maildir/bsd/{email-exim-46.eml → lhost-exim-46.eml} +0 -0
  196. data/set-of-emails/maildir/bsd/{email-exim-47.eml → lhost-exim-47.eml} +0 -0
  197. data/set-of-emails/maildir/bsd/{email-exim-48.eml → lhost-exim-48.eml} +0 -0
  198. data/set-of-emails/maildir/bsd/{email-exim-49.eml → lhost-exim-49.eml} +0 -0
  199. data/set-of-emails/maildir/bsd/{email-exim-50.eml → lhost-exim-50.eml} +0 -0
  200. data/set-of-emails/maildir/bsd/{email-exim-51.eml → lhost-exim-51.eml} +0 -0
  201. data/set-of-emails/maildir/bsd/{email-exim-52.eml → lhost-exim-52.eml} +0 -0
  202. data/set-of-emails/maildir/bsd/{email-exim-53.eml → lhost-exim-53.eml} +0 -0
  203. data/set-of-emails/maildir/bsd/{email-exim-54.eml → lhost-exim-54.eml} +0 -0
  204. data/set-of-emails/maildir/bsd/{email-exim-55.eml → lhost-exim-55.eml} +0 -0
  205. data/set-of-emails/maildir/bsd/{email-exim-56.eml → lhost-exim-56.eml} +0 -0
  206. data/set-of-emails/maildir/bsd/{email-exim-57.eml → lhost-exim-57.eml} +0 -0
  207. data/set-of-emails/maildir/bsd/{email-exim-58.eml → lhost-exim-58.eml} +0 -0
  208. data/set-of-emails/maildir/bsd/{email-exim-59.eml → lhost-exim-59.eml} +0 -0
  209. data/set-of-emails/maildir/bsd/{email-exim-60.eml → lhost-exim-60.eml} +0 -0
  210. data/set-of-emails/maildir/bsd/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  211. data/set-of-emails/maildir/bsd/{email-ezweb-02.eml → lhost-ezweb-02.eml} +0 -0
  212. data/set-of-emails/maildir/bsd/{email-ezweb-03.eml → lhost-ezweb-03.eml} +0 -0
  213. data/set-of-emails/maildir/bsd/{email-ezweb-04.eml → lhost-ezweb-04.eml} +0 -0
  214. data/set-of-emails/maildir/bsd/{email-ezweb-05.eml → lhost-ezweb-05.eml} +0 -0
  215. data/set-of-emails/maildir/bsd/{email-ezweb-07.eml → lhost-ezweb-07.eml} +0 -0
  216. data/set-of-emails/maildir/bsd/{email-ezweb-08.eml → lhost-ezweb-08.eml} +0 -0
  217. data/set-of-emails/maildir/bsd/{email-facebook-03.eml → lhost-facebook-03.eml} +0 -0
  218. data/set-of-emails/maildir/bsd/{email-facebook-04.eml → lhost-facebook-04.eml} +0 -0
  219. data/set-of-emails/maildir/bsd/{email-fml-02.eml → lhost-fml-02.eml} +0 -0
  220. data/set-of-emails/maildir/bsd/{email-fml-03.eml → lhost-fml-03.eml} +0 -0
  221. data/set-of-emails/maildir/bsd/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  222. data/set-of-emails/maildir/bsd/{email-google-03.eml → lhost-gmail-03.eml} +0 -0
  223. data/set-of-emails/maildir/bsd/{email-google-04.eml → lhost-gmail-04.eml} +0 -0
  224. data/set-of-emails/maildir/bsd/{email-google-05.eml → lhost-gmail-05.eml} +0 -0
  225. data/set-of-emails/maildir/bsd/{email-google-06.eml → lhost-gmail-06.eml} +0 -0
  226. data/set-of-emails/maildir/bsd/{email-google-07.eml → lhost-gmail-07.eml} +0 -0
  227. data/set-of-emails/maildir/bsd/{email-google-08.eml → lhost-gmail-08.eml} +0 -0
  228. data/set-of-emails/maildir/bsd/{email-google-09.eml → lhost-gmail-09.eml} +0 -0
  229. data/set-of-emails/maildir/bsd/{email-google-10.eml → lhost-gmail-10.eml} +0 -0
  230. data/set-of-emails/maildir/bsd/{email-google-11.eml → lhost-gmail-11.eml} +0 -0
  231. data/set-of-emails/maildir/bsd/{email-google-15.eml → lhost-gmail-15.eml} +0 -0
  232. data/set-of-emails/maildir/bsd/{email-google-16.eml → lhost-gmail-16.eml} +0 -0
  233. data/set-of-emails/maildir/bsd/{email-google-17.eml → lhost-gmail-17.eml} +0 -0
  234. data/set-of-emails/maildir/bsd/{email-google-18.eml → lhost-gmail-18.eml} +0 -0
  235. data/set-of-emails/maildir/bsd/{email-google-19.eml → lhost-gmail-19.eml} +0 -0
  236. data/set-of-emails/maildir/bsd/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  237. data/set-of-emails/maildir/bsd/{email-gmx-02.eml → lhost-gmx-02.eml} +0 -0
  238. data/set-of-emails/maildir/bsd/{email-gmx-03.eml → lhost-gmx-03.eml} +0 -0
  239. data/set-of-emails/maildir/bsd/{email-gmx-04.eml → lhost-gmx-04.eml} +0 -0
  240. data/set-of-emails/maildir/bsd/lhost-googlegroups-01.eml +116 -0
  241. data/set-of-emails/maildir/bsd/lhost-googlegroups-02.eml +114 -0
  242. data/set-of-emails/maildir/bsd/lhost-googlegroups-03.eml +116 -0
  243. data/set-of-emails/maildir/bsd/lhost-googlegroups-04.eml +116 -0
  244. data/set-of-emails/maildir/bsd/lhost-googlegroups-05.eml +116 -0
  245. data/set-of-emails/maildir/bsd/lhost-googlegroups-06.eml +116 -0
  246. data/set-of-emails/maildir/bsd/lhost-googlegroups-07.eml +116 -0
  247. data/set-of-emails/maildir/bsd/lhost-googlegroups-08.eml +115 -0
  248. data/set-of-emails/maildir/bsd/lhost-googlegroups-09.eml +116 -0
  249. data/set-of-emails/maildir/bsd/lhost-googlegroups-10.eml +116 -0
  250. data/set-of-emails/maildir/bsd/lhost-googlegroups-11.eml +116 -0
  251. data/set-of-emails/maildir/bsd/lhost-googlegroups-12.eml +116 -0
  252. data/set-of-emails/maildir/bsd/lhost-googlegroups-13.eml +115 -0
  253. data/set-of-emails/maildir/bsd/lhost-googlegroups-14.eml +127 -0
  254. data/set-of-emails/maildir/bsd/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  255. data/set-of-emails/maildir/bsd/{email-gsuite-02.eml → lhost-gsuite-02.eml} +0 -0
  256. data/set-of-emails/maildir/bsd/{email-gsuite-03.eml → lhost-gsuite-03.eml} +0 -0
  257. data/set-of-emails/maildir/bsd/{email-gsuite-04.eml → lhost-gsuite-04.eml} +0 -0
  258. data/set-of-emails/maildir/bsd/{email-gsuite-05.eml → lhost-gsuite-05.eml} +0 -0
  259. data/set-of-emails/maildir/bsd/{email-gsuite-06.eml → lhost-gsuite-06.eml} +0 -0
  260. data/set-of-emails/maildir/bsd/{email-gsuite-07.eml → lhost-gsuite-07.eml} +0 -0
  261. data/set-of-emails/maildir/bsd/{email-gsuite-08.eml → lhost-gsuite-08.eml} +0 -0
  262. data/set-of-emails/maildir/bsd/{email-gsuite-09.eml → lhost-gsuite-09.eml} +0 -0
  263. data/set-of-emails/maildir/bsd/{email-gsuite-10.eml → lhost-gsuite-10.eml} +0 -0
  264. data/set-of-emails/maildir/bsd/{email-gsuite-11.eml → lhost-gsuite-11.eml} +0 -0
  265. data/set-of-emails/maildir/bsd/{email-gsuite-12.eml → lhost-gsuite-12.eml} +0 -0
  266. data/set-of-emails/maildir/bsd/lhost-gsuite-13.eml +261 -0
  267. data/set-of-emails/maildir/bsd/lhost-gsuite-14.eml +273 -0
  268. data/set-of-emails/maildir/bsd/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  269. data/set-of-emails/maildir/bsd/{email-imailserver-02.eml → lhost-imailserver-02.eml} +0 -0
  270. data/set-of-emails/maildir/bsd/{email-imailserver-03.eml → lhost-imailserver-03.eml} +0 -0
  271. data/set-of-emails/maildir/bsd/{email-imailserver-04.eml → lhost-imailserver-04.eml} +0 -0
  272. data/set-of-emails/maildir/bsd/{email-imailserver-06.eml → lhost-imailserver-06.eml} +0 -0
  273. data/set-of-emails/maildir/bsd/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  274. data/set-of-emails/maildir/bsd/lhost-interscanmss-02.eml +70 -0
  275. data/set-of-emails/maildir/bsd/lhost-interscanmss-03.eml +73 -0
  276. data/set-of-emails/maildir/bsd/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  277. data/set-of-emails/maildir/bsd/{email-kddi-02.eml → lhost-kddi-02.eml} +0 -0
  278. data/set-of-emails/maildir/bsd/{email-kddi-03.eml → lhost-kddi-03.eml} +0 -0
  279. data/set-of-emails/maildir/bsd/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  280. data/set-of-emails/maildir/bsd/{email-mailfoundry-02.eml → lhost-mailfoundry-02.eml} +0 -0
  281. data/set-of-emails/maildir/bsd/{email-mailmarshalsmtp-02.eml → lhost-mailmarshalsmtp-02.eml} +0 -0
  282. data/set-of-emails/maildir/bsd/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  283. data/set-of-emails/maildir/bsd/{email-mailru-02.eml → lhost-mailru-02.eml} +0 -0
  284. data/set-of-emails/maildir/bsd/{email-mailru-03.eml → lhost-mailru-03.eml} +0 -0
  285. data/set-of-emails/maildir/bsd/{email-mailru-04.eml → lhost-mailru-04.eml} +0 -0
  286. data/set-of-emails/maildir/bsd/{email-mailru-05.eml → lhost-mailru-05.eml} +0 -0
  287. data/set-of-emails/maildir/bsd/{email-mailru-06.eml → lhost-mailru-06.eml} +0 -0
  288. data/set-of-emails/maildir/bsd/{email-mailru-07.eml → lhost-mailru-07.eml} +0 -0
  289. data/set-of-emails/maildir/bsd/{email-mailru-08.eml → lhost-mailru-08.eml} +0 -0
  290. data/set-of-emails/maildir/bsd/{email-mailru-09.eml → lhost-mailru-09.eml} +0 -0
  291. data/set-of-emails/maildir/bsd/{email-mailru-10.eml → lhost-mailru-10.eml} +0 -0
  292. data/set-of-emails/maildir/bsd/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  293. data/set-of-emails/maildir/bsd/{email-mcafee-02.eml → lhost-mcafee-02.eml} +0 -0
  294. data/set-of-emails/maildir/bsd/{email-mcafee-03.eml → lhost-mcafee-03.eml} +0 -0
  295. data/set-of-emails/maildir/bsd/{email-mcafee-04.eml → lhost-mcafee-04.eml} +0 -0
  296. data/set-of-emails/maildir/bsd/{email-mcafee-05.eml → lhost-mcafee-05.eml} +0 -0
  297. data/set-of-emails/maildir/bsd/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  298. data/set-of-emails/maildir/bsd/{email-messagelabs-02.eml → lhost-messagelabs-02.eml} +0 -0
  299. data/set-of-emails/maildir/bsd/{email-messagelabs-03.eml → lhost-messagelabs-03.eml} +0 -0
  300. data/set-of-emails/maildir/bsd/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  301. data/set-of-emails/maildir/bsd/{email-messagingserver-02.eml → lhost-messagingserver-02.eml} +0 -0
  302. data/set-of-emails/maildir/bsd/{email-messagingserver-03.eml → lhost-messagingserver-03.eml} +0 -0
  303. data/set-of-emails/maildir/bsd/{email-messagingserver-04.eml → lhost-messagingserver-04.eml} +0 -0
  304. data/set-of-emails/maildir/bsd/{email-messagingserver-05.eml → lhost-messagingserver-05.eml} +0 -0
  305. data/set-of-emails/maildir/bsd/{email-messagingserver-06.eml → lhost-messagingserver-06.eml} +0 -0
  306. data/set-of-emails/maildir/bsd/{email-messagingserver-07.eml → lhost-messagingserver-07.eml} +0 -0
  307. data/set-of-emails/maildir/bsd/{email-messagingserver-08.eml → lhost-messagingserver-08.eml} +0 -0
  308. data/set-of-emails/maildir/bsd/{email-messagingserver-09.eml → lhost-messagingserver-09.eml} +0 -0
  309. data/set-of-emails/maildir/bsd/{email-messagingserver-10.eml → lhost-messagingserver-10.eml} +0 -0
  310. data/set-of-emails/maildir/bsd/{email-messagingserver-11.eml → lhost-messagingserver-11.eml} +0 -0
  311. data/set-of-emails/maildir/bsd/{email-messagingserver-12.eml → lhost-messagingserver-12.eml} +0 -0
  312. data/set-of-emails/maildir/bsd/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  313. data/set-of-emails/maildir/bsd/{email-mfilter-02.eml → lhost-mfilter-02.eml} +0 -0
  314. data/set-of-emails/maildir/bsd/{email-mfilter-03.eml → lhost-mfilter-03.eml} +0 -0
  315. data/set-of-emails/maildir/bsd/{email-mfilter-04.eml → lhost-mfilter-04.eml} +0 -0
  316. data/set-of-emails/maildir/bsd/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  317. data/set-of-emails/maildir/bsd/{email-mxlogic-02.eml → lhost-mxlogic-02.eml} +0 -0
  318. data/set-of-emails/maildir/bsd/{email-mxlogic-03.eml → lhost-mxlogic-03.eml} +0 -0
  319. data/set-of-emails/maildir/bsd/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  320. data/set-of-emails/maildir/bsd/{email-notes-02.eml → lhost-notes-02.eml} +0 -0
  321. data/set-of-emails/maildir/bsd/{email-notes-03.eml → lhost-notes-03.eml} +0 -0
  322. data/set-of-emails/maildir/bsd/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  323. data/set-of-emails/maildir/bsd/{email-office365-02.eml → lhost-office365-02.eml} +0 -0
  324. data/set-of-emails/maildir/bsd/{email-office365-03.eml → lhost-office365-03.eml} +0 -0
  325. data/set-of-emails/maildir/bsd/{email-office365-04.eml → lhost-office365-04.eml} +0 -0
  326. data/set-of-emails/maildir/bsd/{email-office365-05.eml → lhost-office365-05.eml} +0 -0
  327. data/set-of-emails/maildir/bsd/{email-office365-06.eml → lhost-office365-06.eml} +0 -0
  328. data/set-of-emails/maildir/bsd/{email-office365-07.eml → lhost-office365-07.eml} +0 -0
  329. data/set-of-emails/maildir/bsd/{email-office365-08.eml → lhost-office365-08.eml} +0 -0
  330. data/set-of-emails/maildir/bsd/{email-office365-09.eml → lhost-office365-09.eml} +0 -0
  331. data/set-of-emails/maildir/bsd/{email-office365-10.eml → lhost-office365-10.eml} +0 -0
  332. data/set-of-emails/maildir/bsd/{email-office365-11.eml → lhost-office365-11.eml} +0 -0
  333. data/set-of-emails/maildir/bsd/{email-office365-12.eml → lhost-office365-12.eml} +0 -0
  334. data/set-of-emails/maildir/bsd/lhost-office365-13.eml +259 -0
  335. data/set-of-emails/maildir/bsd/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  336. data/set-of-emails/maildir/bsd/{email-opensmtpd-02.eml → lhost-opensmtpd-02.eml} +0 -0
  337. data/set-of-emails/maildir/bsd/{email-opensmtpd-03.eml → lhost-opensmtpd-03.eml} +0 -0
  338. data/set-of-emails/maildir/bsd/{email-opensmtpd-04.eml → lhost-opensmtpd-04.eml} +0 -0
  339. data/set-of-emails/maildir/bsd/{email-opensmtpd-05.eml → lhost-opensmtpd-05.eml} +0 -0
  340. data/set-of-emails/maildir/bsd/{email-opensmtpd-06.eml → lhost-opensmtpd-06.eml} +0 -0
  341. data/set-of-emails/maildir/bsd/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  342. data/set-of-emails/maildir/bsd/{email-outlook-02.eml → lhost-outlook-02.eml} +0 -0
  343. data/set-of-emails/maildir/bsd/{email-outlook-03.eml → lhost-outlook-03.eml} +0 -0
  344. data/set-of-emails/maildir/bsd/{email-outlook-04.eml → lhost-outlook-04.eml} +0 -0
  345. data/set-of-emails/maildir/bsd/{email-outlook-06.eml → lhost-outlook-06.eml} +0 -0
  346. data/set-of-emails/maildir/bsd/{email-outlook-07.eml → lhost-outlook-07.eml} +0 -0
  347. data/set-of-emails/maildir/bsd/{email-outlook-08.eml → lhost-outlook-08.eml} +0 -0
  348. data/set-of-emails/maildir/bsd/{email-outlook-09.eml → lhost-outlook-09.eml} +0 -0
  349. data/set-of-emails/maildir/bsd/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  350. data/set-of-emails/maildir/bsd/{email-postfix-02.eml → lhost-postfix-02.eml} +0 -0
  351. data/set-of-emails/maildir/bsd/{email-postfix-03.eml → lhost-postfix-03.eml} +0 -0
  352. data/set-of-emails/maildir/bsd/{email-postfix-04.eml → lhost-postfix-04.eml} +0 -0
  353. data/set-of-emails/maildir/bsd/{email-postfix-05.eml → lhost-postfix-05.eml} +0 -0
  354. data/set-of-emails/maildir/bsd/{email-postfix-06.eml → lhost-postfix-06.eml} +0 -0
  355. data/set-of-emails/maildir/bsd/{email-postfix-07.eml → lhost-postfix-07.eml} +0 -0
  356. data/set-of-emails/maildir/bsd/{email-postfix-08.eml → lhost-postfix-08.eml} +0 -0
  357. data/set-of-emails/maildir/bsd/{email-postfix-09.eml → lhost-postfix-09.eml} +0 -0
  358. data/set-of-emails/maildir/bsd/{email-postfix-10.eml → lhost-postfix-10.eml} +0 -0
  359. data/set-of-emails/maildir/bsd/{email-postfix-11.eml → lhost-postfix-11.eml} +0 -0
  360. data/set-of-emails/maildir/bsd/{email-postfix-13.eml → lhost-postfix-13.eml} +0 -0
  361. data/set-of-emails/maildir/bsd/{email-postfix-14.eml → lhost-postfix-14.eml} +0 -0
  362. data/set-of-emails/maildir/bsd/{email-postfix-15.eml → lhost-postfix-15.eml} +0 -0
  363. data/set-of-emails/maildir/bsd/{email-postfix-16.eml → lhost-postfix-16.eml} +0 -0
  364. data/set-of-emails/maildir/bsd/{email-postfix-17.eml → lhost-postfix-17.eml} +0 -0
  365. data/set-of-emails/maildir/bsd/{email-postfix-28.eml → lhost-postfix-28.eml} +0 -0
  366. data/set-of-emails/maildir/bsd/{email-postfix-29.eml → lhost-postfix-29.eml} +0 -0
  367. data/set-of-emails/maildir/bsd/{email-postfix-30.eml → lhost-postfix-30.eml} +0 -0
  368. data/set-of-emails/maildir/bsd/{email-postfix-31.eml → lhost-postfix-31.eml} +0 -0
  369. data/set-of-emails/maildir/bsd/{email-postfix-32.eml → lhost-postfix-32.eml} +0 -0
  370. data/set-of-emails/maildir/bsd/{email-postfix-33.eml → lhost-postfix-33.eml} +0 -0
  371. data/set-of-emails/maildir/bsd/{email-postfix-34.eml → lhost-postfix-34.eml} +0 -0
  372. data/set-of-emails/maildir/bsd/{email-postfix-35.eml → lhost-postfix-35.eml} +0 -0
  373. data/set-of-emails/maildir/bsd/{email-postfix-36.eml → lhost-postfix-36.eml} +0 -0
  374. data/set-of-emails/maildir/bsd/{email-postfix-37.eml → lhost-postfix-37.eml} +0 -0
  375. data/set-of-emails/maildir/bsd/{email-postfix-38.eml → lhost-postfix-38.eml} +1 -1
  376. data/set-of-emails/maildir/bsd/{email-postfix-39.eml → lhost-postfix-39.eml} +0 -0
  377. data/set-of-emails/maildir/bsd/{email-postfix-40.eml → lhost-postfix-40.eml} +0 -0
  378. data/set-of-emails/maildir/bsd/{email-postfix-41.eml → lhost-postfix-41.eml} +0 -0
  379. data/set-of-emails/maildir/bsd/{email-postfix-42.eml → lhost-postfix-42.eml} +0 -0
  380. data/set-of-emails/maildir/bsd/{email-postfix-43.eml → lhost-postfix-43.eml} +0 -0
  381. data/set-of-emails/maildir/bsd/{email-postfix-44.eml → lhost-postfix-44.eml} +0 -0
  382. data/set-of-emails/maildir/bsd/{email-postfix-45.eml → lhost-postfix-45.eml} +0 -0
  383. data/set-of-emails/maildir/bsd/{email-postfix-46.eml → lhost-postfix-46.eml} +0 -0
  384. data/set-of-emails/maildir/bsd/{email-postfix-47.eml → lhost-postfix-47.eml} +0 -0
  385. data/set-of-emails/maildir/bsd/{email-postfix-48.eml → lhost-postfix-48.eml} +0 -0
  386. data/set-of-emails/maildir/bsd/{email-postfix-49.eml → lhost-postfix-49.eml} +0 -0
  387. data/set-of-emails/maildir/bsd/{email-postfix-50.eml → lhost-postfix-50.eml} +0 -0
  388. data/set-of-emails/maildir/bsd/{email-postfix-51.eml → lhost-postfix-51.eml} +0 -0
  389. data/set-of-emails/maildir/bsd/{email-postfix-52.eml → lhost-postfix-52.eml} +0 -0
  390. data/set-of-emails/maildir/bsd/{email-postfix-53.eml → lhost-postfix-53.eml} +0 -0
  391. data/set-of-emails/maildir/bsd/{email-postfix-54.eml → lhost-postfix-54.eml} +0 -0
  392. data/set-of-emails/maildir/bsd/{email-postfix-55.eml → lhost-postfix-55.eml} +0 -0
  393. data/set-of-emails/maildir/bsd/{email-postfix-56.eml → lhost-postfix-56.eml} +0 -0
  394. data/set-of-emails/maildir/bsd/{email-postfix-57.eml → lhost-postfix-57.eml} +0 -0
  395. data/set-of-emails/maildir/bsd/{email-postfix-58.eml → lhost-postfix-58.eml} +0 -0
  396. data/set-of-emails/maildir/bsd/{email-postfix-59.eml → lhost-postfix-59.eml} +0 -0
  397. data/set-of-emails/maildir/bsd/{email-postfix-60.eml → lhost-postfix-60.eml} +0 -0
  398. data/set-of-emails/maildir/bsd/{email-postfix-61.eml → lhost-postfix-61.eml} +0 -0
  399. data/set-of-emails/maildir/bsd/lhost-postfix-62.eml +105 -0
  400. data/set-of-emails/maildir/bsd/lhost-postfix-63.eml +85 -0
  401. data/set-of-emails/maildir/bsd/lhost-postfix-64.eml +96 -0
  402. data/set-of-emails/maildir/bsd/lhost-postfix-65.eml +69 -0
  403. data/set-of-emails/maildir/bsd/{rfc3464-05.eml → lhost-powermta-01.eml} +19 -18
  404. data/set-of-emails/maildir/bsd/lhost-powermta-02.eml +58 -0
  405. data/set-of-emails/maildir/bsd/lhost-powermta-03.eml +71 -0
  406. data/set-of-emails/maildir/bsd/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  407. data/set-of-emails/maildir/bsd/{email-qmail-02.eml → lhost-qmail-02.eml} +0 -0
  408. data/set-of-emails/maildir/bsd/{email-qmail-03.eml → lhost-qmail-03.eml} +0 -0
  409. data/set-of-emails/maildir/bsd/{email-qmail-04.eml → lhost-qmail-04.eml} +0 -0
  410. data/set-of-emails/maildir/bsd/{email-qmail-05.eml → lhost-qmail-05.eml} +0 -0
  411. data/set-of-emails/maildir/bsd/{email-qmail-06.eml → lhost-qmail-06.eml} +0 -0
  412. data/set-of-emails/maildir/bsd/{email-qmail-07.eml → lhost-qmail-07.eml} +0 -0
  413. data/set-of-emails/maildir/bsd/{email-qmail-08.eml → lhost-qmail-08.eml} +0 -0
  414. data/set-of-emails/maildir/bsd/{email-qmail-09.eml → lhost-qmail-09.eml} +0 -0
  415. data/set-of-emails/maildir/bsd/{email-qmail-10.eml → lhost-qmail-10.eml} +0 -0
  416. data/set-of-emails/maildir/bsd/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  417. data/set-of-emails/maildir/bsd/{email-receivingses-02.eml → lhost-receivingses-02.eml} +0 -0
  418. data/set-of-emails/maildir/bsd/{email-receivingses-03.eml → lhost-receivingses-03.eml} +0 -0
  419. data/set-of-emails/maildir/bsd/{email-receivingses-04.eml → lhost-receivingses-04.eml} +0 -0
  420. data/set-of-emails/maildir/bsd/{email-receivingses-05.eml → lhost-receivingses-05.eml} +0 -0
  421. data/set-of-emails/maildir/bsd/{email-receivingses-06.eml → lhost-receivingses-06.eml} +0 -0
  422. data/set-of-emails/maildir/bsd/{email-receivingses-07.eml → lhost-receivingses-07.eml} +0 -0
  423. data/set-of-emails/maildir/bsd/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  424. data/set-of-emails/maildir/bsd/{email-sendgrid-02.eml → lhost-sendgrid-02.eml} +0 -0
  425. data/set-of-emails/maildir/bsd/{email-sendgrid-03.eml → lhost-sendgrid-03.eml} +0 -0
  426. data/set-of-emails/maildir/bsd/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  427. data/set-of-emails/maildir/bsd/{email-sendmail-02.eml → lhost-sendmail-02.eml} +0 -0
  428. data/set-of-emails/maildir/bsd/{email-sendmail-03.eml → lhost-sendmail-03.eml} +0 -0
  429. data/set-of-emails/maildir/bsd/{email-sendmail-04.eml → lhost-sendmail-04.eml} +0 -0
  430. data/set-of-emails/maildir/bsd/{email-sendmail-05.eml → lhost-sendmail-05.eml} +0 -0
  431. data/set-of-emails/maildir/bsd/{email-sendmail-06.eml → lhost-sendmail-06.eml} +0 -0
  432. data/set-of-emails/maildir/bsd/{email-sendmail-07.eml → lhost-sendmail-07.eml} +0 -0
  433. data/set-of-emails/maildir/bsd/{email-sendmail-08.eml → lhost-sendmail-08.eml} +0 -0
  434. data/set-of-emails/maildir/bsd/{email-sendmail-09.eml → lhost-sendmail-09.eml} +0 -0
  435. data/set-of-emails/maildir/bsd/{email-sendmail-10.eml → lhost-sendmail-10.eml} +0 -0
  436. data/set-of-emails/maildir/bsd/{email-sendmail-11.eml → lhost-sendmail-11.eml} +0 -0
  437. data/set-of-emails/maildir/bsd/{email-sendmail-12.eml → lhost-sendmail-12.eml} +0 -0
  438. data/set-of-emails/maildir/bsd/{email-sendmail-13.eml → lhost-sendmail-13.eml} +0 -0
  439. data/set-of-emails/maildir/bsd/{email-sendmail-14.eml → lhost-sendmail-14.eml} +0 -0
  440. data/set-of-emails/maildir/bsd/{email-sendmail-15.eml → lhost-sendmail-15.eml} +0 -0
  441. data/set-of-emails/maildir/bsd/{email-sendmail-16.eml → lhost-sendmail-16.eml} +0 -0
  442. data/set-of-emails/maildir/bsd/{email-sendmail-17.eml → lhost-sendmail-17.eml} +0 -0
  443. data/set-of-emails/maildir/bsd/{email-sendmail-18.eml → lhost-sendmail-18.eml} +0 -0
  444. data/set-of-emails/maildir/bsd/{email-sendmail-19.eml → lhost-sendmail-19.eml} +0 -0
  445. data/set-of-emails/maildir/bsd/{email-sendmail-20.eml → lhost-sendmail-20.eml} +0 -0
  446. data/set-of-emails/maildir/bsd/{email-sendmail-21.eml → lhost-sendmail-21.eml} +0 -0
  447. data/set-of-emails/maildir/bsd/{email-sendmail-22.eml → lhost-sendmail-22.eml} +0 -0
  448. data/set-of-emails/maildir/bsd/{email-sendmail-24.eml → lhost-sendmail-24.eml} +0 -0
  449. data/set-of-emails/maildir/bsd/{email-sendmail-25.eml → lhost-sendmail-25.eml} +0 -0
  450. data/set-of-emails/maildir/bsd/{email-sendmail-26.eml → lhost-sendmail-26.eml} +0 -0
  451. data/set-of-emails/maildir/bsd/{email-sendmail-27.eml → lhost-sendmail-27.eml} +0 -0
  452. data/set-of-emails/maildir/bsd/{email-sendmail-28.eml → lhost-sendmail-28.eml} +0 -0
  453. data/set-of-emails/maildir/bsd/{email-sendmail-29.eml → lhost-sendmail-29.eml} +0 -0
  454. data/set-of-emails/maildir/bsd/{email-sendmail-30.eml → lhost-sendmail-30.eml} +0 -0
  455. data/set-of-emails/maildir/bsd/{email-sendmail-31.eml → lhost-sendmail-31.eml} +0 -0
  456. data/set-of-emails/maildir/bsd/{email-sendmail-32.eml → lhost-sendmail-32.eml} +0 -0
  457. data/set-of-emails/maildir/bsd/{email-sendmail-33.eml → lhost-sendmail-33.eml} +0 -0
  458. data/set-of-emails/maildir/bsd/{email-sendmail-34.eml → lhost-sendmail-34.eml} +0 -0
  459. data/set-of-emails/maildir/bsd/{email-sendmail-35.eml → lhost-sendmail-35.eml} +0 -0
  460. data/set-of-emails/maildir/bsd/{email-sendmail-36.eml → lhost-sendmail-36.eml} +0 -0
  461. data/set-of-emails/maildir/bsd/{email-sendmail-37.eml → lhost-sendmail-37.eml} +0 -0
  462. data/set-of-emails/maildir/bsd/{email-sendmail-38.eml → lhost-sendmail-38.eml} +0 -0
  463. data/set-of-emails/maildir/bsd/{email-sendmail-39.eml → lhost-sendmail-39.eml} +0 -0
  464. data/set-of-emails/maildir/bsd/{email-sendmail-40.eml → lhost-sendmail-40.eml} +0 -0
  465. data/set-of-emails/maildir/bsd/{email-sendmail-41.eml → lhost-sendmail-41.eml} +0 -0
  466. data/set-of-emails/maildir/bsd/{email-sendmail-42.eml → lhost-sendmail-42.eml} +0 -0
  467. data/set-of-emails/maildir/bsd/{email-sendmail-43.eml → lhost-sendmail-43.eml} +0 -0
  468. data/set-of-emails/maildir/bsd/{email-sendmail-44.eml → lhost-sendmail-44.eml} +0 -0
  469. data/set-of-emails/maildir/bsd/{email-sendmail-45.eml → lhost-sendmail-45.eml} +0 -0
  470. data/set-of-emails/maildir/bsd/{email-sendmail-46.eml → lhost-sendmail-46.eml} +0 -0
  471. data/set-of-emails/maildir/bsd/{email-sendmail-47.eml → lhost-sendmail-47.eml} +0 -0
  472. data/set-of-emails/maildir/bsd/{email-sendmail-48.eml → lhost-sendmail-48.eml} +0 -0
  473. data/set-of-emails/maildir/bsd/{email-sendmail-49.eml → lhost-sendmail-49.eml} +0 -0
  474. data/set-of-emails/maildir/bsd/{email-sendmail-50.eml → lhost-sendmail-50.eml} +0 -0
  475. data/set-of-emails/maildir/bsd/{email-sendmail-51.eml → lhost-sendmail-51.eml} +0 -0
  476. data/set-of-emails/maildir/bsd/{email-sendmail-52.eml → lhost-sendmail-52.eml} +0 -0
  477. data/set-of-emails/maildir/bsd/{email-sendmail-53.eml → lhost-sendmail-53.eml} +0 -0
  478. data/set-of-emails/maildir/bsd/{email-sendmail-54.eml → lhost-sendmail-54.eml} +0 -0
  479. data/set-of-emails/maildir/bsd/{email-sendmail-55.eml → lhost-sendmail-55.eml} +0 -0
  480. data/set-of-emails/maildir/bsd/{email-sendmail-56.eml → lhost-sendmail-56.eml} +0 -0
  481. data/set-of-emails/maildir/bsd/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  482. data/set-of-emails/maildir/bsd/{email-surfcontrol-02.eml → lhost-surfcontrol-02.eml} +0 -0
  483. data/set-of-emails/maildir/bsd/{email-surfcontrol-03.eml → lhost-surfcontrol-03.eml} +0 -0
  484. data/set-of-emails/maildir/bsd/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  485. data/set-of-emails/maildir/bsd/{email-v5sendmail-02.eml → lhost-v5sendmail-02.eml} +0 -0
  486. data/set-of-emails/maildir/bsd/{email-v5sendmail-03.eml → lhost-v5sendmail-03.eml} +0 -0
  487. data/set-of-emails/maildir/bsd/{email-v5sendmail-04.eml → lhost-v5sendmail-04.eml} +0 -0
  488. data/set-of-emails/maildir/bsd/{email-v5sendmail-05.eml → lhost-v5sendmail-05.eml} +0 -0
  489. data/set-of-emails/maildir/bsd/{email-v5sendmail-06.eml → lhost-v5sendmail-06.eml} +0 -0
  490. data/set-of-emails/maildir/bsd/{email-v5sendmail-07.eml → lhost-v5sendmail-07.eml} +0 -0
  491. data/set-of-emails/maildir/bsd/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  492. data/set-of-emails/maildir/bsd/{email-verizon-02.eml → lhost-verizon-02.eml} +0 -0
  493. data/set-of-emails/maildir/bsd/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  494. data/set-of-emails/maildir/bsd/{email-x1-02.eml → lhost-x1-02.eml} +0 -0
  495. data/set-of-emails/maildir/bsd/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  496. data/set-of-emails/maildir/bsd/{email-x2-02.eml → lhost-x2-02.eml} +0 -0
  497. data/set-of-emails/maildir/bsd/{email-x2-03.eml → lhost-x2-03.eml} +0 -0
  498. data/set-of-emails/maildir/bsd/{email-x2-04.eml → lhost-x2-04.eml} +0 -0
  499. data/set-of-emails/maildir/bsd/{email-x2-05.eml → lhost-x2-05.eml} +0 -0
  500. data/set-of-emails/maildir/bsd/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  501. data/set-of-emails/maildir/bsd/{email-x3-02.eml → lhost-x3-02.eml} +0 -0
  502. data/set-of-emails/maildir/bsd/{email-x3-03.eml → lhost-x3-03.eml} +0 -0
  503. data/set-of-emails/maildir/bsd/{email-x3-05.eml → lhost-x3-05.eml} +0 -0
  504. data/set-of-emails/maildir/bsd/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  505. data/set-of-emails/maildir/bsd/{email-x4-08.eml → lhost-x4-08.eml} +0 -0
  506. data/set-of-emails/maildir/bsd/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  507. data/set-of-emails/maildir/bsd/lhost-x6-01.eml +71 -0
  508. data/set-of-emails/maildir/bsd/lhost-x6-02.eml +68 -0
  509. data/set-of-emails/maildir/bsd/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  510. data/set-of-emails/maildir/bsd/{email-yahoo-02.eml → lhost-yahoo-02.eml} +0 -0
  511. data/set-of-emails/maildir/bsd/{email-yahoo-03.eml → lhost-yahoo-03.eml} +0 -0
  512. data/set-of-emails/maildir/bsd/{email-yahoo-04.eml → lhost-yahoo-04.eml} +0 -0
  513. data/set-of-emails/maildir/bsd/{email-yahoo-05.eml → lhost-yahoo-05.eml} +0 -0
  514. data/set-of-emails/maildir/bsd/{email-yahoo-06.eml → lhost-yahoo-06.eml} +0 -0
  515. data/set-of-emails/maildir/bsd/{email-yahoo-07.eml → lhost-yahoo-07.eml} +0 -0
  516. data/set-of-emails/maildir/bsd/{email-yahoo-08.eml → lhost-yahoo-08.eml} +0 -0
  517. data/set-of-emails/maildir/bsd/{email-yahoo-09.eml → lhost-yahoo-09.eml} +0 -0
  518. data/set-of-emails/maildir/bsd/{email-yahoo-10.eml → lhost-yahoo-10.eml} +0 -0
  519. data/set-of-emails/maildir/bsd/{email-yahoo-11.eml → lhost-yahoo-11.eml} +0 -0
  520. data/set-of-emails/maildir/bsd/{email-yahoo-12.eml → lhost-yahoo-12.eml} +0 -0
  521. data/set-of-emails/maildir/bsd/{email-yahoo-13.eml → lhost-yahoo-13.eml} +0 -0
  522. data/set-of-emails/maildir/bsd/{email-yahoo-14.eml → lhost-yahoo-14.eml} +0 -0
  523. data/set-of-emails/maildir/bsd/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  524. data/set-of-emails/maildir/bsd/{email-yandex-02.eml → lhost-yandex-02.eml} +0 -0
  525. data/set-of-emails/maildir/bsd/{email-yandex-03.eml → lhost-yandex-03.eml} +0 -0
  526. data/set-of-emails/maildir/bsd/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  527. data/set-of-emails/maildir/bsd/{email-zoho-02.eml → lhost-zoho-02.eml} +0 -0
  528. data/set-of-emails/maildir/bsd/{email-zoho-03.eml → lhost-zoho-03.eml} +0 -0
  529. data/set-of-emails/maildir/bsd/{email-zoho-04.eml → lhost-zoho-04.eml} +0 -0
  530. data/set-of-emails/maildir/bsd/{email-zoho-05.eml → lhost-zoho-05.eml} +0 -0
  531. data/set-of-emails/maildir/bsd/rfc3834-03.eml +26 -0
  532. data/set-of-emails/maildir/bsd/{rfc3464-41.eml → rfc3834-04.eml} +0 -0
  533. data/set-of-emails/maildir/bsd/rhost-cox-01.eml +192 -0
  534. data/set-of-emails/maildir/bsd/rhost-franceptt-04.eml +66 -0
  535. data/set-of-emails/maildir/bsd/rhost-franceptt-05.eml +96 -0
  536. data/set-of-emails/maildir/bsd/rhost-franceptt-06.eml +100 -0
  537. data/set-of-emails/maildir/bsd/rhost-franceptt-07.eml +97 -0
  538. data/set-of-emails/maildir/bsd/rhost-franceptt-08.eml +78 -0
  539. data/set-of-emails/maildir/bsd/rhost-franceptt-10.eml +79 -0
  540. data/set-of-emails/maildir/bsd/rhost-franceptt-11.eml +96 -0
  541. data/set-of-emails/maildir/bsd/rhost-iua-01.eml +70 -0
  542. data/set-of-emails/maildir/bsd/rhost-spectrum-01.eml +111 -0
  543. data/set-of-emails/maildir/dos/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  544. data/set-of-emails/maildir/dos/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  545. data/set-of-emails/maildir/dos/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  546. data/set-of-emails/maildir/dos/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  547. data/set-of-emails/maildir/dos/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  548. data/set-of-emails/maildir/dos/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  549. data/set-of-emails/maildir/dos/lhost-barracuda-01.eml +67 -0
  550. data/set-of-emails/maildir/dos/{email-bigfoot-01.eml → lhost-bigfoot-01.eml} +0 -0
  551. data/set-of-emails/maildir/dos/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  552. data/set-of-emails/maildir/dos/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  553. data/set-of-emails/maildir/dos/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  554. data/set-of-emails/maildir/dos/{email-einsundeins-01.eml → lhost-einsundeins-01.eml} +0 -0
  555. data/set-of-emails/maildir/dos/{email-exchange-01.eml → lhost-exchange-01.eml} +0 -0
  556. data/set-of-emails/maildir/dos/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  557. data/set-of-emails/maildir/dos/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  558. data/set-of-emails/maildir/dos/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  559. data/set-of-emails/maildir/dos/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  560. data/set-of-emails/maildir/dos/{email-facebook-01.eml → lhost-facebook-01.eml} +0 -0
  561. data/set-of-emails/maildir/dos/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  562. data/set-of-emails/maildir/dos/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  563. data/set-of-emails/maildir/dos/lhost-googlegroups-01.eml +116 -0
  564. data/set-of-emails/maildir/dos/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  565. data/set-of-emails/maildir/dos/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  566. data/set-of-emails/maildir/dos/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  567. data/set-of-emails/maildir/dos/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  568. data/set-of-emails/maildir/dos/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  569. data/set-of-emails/maildir/dos/{email-mailmarshalsmtp-01.eml → lhost-mailmarshalsmtp-01.eml} +0 -0
  570. data/set-of-emails/maildir/dos/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  571. data/set-of-emails/maildir/dos/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  572. data/set-of-emails/maildir/dos/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  573. data/set-of-emails/maildir/dos/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  574. data/set-of-emails/maildir/dos/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  575. data/set-of-emails/maildir/dos/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  576. data/set-of-emails/maildir/dos/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  577. data/set-of-emails/maildir/dos/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  578. data/set-of-emails/maildir/dos/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  579. data/set-of-emails/maildir/dos/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  580. data/set-of-emails/maildir/dos/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  581. data/set-of-emails/maildir/dos/lhost-powermta-01.eml +64 -0
  582. data/set-of-emails/maildir/dos/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  583. data/set-of-emails/maildir/dos/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  584. data/set-of-emails/maildir/dos/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  585. data/set-of-emails/maildir/dos/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  586. data/set-of-emails/maildir/dos/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  587. data/set-of-emails/maildir/dos/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  588. data/set-of-emails/maildir/dos/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  589. data/set-of-emails/maildir/dos/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  590. data/set-of-emails/maildir/dos/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  591. data/set-of-emails/maildir/dos/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  592. data/set-of-emails/maildir/dos/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  593. data/set-of-emails/maildir/dos/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  594. data/set-of-emails/maildir/dos/lhost-x6-01.eml +71 -0
  595. data/set-of-emails/maildir/dos/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  596. data/set-of-emails/maildir/dos/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  597. data/set-of-emails/maildir/dos/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  598. data/set-of-emails/maildir/dos/rhost-iua-01.eml +70 -0
  599. data/set-of-emails/maildir/mac/{email-activehunter-01.eml → lhost-activehunter-01.eml} +0 -0
  600. data/set-of-emails/maildir/mac/{email-amavis-01.eml → lhost-amavis-01.eml} +0 -0
  601. data/set-of-emails/maildir/mac/{email-amazonses-01.eml → lhost-amazonses-01.eml} +0 -0
  602. data/set-of-emails/maildir/mac/{email-amazonworkmail-01.eml → lhost-amazonworkmail-01.eml} +0 -0
  603. data/set-of-emails/maildir/mac/{email-aol-01.eml → lhost-aol-01.eml} +0 -0
  604. data/set-of-emails/maildir/mac/{email-apachejames-01.eml → lhost-apachejames-01.eml} +0 -0
  605. data/set-of-emails/maildir/mac/lhost-barracuda-01.eml +1 -4
  606. data/set-of-emails/maildir/mac/{email-bigfoot-01.eml → lhost-bigfoot-01.eml} +0 -0
  607. data/set-of-emails/maildir/mac/{email-biglobe-01.eml → lhost-biglobe-01.eml} +0 -0
  608. data/set-of-emails/maildir/mac/{email-courier-01.eml → lhost-courier-01.eml} +0 -0
  609. data/set-of-emails/maildir/mac/{email-domino-01.eml → lhost-domino-01.eml} +0 -0
  610. data/set-of-emails/maildir/mac/{email-einsundeins-01.eml → lhost-einsundeins-01.eml} +0 -0
  611. data/set-of-emails/maildir/mac/{email-exchange-01.eml → lhost-exchange-01.eml} +0 -0
  612. data/set-of-emails/maildir/mac/{email-exchange2003-01.eml → lhost-exchange2003-01.eml} +0 -0
  613. data/set-of-emails/maildir/mac/{email-exchange2007-01.eml → lhost-exchange2007-01.eml} +0 -0
  614. data/set-of-emails/maildir/mac/{email-exim-01.eml → lhost-exim-01.eml} +0 -0
  615. data/set-of-emails/maildir/mac/{email-ezweb-01.eml → lhost-ezweb-01.eml} +0 -0
  616. data/set-of-emails/maildir/mac/{email-facebook-01.eml → lhost-facebook-01.eml} +0 -0
  617. data/set-of-emails/maildir/mac/{email-google-01.eml → lhost-gmail-01.eml} +0 -0
  618. data/set-of-emails/maildir/mac/{email-gmx-01.eml → lhost-gmx-01.eml} +0 -0
  619. data/set-of-emails/maildir/mac/lhost-googlegroups-01.eml +1 -1
  620. data/set-of-emails/maildir/mac/{email-gsuite-01.eml → lhost-gsuite-01.eml} +0 -0
  621. data/set-of-emails/maildir/mac/{email-imailserver-01.eml → lhost-imailserver-01.eml} +0 -0
  622. data/set-of-emails/maildir/mac/{email-interscanmss-01.eml → lhost-interscanmss-01.eml} +0 -0
  623. data/set-of-emails/maildir/mac/{email-kddi-01.eml → lhost-kddi-01.eml} +0 -0
  624. data/set-of-emails/maildir/mac/{email-mailfoundry-01.eml → lhost-mailfoundry-01.eml} +0 -0
  625. data/set-of-emails/maildir/mac/{email-mailmarshalsmtp-01.eml → lhost-mailmarshalsmtp-01.eml} +0 -0
  626. data/set-of-emails/maildir/mac/{email-mailru-01.eml → lhost-mailru-01.eml} +0 -0
  627. data/set-of-emails/maildir/mac/{email-mcafee-01.eml → lhost-mcafee-01.eml} +0 -0
  628. data/set-of-emails/maildir/mac/{email-messagelabs-01.eml → lhost-messagelabs-01.eml} +0 -0
  629. data/set-of-emails/maildir/mac/{email-messagingserver-01.eml → lhost-messagingserver-01.eml} +0 -0
  630. data/set-of-emails/maildir/mac/{email-mfilter-01.eml → lhost-mfilter-01.eml} +0 -0
  631. data/set-of-emails/maildir/mac/{email-mxlogic-01.eml → lhost-mxlogic-01.eml} +0 -0
  632. data/set-of-emails/maildir/mac/{email-notes-01.eml → lhost-notes-01.eml} +0 -0
  633. data/set-of-emails/maildir/mac/{email-office365-01.eml → lhost-office365-01.eml} +0 -0
  634. data/set-of-emails/maildir/mac/{email-opensmtpd-01.eml → lhost-opensmtpd-01.eml} +0 -0
  635. data/set-of-emails/maildir/mac/{email-outlook-01.eml → lhost-outlook-01.eml} +0 -0
  636. data/set-of-emails/maildir/mac/{email-postfix-01.eml → lhost-postfix-01.eml} +0 -0
  637. data/set-of-emails/maildir/mac/lhost-powermta-01.eml +1 -4
  638. data/set-of-emails/maildir/mac/{email-qmail-01.eml → lhost-qmail-01.eml} +0 -0
  639. data/set-of-emails/maildir/mac/{email-receivingses-01.eml → lhost-receivingses-01.eml} +0 -0
  640. data/set-of-emails/maildir/mac/{email-sendgrid-01.eml → lhost-sendgrid-01.eml} +0 -0
  641. data/set-of-emails/maildir/mac/{email-sendmail-01.eml → lhost-sendmail-01.eml} +0 -0
  642. data/set-of-emails/maildir/mac/{email-surfcontrol-01.eml → lhost-surfcontrol-01.eml} +0 -0
  643. data/set-of-emails/maildir/mac/{email-v5sendmail-01.eml → lhost-v5sendmail-01.eml} +0 -0
  644. data/set-of-emails/maildir/mac/{email-verizon-01.eml → lhost-verizon-01.eml} +0 -0
  645. data/set-of-emails/maildir/mac/{email-x1-01.eml → lhost-x1-01.eml} +0 -0
  646. data/set-of-emails/maildir/mac/{email-x2-01.eml → lhost-x2-01.eml} +0 -0
  647. data/set-of-emails/maildir/mac/{email-x3-01.eml → lhost-x3-01.eml} +0 -0
  648. data/set-of-emails/maildir/mac/{email-x4-01.eml → lhost-x4-01.eml} +0 -0
  649. data/set-of-emails/maildir/mac/{email-x5-01.eml → lhost-x5-01.eml} +0 -0
  650. data/set-of-emails/maildir/mac/lhost-x6-01.eml +1 -3
  651. data/set-of-emails/maildir/mac/{email-yahoo-01.eml → lhost-yahoo-01.eml} +0 -0
  652. data/set-of-emails/maildir/mac/{email-yandex-01.eml → lhost-yandex-01.eml} +0 -0
  653. data/set-of-emails/maildir/mac/{email-zoho-01.eml → lhost-zoho-01.eml} +0 -0
  654. data/set-of-emails/maildir/mac/rhost-iua-01.eml +1 -4
  655. metadata +614 -584
  656. data/fig/sisimai-architecture.png +0 -0
  657. data/lib/sisimai/bite.rb +0 -37
  658. data/lib/sisimai/bite/email.rb +0 -61
  659. data/lib/sisimai/bite/email/activehunter.rb +0 -117
  660. data/lib/sisimai/bite/email/amavis.rb +0 -133
  661. data/lib/sisimai/bite/email/amazonses.rb +0 -186
  662. data/lib/sisimai/bite/email/amazonworkmail.rb +0 -170
  663. data/lib/sisimai/bite/email/aol.rb +0 -168
  664. data/lib/sisimai/bite/email/apachejames.rb +0 -158
  665. data/lib/sisimai/bite/email/bigfoot.rb +0 -162
  666. data/lib/sisimai/bite/email/biglobe.rb +0 -134
  667. data/lib/sisimai/bite/email/courier.rb +0 -181
  668. data/lib/sisimai/bite/email/domino.rb +0 -156
  669. data/lib/sisimai/bite/email/einsundeins.rb +0 -124
  670. data/lib/sisimai/bite/email/exchange2003.rb +0 -261
  671. data/lib/sisimai/bite/email/exchange2007.rb +0 -164
  672. data/lib/sisimai/bite/email/fml.rb +0 -158
  673. data/lib/sisimai/bite/email/gmx.rb +0 -152
  674. data/lib/sisimai/bite/email/gsuite.rb +0 -228
  675. data/lib/sisimai/bite/email/imailserver.rb +0 -163
  676. data/lib/sisimai/bite/email/interscanmss.rb +0 -133
  677. data/lib/sisimai/bite/email/kddi.rb +0 -146
  678. data/lib/sisimai/bite/email/mailfoundry.rb +0 -120
  679. data/lib/sisimai/bite/email/mailmarshalsmtp.rb +0 -165
  680. data/lib/sisimai/bite/email/mcafee.rb +0 -157
  681. data/lib/sisimai/bite/email/messagelabs.rb +0 -161
  682. data/lib/sisimai/bite/email/messagingserver.rb +0 -187
  683. data/lib/sisimai/bite/email/mfilter.rb +0 -152
  684. data/lib/sisimai/bite/email/notes.rb +0 -167
  685. data/lib/sisimai/bite/email/office365.rb +0 -243
  686. data/lib/sisimai/bite/email/outlook.rb +0 -173
  687. data/lib/sisimai/bite/email/postfix.rb +0 -261
  688. data/lib/sisimai/bite/email/receivingses.rb +0 -173
  689. data/lib/sisimai/bite/email/sendgrid.rb +0 -189
  690. data/lib/sisimai/bite/email/sendmail.rb +0 -247
  691. data/lib/sisimai/bite/email/surfcontrol.rb +0 -147
  692. data/lib/sisimai/bite/email/userdefined.rb +0 -115
  693. data/lib/sisimai/bite/email/v5sendmail.rb +0 -193
  694. data/lib/sisimai/bite/email/verizon.rb +0 -225
  695. data/lib/sisimai/bite/email/x1.rb +0 -114
  696. data/lib/sisimai/bite/email/x2.rb +0 -110
  697. data/lib/sisimai/bite/email/x3.rb +0 -128
  698. data/lib/sisimai/bite/email/x5.rb +0 -153
  699. data/lib/sisimai/bite/email/yahoo.rb +0 -138
  700. data/lib/sisimai/bite/email/yandex.rb +0 -161
  701. data/lib/sisimai/bite/email/zoho.rb +0 -153
  702. data/lib/sisimai/bite/json.rb +0 -36
  703. data/lib/sisimai/bite/json/amazonses.rb +0 -242
  704. data/lib/sisimai/bite/json/sendgrid.rb +0 -123
  705. data/lib/sisimai/message/email.rb +0 -477
  706. data/lib/sisimai/message/json.rb +0 -198
  707. data/lib/sisimai/order/email.rb +0 -205
  708. data/lib/sisimai/order/json.rb +0 -52
  709. data/set-of-emails/jsonobj/json-amazonses-01.json +0 -1
  710. data/set-of-emails/jsonobj/json-amazonses-02.json +0 -11
  711. data/set-of-emails/jsonobj/json-amazonses-03.json +0 -1
  712. data/set-of-emails/jsonobj/json-amazonses-04.json +0 -1
  713. data/set-of-emails/jsonobj/json-amazonses-05.json +0 -1
  714. data/set-of-emails/jsonobj/json-amazonses-06.json +0 -1
  715. data/set-of-emails/jsonobj/json-sendgrid-01.json +0 -1
  716. data/set-of-emails/jsonobj/json-sendgrid-02.json +0 -1
  717. data/set-of-emails/jsonobj/json-sendgrid-03.json +0 -1
  718. data/set-of-emails/jsonobj/json-sendgrid-04.json +0 -1
  719. data/set-of-emails/jsonobj/json-sendgrid-05.json +0 -1
  720. data/set-of-emails/jsonobj/json-sendgrid-06.json +0 -1
  721. data/set-of-emails/jsonobj/json-sendgrid-07.json +0 -1
  722. data/set-of-emails/jsonobj/json-sendgrid-08.json +0 -1
  723. data/set-of-emails/jsonobj/json-sendgrid-09.json +0 -1
  724. data/set-of-emails/jsonobj/json-sendgrid-10.json +0 -1
  725. data/set-of-emails/jsonobj/json-sendgrid-11.json +0 -1
  726. data/set-of-emails/jsonobj/json-sendgrid-12.json +0 -1
  727. data/set-of-emails/jsonobj/json-sendgrid-13.json +0 -1
  728. data/set-of-emails/jsonobj/json-sendgrid-14.json +0 -1
  729. data/set-of-emails/jsonobj/json-sendgrid-15.json +0 -1
  730. data/set-of-emails/jsonobj/json-sendgrid-16.json +0 -1
  731. data/set-of-emails/jsonobj/json-sendgrid-17.json +0 -1
@@ -1,247 +0,0 @@
1
- module Sisimai::Bite::Email
2
- # Sisimai::Bite::Email::Sendmail parses a bounce email which created by
3
- # v8 Sendmail. Methods in the module are called from only Sisimai::Message.
4
- module Sendmail
5
- class << self
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/Email/Sendmail.pm
7
- require 'sisimai/bite/email'
8
-
9
- Indicators = Sisimai::Bite::Email.INDICATORS
10
- StartingOf = {
11
- # Error text regular expressions which defined in sendmail/savemail.c
12
- # savemail.c:1040|if (printheader && !putline(" ----- Transcript of session follows -----\n",
13
- # savemail.c:1041| mci))
14
- # savemail.c:1042| goto writeerr;
15
- # savemail.c:1360|if (!putline(
16
- # savemail.c:1361| sendbody
17
- # savemail.c:1362| ? " ----- Original message follows -----\n"
18
- # savemail.c:1363| : " ----- Message header follows -----\n",
19
- rfc822: ['Content-Type: message/rfc822', 'Content-Type: text/rfc822-headers'],
20
- message: [' ----- Transcript of session follows -----'],
21
- error: ['... while talking to '],
22
- }.freeze
23
-
24
- def description; return 'V8Sendmail: /usr/sbin/sendmail'; end
25
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
26
- def headerlist; return []; end
27
-
28
- # Parse bounce messages from Sendmail
29
- # @param [Hash] mhead Message headers of a bounce email
30
- # @options mhead [String] from From header
31
- # @options mhead [String] date Date header
32
- # @options mhead [String] subject Subject header
33
- # @options mhead [Array] received Received headers
34
- # @options mhead [String] others Other required headers
35
- # @param [String] mbody Message body of a bounce email
36
- # @return [Hash, Nil] Bounce data list and message/rfc822
37
- # part or nil if it failed to parse or
38
- # the arguments are missing
39
- def scan(mhead, mbody)
40
- return nil unless mhead['subject'] =~ /(?:see transcript for details\z|\AWarning: )/
41
- unless mhead['subject'].downcase =~ /\A[ \t]*fwd?:/
42
- # Fwd: Returned mail: see transcript for details
43
- # Do not execute this code if the bounce mail is a forwarded message.
44
- return nil unless mhead['from'].start_with?('Mail Delivery Subsystem')
45
- end
46
-
47
- require 'sisimai/rfc1894'
48
- fieldtable = Sisimai::RFC1894.FIELDTABLE
49
- permessage = {} # (Hash) Store values of each Per-Message field
50
-
51
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
52
- hasdivided = mbody.split("\n")
53
- havepassed = ['']
54
- rfc822list = [] # (Array) Each line in message/rfc822 part string
55
- blanklines = 0 # (Integer) The number of blank lines
56
- readcursor = 0 # (Integer) Points the current cursor position
57
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
58
- commandtxt = '' # (String) SMTP Command name begin with the string '>>>'
59
- esmtpreply = [] # (Array) Reply from remote server on SMTP session
60
- sessionerr = false # (Boolean) Flag, "true" if it is SMTP session error
61
- anotherset = {} # Another error information
62
- v = nil
63
-
64
- while e = hasdivided.shift do
65
- # Save the current line for the next loop
66
- havepassed << e
67
- p = havepassed[-2]
68
-
69
- if readcursor == 0
70
- # Beginning of the bounce message or message/delivery-status part
71
- if e.start_with?(StartingOf[:message][0])
72
- readcursor |= Indicators[:deliverystatus]
73
- next
74
- end
75
- end
76
-
77
- if (readcursor & Indicators[:'message-rfc822']) == 0
78
- # Beginning of the original message part(message/rfc822)
79
- if e.start_with?(StartingOf[:rfc822][0], StartingOf[:rfc822][1])
80
- readcursor |= Indicators[:'message-rfc822']
81
- next
82
- end
83
- end
84
-
85
- if readcursor & Indicators[:'message-rfc822'] > 0
86
- # message/rfc822 OR text/rfc822-headers part
87
- if e.empty?
88
- blanklines += 1
89
- break if blanklines > 1
90
- next
91
- end
92
- rfc822list << e
93
- else
94
- # message/delivery-status part
95
- next if (readcursor & Indicators[:deliverystatus]) == 0
96
- next if e.empty?
97
-
98
- if f = Sisimai::RFC1894.match(e)
99
- # "e" matched with any field defined in RFC3464
100
- o = Sisimai::RFC1894.field(e) || next
101
- v = dscontents[-1]
102
-
103
- if o[-1] == 'addr'
104
- # Final-Recipient: rfc822; kijitora@example.jp
105
- # X-Actual-Recipient: rfc822; kijitora@example.co.jp
106
- if o[0] == 'final-recipient'
107
- # Final-Recipient: rfc822; kijitora@example.jp
108
- if v['recipient']
109
- # There are multiple recipient addresses in the message body.
110
- dscontents << Sisimai::Bite.DELIVERYSTATUS
111
- v = dscontents[-1]
112
- end
113
- v['recipient'] = o[2]
114
- recipients += 1
115
- else
116
- # X-Actual-Recipient: rfc822; kijitora@example.co.jp
117
- v['alias'] = o[2]
118
- end
119
- elsif o[-1] == 'code'
120
- # Diagnostic-Code: SMTP; 550 5.1.1 <userunknown@example.jp>... User Unknown
121
- v['spec'] = o[1]
122
- v['diagnosis'] = o[2]
123
- else
124
- # Other DSN fields defined in RFC3464
125
- next unless fieldtable.key?(o[0])
126
- v[fieldtable[o[0]]] = o[2]
127
-
128
- next unless f == 1
129
- permessage[fieldtable[o[0]]] = o[2]
130
- end
131
- else
132
- # The line does not begin with a DSN field defined in RFC3464
133
- #
134
- # ----- Transcript of session follows -----
135
- # ... while talking to mta.example.org.:
136
- # >>> DATA
137
- # <<< 550 Unknown user recipient@example.jp
138
- # 554 5.0.0 Service unavailable
139
- # ...
140
- # Reporting-MTA: dns; mx.example.jp
141
- # Received-From-MTA: DNS; x1x2x3x4.dhcp.example.ne.jp
142
- # Arrival-Date: Wed, 29 Apr 2009 16:03:18 +0900
143
- unless e.start_with?(' ')
144
- if cv = e.match(/\A[>]{3}[ ]+([A-Z]{4})[ ]?/)
145
- # >>> DATA
146
- commandtxt = cv[1]
147
-
148
- elsif cv = e.match(/\A[<]{3}[ ]+(.+)\z/)
149
- # <<< Response
150
- esmtpreply << cv[1] unless esmtpreply.index(cv[1])
151
- else
152
- # Detect SMTP session error or connection error
153
- next if sessionerr
154
- if e.start_with?(StartingOf[:error][0])
155
- # ----- Transcript of session follows -----
156
- # ... while talking to mta.example.org.:
157
- sessionerr = true
158
- next
159
- end
160
-
161
- if cv = e.match(/\A[<](.+)[>][.]+ (.+)\z/)
162
- # <kijitora@example.co.jp>... Deferred: Name server: example.co.jp.: host name lookup failure
163
- anotherset['recipient'] = cv[1]
164
- anotherset['diagnosis'] = cv[2]
165
- else
166
- # ----- Transcript of session follows -----
167
- # Message could not be delivered for too long
168
- # Message will be deleted from queue
169
- next if e =~ /\A[ \t]*[-]+/
170
- if cv = e.match(/\A[45]\d\d[ \t]([45][.]\d[.]\d)[ \t].+/)
171
- # 550 5.1.2 <kijitora@example.org>... Message
172
- #
173
- # DBI connect('dbname=...')
174
- # 554 5.3.0 unknown mailer error 255
175
- anotherset['status'] = cv[1]
176
- anotherset['diagnosis'] ||= ''
177
- anotherset['diagnosis'] << ' ' << e
178
-
179
- elsif e.start_with?('Message ', 'Warning: ')
180
- # Message could not be delivered for too long
181
- # Warning: message still undelivered after 4 hours
182
- anotherset['diagnosis'] ||= ''
183
- anotherset['diagnosis'] << ' ' << e
184
- end
185
- end
186
- end
187
- else
188
- # Continued line of the value of Diagnostic-Code field
189
- next unless p.start_with?('Diagnostic-Code:')
190
- next unless cv = e.match(/\A[ \t]+(.+)\z/)
191
- v['diagnosis'] << ' ' << cv[1]
192
- havepassed[-1] = 'Diagnostic-Code: ' << e
193
- end
194
- end
195
- end # End of message/delivery-status
196
- end
197
- return nil unless recipients > 0
198
-
199
- dscontents.each do |e|
200
- # Set default values if each value is empty.
201
- e['lhost'] ||= permessage['rhost']
202
- permessage.each_key { |a| e[a] ||= permessage[a] || '' }
203
-
204
- e['agent'] = self.smtpagent
205
- e['command'] ||= commandtxt
206
- if e['command'].empty?
207
- e['command'] = 'EHLO' unless esmtpreply.empty?
208
- end
209
-
210
- if anotherset['diagnosis']
211
- # Copy alternative error message
212
- e['diagnosis'] = anotherset['diagnosis'] if e['diagnosis'] =~ /\A[ \t]+\z/
213
- e['diagnosis'] = anotherset['diagnosis'] unless e['diagnosis']
214
- e['diagnosis'] = anotherset['diagnosis'] if e['diagnosis'] =~ /\A\d+\z/
215
- end
216
- unless esmtpreply.empty?
217
- # Replace the error message in "diagnosis" with the ESMTP Reply
218
- r = esmtpreply.join(' ')
219
- e['diagnosis'] = r if r.size > e['diagnosis'].to_s.size
220
- end
221
- e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'])
222
-
223
- if anotherset['status']
224
- # Check alternative status code
225
- if e['status'].empty? || e['status'] !~ /\A[45][.]\d[.]\d\z/
226
- # Override alternative status code
227
- e['status'] = anotherset['status']
228
- end
229
- end
230
-
231
- unless e['recipient'] =~ /\A[^ ]+[@][^ ]+\z/
232
- # @example.jp, no local part
233
- if cv = e['diagnosis'].match(/[<]([^ ]+[@][^ ]+)[>]/)
234
- # Get email address from the value of Diagnostic-Code header
235
- e['recipient'] = cv[1]
236
- end
237
- end
238
- e.each_key { |a| e[a] ||= '' }
239
- end
240
-
241
- rfc822part = Sisimai::RFC5322.weedout(rfc822list)
242
- return { 'ds' => dscontents, 'rfc822' => rfc822part }
243
- end
244
-
245
- end
246
- end
247
- end
@@ -1,147 +0,0 @@
1
- module Sisimai::Bite::Email
2
- # Sisimai::Bite::Email::SurfControl parses a bounce email which created by
3
- # WebSense SurfControl.
4
- # Methods in the module are called from only Sisimai::Message.
5
- module SurfControl
6
- class << self
7
- # Imported from p5-Sisimail/lib/Sisimai/Bite/Email/SurfControl.pm
8
- require 'sisimai/bite/email'
9
-
10
- Indicators = Sisimai::Bite::Email.INDICATORS
11
- StartingOf = {
12
- message: ['Your message could not be sent.'],
13
- rfc822: ['Content-Type: message/rfc822'],
14
- }.freeze
15
-
16
- def description; return 'WebSense SurfControl'; end
17
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
18
- # X-SEF-ZeroHour-RefID: fgs=000000000
19
- # X-SEF-Processed: 0_0_0_000__2010_04_29_23_34_45
20
- # X-Mailer: SurfControl E-mail Filter
21
- def headerlist; return %w[x-sef-processed x-mailer]; end
22
-
23
- # Parse bounce messages from SurfControl
24
- # @param [Hash] mhead Message headers of a bounce email
25
- # @options mhead [String] from From header
26
- # @options mhead [String] date Date header
27
- # @options mhead [String] subject Subject header
28
- # @options mhead [Array] received Received headers
29
- # @options mhead [String] others Other required headers
30
- # @param [String] mbody Message body of a bounce email
31
- # @return [Hash, Nil] Bounce data list and message/rfc822
32
- # part or nil if it failed to parse or
33
- # the arguments are missing
34
- def scan(mhead, mbody)
35
- # :'from' => %r/ [(]Mail Delivery System[)]\z/,
36
- return nil unless mhead['x-sef-processed']
37
- return nil unless mhead['x-mailer']
38
- return nil unless mhead['x-mailer'] == 'SurfControl E-mail Filter'
39
-
40
- require 'sisimai/rfc1894'
41
- fieldtable = Sisimai::RFC1894.FIELDTABLE
42
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
43
- hasdivided = mbody.split("\n")
44
- havepassed = ['']
45
- rfc822list = [] # (Array) Each line in message/rfc822 part string
46
- blanklines = 0 # (Integer) The number of blank lines
47
- readcursor = 0 # (Integer) Points the current cursor position
48
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
49
- v = nil
50
-
51
- while e = hasdivided.shift do
52
- # Save the current line for the next loop
53
- havepassed << e
54
- p = havepassed[-2]
55
-
56
- if readcursor == 0
57
- # Beginning of the bounce message or delivery status part
58
- if e == StartingOf[:message][0]
59
- readcursor |= Indicators[:deliverystatus]
60
- next
61
- end
62
- end
63
-
64
- if (readcursor & Indicators[:'message-rfc822']) == 0
65
- # Beginning of the original message part
66
- if e == StartingOf[:rfc822][0]
67
- readcursor |= Indicators[:'message-rfc822']
68
- next
69
- end
70
- end
71
-
72
- if readcursor & Indicators[:'message-rfc822'] > 0
73
- # Inside of the original message part
74
- if e.empty?
75
- blanklines += 1
76
- break if blanklines > 1
77
- next
78
- end
79
- rfc822list << e
80
- else
81
- # Error message part
82
- next if (readcursor & Indicators[:deliverystatus]) == 0
83
- next if e.empty?
84
-
85
- # Your message could not be sent.
86
- # A transcript of the attempts to send the message follows.
87
- # The number of attempts made: 1
88
- # Addressed To: kijitora@example.com
89
- #
90
- # Thu 29 Apr 2010 23:34:45 +0900
91
- # Failed to send to identified host,
92
- # kijitora@example.com: [192.0.2.5], 550 kijitora@example.com... No such user
93
- # --- Message non-deliverable.
94
- v = dscontents[-1]
95
-
96
- if cv = e.match(/\AAddressed To:[ ]*([^ ]+?[@][^ ]+?)\z/)
97
- # Addressed To: kijitora@example.com
98
- if v['recipient']
99
- # There are multiple recipient addresses in the message body.
100
- dscontents << Sisimai::Bite.DELIVERYSTATUS
101
- v = dscontents[-1]
102
- end
103
- v['recipient'] = cv[1]
104
- recipients += 1
105
-
106
- elsif e =~ /\A(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)[ ,]/
107
- # Thu 29 Apr 2010 23:34:45 +0900
108
- v['date'] = e
109
-
110
- elsif cv = e.match(/\A[^ ]+[@][^ ]+:[ ]*\[(\d+[.]\d+[.]\d+[.]\d)\],[ ]*(.+)\z/)
111
- # kijitora@example.com: [192.0.2.5], 550 kijitora@example.com... No such user
112
- v['rhost'] = cv[1]
113
- v['diagnosis'] = cv[2]
114
- else
115
- # Fallback, parse RFC3464 headers.
116
- if f = Sisimai::RFC1894.match(e)
117
- # "e" matched with any field defined in RFC3464
118
- next unless o = Sisimai::RFC1894.field(e)
119
- next if o[1] == 'final-recipient'
120
- next unless fieldtable.key?(o[0])
121
- v[fieldtable[o[0]]] = o[2]
122
- else
123
- # Continued line of the value of Diagnostic-Code field
124
- next unless p.start_with?('Diagnostic-Code:')
125
- next unless cv = e.match(/\A[ \t]+(.+)\z/)
126
- v['diagnosis'] << ' ' << cv[1]
127
- havepassed[-1] = 'Diagnostic-Code: ' << e
128
- end
129
- end
130
- end
131
- end
132
- return nil unless recipients > 0
133
-
134
- dscontents.each do |e|
135
- e['agent'] = self.smtpagent
136
- e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'])
137
- e.each_key { |a| e[a] ||= '' }
138
- end
139
-
140
- rfc822part = Sisimai::RFC5322.weedout(rfc822list)
141
- return { 'ds' => dscontents, 'rfc822' => rfc822part }
142
- end
143
-
144
- end
145
- end
146
- end
147
-
@@ -1,115 +0,0 @@
1
- module Sisimai::Bite::Email
2
- # Sisimai::Bite::Email::UserDefined is an example module as a template to
3
- # implement your custom MTA module.
4
- module UserDefined
5
- class << self
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/Email/UserDefined.pm
7
- require 'sisimai/bite/email'
8
-
9
- Indicators = Sisimai::Bite::Email.INDICATORS
10
- MarkingsOf = {
11
- # MarkingsOf is a delimiter set of these sections:
12
- # message: The first line of a bounce message to be parsed.
13
- # error: The first line of an error message to get an error reason, recipient
14
- # addresses, or other bounce information.
15
- # rfc822: The first line of the original message.
16
- # endof: Fixed string ``__END_OF_EMAIL_MESSAGE__''
17
- message: %r/\A[ \t]+[-]+ Transcript of session follows [-]+\z/,
18
- error: %r/\A[.]+ while talking to .+[:]\z/,
19
- rfc822: %r{\AContent-Type:[ ]*(?:message/rfc822|text/rfc822-headers)\z},
20
- }.freeze
21
-
22
- def description; return 'Module description'; end
23
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
24
- def headerlist; return %w[x-some-userdefined-header]; end
25
-
26
- # @abstract Template for User-Defined MTA module
27
- # @param [Hash] mhead Message headers of a bounce email
28
- # @options mhead [String] from From header
29
- # @options mhead [String] date Date header
30
- # @options mhead [String] subject Subject header
31
- # @options mhead [Array] received Received headers
32
- # @options mhead [String] others Other required headers
33
- # @param [String] mbody Message body of a bounce email
34
- # @return [Hash, Nil] Bounce data list and message/rfc822
35
- # part or nil if it failed to parse or
36
- # the arguments are missing
37
- def scan(mhead, mbody)
38
- # 1. Check some value in mhead using regular expression or "==" operator
39
- # whether the bounce message should be parsed by this module or not.
40
- # - Matched 1 or more values: Proceed to the step 2.
41
- # - Did not matched: return nil
42
- #
43
- match = 0
44
- match += 1 if mhead['subject'].start_with?('Error Mail Report')
45
- match += 1 if mhead['from'].include?('Mail System')
46
- match += 1 if mhead['x-some-userdefined-header']
47
- return nil unless match > 0
48
-
49
- # 2. Parse message body(mbody) of the bounce message. See some modules
50
- # in lib/sisimai/bite/email directory to implement codes.
51
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
52
- hasdivided = mbody.split("\n")
53
- rfc822list = [] # (Array) Each line in message/rfc822 part string
54
- blanklines = 0 # (Integer) The number of blank lines
55
- readcursor = 0 # (Integer) Points the current cursor position
56
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
57
-
58
- while e = hasdivided.shift do
59
- if readcursor == 0
60
- # Beginning of the bounce message or delivery status part
61
- if e =~ MarkingsOf[:message]
62
- readcursor |= Indicators[:deliverystatus]
63
- next
64
- end
65
- end
66
-
67
- if (readcursor & Indicators[:'message-rfc822']) == 0
68
- # Beginning of the original message part
69
- if e =~ MarkingsOf[:rfc822]
70
- readcursor |= Indicators[:'message-rfc822']
71
- next
72
- end
73
- end
74
-
75
- if readcursor & Indicators[:'message-rfc822'] > 0
76
- # After "message/rfc822"
77
- if e.empty?
78
- blanklines += 1
79
- break if blanklines > 1
80
- next
81
- end
82
- rfc822list << e
83
- else
84
- # Before "message/rfc822"
85
- next if (readcursor & Indicators[:deliverystatus]) == 0
86
- next if e.empty?
87
- end
88
- end
89
-
90
- # The following code is dummy to be passed "make test".
91
- dscontents[0]['recipient'] = 'kijitora@example.jp'
92
- dscontents[0]['diagnosis'] = '550 something wrong'
93
- dscontents[0]['status'] = '5.1.1'
94
- dscontents[0]['spec'] = 'SMTP'
95
- dscontents[0]['date'] = 'Thu 29 Apr 2010 23:34:45 +0900'
96
- dscontents[0]['agent'] = self.smtpagent
97
- recipients = 1 if dscontents[0]['recipient']
98
-
99
- rfc822list << 'From: shironeko@example.org'
100
- rfc822list << 'Subject: Nyaaan'
101
- rfc822list << 'Message-Id: 000000000000@example.jp'
102
-
103
- # 3. Return nil when there is no recipient address which is failed to
104
- # delivery in the bounce message
105
- return nil unless recipients > 0
106
-
107
- # 4. Return the following variable.
108
- rfc822part = Sisimai::RFC5322.weedout(rfc822list)
109
- return { 'ds' => dscontents, 'rfc822' => rfc822part }
110
- end
111
-
112
- end
113
- end
114
- end
115
-