sisimai 4.16.0-java

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

Potentially problematic release.


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

Files changed (574) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +182 -0
  5. data/.travis.yml +18 -0
  6. data/ANALYTICAL-PRECISION +56 -0
  7. data/Changes +36 -0
  8. data/Developers.mk +129 -0
  9. data/Gemfile +15 -0
  10. data/LICENSE +25 -0
  11. data/Makefile +70 -0
  12. data/README.md +361 -0
  13. data/Rakefile +12 -0
  14. data/Repository.mk +69 -0
  15. data/appveyor.yml +23 -0
  16. data/bin/console +14 -0
  17. data/bin/setup +7 -0
  18. data/lib/sisimai.rb +95 -0
  19. data/lib/sisimai/address.rb +224 -0
  20. data/lib/sisimai/arf.rb +338 -0
  21. data/lib/sisimai/data.rb +409 -0
  22. data/lib/sisimai/data/json.rb +40 -0
  23. data/lib/sisimai/data/yaml.rb +32 -0
  24. data/lib/sisimai/datetime.rb +511 -0
  25. data/lib/sisimai/mail.rb +82 -0
  26. data/lib/sisimai/mail/maildir.rb +82 -0
  27. data/lib/sisimai/mail/mbox.rb +69 -0
  28. data/lib/sisimai/mail/stdin.rb +53 -0
  29. data/lib/sisimai/mda.rb +152 -0
  30. data/lib/sisimai/message.rb +525 -0
  31. data/lib/sisimai/mime.rb +127 -0
  32. data/lib/sisimai/msp.rb +54 -0
  33. data/lib/sisimai/msp/de/einsundeins.rb +174 -0
  34. data/lib/sisimai/msp/de/gmx.rb +197 -0
  35. data/lib/sisimai/msp/jp/biglobe.rb +179 -0
  36. data/lib/sisimai/msp/jp/ezweb.rb +292 -0
  37. data/lib/sisimai/msp/jp/kddi.rb +195 -0
  38. data/lib/sisimai/msp/ru/mailru.rb +306 -0
  39. data/lib/sisimai/msp/ru/yandex.rb +241 -0
  40. data/lib/sisimai/msp/uk/messagelabs.rb +250 -0
  41. data/lib/sisimai/msp/us/amazonses.rb +248 -0
  42. data/lib/sisimai/msp/us/amazonworkmail.rb +224 -0
  43. data/lib/sisimai/msp/us/aol.rb +234 -0
  44. data/lib/sisimai/msp/us/bigfoot.rb +243 -0
  45. data/lib/sisimai/msp/us/facebook.rb +306 -0
  46. data/lib/sisimai/msp/us/google.rb +357 -0
  47. data/lib/sisimai/msp/us/office365.rb +273 -0
  48. data/lib/sisimai/msp/us/outlook.rb +242 -0
  49. data/lib/sisimai/msp/us/receivingses.rb +247 -0
  50. data/lib/sisimai/msp/us/sendgrid.rb +257 -0
  51. data/lib/sisimai/msp/us/verizon.rb +311 -0
  52. data/lib/sisimai/msp/us/yahoo.rb +178 -0
  53. data/lib/sisimai/msp/us/zoho.rb +198 -0
  54. data/lib/sisimai/mta.rb +54 -0
  55. data/lib/sisimai/mta/activehunter.rb +155 -0
  56. data/lib/sisimai/mta/apachejames.rb +194 -0
  57. data/lib/sisimai/mta/courier.rb +307 -0
  58. data/lib/sisimai/mta/domino.rb +209 -0
  59. data/lib/sisimai/mta/exchange.rb +314 -0
  60. data/lib/sisimai/mta/exim.rb +549 -0
  61. data/lib/sisimai/mta/imailserver.rb +227 -0
  62. data/lib/sisimai/mta/interscanmss.rb +167 -0
  63. data/lib/sisimai/mta/mailfoundry.rb +173 -0
  64. data/lib/sisimai/mta/mailmarshalsmtp.rb +206 -0
  65. data/lib/sisimai/mta/mcafee.rb +201 -0
  66. data/lib/sisimai/mta/messagingserver.rb +241 -0
  67. data/lib/sisimai/mta/mfilter.rb +190 -0
  68. data/lib/sisimai/mta/mxlogic.rb +283 -0
  69. data/lib/sisimai/mta/notes.rb +206 -0
  70. data/lib/sisimai/mta/opensmtpd.rb +225 -0
  71. data/lib/sisimai/mta/postfix.rb +306 -0
  72. data/lib/sisimai/mta/qmail.rb +335 -0
  73. data/lib/sisimai/mta/sendmail.rb +317 -0
  74. data/lib/sisimai/mta/surfcontrol.rb +193 -0
  75. data/lib/sisimai/mta/userdefined.rb +148 -0
  76. data/lib/sisimai/mta/v5sendmail.rb +232 -0
  77. data/lib/sisimai/mta/x1.rb +156 -0
  78. data/lib/sisimai/mta/x2.rb +157 -0
  79. data/lib/sisimai/mta/x3.rb +171 -0
  80. data/lib/sisimai/mta/x4.rb +365 -0
  81. data/lib/sisimai/mta/x5.rb +208 -0
  82. data/lib/sisimai/order.rb +220 -0
  83. data/lib/sisimai/reason.rb +234 -0
  84. data/lib/sisimai/reason/blocked.rb +105 -0
  85. data/lib/sisimai/reason/contenterror.rb +53 -0
  86. data/lib/sisimai/reason/exceedlimit.rb +60 -0
  87. data/lib/sisimai/reason/expired.rb +53 -0
  88. data/lib/sisimai/reason/filtered.rb +98 -0
  89. data/lib/sisimai/reason/hasmoved.rb +45 -0
  90. data/lib/sisimai/reason/hostunknown.rb +79 -0
  91. data/lib/sisimai/reason/mailboxfull.rb +118 -0
  92. data/lib/sisimai/reason/mailererror.rb +55 -0
  93. data/lib/sisimai/reason/mesgtoobig.rb +82 -0
  94. data/lib/sisimai/reason/networkerror.rb +58 -0
  95. data/lib/sisimai/reason/norelaying.rb +71 -0
  96. data/lib/sisimai/reason/notaccept.rb +63 -0
  97. data/lib/sisimai/reason/onhold.rb +45 -0
  98. data/lib/sisimai/reason/rejected.rb +101 -0
  99. data/lib/sisimai/reason/securityerror.rb +72 -0
  100. data/lib/sisimai/reason/spamdetected.rb +172 -0
  101. data/lib/sisimai/reason/suspend.rb +58 -0
  102. data/lib/sisimai/reason/systemerror.rb +69 -0
  103. data/lib/sisimai/reason/systemfull.rb +45 -0
  104. data/lib/sisimai/reason/toomanyconn.rb +73 -0
  105. data/lib/sisimai/reason/userunknown.rb +194 -0
  106. data/lib/sisimai/rfc2606.rb +24 -0
  107. data/lib/sisimai/rfc3464.rb +497 -0
  108. data/lib/sisimai/rfc3834.rb +150 -0
  109. data/lib/sisimai/rfc5322.rb +204 -0
  110. data/lib/sisimai/rhost.rb +47 -0
  111. data/lib/sisimai/rhost/googleapps.rb +237 -0
  112. data/lib/sisimai/smtp.rb +58 -0
  113. data/lib/sisimai/smtp/reply.rb +84 -0
  114. data/lib/sisimai/smtp/status.rb +758 -0
  115. data/lib/sisimai/string.rb +65 -0
  116. data/lib/sisimai/time.rb +11 -0
  117. data/lib/sisimai/version.rb +4 -0
  118. data/set-of-emails/README.md +35 -0
  119. data/set-of-emails/mailbox/mbox-0 +2467 -0
  120. data/set-of-emails/mailbox/mbox-1 +71 -0
  121. data/set-of-emails/maildir/bsd/README.md +261 -0
  122. data/set-of-emails/maildir/bsd/activehunter-01.eml +54 -0
  123. data/set-of-emails/maildir/bsd/activehunter-02.eml +53 -0
  124. data/set-of-emails/maildir/bsd/apachejames-01.eml +46 -0
  125. data/set-of-emails/maildir/bsd/arf-01.eml +66 -0
  126. data/set-of-emails/maildir/bsd/arf-02.eml +68 -0
  127. data/set-of-emails/maildir/bsd/arf-03.eml +56 -0
  128. data/set-of-emails/maildir/bsd/arf-04.eml +89 -0
  129. data/set-of-emails/maildir/bsd/arf-05.eml +82 -0
  130. data/set-of-emails/maildir/bsd/arf-06.eml +166 -0
  131. data/set-of-emails/maildir/bsd/arf-07.eml +59 -0
  132. data/set-of-emails/maildir/bsd/arf-08.eml +103 -0
  133. data/set-of-emails/maildir/bsd/arf-09.eml +104 -0
  134. data/set-of-emails/maildir/bsd/arf-10.eml +56 -0
  135. data/set-of-emails/maildir/bsd/arf-11.eml +37 -0
  136. data/set-of-emails/maildir/bsd/arf-12.eml +40 -0
  137. data/set-of-emails/maildir/bsd/arf-13.eml +76 -0
  138. data/set-of-emails/maildir/bsd/arf-14.eml +333 -0
  139. data/set-of-emails/maildir/bsd/arf-15.eml +66 -0
  140. data/set-of-emails/maildir/bsd/courier-01.eml +79 -0
  141. data/set-of-emails/maildir/bsd/courier-02.eml +83 -0
  142. data/set-of-emails/maildir/bsd/courier-03.eml +85 -0
  143. data/set-of-emails/maildir/bsd/courier-04.eml +87 -0
  144. data/set-of-emails/maildir/bsd/de-einsundeins-01.eml +38 -0
  145. data/set-of-emails/maildir/bsd/de-gmx-01.eml +52 -0
  146. data/set-of-emails/maildir/bsd/de-gmx-02.eml +51 -0
  147. data/set-of-emails/maildir/bsd/de-gmx-03.eml +56 -0
  148. data/set-of-emails/maildir/bsd/de-gmx-04.eml +51 -0
  149. data/set-of-emails/maildir/bsd/domino-01.eml +33 -0
  150. data/set-of-emails/maildir/bsd/domino-02.eml +83 -0
  151. data/set-of-emails/maildir/bsd/exchange-01.eml +31 -0
  152. data/set-of-emails/maildir/bsd/exchange-02.eml +67 -0
  153. data/set-of-emails/maildir/bsd/exchange-03.eml +52 -0
  154. data/set-of-emails/maildir/bsd/exchange-04.eml +28 -0
  155. data/set-of-emails/maildir/bsd/exchange-05.eml +56 -0
  156. data/set-of-emails/maildir/bsd/exchange-06.eml +151 -0
  157. data/set-of-emails/maildir/bsd/exim-01.eml +46 -0
  158. data/set-of-emails/maildir/bsd/exim-02.eml +41 -0
  159. data/set-of-emails/maildir/bsd/exim-03.eml +42 -0
  160. data/set-of-emails/maildir/bsd/exim-04.eml +46 -0
  161. data/set-of-emails/maildir/bsd/exim-05.eml +49 -0
  162. data/set-of-emails/maildir/bsd/exim-06.eml +44 -0
  163. data/set-of-emails/maildir/bsd/exim-07.eml +28 -0
  164. data/set-of-emails/maildir/bsd/exim-08.eml +42 -0
  165. data/set-of-emails/maildir/bsd/exim-09.eml +169 -0
  166. data/set-of-emails/maildir/bsd/exim-10.eml +718 -0
  167. data/set-of-emails/maildir/bsd/exim-11.eml +718 -0
  168. data/set-of-emails/maildir/bsd/exim-12.eml +75 -0
  169. data/set-of-emails/maildir/bsd/exim-13.eml +145 -0
  170. data/set-of-emails/maildir/bsd/exim-14.eml +32 -0
  171. data/set-of-emails/maildir/bsd/exim-15.eml +49 -0
  172. data/set-of-emails/maildir/bsd/exim-16.eml +98 -0
  173. data/set-of-emails/maildir/bsd/exim-17.eml +50 -0
  174. data/set-of-emails/maildir/bsd/exim-18.eml +96 -0
  175. data/set-of-emails/maildir/bsd/exim-19.eml +52 -0
  176. data/set-of-emails/maildir/bsd/exim-20.eml +159 -0
  177. data/set-of-emails/maildir/bsd/exim-21.eml +150 -0
  178. data/set-of-emails/maildir/bsd/exim-22.eml +50 -0
  179. data/set-of-emails/maildir/bsd/exim-23.eml +57 -0
  180. data/set-of-emails/maildir/bsd/exim-24.eml +107 -0
  181. data/set-of-emails/maildir/bsd/exim-25.eml +18 -0
  182. data/set-of-emails/maildir/bsd/exim-26.eml +111 -0
  183. data/set-of-emails/maildir/bsd/exim-27.eml +120 -0
  184. data/set-of-emails/maildir/bsd/exim-28.eml +148 -0
  185. data/set-of-emails/maildir/bsd/google-apps-01.eml +66 -0
  186. data/set-of-emails/maildir/bsd/imailserver-01.eml +27 -0
  187. data/set-of-emails/maildir/bsd/imailserver-02.eml +36 -0
  188. data/set-of-emails/maildir/bsd/imailserver-03.eml +28 -0
  189. data/set-of-emails/maildir/bsd/imailserver-04.eml +15 -0
  190. data/set-of-emails/maildir/bsd/imailserver-05.eml +92 -0
  191. data/set-of-emails/maildir/bsd/imailserver-06.eml +29 -0
  192. data/set-of-emails/maildir/bsd/interscanmss-01.eml +49 -0
  193. data/set-of-emails/maildir/bsd/interscanmss-02.eml +259 -0
  194. data/set-of-emails/maildir/bsd/jp-biglobe-01.eml +43 -0
  195. data/set-of-emails/maildir/bsd/jp-ezweb-01.eml +36 -0
  196. data/set-of-emails/maildir/bsd/jp-ezweb-02.eml +65 -0
  197. data/set-of-emails/maildir/bsd/jp-ezweb-03.eml +35 -0
  198. data/set-of-emails/maildir/bsd/jp-ezweb-04.eml +38 -0
  199. data/set-of-emails/maildir/bsd/jp-ezweb-05.eml +38 -0
  200. data/set-of-emails/maildir/bsd/jp-ezweb-06.eml +33 -0
  201. data/set-of-emails/maildir/bsd/jp-kddi-01.eml +49 -0
  202. data/set-of-emails/maildir/bsd/jp-kddi-02.eml +54 -0
  203. data/set-of-emails/maildir/bsd/jp-kddi-03.eml +54 -0
  204. data/set-of-emails/maildir/bsd/mailfoundry-01.eml +50 -0
  205. data/set-of-emails/maildir/bsd/mailfoundry-02.eml +49 -0
  206. data/set-of-emails/maildir/bsd/mailmarshalsmtp-01.eml +43 -0
  207. data/set-of-emails/maildir/bsd/mcafee-01.eml +63 -0
  208. data/set-of-emails/maildir/bsd/mcafee-02.eml +65 -0
  209. data/set-of-emails/maildir/bsd/mcafee-03.eml +59 -0
  210. data/set-of-emails/maildir/bsd/messagingserver-01.eml +102 -0
  211. data/set-of-emails/maildir/bsd/messagingserver-02.eml +72 -0
  212. data/set-of-emails/maildir/bsd/messagingserver-03.eml +70 -0
  213. data/set-of-emails/maildir/bsd/messagingserver-04.eml +102 -0
  214. data/set-of-emails/maildir/bsd/messagingserver-05.eml +98 -0
  215. data/set-of-emails/maildir/bsd/messagingserver-06.eml +101 -0
  216. data/set-of-emails/maildir/bsd/messagingserver-07.eml +129 -0
  217. data/set-of-emails/maildir/bsd/mfilter-01.eml +49 -0
  218. data/set-of-emails/maildir/bsd/mfilter-02.eml +48 -0
  219. data/set-of-emails/maildir/bsd/mfilter-03.eml +43 -0
  220. data/set-of-emails/maildir/bsd/mxlogic-01.eml +47 -0
  221. data/set-of-emails/maildir/bsd/mxlogic-02.eml +44 -0
  222. data/set-of-emails/maildir/bsd/mxlogic-03.eml +46 -0
  223. data/set-of-emails/maildir/bsd/notes-01.eml +42 -0
  224. data/set-of-emails/maildir/bsd/notes-02.eml +42 -0
  225. data/set-of-emails/maildir/bsd/notes-03.eml +38 -0
  226. data/set-of-emails/maildir/bsd/notes-04.eml +181 -0
  227. data/set-of-emails/maildir/bsd/opensmtpd-01.eml +33 -0
  228. data/set-of-emails/maildir/bsd/opensmtpd-02.eml +33 -0
  229. data/set-of-emails/maildir/bsd/opensmtpd-03.eml +36 -0
  230. data/set-of-emails/maildir/bsd/opensmtpd-04.eml +40 -0
  231. data/set-of-emails/maildir/bsd/opensmtpd-05.eml +36 -0
  232. data/set-of-emails/maildir/bsd/postfix-01.eml +60 -0
  233. data/set-of-emails/maildir/bsd/postfix-02.eml +78 -0
  234. data/set-of-emails/maildir/bsd/postfix-03.eml +71 -0
  235. data/set-of-emails/maildir/bsd/postfix-04.eml +89 -0
  236. data/set-of-emails/maildir/bsd/postfix-05.eml +78 -0
  237. data/set-of-emails/maildir/bsd/postfix-06.eml +72 -0
  238. data/set-of-emails/maildir/bsd/postfix-07.eml +74 -0
  239. data/set-of-emails/maildir/bsd/postfix-08.eml +78 -0
  240. data/set-of-emails/maildir/bsd/postfix-09.eml +76 -0
  241. data/set-of-emails/maildir/bsd/postfix-10.eml +73 -0
  242. data/set-of-emails/maildir/bsd/postfix-11.eml +86 -0
  243. data/set-of-emails/maildir/bsd/postfix-12.eml +71 -0
  244. data/set-of-emails/maildir/bsd/postfix-13.eml +81 -0
  245. data/set-of-emails/maildir/bsd/postfix-14.eml +68 -0
  246. data/set-of-emails/maildir/bsd/postfix-15.eml +69 -0
  247. data/set-of-emails/maildir/bsd/postfix-16.eml +73 -0
  248. data/set-of-emails/maildir/bsd/postfix-17.eml +68 -0
  249. data/set-of-emails/maildir/bsd/postfix-18.eml +121 -0
  250. data/set-of-emails/maildir/bsd/postfix-19.eml +105 -0
  251. data/set-of-emails/maildir/bsd/postfix-20.eml +231 -0
  252. data/set-of-emails/maildir/bsd/postfix-21.eml +60 -0
  253. data/set-of-emails/maildir/bsd/qmail-01.eml +40 -0
  254. data/set-of-emails/maildir/bsd/qmail-02.eml +35 -0
  255. data/set-of-emails/maildir/bsd/qmail-03.eml +22 -0
  256. data/set-of-emails/maildir/bsd/qmail-04.eml +31 -0
  257. data/set-of-emails/maildir/bsd/qmail-05.eml +31 -0
  258. data/set-of-emails/maildir/bsd/qmail-06.eml +39 -0
  259. data/set-of-emails/maildir/bsd/qmail-07.eml +22 -0
  260. data/set-of-emails/maildir/bsd/qmail-08.eml +23 -0
  261. data/set-of-emails/maildir/bsd/qmail-09.eml +103 -0
  262. data/set-of-emails/maildir/bsd/rfc3464-01.eml +60 -0
  263. data/set-of-emails/maildir/bsd/rfc3464-02.eml +43 -0
  264. data/set-of-emails/maildir/bsd/rfc3464-03.eml +40 -0
  265. data/set-of-emails/maildir/bsd/rfc3464-04.eml +50 -0
  266. data/set-of-emails/maildir/bsd/rfc3464-05.eml +63 -0
  267. data/set-of-emails/maildir/bsd/rfc3464-06.eml +48 -0
  268. data/set-of-emails/maildir/bsd/rfc3464-07.eml +88 -0
  269. data/set-of-emails/maildir/bsd/rfc3464-08.eml +70 -0
  270. data/set-of-emails/maildir/bsd/rfc3464-09.eml +93 -0
  271. data/set-of-emails/maildir/bsd/rfc3464-10.eml +467 -0
  272. data/set-of-emails/maildir/bsd/rfc3464-11.eml +1171 -0
  273. data/set-of-emails/maildir/bsd/rfc3464-12.eml +101 -0
  274. data/set-of-emails/maildir/bsd/rfc3464-13.eml +131 -0
  275. data/set-of-emails/maildir/bsd/rfc3464-14.eml +121 -0
  276. data/set-of-emails/maildir/bsd/rfc3464-15.eml +144 -0
  277. data/set-of-emails/maildir/bsd/rfc3464-16.eml +36 -0
  278. data/set-of-emails/maildir/bsd/rfc3464-17.eml +109 -0
  279. data/set-of-emails/maildir/bsd/rfc3464-18.eml +149 -0
  280. data/set-of-emails/maildir/bsd/rfc3464-19.eml +65 -0
  281. data/set-of-emails/maildir/bsd/rfc3464-20.eml +145 -0
  282. data/set-of-emails/maildir/bsd/rfc3464-21.eml +146 -0
  283. data/set-of-emails/maildir/bsd/rfc3464-22.eml +105 -0
  284. data/set-of-emails/maildir/bsd/rfc3464-23.eml +21 -0
  285. data/set-of-emails/maildir/bsd/rfc3464-24.eml +27 -0
  286. data/set-of-emails/maildir/bsd/rfc3464-25.eml +33 -0
  287. data/set-of-emails/maildir/bsd/rfc3464-26.eml +98 -0
  288. data/set-of-emails/maildir/bsd/rfc3464-27.eml +180 -0
  289. data/set-of-emails/maildir/bsd/rfc3464-28.eml +122 -0
  290. data/set-of-emails/maildir/bsd/rfc3834-01.eml +37 -0
  291. data/set-of-emails/maildir/bsd/rfc3834-02.eml +51 -0
  292. data/set-of-emails/maildir/bsd/rfc3834-03.eml +33 -0
  293. data/set-of-emails/maildir/bsd/ru-mailru-01.eml +54 -0
  294. data/set-of-emails/maildir/bsd/ru-mailru-02.eml +54 -0
  295. data/set-of-emails/maildir/bsd/ru-mailru-03.eml +62 -0
  296. data/set-of-emails/maildir/bsd/ru-mailru-04.eml +54 -0
  297. data/set-of-emails/maildir/bsd/ru-yandex-01.eml +102 -0
  298. data/set-of-emails/maildir/bsd/ru-yandex-02.eml +113 -0
  299. data/set-of-emails/maildir/bsd/ru-yandex-03.eml +101 -0
  300. data/set-of-emails/maildir/bsd/sendmail-01.eml +70 -0
  301. data/set-of-emails/maildir/bsd/sendmail-02.eml +82 -0
  302. data/set-of-emails/maildir/bsd/sendmail-03.eml +76 -0
  303. data/set-of-emails/maildir/bsd/sendmail-04.eml +63 -0
  304. data/set-of-emails/maildir/bsd/sendmail-05.eml +64 -0
  305. data/set-of-emails/maildir/bsd/sendmail-06.eml +67 -0
  306. data/set-of-emails/maildir/bsd/sendmail-07.eml +65 -0
  307. data/set-of-emails/maildir/bsd/sendmail-08.eml +62 -0
  308. data/set-of-emails/maildir/bsd/sendmail-09.eml +60 -0
  309. data/set-of-emails/maildir/bsd/sendmail-10.eml +82 -0
  310. data/set-of-emails/maildir/bsd/sendmail-11.eml +60 -0
  311. data/set-of-emails/maildir/bsd/sendmail-12.eml +62 -0
  312. data/set-of-emails/maildir/bsd/sendmail-13.eml +66 -0
  313. data/set-of-emails/maildir/bsd/sendmail-14.eml +64 -0
  314. data/set-of-emails/maildir/bsd/sendmail-15.eml +60 -0
  315. data/set-of-emails/maildir/bsd/sendmail-16.eml +69 -0
  316. data/set-of-emails/maildir/bsd/sendmail-17.eml +68 -0
  317. data/set-of-emails/maildir/bsd/sendmail-18.eml +64 -0
  318. data/set-of-emails/maildir/bsd/sendmail-19.eml +71 -0
  319. data/set-of-emails/maildir/bsd/sendmail-20.eml +120 -0
  320. data/set-of-emails/maildir/bsd/sendmail-21.eml +69 -0
  321. data/set-of-emails/maildir/bsd/sendmail-22.eml +73 -0
  322. data/set-of-emails/maildir/bsd/sendmail-23.eml +137 -0
  323. data/set-of-emails/maildir/bsd/sendmail-24.eml +66 -0
  324. data/set-of-emails/maildir/bsd/sendmail-25.eml +70 -0
  325. data/set-of-emails/maildir/bsd/sendmail-26.eml +71 -0
  326. data/set-of-emails/maildir/bsd/sendmail-27.eml +69 -0
  327. data/set-of-emails/maildir/bsd/sendmail-28.eml +69 -0
  328. data/set-of-emails/maildir/bsd/sendmail-29.eml +70 -0
  329. data/set-of-emails/maildir/bsd/sendmail-30.eml +68 -0
  330. data/set-of-emails/maildir/bsd/sendmail-31.eml +80 -0
  331. data/set-of-emails/maildir/bsd/sendmail-32.eml +71 -0
  332. data/set-of-emails/maildir/bsd/sendmail-33.eml +71 -0
  333. data/set-of-emails/maildir/bsd/sendmail-34.eml +75 -0
  334. data/set-of-emails/maildir/bsd/sendmail-35.eml +70 -0
  335. data/set-of-emails/maildir/bsd/sendmail-36.eml +71 -0
  336. data/set-of-emails/maildir/bsd/sendmail-37.eml +71 -0
  337. data/set-of-emails/maildir/bsd/sendmail-38.eml +167 -0
  338. data/set-of-emails/maildir/bsd/surfcontrol-01.eml +79 -0
  339. data/set-of-emails/maildir/bsd/surfcontrol-02.eml +70 -0
  340. data/set-of-emails/maildir/bsd/surfcontrol-03.eml +70 -0
  341. data/set-of-emails/maildir/bsd/uk-messagelabs-01.eml +76 -0
  342. data/set-of-emails/maildir/bsd/us-amazonses-01.eml +59 -0
  343. data/set-of-emails/maildir/bsd/us-amazonses-02.eml +177 -0
  344. data/set-of-emails/maildir/bsd/us-amazonses-03.eml +55 -0
  345. data/set-of-emails/maildir/bsd/us-amazonses-04.eml +55 -0
  346. data/set-of-emails/maildir/bsd/us-amazonworkmail-01.eml +156 -0
  347. data/set-of-emails/maildir/bsd/us-amazonworkmail-02.eml +160 -0
  348. data/set-of-emails/maildir/bsd/us-amazonworkmail-03.eml +161 -0
  349. data/set-of-emails/maildir/bsd/us-amazonworkmail-04.eml +156 -0
  350. data/set-of-emails/maildir/bsd/us-amazonworkmail-05.eml +157 -0
  351. data/set-of-emails/maildir/bsd/us-aol-01.eml +1258 -0
  352. data/set-of-emails/maildir/bsd/us-aol-02.eml +1257 -0
  353. data/set-of-emails/maildir/bsd/us-aol-03.eml +1264 -0
  354. data/set-of-emails/maildir/bsd/us-aol-04.eml +1260 -0
  355. data/set-of-emails/maildir/bsd/us-bigfoot-01.eml +64 -0
  356. data/set-of-emails/maildir/bsd/us-facebook-01.eml +40 -0
  357. data/set-of-emails/maildir/bsd/us-facebook-02.eml +42 -0
  358. data/set-of-emails/maildir/bsd/us-google-01.eml +70 -0
  359. data/set-of-emails/maildir/bsd/us-google-02.eml +50 -0
  360. data/set-of-emails/maildir/bsd/us-google-03.eml +51 -0
  361. data/set-of-emails/maildir/bsd/us-google-04.eml +82 -0
  362. data/set-of-emails/maildir/bsd/us-google-05.eml +50 -0
  363. data/set-of-emails/maildir/bsd/us-google-06.eml +56 -0
  364. data/set-of-emails/maildir/bsd/us-google-07.eml +42 -0
  365. data/set-of-emails/maildir/bsd/us-google-08.eml +59 -0
  366. data/set-of-emails/maildir/bsd/us-google-09.eml +76 -0
  367. data/set-of-emails/maildir/bsd/us-google-10.eml +69 -0
  368. data/set-of-emails/maildir/bsd/us-google-11.eml +68 -0
  369. data/set-of-emails/maildir/bsd/us-google-12.eml +76 -0
  370. data/set-of-emails/maildir/bsd/us-google-13.eml +79 -0
  371. data/set-of-emails/maildir/bsd/us-google-14.eml +304 -0
  372. data/set-of-emails/maildir/bsd/us-office365-01.eml +102 -0
  373. data/set-of-emails/maildir/bsd/us-outlook-01.eml +72 -0
  374. data/set-of-emails/maildir/bsd/us-outlook-02.eml +72 -0
  375. data/set-of-emails/maildir/bsd/us-outlook-03.eml +72 -0
  376. data/set-of-emails/maildir/bsd/us-outlook-04.eml +79 -0
  377. data/set-of-emails/maildir/bsd/us-outlook-05.eml +85 -0
  378. data/set-of-emails/maildir/bsd/us-outlook-06.eml +75 -0
  379. data/set-of-emails/maildir/bsd/us-outlook-07.eml +70 -0
  380. data/set-of-emails/maildir/bsd/us-receivingses-01.eml +74 -0
  381. data/set-of-emails/maildir/bsd/us-receivingses-02.eml +74 -0
  382. data/set-of-emails/maildir/bsd/us-receivingses-03.eml +74 -0
  383. data/set-of-emails/maildir/bsd/us-receivingses-04.eml +74 -0
  384. data/set-of-emails/maildir/bsd/us-receivingses-05.eml +74 -0
  385. data/set-of-emails/maildir/bsd/us-receivingses-06.eml +74 -0
  386. data/set-of-emails/maildir/bsd/us-receivingses-07.eml +74 -0
  387. data/set-of-emails/maildir/bsd/us-sendgrid-01.eml +95 -0
  388. data/set-of-emails/maildir/bsd/us-sendgrid-02.eml +98 -0
  389. data/set-of-emails/maildir/bsd/us-sendgrid-03.eml +100 -0
  390. data/set-of-emails/maildir/bsd/us-verizon-01.eml +31 -0
  391. data/set-of-emails/maildir/bsd/us-yahoo-01.eml +78 -0
  392. data/set-of-emails/maildir/bsd/us-yahoo-02.eml +79 -0
  393. data/set-of-emails/maildir/bsd/us-yahoo-03.eml +93 -0
  394. data/set-of-emails/maildir/bsd/us-yahoo-04.eml +94 -0
  395. data/set-of-emails/maildir/bsd/us-yahoo-05.eml +94 -0
  396. data/set-of-emails/maildir/bsd/us-zoho-01.eml +40 -0
  397. data/set-of-emails/maildir/bsd/us-zoho-02.eml +38 -0
  398. data/set-of-emails/maildir/bsd/us-zoho-03.eml +37 -0
  399. data/set-of-emails/maildir/bsd/us-zoho-04.eml +47 -0
  400. data/set-of-emails/maildir/bsd/us-zoho-05.eml +37 -0
  401. data/set-of-emails/maildir/bsd/v5sendmail-01.eml +24 -0
  402. data/set-of-emails/maildir/bsd/v5sendmail-02.eml +26 -0
  403. data/set-of-emails/maildir/bsd/v5sendmail-03.eml +29 -0
  404. data/set-of-emails/maildir/bsd/v5sendmail-04.eml +29 -0
  405. data/set-of-emails/maildir/bsd/v5sendmail-05.eml +42 -0
  406. data/set-of-emails/maildir/bsd/v5sendmail-06.eml +28 -0
  407. data/set-of-emails/maildir/bsd/v5sendmail-07.eml +35 -0
  408. data/set-of-emails/maildir/bsd/x1-01.eml +61 -0
  409. data/set-of-emails/maildir/bsd/x1-02.eml +62 -0
  410. data/set-of-emails/maildir/bsd/x2-01.eml +41 -0
  411. data/set-of-emails/maildir/bsd/x2-02.eml +46 -0
  412. data/set-of-emails/maildir/bsd/x2-03.eml +34 -0
  413. data/set-of-emails/maildir/bsd/x2-04.eml +0 -0
  414. data/set-of-emails/maildir/bsd/x2-05.eml +98 -0
  415. data/set-of-emails/maildir/bsd/x3-01.eml +61 -0
  416. data/set-of-emails/maildir/bsd/x3-02.eml +64 -0
  417. data/set-of-emails/maildir/bsd/x3-03.eml +59 -0
  418. data/set-of-emails/maildir/bsd/x3-04.eml +106 -0
  419. data/set-of-emails/maildir/bsd/x4-01.eml +92 -0
  420. data/set-of-emails/maildir/bsd/x4-02.eml +112 -0
  421. data/set-of-emails/maildir/bsd/x4-03.eml +245 -0
  422. data/set-of-emails/maildir/bsd/x4-04.eml +81 -0
  423. data/set-of-emails/maildir/bsd/x4-05.eml +121 -0
  424. data/set-of-emails/maildir/bsd/x4-06.eml +32 -0
  425. data/set-of-emails/maildir/bsd/x4-07.eml +153 -0
  426. data/set-of-emails/maildir/bsd/x5-01.eml +155 -0
  427. data/set-of-emails/maildir/dos/activehunter-01.eml +54 -0
  428. data/set-of-emails/maildir/dos/apachejames-01.eml +46 -0
  429. data/set-of-emails/maildir/dos/arf-01.eml +66 -0
  430. data/set-of-emails/maildir/dos/courier-01.eml +79 -0
  431. data/set-of-emails/maildir/dos/de-einsundeins-01.eml +38 -0
  432. data/set-of-emails/maildir/dos/de-gmx-01.eml +52 -0
  433. data/set-of-emails/maildir/dos/domino-01.eml +33 -0
  434. data/set-of-emails/maildir/dos/exchange-01.eml +31 -0
  435. data/set-of-emails/maildir/dos/exim-01.eml +46 -0
  436. data/set-of-emails/maildir/dos/google-apps-01.eml +66 -0
  437. data/set-of-emails/maildir/dos/imailserver-01.eml +27 -0
  438. data/set-of-emails/maildir/dos/interscanmss-01.eml +49 -0
  439. data/set-of-emails/maildir/dos/jp-biglobe-01.eml +43 -0
  440. data/set-of-emails/maildir/dos/jp-ezweb-01.eml +36 -0
  441. data/set-of-emails/maildir/dos/jp-kddi-01.eml +49 -0
  442. data/set-of-emails/maildir/dos/mailfoundry-01.eml +50 -0
  443. data/set-of-emails/maildir/dos/mailmarshalsmtp-01.eml +43 -0
  444. data/set-of-emails/maildir/dos/mcafee-01.eml +63 -0
  445. data/set-of-emails/maildir/dos/messagingserver-01.eml +102 -0
  446. data/set-of-emails/maildir/dos/mfilter-01.eml +49 -0
  447. data/set-of-emails/maildir/dos/mxlogic-01.eml +47 -0
  448. data/set-of-emails/maildir/dos/notes-01.eml +42 -0
  449. data/set-of-emails/maildir/dos/opensmtpd-01.eml +33 -0
  450. data/set-of-emails/maildir/dos/postfix-01.eml +60 -0
  451. data/set-of-emails/maildir/dos/qmail-01.eml +40 -0
  452. data/set-of-emails/maildir/dos/rfc3464-01.eml +59 -0
  453. data/set-of-emails/maildir/dos/rfc3834-01.eml +37 -0
  454. data/set-of-emails/maildir/dos/ru-mailru-01.eml +54 -0
  455. data/set-of-emails/maildir/dos/ru-yandex-01.eml +102 -0
  456. data/set-of-emails/maildir/dos/sendmail-01.eml +69 -0
  457. data/set-of-emails/maildir/dos/surfcontrol-01.eml +79 -0
  458. data/set-of-emails/maildir/dos/uk-messagelabs-01.eml +76 -0
  459. data/set-of-emails/maildir/dos/us-amazonses-01.eml +59 -0
  460. data/set-of-emails/maildir/dos/us-aol-01.eml +1258 -0
  461. data/set-of-emails/maildir/dos/us-bigfoot-01.eml +64 -0
  462. data/set-of-emails/maildir/dos/us-facebook-01.eml +40 -0
  463. data/set-of-emails/maildir/dos/us-google-01.eml +70 -0
  464. data/set-of-emails/maildir/dos/us-outlook-01.eml +72 -0
  465. data/set-of-emails/maildir/dos/us-receivingses-01.eml +74 -0
  466. data/set-of-emails/maildir/dos/us-sendgrid-01.eml +95 -0
  467. data/set-of-emails/maildir/dos/us-verizon-01.eml +31 -0
  468. data/set-of-emails/maildir/dos/us-yahoo-01.eml +78 -0
  469. data/set-of-emails/maildir/dos/us-zoho-01.eml +40 -0
  470. data/set-of-emails/maildir/dos/v5sendmail-01.eml +24 -0
  471. data/set-of-emails/maildir/dos/x1-01.eml +61 -0
  472. data/set-of-emails/maildir/dos/x2-01.eml +41 -0
  473. data/set-of-emails/maildir/dos/x3-01.eml +61 -0
  474. data/set-of-emails/maildir/dos/x4-01.eml +90 -0
  475. data/set-of-emails/maildir/dos/x5-01.eml +155 -0
  476. data/set-of-emails/maildir/err/make-test-01.eml +70 -0
  477. data/set-of-emails/maildir/err/make-test-02.eml +70 -0
  478. data/set-of-emails/maildir/err/make-test-03.eml +64 -0
  479. data/set-of-emails/maildir/err/make-test-04.eml +64 -0
  480. data/set-of-emails/maildir/err/make-test-05.eml +66 -0
  481. data/set-of-emails/maildir/err/make-test-06.eml +118 -0
  482. data/set-of-emails/maildir/err/make-test-07.eml +26 -0
  483. data/set-of-emails/maildir/err/make-test-08.eml +67 -0
  484. data/set-of-emails/maildir/err/make-test-09.eml +55 -0
  485. data/set-of-emails/maildir/err/make-test-10.eml +69 -0
  486. data/set-of-emails/maildir/err/make-test-11.eml +64 -0
  487. data/set-of-emails/maildir/err/make-test-12.eml +66 -0
  488. data/set-of-emails/maildir/err/make-test-13.eml +67 -0
  489. data/set-of-emails/maildir/err/make-test-14.eml +66 -0
  490. data/set-of-emails/maildir/err/make-test-15.eml +70 -0
  491. data/set-of-emails/maildir/err/make-test-16.eml +68 -0
  492. data/set-of-emails/maildir/err/make-test-17.eml +68 -0
  493. data/set-of-emails/maildir/err/make-test-18.eml +68 -0
  494. data/set-of-emails/maildir/err/make-test-19.eml +69 -0
  495. data/set-of-emails/maildir/err/make-test-20.eml +67 -0
  496. data/set-of-emails/maildir/err/make-test-21.eml +69 -0
  497. data/set-of-emails/maildir/err/make-test-22.eml +66 -0
  498. data/set-of-emails/maildir/err/make-test-23.eml +70 -0
  499. data/set-of-emails/maildir/err/make-test-24.eml +69 -0
  500. data/set-of-emails/maildir/err/make-test-25.eml +67 -0
  501. data/set-of-emails/maildir/err/make-test-26.eml +69 -0
  502. data/set-of-emails/maildir/err/make-test-27.eml +69 -0
  503. data/set-of-emails/maildir/err/make-test-28.eml +66 -0
  504. data/set-of-emails/maildir/err/make-test-29.eml +68 -0
  505. data/set-of-emails/maildir/err/make-test-30.eml +68 -0
  506. data/set-of-emails/maildir/err/make-test-31.eml +80 -0
  507. data/set-of-emails/maildir/err/make-test-32.eml +66 -0
  508. data/set-of-emails/maildir/err/make-test-33.eml +68 -0
  509. data/set-of-emails/maildir/err/make-test-34.eml +56 -0
  510. data/set-of-emails/maildir/err/make-test-35.eml +59 -0
  511. data/set-of-emails/maildir/err/make-test-36.eml +53 -0
  512. data/set-of-emails/maildir/err/make-test-37.eml +62 -0
  513. data/set-of-emails/maildir/mac/activehunter-01.eml +1 -2
  514. data/set-of-emails/maildir/mac/apachejames-01.eml +1 -4
  515. data/set-of-emails/maildir/mac/arf-01.eml +1 -3
  516. data/set-of-emails/maildir/mac/courier-01.eml +1 -6
  517. data/set-of-emails/maildir/mac/de-einsundeins-01.eml +1 -1
  518. data/set-of-emails/maildir/mac/de-gmx-01.eml +1 -1
  519. data/set-of-emails/maildir/mac/domino-01.eml +1 -0
  520. data/set-of-emails/maildir/mac/exchange-01.eml +1 -0
  521. data/set-of-emails/maildir/mac/exim-01.eml +1 -1
  522. data/set-of-emails/maildir/mac/google-apps-01.eml +1 -4
  523. data/set-of-emails/maildir/mac/imailserver-01.eml +1 -0
  524. data/set-of-emails/maildir/mac/interscanmss-01.eml +1 -2
  525. data/set-of-emails/maildir/mac/jp-biglobe-01.eml +1 -2
  526. data/set-of-emails/maildir/mac/jp-ezweb-01.eml +1 -1
  527. data/set-of-emails/maildir/mac/jp-kddi-01.eml +1 -2
  528. data/set-of-emails/maildir/mac/mailfoundry-01.eml +1 -2
  529. data/set-of-emails/maildir/mac/mailmarshalsmtp-01.eml +1 -2
  530. data/set-of-emails/maildir/mac/mcafee-01.eml +1 -4
  531. data/set-of-emails/maildir/mac/messagingserver-01.eml +1 -4
  532. data/set-of-emails/maildir/mac/mfilter-01.eml +1 -3
  533. data/set-of-emails/maildir/mac/mxlogic-01.eml +1 -1
  534. data/set-of-emails/maildir/mac/notes-01.eml +1 -2
  535. data/set-of-emails/maildir/mac/opensmtpd-01.eml +1 -0
  536. data/set-of-emails/maildir/mac/postfix-01.eml +1 -3
  537. data/set-of-emails/maildir/mac/qmail-01.eml +1 -1
  538. data/set-of-emails/maildir/mac/rfc3464-01.eml +1 -4
  539. data/set-of-emails/maildir/mac/rfc3834-01.eml +1 -0
  540. data/set-of-emails/maildir/mac/ru-mailru-01.eml +1 -1
  541. data/set-of-emails/maildir/mac/ru-yandex-01.eml +1 -4
  542. data/set-of-emails/maildir/mac/sendmail-01.eml +1 -4
  543. data/set-of-emails/maildir/mac/surfcontrol-01.eml +1 -5
  544. data/set-of-emails/maildir/mac/uk-messagelabs-01.eml +1 -4
  545. data/set-of-emails/maildir/mac/us-amazonses-01.eml +1 -4
  546. data/set-of-emails/maildir/mac/us-aol-01.eml +1 -15
  547. data/set-of-emails/maildir/mac/us-bigfoot-01.eml +1 -4
  548. data/set-of-emails/maildir/mac/us-facebook-01.eml +1 -4
  549. data/set-of-emails/maildir/mac/us-google-01.eml +1 -1
  550. data/set-of-emails/maildir/mac/us-outlook-01.eml +1 -4
  551. data/set-of-emails/maildir/mac/us-receivingses-01.eml +1 -4
  552. data/set-of-emails/maildir/mac/us-sendgrid-01.eml +1 -3
  553. data/set-of-emails/maildir/mac/us-verizon-01.eml +1 -2
  554. data/set-of-emails/maildir/mac/us-yahoo-01.eml +1 -1
  555. data/set-of-emails/maildir/mac/us-zoho-01.eml +1 -2
  556. data/set-of-emails/maildir/mac/v5sendmail-01.eml +1 -0
  557. data/set-of-emails/maildir/mac/x1-01.eml +1 -4
  558. data/set-of-emails/maildir/mac/x2-01.eml +1 -1
  559. data/set-of-emails/maildir/mac/x3-01.eml +1 -3
  560. data/set-of-emails/maildir/mac/x4-01.eml +1 -2
  561. data/set-of-emails/maildir/mac/x5-01.eml +1 -8
  562. data/set-of-emails/maildir/not/is-not-bounce-01.eml +25 -0
  563. data/set-of-emails/to-be-debugged-because/reason-is-onhold/onhold-0001.eml +85 -0
  564. data/set-of-emails/to-be-debugged-because/reason-is-undefined/undefined-0002.eml +27 -0
  565. data/set-of-emails/to-be-debugged-because/reason-is-undefined/undefined-0003.eml +78 -0
  566. data/set-of-emails/to-be-debugged-because/sisimai-cannot-parse-yet/cannot-parse-this-email-0002.eml +25 -0
  567. data/set-of-emails/to-be-debugged-because/something-is-wrong/issue-106-01.eml +79 -0
  568. data/set-of-emails/to-be-debugged-because/something-is-wrong/issue-106-02.eml +72 -0
  569. data/set-of-emails/to-be-debugged-because/something-is-wrong/issue-106-03.eml +68 -0
  570. data/set-of-emails/to-be-debugged-because/something-is-wrong/no-message-id-from-pr-150.eml +75 -0
  571. data/set-of-emails/to-be-parsed-for-test/README.md +20 -0
  572. data/sisimai-java.gemspec +29 -0
  573. data/sisimai.gemspec +28 -0
  574. metadata +680 -0
