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,161 +0,0 @@
1
- module Sisimai::Bite::Email
2
- # Sisimai::Bite::Email::Yandex parses a bounce email which created by
3
- # Yandex.Mail. Methods in the module are called from only Sisimai::Message.
4
- module Yandex
5
- class << self
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/Email/Yandex.pm
7
- require 'sisimai/bite/email'
8
-
9
- Indicators = Sisimai::Bite::Email.INDICATORS
10
- StartingOf = {
11
- message: ['This is the mail system at host yandex.ru.'],
12
- rfc822: ['Content-Type: message/rfc822'],
13
- }.freeze
14
-
15
- def description; return 'Yandex.Mail: http://www.yandex.ru'; end
16
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
17
-
18
- # X-Yandex-Front: mxback1h.mail.yandex.net
19
- # X-Yandex-TimeMark: 1417885948
20
- # X-Yandex-Uniq: 92309766-f1c8-4bd4-92bc-657c75766587
21
- # X-Yandex-Spam: 1
22
- # X-Yandex-Forward: 10104c00ad0726da5f37374723b1e0c8
23
- # X-Yandex-Queue-ID: 367D79E130D
24
- # X-Yandex-Sender: rfc822; shironeko@yandex.example.com
25
- def headerlist; return %w[x-yandex-uniq]; end
26
-
27
- # Parse bounce messages from Yandex.Mail
28
- # @param [Hash] mhead Message headers of a bounce email
29
- # @options mhead [String] from From header
30
- # @options mhead [String] date Date header
31
- # @options mhead [String] subject Subject header
32
- # @options mhead [Array] received Received headers
33
- # @options mhead [String] others Other required headers
34
- # @param [String] mbody Message body of a bounce email
35
- # @return [Hash, Nil] Bounce data list and message/rfc822
36
- # part or nil if it failed to parse or
37
- # the arguments are missing
38
- def scan(mhead, mbody)
39
- return nil unless mhead['x-yandex-uniq']
40
- return nil unless mhead['from'] == 'mailer-daemon@yandex.ru'
41
-
42
- require 'sisimai/rfc1894'
43
- fieldtable = Sisimai::RFC1894.FIELDTABLE
44
- permessage = {} # (Hash) Store values of each Per-Message field
45
-
46
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
47
- hasdivided = mbody.split("\n")
48
- havepassed = ['']
49
- rfc822list = [] # (Array) Each line in message/rfc822 part string
50
- blanklines = 0 # (Integer) The number of blank lines
51
- readcursor = 0 # (Integer) Points the current cursor position
52
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
53
- commandset = [] # (Array) ``in reply to * command'' list
54
- v = nil
55
-
56
- while e = hasdivided.shift do
57
- # Save the current line for the next loop
58
- havepassed << e
59
- p = havepassed[-2]
60
-
61
- if readcursor == 0
62
- # Beginning of the bounce message or message/delivery-status part
63
- if e.start_with?(StartingOf[:message][0])
64
- readcursor |= Indicators[:deliverystatus]
65
- next
66
- end
67
- end
68
-
69
- if (readcursor & Indicators[:'message-rfc822']) == 0
70
- # Beginning of the original message part(message/rfc822)
71
- if e.start_with?(StartingOf[:rfc822][0])
72
- readcursor |= Indicators[:'message-rfc822']
73
- next
74
- end
75
- end
76
-
77
- if readcursor & Indicators[:'message-rfc822'] > 0
78
- # message/rfc822 OR text/rfc822-headers part
79
- if e.empty?
80
- blanklines += 1
81
- break if blanklines > 1
82
- next
83
- end
84
- rfc822list << e
85
- else
86
- # message/delivery-status part
87
- next if (readcursor & Indicators[:deliverystatus]) == 0
88
- next if e.empty?
89
-
90
- if f = Sisimai::RFC1894.match(e)
91
- # "e" matched with any field defined in RFC3464
92
- next unless o = Sisimai::RFC1894.field(e)
93
- v = dscontents[-1]
94
-
95
- if o[-1] == 'addr'
96
- # Final-Recipient: rfc822; kijitora@example.jp
97
- # X-Actual-Recipient: rfc822; kijitora@example.co.jp
98
- if o[0] == 'final-recipient'
99
- # Final-Recipient: rfc822; kijitora@example.jp
100
- if v['recipient']
101
- # There are multiple recipient addresses in the message body.
102
- dscontents << Sisimai::Bite.DELIVERYSTATUS
103
- v = dscontents[-1]
104
- end
105
- v['recipient'] = o[2]
106
- recipients += 1
107
- else
108
- # X-Actual-Recipient: rfc822; kijitora@example.co.jp
109
- v['alias'] = o[2]
110
- end
111
- elsif o[-1] == 'code'
112
- # Diagnostic-Code: SMTP; 550 5.1.1 <userunknown@example.jp>... User Unknown
113
- v['spec'] = o[1]
114
- v['diagnosis'] = o[2]
115
- else
116
- # Other DSN fields defined in RFC3464
117
- next unless fieldtable.key?(o[0])
118
- v[fieldtable[o[0]]] = o[2]
119
-
120
- next unless f == 1
121
- permessage[fieldtable[o[0]]] = o[2]
122
- end
123
- else
124
- # The line does not begin with a DSN field defined in RFC3464
125
- if cv = e.match(/[ \t][(]in reply to .*([A-Z]{4}).*/)
126
- # 5.1.1 <userunknown@example.co.jp>... User Unknown (in reply to RCPT TO
127
- commandset << cv[1]
128
-
129
- elsif cv = e.match(/([A-Z]{4})[ \t]*.*command[)]\z/)
130
- # to MAIL command)
131
- commandset << cv[1]
132
- else
133
- # Continued line of the value of Diagnostic-Code field
134
- next unless p.start_with?('Diagnostic-Code:')
135
- next unless cv = e.match(/\A[ \t]+(.+)\z/)
136
- v['diagnosis'] << ' ' << cv[1]
137
- havepassed[-1] = 'Diagnostic-Code: ' << e
138
- end
139
- end
140
- end # End of message/delivery-status
141
- end
142
- return nil unless recipients > 0
143
-
144
- dscontents.each do |e|
145
- # Set default values if each value is empty.
146
- e['lhost'] ||= permessage['rhost']
147
- permessage.each_key { |a| e[a] ||= permessage[a] || '' }
148
-
149
- e['command'] = commandset.shift || ''
150
- e['diagnosis'] = Sisimai::String.sweep(e['diagnosis'].tr("\n", ' '))
151
- e['agent'] = self.smtpagent
152
- end
153
-
154
- rfc822part = Sisimai::RFC5322.weedout(rfc822list)
155
- return { 'ds' => dscontents, 'rfc822' => rfc822part }
156
- end
157
-
158
- end
159
- end
160
- end
161
-
@@ -1,153 +0,0 @@
1
- module Sisimai::Bite::Email
2
- # Sisimai::Bite::Email::Zoho parses a bounce email which created by Zoho Mail.
3
- # Methods in the module are called from only Sisimai::Message.
4
- module Zoho
5
- class << self
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/Email/Zoho.pm
7
- require 'sisimai/bite/email'
8
-
9
- Indicators = Sisimai::Bite::Email.INDICATORS
10
- StartingOf = {
11
- message: ['This message was created automatically by mail delivery'],
12
- rfc822: ['from mail.zoho.com by mx.zohomail.com'],
13
- }.freeze
14
- MessagesOf = { 'expired' => ['Host not reachable'] }.freeze
15
-
16
- def description; return 'Zoho Mail: https://www.zoho.com'; end
17
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
18
-
19
- # X-ZohoMail: Si CHF_MF_NL SS_10 UW48 UB48 FMWL UW48 UB48 SGR3_1_09124_42
20
- # X-Zoho-Virus-Status: 2
21
- # X-Mailer: Zoho Mail
22
- def headerlist; return %w[x-zohomail]; end
23
-
24
- # Parse bounce messages from Zoho Mail
25
- # @param [Hash] mhead Message headers of a bounce email
26
- # @options mhead [String] from From header
27
- # @options mhead [String] date Date header
28
- # @options mhead [String] subject Subject header
29
- # @options mhead [Array] received Received headers
30
- # @options mhead [String] others Other required headers
31
- # @param [String] mbody Message body of a bounce email
32
- # @return [Hash, Nil] Bounce data list and message/rfc822
33
- # part or nil if it failed to parse or
34
- # the arguments are missing
35
- def scan(mhead, mbody)
36
- # :'from' => %r/mailer-daemon[@]mail[.]zoho[.]com\z/,
37
- # :'subject' => %r{\A(?:
38
- # Undelivered[ ]Mail[ ]Returned[ ]to[ ]Sender
39
- # |Mail[ ]Delivery[ ]Status[ ]Notification
40
- # )
41
- # }x,
42
- # :'x-mailer' => %r/\AZoho Mail\z/,
43
- return nil unless mhead['x-zohomail']
44
-
45
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
46
- hasdivided = mbody.split("\n")
47
- rfc822list = [] # (Array) Each line in message/rfc822 part string
48
- blanklines = 0 # (Integer) The number of blank lines
49
- readcursor = 0 # (Integer) Points the current cursor position
50
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
51
- qprintable = false
52
- v = nil
53
-
54
- while e = hasdivided.shift do
55
- if readcursor == 0
56
- # Beginning of the bounce message or delivery status part
57
- if e.start_with?(StartingOf[:message][0])
58
- readcursor |= Indicators[:deliverystatus]
59
- next
60
- end
61
- end
62
-
63
- if (readcursor & Indicators[:'message-rfc822']) == 0
64
- # Beginning of the original message part
65
- if e.include?(StartingOf[:rfc822][0])
66
- readcursor |= Indicators[:'message-rfc822']
67
- next
68
- end
69
- end
70
-
71
- if readcursor & Indicators[:'message-rfc822'] > 0
72
- # Inside of the original message part
73
- if e.empty?
74
- blanklines += 1
75
- break if blanklines > 1
76
- next
77
- end
78
- rfc822list << e
79
- else
80
- # Error message part
81
- next if (readcursor & Indicators[:deliverystatus]) == 0
82
- next if e.empty?
83
-
84
- # This message was created automatically by mail delivery software.
85
- # A message that you sent could not be delivered to one or more of its recip=
86
- # ients. This is a permanent error.=20
87
- #
88
- # kijitora@example.co.jp Invalid Address, ERROR_CODE :550, ERROR_CODE :5.1.=
89
- # 1 <kijitora@example.co.jp>... User Unknown
90
-
91
- # This message was created automatically by mail delivery software.
92
- # A message that you sent could not be delivered to one or more of its recipients. This is a permanent error.
93
- #
94
- # shironeko@example.org Invalid Address, ERROR_CODE :550, ERROR_CODE :Requested action not taken: mailbox unavailable
95
- v = dscontents[-1]
96
-
97
- if cv = e.match(/\A([^ ]+[@][^ ]+)[ \t]+(.+)\z/)
98
- # kijitora@example.co.jp Invalid Address, ERROR_CODE :550, ERROR_CODE :5.1.=
99
- if v['recipient']
100
- # There are multiple recipient addresses in the message body.
101
- dscontents << Sisimai::Bite.DELIVERYSTATUS
102
- v = dscontents[-1]
103
- end
104
- v['recipient'] = cv[1]
105
- v['diagnosis'] = cv[2]
106
-
107
- if v['diagnosis'].end_with?('=')
108
- # Quoted printable
109
- v['diagnosis'] = v['diagnosis'].chomp('=')
110
- qprintable = true
111
- end
112
- recipients += 1
113
-
114
- elsif cv = e.match(/\A\[Status: .+[<]([^ ]+[@][^ ]+)[>],/)
115
- # Expired
116
- # [Status: Error, Address: <kijitora@6kaku.example.co.jp>, ResponseCode 421, , Host not reachable.]
117
- if v['recipient']
118
- # There are multiple recipient addresses in the message body.
119
- dscontents << Sisimai::Bite.DELIVERYSTATUS
120
- v = dscontents[-1]
121
- end
122
- v['recipient'] = cv[1]
123
- v['diagnosis'] = e
124
- recipients += 1
125
- else
126
- # Continued line
127
- next unless qprintable
128
- v['diagnosis'] << e
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'].tr("\n", ' '))
137
-
138
- MessagesOf.each_key do |r|
139
- # Verify each regular expression of session errors
140
- next unless MessagesOf[r].any? { |a| e['diagnosis'].include?(a) }
141
- e['reason'] = r
142
- break
143
- end
144
- end
145
-
146
- rfc822part = Sisimai::RFC5322.weedout(rfc822list)
147
- return { 'ds' => dscontents, 'rfc822' => rfc822part }
148
- end
149
-
150
- end
151
- end
152
- end
153
-
@@ -1,36 +0,0 @@
1
- module Sisimai
2
- module Bite
3
- # Sisimai::Bite::JSON - Base class for Sisimai::Bite::JSON::*
4
- module JSON
5
- class << self
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/JSON.pm
7
- require 'sisimai/bite'
8
-
9
- def headerlist; return []; end
10
-
11
- # MTA list
12
- # @return [Array] MTA list with order
13
- def index
14
- return %w[SendGrid AmazonSES]
15
- end
16
-
17
- # Convert from JSON object to Sisimai::Message
18
- # @param [Hash] mhead Message header of a bounce email
19
- # @param [String] mbody Message body of a bounce email(JSON)
20
- # @return [Hash, Nil] Bounce data list and message/rfc822 part
21
- # or nil if it failed to parse or the
22
- # arguments are missing
23
- def scan; return nil; end
24
-
25
- # @abstract Adapt bounce object for Sisimai::Message format
26
- # @param [Hash] argvs bounce object returned from each email cloud
27
- # @return [Hash, Nil] Bounce data list and message/rfc822 part
28
- # or nil if it failed to parse or the
29
- # arguments are missing
30
- def adapt; return nil; end
31
-
32
- end
33
- end
34
- end
35
- end
36
-
@@ -1,242 +0,0 @@
1
- module Sisimai::Bite::JSON
2
- # Sisimai::Bite::JSON::AmazonSES parses a bounce object(JSON) which created
3
- # by Amazon Simple Email Service.
4
- # Methods in the module are called from only Sisimai::Message.
5
- module AmazonSES
6
- # Imported from p5-Sisimail/lib/Sisimai/Bite/JSON/AmazonSES.pm
7
- class << self
8
- require 'sisimai/bite/json'
9
-
10
- # https://docs.aws.amazon.com/en_us/ses/latest/DeveloperGuide/notification-contents.html
11
- BounceType = {
12
- 'Permanent' => {
13
- 'General' => '',
14
- 'NoEmail' => '',
15
- 'Suppressed' => '',
16
- },
17
- 'Transient' => {
18
- 'General' => '',
19
- 'MailboxFull' => 'mailboxfull',
20
- 'MessageTooLarge' => 'mesgtoobig',
21
- 'ContentRejected' => '',
22
- 'AttachmentRejected' => '',
23
- },
24
- }.freeze
25
-
26
- def smtpagent; return Sisimai::Bite.smtpagent(self); end
27
- def description; return 'Amazon SES(JSON): http://aws.amazon.com/ses/'; end
28
-
29
- # Parse bounce messages from Amazon SES(JSON)
30
- # @param [Hash] mhead Message headers of a bounce email
31
- # @options mhead [String] from From header
32
- # @options mhead [String] date Date header
33
- # @options mhead [String] subject Subject header
34
- # @options mhead [Array] received Received headers
35
- # @options mhead [String] others Other required headers
36
- # @param [String] mbody Message body of a bounce email
37
- # @return [Hash, Nil] Bounce data list and message/rfc822
38
- # part or nil if it failed to parse or
39
- # the arguments are missing
40
- # @since v4.20.0
41
- def scan(mhead, mbody)
42
- return nil unless mhead['x-amz-sns-message-id']
43
- return nil if mhead['x-amz-sns-message-id'].empty?
44
-
45
- hasdivided = mbody.split("\n")
46
- jsonstring = ''
47
- jsonthings = nil
48
- foldedline = false
49
-
50
- while e = hasdivided.shift do
51
- # Find JSON string from the message body
52
- next if e.empty?
53
- break if e == '--'
54
- break if e == '__END_OF_EMAIL_MESSAGE__'
55
-
56
- # The line starts with " ", continued from !\n.
57
- e.lstrip! if foldedline
58
- foldedline = false
59
-
60
- if e.end_with?('!')
61
- # ... long long line ...![\n]
62
- e.chomp!('!')
63
- foldedline = true
64
- end
65
- jsonstring << e
66
- end
67
-
68
- begin
69
- if RUBY_PLATFORM.start_with?('java')
70
- # java-based ruby environment like JRuby.
71
- require 'jrjackson'
72
- jsonobject = JrJackson::Json.load(jsonstring)
73
-
74
- # 'Message' => '{"notificationType":"Bounce",...
75
- jsonthings = JrJackson::Json.load(jsonobject['Message']) if jsonobject['Message']
76
- else
77
- # Matz' Ruby Implementation
78
- require 'oj'
79
- jsonobject = Oj.load(jsonstring)
80
-
81
- # 'Message' => '{"notificationType":"Bounce",...
82
- jsonthings = Oj.load(jsonobject['Message']) if jsonobject['Message']
83
- end
84
- jsonthings ||= jsonobject
85
-
86
- rescue StandardError => ce
87
- # Something wrong in decoding JSON
88
- warn ' ***warning: Failed to decode JSON: ' << ce.to_s
89
- return nil
90
- end
91
-
92
- return adapt(jsonthings)
93
- end
94
-
95
- # @abstract Adapt Amazon SES bounce object for Sisimai::Message format
96
- # @param [Hash] argvs bounce object(JSON) retrieved from Amazon SNS
97
- # @return [Hash, Nil] Bounce data list and message/rfc822 part or
98
- # nil if it failed to parse or the
99
- # arguments are missing
100
- # @since v4.20.0
101
- def adapt(argvs)
102
- return nil unless argvs.is_a? Hash
103
- return nil if argvs.empty?
104
- return nil unless argvs.key?('notificationType')
105
-
106
- dscontents = [Sisimai::Bite.DELIVERYSTATUS]
107
- rfc822head = {} # (Hash) Check flags for headers in RFC822 part
108
- recipients = 0 # (Integer) The number of 'Final-Recipient' header
109
- labeltable = {
110
- 'Bounce' => 'bouncedRecipients',
111
- 'Complaint' => 'complainedRecipients',
112
- }
113
- v = nil
114
-
115
- if %w[Bounce Complaint].index(argvs['notificationType'])
116
- # { "notificationType":"Bounce", "bounce": { "bounceType":"Permanent",...
117
- o = argvs[argvs['notificationType'].downcase].dup
118
- r = o[labeltable[argvs['notificationType']]] || []
119
-
120
- while e = r.shift do
121
- # 'bouncedRecipients' => [ { 'emailAddress' => 'bounce@si...' }, ... ]
122
- # 'complainedRecipients' => [ { 'emailAddress' => 'complaint@si...' }, ... ]
123
- next unless Sisimai::RFC5322.is_emailaddress(e['emailAddress'])
124
-
125
- v = dscontents[-1]
126
- if v['recipient']
127
- # There are multiple recipient addresses in the message body.
128
- dscontents << Sisimai::Bite.DELIVERYSTATUS
129
- v = dscontents[-1]
130
- end
131
- recipients += 1
132
- v['recipient'] = e['emailAddress']
133
-
134
- if argvs['notificationType'] == 'Bounce'
135
- # 'bouncedRecipients => [ {
136
- # 'emailAddress' => 'bounce@simulator.amazonses.com',
137
- # 'action' => 'failed',
138
- # 'status' => '5.1.1',
139
- # 'diagnosticCode' => 'smtp; 550 5.1.1 user unknown'
140
- # }, ... ]
141
- v['action'] = e['action']
142
- v['status'] = e['status']
143
-
144
- if cv = e['diagnosticCode'].match(/\A(.+?);[ ]*(.+)\z/)
145
- # Diagnostic-Code: SMTP; 550 5.1.1 <userunknown@example.jp>... User Unknown
146
- v['spec'] = cv[1].upcase
147
- v['diagnosis'] = cv[2]
148
- else
149
- v['diagnosis'] = e['diagnosticCode']
150
- end
151
-
152
- # 'reportingMTA' => 'dsn; a27-23.smtp-out.us-west-2.amazonses.com',
153
- if cv = o['reportingMTA'].match(/\Adsn;[ ](.+)\z/) then v['lhost'] = cv[1] end
154
-
155
- if BounceType.key?(o['bounceType']) &&
156
- BounceType[o['bounceType']].key?(o['bounceSubType'])
157
- # 'bounce' => {
158
- # 'bounceType' => 'Permanent',
159
- # 'bounceSubType' => 'General'
160
- # },
161
- v['reason'] = BounceType[o['bounceType']][o['bounceSubType']]
162
- end
163
- else
164
- # 'complainedRecipients' => [ {
165
- # 'emailAddress' => 'complaint@simulator.amazonses.com' }, ... ],
166
- v['reason'] = 'feedback'
167
- v['feedbacktype'] = o['complaintFeedbackType'] || ''
168
- end
169
-
170
- v['date'] = o['timestamp'] || argvs['mail']['timestamp']
171
- v['date'].sub!(/[.]\d+Z\z/, '')
172
- end
173
- elsif argvs['notificationType'] == 'Delivery'
174
- # { "notificationType":"Delivery", "delivery": { ...
175
- o = argvs['delivery'].dup
176
- r = o['recipients'] || []
177
-
178
- while e = r.shift do
179
- # 'delivery' => {
180
- # 'timestamp' => '2016-11-23T12:01:03.512Z',
181
- # 'processingTimeMillis' => 3982,
182
- # 'reportingMTA' => 'a27-29.smtp-out.us-west-2.amazonses.com',
183
- # 'recipients' => [
184
- # 'success@simulator.amazonses.com'
185
- # ],
186
- # 'smtpResponse' => '250 2.6.0 Message received'
187
- # },
188
- next unless Sisimai::RFC5322.is_emailaddress(e)
189
-
190
- v = dscontents[-1]
191
- if v['recipient']
192
- # There are multiple recipient addresses in the message body.
193
- dscontents << Sisimai::Bite.DELIVERYSTATUS
194
- v = dscontents[-1]
195
- end
196
- recipients += 1
197
- v['recipient'] = e
198
- v['lhost'] = o['reportingMTA'] || ''
199
- v['diagnosis'] = o['smtpResponse'] || ''
200
- v['status'] = Sisimai::SMTP::Status.find(v['diagnosis']) || ''
201
- v['replycode'] = Sisimai::SMTP::Reply.find(v['diagnosis']) || ''
202
- v['reason'] = 'delivered'
203
- v['action'] = 'deliverable'
204
-
205
- v['date'] = o['timestamp'] || argvs['mail']['timestamp']
206
- v['date'].sub!(/[.]\d+Z\z/, '')
207
- end
208
- else
209
- # The value of "notificationType" is not any of "Bounce", "Complaint",
210
- # or "Delivery".
211
- return nil
212
- end
213
- return nil unless recipients > 0
214
-
215
- dscontents.each do |e|
216
- e['agent'] = self.smtpagent
217
- end
218
-
219
- if argvs['mail']['headers']
220
- # "headersTruncated":false,
221
- # "headers":[ { ...
222
- argvs['mail']['headers'].each do |e|
223
- # 'headers' => [ { 'name' => 'From', 'value' => 'neko@nyaan.jp' }, ... ],
224
- next unless %w[From To Subject Message-ID Date].index(e['name'])
225
- rfc822head[e['name'].downcase] = e['value']
226
- end
227
- end
228
-
229
- unless rfc822head['message-id']
230
- # Try to get the value of "Message-Id".
231
- if argvs['mail']['messageId']
232
- # 'messageId' => '01010157e48f9b9b-891e9a0e-9c9d-4773-9bfe-608f2ef4756d-000000'
233
- rfc822head['message-id'] = argvs['mail']['messageId']
234
- end
235
- end
236
- return { 'ds' => dscontents, 'rfc822' => rfc822head }
237
- end
238
-
239
- end
240
- end
241
- end
242
-