data/Gemfile ADDED
@@ -0,0 +1,15 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in sisimai.gemspec
4
+ gemspec name: 'sisimai'
5
+
6
+ # To execute `rake spec` on Travis-CI
7
+ gem 'oj', '>= 2.14.4', :platform => :ruby
8
+ gem 'jrjackson', '>= 0.3.8', :platform => :jruby
9
+
10
+ group :development, :test do
11
+ gem 'rake', :require => false
12
+ gem 'rspec', :require => false
13
+ gem 'coveralls', :require => false
14
+ end
15
+
data/LICENSE ADDED
@@ -0,0 +1,25 @@
1
+ THIS SOFTWARE IS DISTRIBUTED UNDER THE FOLLOWING BSD 2-CLAUSE LICENSE:
2
+
3
+ Copyright (C) 2015,2016 azumakuniyuki, All rights reserved.
4
+
5
+ Redistribution and use in source and binary forms, with or without modification,
6
+ are permitted provided that the following conditions are met:
7
+
8
+ 1. Redistributions of source code must retain the above copyright notice,
9
+ this list of conditions and the following disclaimer.
10
+
11
+ 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ this list of conditions and the following disclaimer in the documentation
13
+ and/or other materials provided with the distribution.
14
+
15
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
16
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
19
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (
20
+ INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
21
+ OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
23
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
24
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25
+
@@ -0,0 +1,70 @@
1
+ # rb-Sisimai/Makefile
2
+ # __ __ _ __ _ _
3
+ # | \/ | __ _| | _____ / _(_) | ___
4
+ # | |\/| |/ _` | |/ / _ \ |_| | |/ _ \
5
+ # | | | | (_| | < __/ _| | | __/
6
+ # |_| |_|\__,_|_|\_\___|_| |_|_|\___|
7
+ # -----------------------------------------------------------------------------
8
+ SHELL := /bin/sh
9
+ TIME := $(shell date '+%s')
10
+ NAME := sisimai
11
+ RUBY := ruby
12
+ JRUBY := /usr/local/jr
13
+ RAKE := rake
14
+ MKDIR := mkdir -p
15
+ RSPEC := rspec -Ilib -f progress
16
+ CP := cp
17
+ RM := rm -f
18
+
19
+ DEPENDENCIES = bundle rake rspec
20
+ .DEFAULT_GOAL = git-status
21
+ REPOS_TARGETS = git-status git-push git-commit-amend git-tag-list git-diff \
22
+ git-reset-soft git-rm-cached git-branch
23
+
24
+ # -----------------------------------------------------------------------------
25
+ .PHONY: clean
26
+
27
+ depend:
28
+ gem install $(DEPENDENCIES)
29
+ if [ test -d "$(JRUBY)" ]; then \
30
+ PATH="$$PATH:$(JRUBY)/bin" $(JRUBY)/bin/gem install $(DEPENDENCIES); \
31
+ fi
32
+
33
+ install-from-rubygems:
34
+ gem install $(NAME)
35
+ if [ test -d "$(JRUBY)" ]; then \
36
+ PATH="$$PATH:$(JRUBY)/bin" $(JRUBY)/bin/gem install $(NAME); \
37
+ fi
38
+
39
+ install-from-local:
40
+ $(RAKE) install
41
+ if [ test -d "$(JRUBY)" ]; then \
42
+ PATH="$$PATH:$(JRUBY)/bin" $(JRUBY)/bin/rake install; \
43
+ fi
44
+
45
+ release:
46
+ $(RAKE) release
47
+ if [ test -d "$(JRUBY)" ]; then \
48
+ PATH="$$PATH:$(JRUBY)/bin" $(JRUBY)/bin/rake release; \
49
+ fi
50
+
51
+ test: user-test
52
+
53
+ user-test:
54
+ $(RAKE) spec
55
+
56
+ patrol:
57
+ rubocop -fp --display-cop-names --display-style-guide --no-color lib
58
+
59
+ $(REPOS_TARGETS):
60
+ $(MAKE) -f Repository.mk $@
61
+
62
+ diff push branch:
63
+ @$(MAKE) git-$@
64
+ fix-commit-message: git-commit-amend
65
+ cancel-the-latest-commit: git-reset-soft
66
+ remove-added-file: git-rm-cached
67
+
68
+ clean:
69
+ $(MAKE) -f Repository.mk clean
70
+
@@ -0,0 +1,361 @@
1
+ [![License](https://img.shields.io/badge/license-BSD%202--Clause-orange.svg)](https://github.com/sisimai/rb-Sisimai/blob/master/LICENSE)
2
+ [![Coverage Status](https://img.shields.io/coveralls/sisimai/rb-Sisimai.svg)](https://coveralls.io/r/sisimai/rb-Sisimai)
3
+ [![Build Status](https://travis-ci.org/sisimai/rb-Sisimai.svg?branch=master)](https://travis-ci.org/sisimai/rb-Sisimai)
4
+ [![Codacy Badge](https://api.codacy.com/project/badge/grade/38340177e6284a65be69c0c7c3dc2b58)](https://www.codacy.com/app/azumakuniyuki/rb-Sisimai)
5
+ [![Ruby](https://img.shields.io/badge/ruby-v2.1.0--v2.3.0-red.svg)](https://www.ruby-lang.org/)
6
+ [![Gem Version](https://badge.fury.io/rb/sisimai.svg)](https://badge.fury.io/rb/sisimai)
7
+
8
+ ![](http://41.media.tumblr.com/45c8d33bea2f92da707f4bbe66251d6b/tumblr_nuf7bgeyH51uz9e9oo1_1280.png)
9
+
10
+ What is Sisimai ? | シシマイ?
11
+ =============================
12
+ Sisimai is a Ruby library for analyzing RFC5322 bounce emails and generating
13
+ structured data from parsed results. Ruby version of Sisimai is ported from
14
+ Perl version of Sisimai at https://github.com/sisimai/p5-Sisimai/ .
15
+
16
+ Sisimai(シシマイ)はRFC5322準拠のエラーメールを解析し、解析結果をデータ構造に
17
+ 変換するインターフェイスを提供するRubyライブラリです。
18
+ https://github.com/sisimai/p5-Sisimai/で公開しているPerl版シシマイから移植しました。
19
+
20
+ Key Features | 主な特徴的機能
21
+ -----------------------------
22
+ * __Convert Bounce Mails to Structured Data__ | __エラーメールをデータ構造に変換__
23
+ * Supported formats are Perl and JSON | Perlのデータ形式とJSONに対応
24
+ * __Easy to Install, Use.__ | __インストールも使用も簡単__
25
+ * gem install
26
+ * git clone & make
27
+ * __High Precision of Analysis__ | __高い解析精度__
28
+ * 2 times higher than bounceHammer | 解析精度はbounceHammerの二倍
29
+ * Support 21 known MTAs and 5 unknown MTAs | 26種類のMTAに対応
30
+ * Support 21 major MSPs(Mail Service Providers) | 21種類の著名なMSPに対応
31
+ * Support Feedback Loop Message(ARF) | Feedback Loopにも対応
32
+ * Can detect 26 error reasons | 26種類のエラー理由を検出
33
+
34
+ Setting Up Sisimai | シシマイを使う準備
35
+ =======================================
36
+
37
+ System requirements | 動作環境
38
+ ------------------------------
39
+
40
+ More details about system requirements are available at available at
41
+ [Sisimai | Getting Started](http://libsisimai.org/start) page.
42
+
43
+ * [Ruby 2.1.0 or later](http://www.ruby-lang.org/)
44
+ * [__Oj | The fastest JSON parser and object serializer__](https://rubygems.org/gems/oj)
45
+ * Also works on [JRuby 9.0.0.0 or later](http://jruby.org)
46
+ * [__JrJackson | A mostly native JRuby wrapper for the java jackson json processor jar__](https://rubygems.org/gems/jrjackson)
47
+
48
+ Install | インストール
49
+ ----------------------
50
+
51
+ ### From RubyGems.org
52
+
53
+ ```shell
54
+ % sudo gem install sisimai
55
+ Fetching: sisimai-4.16.0.gem (100%)
56
+ Successfully installed sisimai-4.16.0
57
+ Parsing documentation for sisimai-4.16.0
58
+ Installing ri documentation for sisimai-4.16.0
59
+ Done installing documentation for sisimai after 6 seconds
60
+ 1 gem installed
61
+ ```
62
+
63
+ ### From GitHub
64
+
65
+ ```shell
66
+ % cd /usr/local/src
67
+ % git clone https://github.com/sisimai/rb-Sisimai.git
68
+ % cd ./rb-Sisimai
69
+ % sudo make depend install-from-local
70
+ gem install bundle rake rspec coveralls
71
+ Successfully installed bundle-0.0.1
72
+ Parsing documentation for bundle-0.0.1
73
+ Done installing documentation for bundle after 0 seconds
74
+ Successfully installed rake-10.5.0
75
+ Parsing documentation for rake-10.5.0
76
+ Done installing documentation for rake after 1 seconds
77
+ Successfully installed rspec-3.4.0
78
+ Parsing documentation for rspec-3.4.0
79
+ Done installing documentation for rspec after 0 seconds
80
+ Successfully installed coveralls-0.8.10
81
+ Parsing documentation for coveralls-0.8.10
82
+ Done installing documentation for coveralls after 0 seconds
83
+ 4 gems installed
84
+ bundle exec rake install
85
+ sisimai 4.14.2 built to pkg/sisimai-4.16.0.gem.
86
+ sisimai (4.14.2) installed.
87
+ ```
88
+
89
+ Usage | 使い方
90
+ ==============
91
+
92
+ Basic usage | 基本的な使い方
93
+ ----------------------------
94
+ make() method provides feature for getting parsed data from bounced email
95
+ messages like following.
96
+
97
+ ```ruby
98
+ #! /usr/bin/env ruby
99
+ require 'sisimai'
100
+ v = Sisimai.make('/path/to/mbox') # or path to Maildir/
101
+
102
+ # If you want to get bounce records which reason is "delivered", set "delivered"
103
+ # option to make() method like the following:
104
+ v = Sisimai.make('/path/to/mbox', delivered: true)
105
+
106
+ unless v.void
107
+ v.each do |e|
108
+ puts e.class # Sisimai::Data
109
+ puts e.recipient.class # Sisimai::Address
110
+ puts e.timestamp.class # Sisimai::Time
111
+
112
+ puts e.addresser.address # shironeko@example.org # From
113
+ puts e.recipient.address # kijitora@example.jp # To
114
+ puts e.recipient.host # example.jp
115
+ puts e.deliverystatus # 5.1.1
116
+ puts e.replycode # 550
117
+ puts e.reason # userunknown
118
+
119
+ h = e.damn # Convert to HASH
120
+ j = e.dump('json') # Convert to JSON string
121
+ puts e.dump('json') # JSON formatted bounce data
122
+ end
123
+ end
124
+
125
+ # Get JSON string from parsed mailbox or Maildir/
126
+ puts Sisimai.dump('/path/to/mbox') # or path to Maildir/
127
+
128
+ # dump() method also accepts "delivered" option like the following code:
129
+ puts Sisimai.dump('/path/to/mbox', delivered: true)
130
+
131
+ ```
132
+
133
+ ```json
134
+ [{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Sendmail"}]
135
+ ```
136
+
137
+ 上記のようにSisimaiのmake()メソッドをmboxかMaildirのPATHを引数にして実行すると
138
+ 解析結果が配列で返ってきます。
139
+
140
+ One-Liner | ワンライナーで
141
+ --------------------------
142
+
143
+ ```shell
144
+ % ruby -rsisimai -e 'puts Sisimai.dump($*.shift)' /path/to/mbox
145
+ ```
146
+
147
+ Differences between Perl version and Ruby version | Perl版との違い
148
+ ------------------------------------------------------------------
149
+ The following table show the differences between Perl version of Sisimai
150
+ and Ruby version of Sisimai.
151
+
152
+ | Features | Ruby version | Perl version |
153
+ |------------------------------------------------|---------------|--------------|
154
+ | System requirements | Ruby 2.1-2.3 | Perl 5.10 - |
155
+ | | JRuby 9.0.4.0-| |
156
+ | Analytical precision ratio(2000 emails)[1] | 1.00 | 1.00 |
157
+ | The speed of parsing email(1000 emails) | 3.81s | 2.50s |
158
+ | How to install | gem install | cpanm |
159
+ | Dependencies (Except core modules) | 1 modules | 2 modules |
160
+ | LOC:Source lines of code | 11700 lines | 9100 lines |
161
+ | The number of tests in t/, xt/ directory | 92400 tests | 166700 tests |
162
+ | License | BSD 2-Clause | BSD 2-Clause |
163
+ | Support Contract provided by Developer | Coming soon | Available |
164
+
165
+ 1. See ./ANALYTICAL-PRECISION
166
+
167
+ 公開中のPerl版Sisimai(p5-Sisimai)とRuby版Sisimai(rb-Sisimai)は下記のような違いが
168
+ あります。
169
+
170
+ | 機能 | Ruby version | Perl version|
171
+ |------------------------------------------------|---------------|-------------|
172
+ | 動作環境 | Ruby 2.1-2.3 | Perl 5.10 - |
173
+ | | JRuby 9.0.4.0-| |
174
+ | 解析精度の割合(2000通のメール)[1] | 1.00 | 1.00 |
175
+ | メール解析速度(1000通のメール) | 3.81秒 | 2.50秒 |
176
+ | インストール方法 | gem install | cpanm |
177
+ | 依存モジュール数(コアモジュールを除く) | 1モジュール | 2モジュール |
178
+ | LOC:ソースコードの行数 | 11700行 | 9100行 |
179
+ | テスト件数(t/,xt/ディレクトリ) | 92400件 | 166700件 |
180
+ | ライセンス | 二条項BSD | 二条項BSD |
181
+ | 開発会社によるサポート契約 | 準備中 | 提供中 |
182
+
183
+ 1. ./ANALYTICAL-PRECISIONを参照
184
+
185
+ MTA/MSP Modules | MTA/MSPモジュール一覧
186
+ ---------------------------------------
187
+ The following table is the list of MTA/MSP:(Mail Service Provider) modules. More
188
+ details about these modules are available at
189
+ [Sisimai | Parser Engines](http://libsisimai.org/engine) page.
190
+
191
+ | Module Name(Sisimai::) | Description |
192
+ |--------------------------|---------------------------------------------------|
193
+ | MTA::Activehunter | TransWARE Active!hunter |
194
+ | MTA::ApacheJames | Java Apache Mail Enterprise Server |
195
+ | MTA::Courier | Courier MTA |
196
+ | MTA::Domino | IBM Domino Server |
197
+ | MTA::Exchange | Microsoft Exchange Server |
198
+ | MTA::Exim | Exim |
199
+ | MTA::IMailServer | IPSWITCH IMail Server |
200
+ | MTA::InterScanMSS | Trend Micro InterScan Messaging Security Suite |
201
+ | MTA::MXLogic | McAfee SaaS |
202
+ | MTA::MailFoundry | MailFoundry |
203
+ | MTA::MailMarshalSMTP | Trustwave Secure Email Gateway |
204
+ | MTA::McAfee | McAfee Email Appliance |
205
+ | MTA::MessagingServer | Oracle Communications Messaging Server |
206
+ | MTA::MFILTER | Digital Arts m-FILTER |
207
+ | MTA::Notes | Lotus Notes |
208
+ | MTA::OpenSMTPD | OpenSMTPD |
209
+ | MTA::Postfix | Postfix |
210
+ | MTA::Qmail | qmail |
211
+ | MTA::Sendmail | V8Sendmail: /usr/sbin/sendmail |
212
+ | MTA::SurfControl | WebSense SurfControl |
213
+ | MTA::V5sendmail | Sendmail version 5 |
214
+ | MTA::X1 | Unknown MTA #1 |
215
+ | MTA::X2 | Unknown MTA #2 |
216
+ | MTA::X3 | Unknown MTA #3 |
217
+ | MTA::X4 | Unknown MTA #4 qmail clones |
218
+ | MTA::X5 | Unknown MTA #5 |
219
+ | MSP::DE::EinsUndEins | 1&1: http://www.1and1.de |
220
+ | MSP::DE::GMX | GMX: http://www.gmx.net |
221
+ | MSP::JP::Biglobe | BIGLOBE: http://www.biglobe.ne.jp |
222
+ | MSP::JP::EZweb | au EZweb: http://www.au.kddi.com/mobile/ |
223
+ | MSP::JP::KDDI | au by KDDI: http://www.au.kddi.com |
224
+ | MSP::RU::MailRu | @mail.ru: https://mail.ru |
225
+ | MSP::RU::Yandex | Yandex.Mail: http://www.yandex.ru |
226
+ | MSP::UK::MessageLabs | Symantec.cloud http://www.messagelabs.com |
227
+ | MSP::US::AmazonSES | AmazonSES(Sending): http://aws.amazon.com/ses/ |
228
+ | MSP::US::AmazonWorkMail | Amazon WorkMail: https://aws.amazon.com/workmail/ |
229
+ | MSP::US::Aol | Aol Mail: http://www.aol.com |
230
+ | MSP::US::Bigfoot | Bigfoot: http://www.bigfoot.com |
231
+ | MSP::US::Facebook | Facebook: https://www.facebook.com |
232
+ | MSP::US::Google | Google Gmail: https://mail.google.com |
233
+ | MSP::US::Office365 | Microsoft Office 365: http://office.microsoft.com/|
234
+ | MSP::US::Outlook | Microsoft Outlook.com: https://www.outlook.com/ |
235
+ | MSP::US::ReceivingSES | AmazonSES(Receiving): http://aws.amazon.com/ses/ |
236
+ | MSP::US::SendGrid | SendGrid: http://sendgrid.com/ |
237
+ | MSP::US::Verizon | Verizon Wireless: http://www.verizonwireless.com |
238
+ | MSP::US::Yahoo | Yahoo! MAIL: https://www.yahoo.com |
239
+ | MSP::US::Zoho | Zoho Mail: https://www.zoho.com |
240
+ | ARF | Abuse Feedback Reporting Format |
241
+ | RFC3464 | Fallback Module for MTAs |
242
+ | RFC3834 | Detector for auto replied message |
243
+
244
+ 上記はSisimaiに含まれてるMTA/MSP(メールサービスプロバイダ)モジュールの一覧です。
245
+
246
+
247
+ Bounce Reason List | バウンス理由の一覧
248
+ ----------------------------------------
249
+ Sisimai can detect the following 26 bounce reasons. More details about reasons
250
+ are available at [Sisimai | Bounce Reason List](http://libsisimai.org/reason)
251
+ page.
252
+
253
+ | Reason(理由) | Description | 理由の説明 |
254
+ |----------------|----------------------------------------|----------------------------------|
255
+ | Blocked | Blocked due to client IP address | IPアドレスによる拒否 |
256
+ | ContentError | Invalid format email | 不正な形式のメール |
257
+ | Delivered | Successfully delivered (> v4.16.0) | 正常に配信された
258
+ | ExceedLimit | Message size exceeded the limit(5.2.3) | メールサイズの超過 |
259
+ | Expired | Delivery time expired | 配送時間切れ |
260
+ | Feedback | Bounced for a complaint of the message | 元メールへの苦情によるバウンス |
261
+ | Filtered | Rejected after DATA command | DATAコマンド以降で拒否された |
262
+ | HasMoved | Destination mail addrees has moved | 宛先メールアドレスは移動した |
263
+ | HostUnknown | Unknown destination host name | 宛先ホスト名が存在しない |
264
+ | MailboxFull | Recipient's mailbox is full | メールボックスが一杯 |
265
+ | MailerError | Mailer program error | メールプログラムのエラー |
266
+ | MesgTooBig | Message size is too big(5.3.4) | メールが大き過ぎる |
267
+ | NetworkError | Network error: DNS or routing | DNS等ネットワーク関係のエラー |
268
+ | NotAccept | Destinaion does not accept any message | 宛先ホストはメールを受けとらない |
269
+ | OnHold | Deciding the bounce reason is on hold | エラー理由の特定は保留 |
270
+ | Rejected | Rejected due to envelope from address | エンベロープFromで拒否された |
271
+ | NoRelaying | Relay access denied | リレーの拒否 |
272
+ | SecurityError | Virus detected or authentication error | ウィルスの検出または認証失敗 |
273
+ | SpamDetected | Detected a message as spam | メールはスパムとして判定された |
274
+ | Suspend | Recipient's account is suspended | 宛先アカウントは一時的に停止中 |
275
+ | SystemError | Some error on the destination host | 宛先サーバでのOSレベルのエラー |
276
+ | SystemFull | Disk full on the destination host | 宛先サーバのディスクが一杯 |
277
+ | TooManyConn | Connection rate limit exceeded | 接続制限数を超過した |
278
+ | UserUnknown | Recipient's address does not exist | 宛先メールアドレスは存在しない |
279
+ | Undefined | Could not decide the error reason | バウンスした理由は特定出来ず |
280
+ | Vacation | Auto replied message | 自動応答メッセージ |
281
+
282
+ Sisimaiは上記のエラー26種を検出します。
283
+
284
+
285
+ Parsed data structure | 解析後のデータ構造
286
+ ------------------------------------------
287
+ The following table shows a data structure(Sisimai::Data) of parsed bounce mail.
288
+ More details about data structure are available at available at
289
+ [Sisimai — Data Structure of Sisimai::Data](http://libsisimai.org/data) page.
290
+
291
+ | Name | Description | 値の説明 |
292
+ |----------------|---------------------------------------|--------------------------------|
293
+ | action | The value of Action: header | Action:ヘッダの値 |
294
+ | addresser | The From address | 送信者のアドレス |
295
+ | alias | Alias of the recipient | 受信者アドレスのエイリアス |
296
+ | destination | The domain part of the "recipinet" | "recipient"のドメイン部分 |
297
+ | deliverystatus | Delivery Status(DSN) | 配信状態(DSN)の値 |
298
+ | diagnosticcode | Error message | エラーメッセージ |
299
+ | diagnostictype | Error message type | エラーメッセージの種別 |
300
+ | feedbacktype | Feedback Type | Feedback-Typeのフィールド |
301
+ | lhost | local host name(local MTA) | 送信側MTAのホスト名 |
302
+ | listid | List-Id: header of each ML | List-Idヘッダの値 |
303
+ | messageid | Message-Id: of the original message | 元メールのMessage-Id |
304
+ | reason | Detected bounce reason | 検出したバウンスした理由 |
305
+ | recipient | Recipient address which bounced | バウンスした受信者のアドレス |
306
+ | replycode | SMTP Reply Code | SMTP応答コード |
307
+ | rhost | Remote host name(remote MTA) | 受信側MTAのホスト名 |
308
+ | senderdomain | The domain part of the "addresser" | "addresser"のドメイン部分 |
309
+ | softbounce | The bounce is soft bounce or not | ソフトバウンスであるかどうか |
310
+ | smtpagent | MTA name(Sisimai::MTA::, MSP::) | MTA名(Sisimai::MTA::,MSP::) |
311
+ | smtpcommand | The last SMTP command in the session | セッション中最後のSMTPコマンド |
312
+ | subject | Subject of the original message(UTF8) | 元メールのSubject(UTF-8) |
313
+ | timestamp | Date: header in the original message | 元メールのDate |
314
+ | timezoneoffset | Time zone offset(seconds) | タイムゾーンの時差 |
315
+ | token | MD5 value of addresser and recipient | 送信者と受信者のハッシュ値 |
316
+
317
+ 上記の表は解析後のバウンスメールの構造(Sisimai::Data)です。
318
+
319
+
320
+ Emails could not be parsed | 解析出来ないメール
321
+ -----------------------------------------------
322
+ __Bounce mails__ which could not be parsed by Sisimai are saved in the directory
323
+ `set-of-emails/to-be-debugged-because/sisimai-cannot-parse-yet`. If you find any
324
+ bounce email cannot be parsed using Sisimai, please add the email into the directory
325
+ and send Pull-Request to this repository.
326
+
327
+ 解析出来ない__バウンスメール__は`set-of-emails/to-be-debugged-because/sisimai-cannot-parse-yet`
328
+ ディレクトリにはいっています。もしもSisimaiで解析出来ないメールを見つけたら、
329
+ このディレクトリに追加してPull-Requestを送ってください。
330
+
331
+
332
+ Other Information | その他の情報
333
+ ================================
334
+
335
+ Related Sites | 関連サイト
336
+ --------------------------
337
+
338
+ * __libsisimai.org__ | [Sisimai | The successor to bounceHammer, Library to parse bounce mails](http://libsisimai.org/)
339
+ * __GitHub__ | [github.com/sisimai/rb-Sisimai](https://github.com/sisimai/rb-Sisimai)
340
+ * __Perl verson__ | [Perl version of Sisimai](https://github.com/sisimai/p5-Sisimai)
341
+
342
+ SEE ALSO | 参考サイト
343
+ ---------------------
344
+ * [RFC3463 - Enhanced Mail System Status Codes](https://tools.ietf.org/html/rfc3463)
345
+ * [RFC3464 - An Extensible Message Format for Delivery Status Notifications](https://tools.ietf.org/html/rfc3464)
346
+ * [RFC3834 - Recommendations for Automatic Responses to Electronic Mail](https://tools.ietf.org/html/rfc3834)
347
+ * [RFC5321 - Simple Mail Transfer Protocol](https://tools.ietf.org/html/rfc5321)
348
+ * [RFC5322 - Internet Message Format](https://tools.ietf.org/html/rfc5322)
349
+
350
+ AUTHOR | 作者
351
+ -------------
352
+ [@azumakuniyuki](https://twitter.com/azumakuniyuki)
353
+
354
+ COPYRIGHT | 著作権
355
+ ------------------
356
+ Copyright (C) 2015-2016 azumakuniyuki, All Rights Reserved.
357
+
358
+ LICENSE | ライセンス
359
+ --------------------
360
+ This software is distributed under The BSD 2-Clause License.
361
+