1 ;;; -*- mode: emacs-lisp; coding: iso-2022-7bit-ss2 -*-
2 ;----------------------------------------------------------------------------
3 ;-------- This sequece of HYPHEN-MINUS is 76 bytes long. --------------------
4 ;----------------------------------------------------------------------------
7 ;;encode-sticked-comment-as-atom ; violate the policy preserving structures
8 ;;ignore-75bytes-limit ; violate RFC2047
9 ;;ignore-76bytes-limit ; violate RFC2047
10 ;;permit-sticked-comment ; violate RFC2047
11 ;;permit-sticked-special ; violate RFC2047
12 ;;separate-sticked-comment ; violate the policy preserving absence of space
13 ;;separate-sticked-special ; violate the policy preserving absence of space
14 ;;zero-characters-encoded-word-hack ; violate common sense (very tricky)
15 ;;embedded-encoded-word ; violate character sequence semantics
16 ;;separate-sticked-tokens-for-fold ; violate the policy preserving absence of space
17 ;;encode-long-ascii-string-for-fold ; violate the policy preserving US-ASCII string
18 ;;divide-atom-for-fold ; violate tne policy preserving absence of space
27 (if (< max-specpdl-size 1000)
28 (setq max-specpdl-size 1000))
30 (defun decode-test (src dsts &rest opts)
31 (setq src (ew-crlf-to-lf src))
32 (setq eword-lexical-analyze-cache nil)
33 (setq eword-decode-sticked-encoded-word
34 (or (memq 'permit-sticked-comment opts)
35 (memq 'permit-sticked-special opts)))
36 (setq eword-decode-quoted-encoded-word nil)
38 (insert src "\n" mail-header-separator)
39 (eword-decode-header 'us-ascii mail-header-separator)
40 (goto-char (point-min))
41 (std11-narrow-to-header mail-header-separator)
43 (let ((result (std11-unfold-string
44 (buffer-substring (point-min) (point)))))
45 (if (member result dsts) t result))))
47 (defun encode-test (src dsts &rest opts)
48 (setq eword-lexical-analyze-cache nil)
49 (setq eword-decode-sticked-encoded-word nil)
50 (setq eword-decode-quoted-encoded-word nil)
52 (insert src "\n" mail-header-separator)
53 (goto-char (point-min))
54 (eword-encode-header 'us-ascii)
55 (goto-char (point-min))
56 (std11-narrow-to-header mail-header-separator)
58 (let ((result (buffer-substring (point-min) (point))))
59 (if (member result dsts) t result))))
67 (defun decode-test (src dsts &rest opts)
68 (setq ew-decode-field-cache-buf nil)
69 (let ((ew-decode-sticked-encoded-word nil)
70 (ew-decode-quoted-encoded-word nil)
71 (ew-ignore-75bytes-limit (memq 'ignore-75bytes-limit opts))
72 (ew-ignore-76bytes-limit (memq 'ignore-76bytes-limit opts))
73 (ew-permit-sticked-comment (memq 'permit-sticked-comment opts))
74 (ew-permit-sticked-special (memq 'permit-sticked-special opts)))
75 (string-match "\\`[^:]*:" src)
76 (let* ((field-name (substring src
79 (field-body (substring src (match-end 0)))
80 (result (ew-crlf-unfold
81 (concat field-name ":"
82 (ew-decode-field field-name field-body)))))
83 (if (member result dsts) t result))))
85 (defun encode-test (src dsts &rest opts)
91 (setq decode-succ-count 0)
92 (setq decode-all-count 0)
93 (defun decode (src dsts &rest opts)
94 (if (stringp dsts) (setq dsts (list dsts)))
95 (setq decode-all-count (1+ decode-all-count))
96 (let ((res (condition-case nil
97 (apply 'decode-test src dsts opts)
101 (setq decode-succ-count (1+ decode-succ-count))
103 (insert (format "\n%S\n'dfail" res)))
106 (setq encode-succ-count 0)
107 (setq encode-all-count 0)
108 (defun encode (src dsts &rest opts)
109 (if (stringp dsts) (setq dsts (list dsts)))
110 (setq encode-all-count (1+ encode-all-count))
111 (let ((res (condition-case nil
112 (apply 'encode-test src dsts opts)
116 (setq encode-succ-count (1+ encode-succ-count))
118 (insert (format "\n%S\n'efail" res)))
123 (format "\n\"Decode: %d/%d Encode: %d/%d Total: %d/%d\""
124 decode-succ-count decode-all-count
125 encode-succ-count encode-all-count
126 (+ decode-succ-count encode-succ-count)
127 (+ decode-all-count encode-all-count))))
131 ;;; Section 1: Decoding examples from RFC2047
134 "From: =?US-ASCII?Q?Keith_Moore?= <moore@cs.utk.edu>"
135 "From: Keith Moore <moore@cs.utk.edu>")
138 "To: =?ISO-8859-1?Q?Keld_J=F8rn_Simonsen?= <keld@dkuug.dk>"
139 "To: Keld J
\e.A
\eNxrn Simonsen <keld@dkuug.dk>")
\e*B
142 "CC: =?ISO-8859-1?Q?Andr=E9?= Pirard <PIRARD@vm1.ulg.ac.be>"
143 "CC: Andr
\e.A
\eNi Pirard <PIRARD@vm1.ulg.ac.be>")
\e*B
146 "Subject: =?ISO-8859-1?B?SWYgeW91IGNhbiByZWFkIHRoaXMgeW8=?=\r
147 =?ISO-8859-2?B?dSB1bmRlcnN0YW5kIHRoZSBleGFtcGxlLg==?="
148 "Subject: If you can read this you understand the example.")
151 "From: =?ISO-8859-1?Q?Olle_J=E4rnefors?= <ojarnef@admin.kth.se>"
152 "From: Olle J
\e.A
\eNdrnefors <ojarnef@admin.kth.se>")
\e*B
155 "From: =?ISO-8859-1?Q?Patrik_F=E4ltstr=F6m?= <paf@nada.kth.se>"
156 "From: Patrik F
\e.A
\eNdltstr
\eNvm <paf@nada.kth.se>")
\e*B
159 "From: Nathaniel Borenstein <nsb@thumper.bellcore.com>\r
160 (=?iso-8859-8?b?7eXs+SDv4SDp7Oj08A==?=)"
161 "From: Nathaniel Borenstein <nsb@thumper.bellcore.com> (
\e.H
\eNm
\eNe
\eNl
\eNy
\eNo
\eNa
\eNi
\eNl
\eNh
\eNt
\eNp)")
\e*B
164 "From: foo@bar.baz (=?ISO-8859-1?Q?a?=)"
165 "From: foo@bar.baz (a)")
168 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= b)"
169 "From: foo@bar.baz (a b)")
172 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
173 "From: foo@bar.baz (ab)")
176 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
177 "From: foo@bar.baz (ab)")
180 "From: foo@bar.baz (=?ISO-8859-1?Q?a?=\r
182 "From: foo@bar.baz (ab)")
185 "From: foo@bar.baz (=?ISO-8859-1?Q?a_b?=)"
186 "From: foo@bar.baz (a b)")
189 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)"
190 "From: foo@bar.baz (a b)")
193 "Subject: (=?ISO-8859-1?Q?a?=)"
194 "Subject: (=?ISO-8859-1?Q?a?=)")
197 "Subject: (=?ISO-8859-1?Q?a?= b)"
198 "Subject: (=?ISO-8859-1?Q?a?= b)")
201 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
202 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
205 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
206 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
209 "Subject: (=?ISO-8859-1?Q?a?=\r
211 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
214 "Subject: (=?ISO-8859-1?Q?a_b?=)"
215 "Subject: (=?ISO-8859-1?Q?a_b?=)")
218 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)"
219 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)")
221 ;;; Section 2: Decoding proper inputs.
224 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
225 "From:
\e$B$"
\e(B <akr@jaist.ac.jp>")
228 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= =?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
230 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
233 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
234 =?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
236 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
239 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
240 =?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
242 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
245 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= \"ja \\\"a\\\"\" <akr@jaist.ac.jp>"
246 "From:
\e$B$"
\e(B \"ja \\\"a\\\"\" <akr@jaist.ac.jp>")
249 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
250 =?ISO-2022-JP?B?GyhC?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
251 =?ISO-2022-JP?B?GyhC?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
252 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)")
255 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
256 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
259 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>"
260 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>")
263 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>"
264 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>")
267 "From: \"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\" <akr@jaist.ac.jp>"
268 "From: \"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\" <akr@jaist.ac.jp>")
271 "From: \"\\\"\\\\\" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \"\\\"\\\\\" <akr@jaist.ac.jp>"
272 "From: \"\\\"\\\\\"
\e$B$"
\e(B \"\\\"\\\\\" <akr@jaist.ac.jp>")
275 "From: < =?ISO-2022-JP?B?GyRCJCIbKEI=?= @jaist.ac.jp>"
276 "From: < =?ISO-2022-JP?B?GyRCJCIbKEI=?= @jaist.ac.jp>")
279 "From: =?ISO-2022-JP?Q?=1B=24BAA=1B=28B?= <akr@jaist.ac.jp>"
280 "From:
\e$BAA
\e(B <akr@jaist.ac.jp>")
283 "From: =?ISO-2022-JP?Q?=1B$BAA=1B(B?= ) <akr@jaist.ac.jp>"
284 "From: =?ISO-2022-JP?Q?=1B$BAA=1B(B?= ) <akr@jaist.ac.jp>")
287 "From: (=?US-ASCII?Q?(?=)foo@bar.baz(=?US-ASCII?Q?))baz@bar.foo(?=)"
288 "From: (=?US-ASCII?Q?(?=)foo@bar.baz(=?US-ASCII?Q?))baz@bar.foo(?=)")
291 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>"
292 "From: \"
\e$B$"
\e(B(
\e$B$"
\e(B)\" <akr@jaist.ac.jp>")
295 "From: =?US-ASCII?Q?=28?= <akr@jaist.ac.jp>, =?US-ASCII?Q?=29?= <akr@jaist.ac.jp>"
296 "From: \"(\" <akr@jaist.ac.jp>, \")\" <akr@jaist.ac.jp>"
297 'ignore-76bytes-limit)
300 "From: =?ISO-2022-JP?B?YSJiGyRCJCIbKEJjXA==?= <akr@jaist.ac.jp>"
301 "From: \"a\\\"b
\e$B$"
\e(Bc\\\\\" <akr@jaist.ac.jp>")
304 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?="
305 "Subject:
\e$B$"
\e(B")
308 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?="
309 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
312 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b"
313 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b")
316 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b"
317 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b")
320 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?="
321 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
324 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)"
325 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)")
328 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)"
329 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)")
332 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?="
333 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
336 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\""
337 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\"")
340 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\""
341 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\"")
344 "Subject: (Re: =?ISO-2022-JP?B?GyRCJCIbKEI=?=)"
345 "Subject: (Re: =?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
348 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:"
349 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:")
352 "Subject: =?ISO-2022-JP?B??="
353 "Subject: =?ISO-2022-JP?B??=")
356 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a\r
357 =?ISO-2022-JP?B?GyRCJCQbKEI=?="
358 "Subject:
\e$B$"
\e(B a
\e$B$$
\e(B")
361 "Subject: =?ISO-2022-JP?B?GyRCMCQbKEIgICAgICAgICAgICAgICAgICAgICAgICAgICAg?=\r
362 =?US-ASCII?Q?____________________________________________________________?=\r
363 =?ISO-2022-JP?B?ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBskQlJfGyhC?="
364 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B")
367 "From: =?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29=22=5C?= <akr@jaist.ac.jp>"
368 "From: \"abcdefghijklmnopqrst
\e.A
\eN!()\\\"\\\\\" <akr@jaist.ac.jp>")
\e*B
375 "Subject: \" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \""
376 "Subject: \"
\e$B$"
\e(B \"")
379 "From: \"\\\\\" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \"\" <akr@jaist.ac.jp>"
380 "From: \"\\\\\"
\e$B$"
\e(B \"\" <akr@jaist.ac.jp>")
383 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B_=1B$B$\"=1B(B?="
384 "Subject:
\e$B$"
\e(B
\e$B$"
\e(B")
387 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B =1B$B$\"=1B(B?="
388 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B =1B$B$\"=1B(B?=")
391 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a =?ISO-8859-8?Q?=E0?="
392 "Subject:
\e$B$"
\e(B a
\e.H
\eN`")
\e*B
395 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
396 "Subject:
\e.H
\eN`
\e$BNm
\e(B")
\e*B
399 "Subject: =?ISO-8859-8?Q?=E0_?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
400 "Subject:
\e.H
\eN`
\e$BNm
\e(B")
\e*B
403 "Subject: =?ISO-2022-JP-2?B?Gy5GG05DGyRCNFg/dBsoQg==?="
404 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B")
\e*B
407 "Subject: =?ISO-8859-7?Q?=C3?= =?ISO-2022-JP?B?GyRCNFg/dBsoQg==?="
408 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B")
\e*B
411 "Subject: =?Shift_JIS?B?gqA=?="
412 "Subject:
\e$B$"
\e(B")
415 "Subject: =?EUC-JP?B?pKI=?="
416 "Subject:
\e$B$"
\e(B")
419 "Subject: = =?ISO-2022-JP?B?GyRCJCIbKEI=?="
420 "Subject: =
\e$B$"
\e(B")
423 "Subject: =? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
424 "Subject: =?
\e$B$"
\e(B")
427 "Subject: =?ISO-2022-JP =?ISO-2022-JP?B?GyRCJCIbKEI=?="
428 "Subject: =?ISO-2022-JP
\e$B$"
\e(B")
431 "Subject: =?ISO-2022-JP? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
432 "Subject: =?ISO-2022-JP?
\e$B$"
\e(B")
435 "Subject: =?ISO-2022-JP?B =?ISO-2022-JP?B?GyRCJCIbKEI=?="
436 "Subject: =?ISO-2022-JP?B
\e$B$"
\e(B")
439 "Subject: =?ISO-2022-JP?B? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
440 "Subject: =?ISO-2022-JP?B?
\e$B$"
\e(B")
443 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI =?ISO-2022-JP?B?GyRCJCIbKEI=?="
444 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI
\e$B$"
\e(B")
447 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI= =?ISO-2022-JP?B?GyRCJCIbKEI=?="
448 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=
\e$B$"
\e(B")
451 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
452 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?
\e$B$"
\e(B")
455 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= =?ISO-2022-JP?B?GyRCJCIbKEI=?="
456 "Subject:
\e$B$"$"
\e(B")
459 "Subject: ==?ISO-2022-JP?B?GyRCJCIbKEI=?="
460 "Subject: ==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
463 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=="
464 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==")
467 "From: akr@jaist.ac.jp (\\=?ISO-2022-JP?B?GyRCJCIbKEI=?=)"
468 "From: akr@jaist.ac.jp (\\=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
471 "=?ISO-2022-JP?B?GyRCJCIbKEI=?=: test"
472 "=?ISO-2022-JP?B?GyRCJCIbKEI=?=: test")
475 "=?ISO-2022-JP?B?GyRCJCIbKEI=?=: test"
476 "=?ISO-2022-JP?B?GyRCJCIbKEI=?=: test"
477 'permit-sticked-special)
479 ;;; Section 3: Decoding melancholic inputs.
482 "From:=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
483 "From:
\e$B$"
\e(B <akr@jaist.ac.jp>")
486 "From: akr@jaist.ac.jp\r
487 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\\a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)"
488 "From: akr@jaist.ac.jp (
\e$B$"
\e(B\\a
\e$B$$
\e(B)")
491 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
492 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
495 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
496 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>")
499 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
500 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>")
503 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
504 "From: (a)
\e$B$"
\e(B <akr@jaist.ac.jp>"
505 'permit-sticked-comment)
508 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
509 "From:
\e$B$"
\e(B(b) <akr@jaist.ac.jp>"
510 'permit-sticked-comment)
513 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
514 "From: (a)
\e$B$"
\e(B(b) <akr@jaist.ac.jp>"
515 'permit-sticked-comment)
518 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
519 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
522 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>"
523 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>")
526 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>"
527 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>")
530 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)\r
532 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
533 'permit-sticked-comment)
536 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
537 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
540 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
541 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
542 'permit-sticked-special)
545 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
546 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
549 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
550 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
551 'permit-sticked-special)
554 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
555 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
558 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
559 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
560 'permit-sticked-special)
563 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
564 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;")
567 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
568 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
569 'permit-sticked-special)
572 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
573 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;")
576 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
577 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
578 'ignore-76bytes-limit 'permit-sticked-special)
581 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>"
582 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>")
585 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>"
586 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
587 'ignore-76bytes-limit 'permit-sticked-special)
590 "Subject:=?ISO-2022-JP?B?GyRCJCIbKEI=?="
591 "Subject:
\e$B$"
\e(B")
593 ;;; Section 4: Decoding invalid inputs.
596 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
598 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCQbKEI=?= <akr@jaist.ac.jp>")
601 "From: akr@jaist.ac.jp\r
602 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)"
603 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)")
606 "From: akr@jaist.ac.jp\r
607 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
608 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)")
611 "From: akr@jaist.ac.jp\r
612 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
613 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
614 'ignore-76bytes-limit)
617 "Subject: =?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
618 "Subject: =?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
621 "Subject: =?ISO-2022-JP=?ISO-2022-JP?B?GyRCJCIbKEI=?="
622 "Subject: =?ISO-2022-JP=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
625 "Subject: =?ISO-2022-JP?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
626 "Subject: =?ISO-2022-JP?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
629 "Subject: =?ISO-2022-JP?B=?ISO-2022-JP?B?GyRCJCIbKEI=?="
630 "Subject: =?ISO-2022-JP?B=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
633 "Subject: =?ISO-2022-JP?B?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
634 "Subject: =?ISO-2022-JP?B?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
637 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?ISO-2022-JP?B?GyRCJCIbKEI=?="
638 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
641 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI==?ISO-2022-JP?B?GyRCJCIbKEI=?="
642 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
645 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
646 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
649 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCIbKEI=?="
650 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
653 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI?="
654 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI?=")
657 "Subject: =?ISO-2022-JP?B?GyRCNFg-dBsoQg==?="
658 "Subject: =?ISO-2022-JP?B?GyRCNFg-dBsoQg==?=")
661 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= =?= =?ISO-2022-JP?B?GyRCJCIbKEI=?="
662 "Subject:
\e$B$"
\e(B=?=
\e$B$"
\e(B")
664 ;;; Section 5: Encoding proper inputs.
667 "From:
\e$B$"
\e(B <akr@jaist.ac.jp>"
668 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
671 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>"
672 "From: =?ISO-2022-JP?B?GyRCJCIkJBsoQg==?= <akr@jaist.ac.jp>")
675 "From:
\e$B$"
\e(B
\e$B$$
\e(B <akr@jaist.ac.jp>"
676 "From: =?ISO-2022-JP?B?GyRCJCIbKEIgGyRCJCQbKEI=?= <akr@jaist.ac.jp>")
679 "From:
\e.A
\eN!
\eN! <akr@jaist.ac.jp>"
\e*B
680 "From: =?ISO-8859-1?Q?=A1_=A1?= <akr@jaist.ac.jp>")
683 "From: \"
\e$B$"
\e(B(
\e$B$"
\e(B)\" <akr@jaist.ac.jp>"
684 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>")
687 "From: \"a\\\"b
\e$B$"
\e(Bc\\\\\" <akr@jaist.ac.jp>"
688 "From: =?ISO-2022-JP?B?YSJiGyRCJCIbKEJjXA==?= <akr@jaist.ac.jp>")
691 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B"
692 "Subject: =?ISO-2022-JP?B?GyRCMCQbKEIgICAgICAgICAgICAgICAgICAgICAgICAgICAg?=\r
693 =?US-ASCII?Q?____________________________________________________________?=\r
694 =?ISO-2022-JP?B?ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBskQlJfGyhC?=")
697 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B"
698 "Subject: =?ISO-2022-JP?B?GyQpQrCkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDS3w=="
699 'ignore-76bytes-limit 'ignore-75bytes-limit)
702 "From:
\e.A
\eN! <akr@jaist.ac.jp>"
\e*B
703 "From: =?ISO-8859-1?Q?=A1?= <akr@jaist.ac.jp>")
706 "From: \"abcdefghijklmnopqrst
\e.A
\eN!()\\\"\\\\\" <akr@jaist.ac.jp>"
\e*B
707 "From: =?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29=22=5C?= <akr@jaist.ac.jp>")
710 "From: akr@jaist.ac.jp (abcdefghijklmnopqrst
\e.A
\eN!\\(\\)\"\\\\)"
\e*B
711 "From: akr@jaist.ac.jp (=?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29\"=5C?=)")
714 "Subject:
\e$B$"
\e(B a
\e.H
\eN`"
\e*B
715 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a =?ISO-8859-8?Q?=E0?=")
718 "Subject:
\e.H
\eN`
\e$BNm
\e(B"
\e*B
719 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?GyRCTm0bKEI=?=")
722 "Subject:
\e.H
\eN`
\e$BNm
\e(B"
\e*B
723 '("Subject: =?ISO-8859-8?Q?=E0_?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
724 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?IBskQk5tGyhC?="))
727 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B"
\e*B
728 '("Subject: =?ISO-8859-7?Q?=C3?= =?ISO-2022-JP?B?GyRCNFg/dBsoQg==?="
729 "Subject: =?ISO-2022-JP-2?B?Gy5GG05DGyRCNFg/dBsoQg==?="))
732 "From: aaaaaaaaaaaaaaaaaaaaa(
\e$B$"$$
\e(B)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
733 "From: aaaaaaaaaaaaaaaaaaaaa(=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
734 =?ISO-2022-JP?B?GyRCJCQbKEI=?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>")
737 "From: aaaaaaaaaaaaaaaaaaaaa (
\e$B$"$$
\e(B)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
738 '("From: aaaaaaaaaaaaaaaaaaaaa
739 (=?ISO-2022-JP?B?GyRCJCIkJBsoQg==?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
740 "From: aaaaaaaaaaaaaaaaaaaaa (=?ISO-2022-JP?B?GyRCJCIbKEI=?=
741 =?ISO-2022-JP?B?GyRCJCQbKEI=?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"))
744 "From: aaaaaaaaaaaaaaaaaaaaa(
\e$B$"$$
\e(B)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
745 '("From: aaaaaaaaaaaaaaaaaaaaa(
746 =?ISO-2022-JP?B?GyRCJCIkJBsoQg==?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
747 "From: aaaaaaaaaaaaaaaaaaaaa( =?ISO-2022-JP?B?GyRCJCIbKEI=?=
748 =?ISO-2022-JP?B?GyRCJCQbKEI=?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"))
751 "From: aaaaaaaaaaaaaaaaaaaaa(
\e$B$"$$
\e(B )aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
752 '("From: aaaaaaaaaaaaaaaaaaaaa(=?ISO-2022-JP?B?GyRCJCIkJBsoQg==?=
753 )aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
754 "From: aaaaaaaaaaaaaaaaaaaaa(=?ISO-2022-JP?B?GyRCJCIbKEI=?=
755 =?ISO-2022-JP?B?GyRCJCQbKEI=?= )aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"))
758 "From: aaaaaaaaaaaaaaaaaaaaa(
\e$B$"$$
\e(B) aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
759 "From: aaaaaaaaaaaaaaaaaaaaa(=?ISO-2022-JP?B?GyRCJCIkJBsoQg==?=)\r
760 aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>")
763 "From: aaaaaaaaaaaaaaaaaaaaa(
\e$B$"
\e(B
\e$B$$
\e(B)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
764 "From: aaaaaaaaaaaaaaaaaaaaa(=?ISO-2022-JP?B?GyRCJCIbKEIgCg==?=\r
765 =?ISO-2022-JP?B?GyRCJCQbKEI=?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>")
768 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
769 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>")
772 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
773 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaa\r
777 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
778 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
782 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
784 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
788 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
790 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
794 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
795 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
796 =?ISO-2022-JP?B?GyhC?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
798 'zero-characters-encoded-word-hack)
801 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
802 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
803 =?ISO-2022-JP?B?GyhC?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
805 'zero-characters-encoded-word-hack)
808 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
809 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)\r
810 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
811 'separate-sticked-tokens-for-fold)
814 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
815 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)=?US-ASCII?Q?aaaaaaaaaaaaaaaaaaaaaaa?=\r
816 =?US-ASCII?Q?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa?= <akr@jaist.ac.jp>"
817 'encode-long-ascii-string-for-fold 'permit-sticked-special)
820 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
821 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
822 aaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
823 'divide-atom-for-fold)
826 "From: (
\e$B$"
\e(B)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
827 '("From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <akr@jaist.ac.jp>"
828 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
830 'ignore-76bytes-limit)
833 "From: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(
\e$B$"
\e(B)aa <akr@jaist.ac.jp>"
834 "From: =?US-ASCII?Q?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa?=\r
835 =?US-ASCII?Q?a?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aa <akr@jaist.ac.jp>"
836 'encode-long-ascii-string-for-fold)
839 "From:
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(
\e$B$"
\e(B)aa <akr@jaist.ac.jp>"
840 "From: =?ISO-2022-JP?B?GyRCJCIbKEIgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ==?=\r
841 =?US-ASCII?Q?aaaaaaaaaaaaaaa?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)aa"
842 'encode-long-ascii-string-for-fold)
845 "From: (
\e$B$"
\e(B) <akr@jaist.ac.jp>"
846 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=) <akr@jaist.ac.jp>")
849 "From: ((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B)))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
850 "From: ((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
851 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))))))))))\r
853 'zero-characters-encoded-word-hack)
856 "From: (((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
857 "From: (((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
858 =?ISO-2022-JP?B?GyRCJCIbKEI=?=)))))))))))))))))))))))))))))))))))))))))\r
860 'zero-characters-encoded-word-hack)
863 "From: ((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B)))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
864 "From: ((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
865 =?ISO-2022-JP?B?GyRCJCIbKEI=?=))))))))))))))))))))))))))))))))))))))))))))))\r
867 'zero-characters-encoded-word-hack)
870 "From: (((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B))))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
871 "From: (((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
872 =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
873 =?ISO-2022-JP?B?GyhC?=)))))))))))))))))))))))))))))))))))))))))))))))\r
875 'zero-characters-encoded-word-hack)
878 "From: ((((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B)))))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
880 ((((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
881 =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
882 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))))))))))))))))))\r
884 'zero-characters-encoded-word-hack)
887 "From: ((((((((((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B)))))))))))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
889 ((((((((((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
890 =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
891 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))))))))))))))))))))))))\r
893 'zero-characters-encoded-word-hack)
896 "From: (((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
898 ((((((((((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
899 =?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
900 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))))))))))))))))))))))))\r
902 'zero-characters-encoded-word-hack)
905 "From: (((((((((((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B))))))))))))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
907 ((((((((((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
908 =?ISO-2022-JP?B?GyhC?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)=?ISO-2022-JP?B?GyhC?=\r
909 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))))))))))))))))))))))))\r
911 'zero-characters-encoded-word-hack)
914 "From: ((((((((((((((((((((((((((((((((((((((((((((((((((((((((
\e$B$"
\e(B)))))))))))))))))))))))))))))))))))))))))))))))))))))))) <akr@jaist.ac.jp>"
916 ((((((((((((((((((((((((((((((((((((((((((((((((((((((=?ISO-2022-JP?B?GyhC?=\r
917 =?ISO-2022-JP?B?GyhC?=((=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
918 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))))))))))=?ISO-2022-JP?B?GyhC?=\r
919 =?ISO-2022-JP?B?GyhC?=))))))))))))))))))))))))\r
921 'zero-characters-encoded-word-hack)
924 "From: ()(
\e$B$"
\e(B)() <akr@jaist.ac.jp>"
925 "From: ()(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)() <akr@jaist.ac.jp>")
928 "From: (
\e$B$"
\e(B)()()()()()()()()()()()()()()()()()()() <akr@jaist.ac.jp>"
929 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)()()()()()()()()()()()()()()()()()()()\r
933 "From: (
\e$B$"
\e(B)()()()()()()()()()()()()()()()()()()()()()() <akr@jaist.ac.jp>"
935 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)()()()()()()()()()()()()()()()()()()()()()()\r
939 "From: (
\e$B$"
\e(B)()()()()()()()()()()()()()()()()()()()()()()() <akr@jaist.ac.jp>"
940 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
941 =?ISO-2022-JP?B?GyhC?=)()()()()()()()()()()()()()()()()()()()()()()()\r
943 'zero-characters-encoded-word-hack)
946 "From: (
\e$B$"
\e(B)()()()()()()()()()()()()()()()()()()()()()()()()()()() <akr@jaist.ac.jp>"
947 "From: (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
948 =?ISO-2022-JP?B?GyhC?=)()()()()()()()()()()()()()()()(=?ISO-2022-JP?B?GyhC?=\r
949 =?ISO-2022-JP?B?GyhC?=)()()()()()()()()()()() <akr@jaist.ac.jp>"
950 'zero-characters-encoded-word-hack)
953 "To: l@d (
\e$B$"
\e(B aaa)(
\e$B$"
\e(B)"
954 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEI=?= aaa)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
957 "To: l@d (
\e$B$"
\e(B aaaa)(
\e$B$"
\e(B)"
958 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
959 aaaa)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
962 "To: l@d (
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)(
\e$B$"
\e(B)"
963 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
964 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
967 "To: l@d (
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)(
\e$B$"
\e(B)"
968 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEIgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWE=?=\r
969 =?US-ASCII?Q?aaaaaaaaaaaaaaaaaa?=)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)"
970 'encode-long-ascii-string-for-fold)
973 "To: l@d (
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa()
\e$B$"
\e(B)"
974 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEIgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWE=?=\r
975 =?US-ASCII?Q?aaaaaaaaaaaaaaaaaa?=()=?ISO-2022-JP?B?GyRCJCIbKEI=?=)"
976 'encode-long-ascii-string-for-fold)
979 "To: l@d (
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
\e$B$"
\e(B)(
\e$B$"
\e(B)"
980 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEI=?= aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
981 =?ISO-2022-JP?B?GyRCJCIbKEI=?=)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
984 "To: l@d (
\e$B$"
\e(B aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
\e$B$"
\e(B)(
\e$B$"
\e(B)"
985 "To: l@d (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
986 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r
987 =?ISO-2022-JP?B?GyRCJCIbKEI=?=)(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
989 ;----------------------------------------------------------------------------
991 ;;; Section 6: Encoding melancholic inputs.
994 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
995 "From: akr@jaist.ac.jp\r
996 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
997 'ignore-76bytes-limit)
1000 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
1001 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\r
1002 =?ISO-2022-JP?B?GyhC?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
1003 =?ISO-2022-JP?B?GyhC?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
1004 'zero-characters-encoded-word-hack)
1007 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
1008 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>"
1009 'encode-sticked-comment-as-atom)
1012 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
1013 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)\r
1015 'permit-sticked-comment)
1018 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
1019 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)\r
1021 'separate-sticked-comment)
1024 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
1025 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
1026 'permit-sticked-special)
1029 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
1030 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
1031 'separate-sticked-special)
1034 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
1035 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
1036 'permit-sticked-special)
1039 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
1040 "To: <akr@jaist.ac.jp>, =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
1041 'separate-sticked-special)
1044 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
1045 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
1046 'permit-sticked-special)
1049 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
1050 "To: akr@jaist.ac.jp, =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
1051 'separate-sticked-special)
1054 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
1055 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
1056 'permit-sticked-special)
1059 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
1060 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= :akr@jaist.ac.jp;"
1061 'separate-sticked-special)
1064 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
1065 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
1066 'ignore-76bytes-limit 'permit-sticked-special)
1069 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
1070 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
1071 =?ISO-2022-JP?B?GyhC?=<akr@jaist.ac.jp>;"
1072 'zero-characters-encoded-word-hack 'permit-sticked-special)
1075 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
1076 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= : =?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
1078 'separate-sticked-special)
1081 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
1082 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>"
1083 'ignore-76bytes-limit 'permit-sticked-special)
1086 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
1087 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
1088 =?ISO-2022-JP?B?GyhC?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=\r
1089 =?ISO-2022-JP?B?GyhC?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>"
1090 'zero-characters-encoded-word-hack 'permit-sticked-special)
1093 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
1094 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= : =?ISO-2022-JP?B?GyRCJCQbKEI=?=\r
1095 <foo@bar>, =?ISO-2022-JP?B?GyRCJCYbKEI=?= <foo@bar>;,\r
1096 =?ISO-2022-JP?B?GyRCJCgbKEI=?= <foo@bar>"
1097 'separate-sticked-special)
1099 ;;; Section 7: Using embedded-encoded-words.
1101 ;; embedded-encoded-word
\e$BI=8=
\e(B
1103 ;; RFC2047
\e$B$N%G%3!<%@$O@x:_E*$K
\e(B(
\e$B%G%3!<%I7k2L$G$J$/
\e(B) encoded-word
\e$B$=$N$b$N$r
\e(B
1104 ;;
\e$B=PNO$7$J$1$l$P$J$i$J$$$3$H$,$"$k!#
\e(B
1106 ;; 1.
\e$BCN$i$J$$
\e(B charset
\e$B$b$7$/$O
\e(B encoding
\e$B$,;XDj$5$l$F$$$?$H$-!#
\e(B
1107 ;; =?unknown-charset?known-encoding?some-encoded-text?=
1108 ;; =?known-charset?unknown-encoding?some-encoded-text?=
1109 ;; =?unknown-charset?unknown-encoding?some-encoded-text?=
1111 ;; 2.
\e$B%G%3!<%I$G$-$F$bFbMF$,7uF]$9$.$k$H$-!#
\e(B
1112 ;; Non ASCII
\e$B3HD%
\e(B RFC822
\e$B$NCf$K
\e(B =?US-ASCII?Q?=0D=0A=0D=0A?=
\e$B$N%G%3!<%I
\e(B
1113 ;;
\e$B7k2L$rKd$a9~$`$N$O4m81$9$.$k!#
\e(B
1115 ;;
\e$B$^$?!"%G%3!<%@$O
\e(B encoded-word
\e$B$N$h$&$K$_$($k%G%3!<%I7k2L$r=PNO$7$J$1
\e(B
1116 ;;
\e$B$l$P$J$i$J$$$3$H$b$"$k!#
\e(B
1118 ;; =?US-ASCII?Q?=3D=3FUS-ASCII=3FQ=3Ftext=3F=3D?=
1120 ;;
\e$B%G%3!<%@$,C1$J$kJ8;zNs$r=PNO$9$k>l9g!"C1=c$K$O
\e(B encoded-word
\e$B$=$N$b$N$H
\e(B
1121 ;; encoded-word
\e$B$N$h$&$K$_$($kJ8;zNs$r6hJL$G$-$J$$!#
\e(B
1122 ;;
\e$B$3$3$G$OJ8;zNsCf$G$=$l$i$r3N<B$K6hJL$7$FI=8=$9$kJ}K!$r<($9!#
\e(B
1124 ;; rule 1:
\e$BJ8;zNsCf$G
\e(B =?charset?encoding?text?=
\e$B$H$$$&%Q%?!<%s$K
\e(B
1125 ;;
\e$B%^%C%A$7$J$$ItJ,$O$=$NItJ,$N$^$^$NFbMF$rI=$9!#
\e(B
1127 ;; rule 2:
\e$BJ8;zNsCf$G
\e(B =?charset?encoding?text?=
\e$B$H$$$&%Q%?!<%s$K
\e(B
1128 ;;
\e$B%^%C%A$9$kItJ,$O
\e(B charset
\e$B$N@hF,$K
\e(B +
\e$B$,$$$/$DIU$$$F$$$k$+$GFbMF$N
\e(B
1129 ;;
\e$B2r<a$rJQ$($k!#
\e(B
1131 ;; 3
\e$B$rK!$H$7$F
\e(B0
\e$B$HEy$7$$>l9g
\e(B(0, 3, 6, ...): charset
\e$B$N@hF,$N
\e(B +
\e$B$N?t$r
\e(B
1132 ;; 1/3
\e$B$K$7$?J8;zNs
\e(B
1133 ;; 3
\e$B$rK!$H$7$F
\e(B1
\e$B$HEy$7$$>l9g
\e(B(1, 4, 7, ...): charset
\e$B$N@hF,$N
\e(B +
\e$B$N?t$r
\e(B
1134 ;; 1/3 (
\e$B>.?tE@0J2<@Z<N$F
\e(B)
\e$B$K$7$F!"$=$l$r
\e(B encoded-word
\e$B$H;W$C$F%G
\e(B
1135 ;;
\e$B%3!<%I$7$?J8;zNs!#
\e(B
1136 ;; 3
\e$B$rK!$H$7$F
\e(B2
\e$B$HEy$7$$>l9g
\e(B(2, 5, 8, ...): charset
\e$B$N@hF,$N
\e(B +
\e$B$N?t$r
\e(B
1137 ;; 1/3 (
\e$B>.?tE@0J2<@Z<N$F
\e(B)
\e$B$K$7$F!":G8e$N
\e(B =
\e$B$r<h$j=|$$$?J8;zNs
\e(B
1139 ;; =?c?e?t?=?c?e?t?=...
\e$B$H$$$&$h$&$K!"%Q%?!<%s$N@hF,$N
\e(B =
\e$B$H
\e(B
\e$BKvHx$N
\e(B =
1140 ;;
\e$B=E$J$k>l9g!"4q?tHVL\$N$b$N$KBP$7$F>e5-$N%k!<%k$rE,MQ$9$k!#
\e(B
1142 ;; NOTE: +
\e$B$r
\e(B embedded-encoded-word
\e$BI=8=$N
\e(B quote
\e$BJ8;z$H8F$V!#
\e(B
1144 ;; NOTE:
\e$B8=;~E@
\e(B(1998/07/19)
\e$B$G
\e(B IANA
\e$B$K$O
\e(B +
\e$B$r4^$`
\e(B charset
\e$B$O
\e(B
1145 ;;
\e$BEPO?$5$l$F$$$J$$$N$G!"$=$l$i$N
\e(B charset
\e$B$r;H$C$?
\e(B
1146 ;; encoded-word
\e$B$rI=8=$9$k$K$O
\e(B +
\e$B$r
\e(B 1
\e$B$D$D$1$k$3$H$K$J$k!#
\e(B
1148 ;; =?US-ASCII?Q?abcdef?=
\e$B$H$$$&
\e(Bencoded-word : =?+US-ASCII?Q?abcdef?=
1150 ;; =?US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?US-ASCII?Q?abcdef?=
1151 ;; =?+US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?+++US-ASCII?Q?abcdef?=
1152 ;; =?++US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?++++++US-ASCII?Q?abcdef?=
1153 ;; =?+++US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?+++++++++US-ASCII?Q?abcdef?=
1154 ;; =?US-ASCII+?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?US-ASCII+?Q?abcdef?=
1155 ;; =?U+S-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?U+S-ASCII?Q?abcdef?=
1157 ;; =?US-ASCII?Q?abcdef?
\e$B$H$$$&J8;zNs
\e(B : =?++US-ASCII?Q?abcdef?=
1158 ;; =?+US-ASCII?Q?abcdef?
\e$B$H$$$&J8;zNs
\e(B : =?+++++US-ASCII?Q?abcdef?=
1159 ;; =?++US-ASCII?Q?abcdef?
\e$B$H$$$&J8;zNs
\e(B : =?++++++++US-ASCII?Q?abcdef?=
1160 ;; =?+++US-ASCII?Q?abcdef?
\e$B$H$$$&J8;zNs
\e(B : =?+++++++++++US-ASCII?Q?abcdef?=
1162 ;; NOTE: encoded-word
\e$B$K8+$($kJ8;zNs$G
\e(B +
\e$B$,
\e(B 3
\e$BG\A}$5$l$k$N$O
\e(B charset
\e$B$N
\e(B
1163 ;;
\e$B@hF,$@$1$G$"$j!"
\e(Bencoding
\e$B$d
\e(B encoded-text
\e$B$O$?$H$(
\e(B +
\e$B$,F~$C$F$$$F$b
\e(B
1164 ;;
\e$BJQ2=$7$J$$!#$^$?!"
\e(Bcharset
\e$BCf$G$b
\e(B
\e$B@hF,0J30$N
\e(B +
\e$B$OJQ2=$7$J$$!#
\e(B
1166 ;; NOTE: charset
\e$B$H
\e(B encoding
\e$B$K$O
\e(B =
\e$B$O4^$^$l$J$$$N$G
\e(B 1
\e$BJ8;z0J>e=E$J$k$3
\e(B
1167 ;;
\e$B$H$O$J$$!#
\e(B
1169 ;; rule 3:
\e$BJ8;zNsA4BN$NFbMF$O!"
\e(Brule 1
\e$B$H
\e(B rule 2
\e$B$G2r<a$7$?3FItJ,$N
\e(B
1170 ;;
\e$BJ8;zNs$rC1=c$KO"7k$7$?J8;zNs$H$9$k!#
\e(B
1172 ;; NOTE: RFC2047
\e$B$G$O
\e(B encoded-word
\e$B$,6uGr$G6h@Z$i$l$J$1$l$P$J$i$J$$$H$+!"
\e(B
1173 ;; encoded-word
\e$B$O
\e(B 75bytes
\e$B0J2<$G$J$1$l$P$J$i$J$$$H$+!"
\e(B
1174 ;; encoded-word
\e$B$,4^$^$l$k9T$O
\e(B 76bytes
\e$B0J2<$G$J$1$l$P$J$i$J$$$J$I$H$$$&
\e(B
1175 ;;
\e$B5,Ls$,$"$k$,!"
\e(Bembedded-encoded-word
\e$BI=8=$G$O$=$l$i$O:NMQ$7$J$$!#
\e(B
1176 ;;
\e$BC1=c$K
\e(B encoded-word
\e$BFbIt$NJ8K!$@$1$rMxMQ$9$k!#
\e(B
1177 ;; (
\e$BK\<AE*$K$O0[$J$kJ8K!$r:NMQ$9$k$3$H$b2DG=$G$"$k$,!"
\e(BRFC2047
\e$B$K7I0U$r
\e(B
1178 ;;
\e$BI=$7$F
\e(B encoded-word
\e$B$NJ8K!$r:NMQ$9$k!#
\e(B)
1180 ;; NOTE: embedded-encoded-word
\e$BI=8=$7$?J8;zNs$NO"7k$O0BA4$G$O$J$$!#
\e(B
1181 ;; =?+US-ASCII?Q?ab
\e$B$H
\e(B cd?=
\e$B$H$$$&
\e(B embedded-encoded-word
\e$BI=8=$7$?J8;zNs$O
\e(B
1182 ;;
\e$B$=$l$>$l$=$NJ8;zNs$=$N$b$N$rI=8=$9$k$,!"$=$l$i$rO"7k$7$?J8;zNs
\e(B
1183 ;; =?+US-ASCII?Q?abcd?=
\e$B$O
\e(B abcd
\e$B$H$$$&J8;zNs$rI=8=$9$k$3$H$K$J$j!"
\e(B
1184 ;;
\e$B$=$l$>$l$NFbMF$NO"7k$H$O$J$i$J$$!#
\e(B
1186 ;;
\e$B$3$l$O$H$/$K
\e(B Non ASCII
\e$B3HD%
\e(B RFC822
\e$B$NCf$K
\e(B embedded-encoded-word
\e$BI=8=$r
\e(B
1187 ;;
\e$BKd$a9~$`$H$-$K5$$rIU$1$J$1$l$P$J$i$J$$!#
\e(B(
\e$BKd$a9~$s$@7k2L$O@5$7$$
\e(B
1188 ;; embedded-encoded-word
\e$BI=8=$H$O$J$i$J$$$+$bCN$l$J$$!#
\e(B)
1191 "Subject: =?Unknown-Charset?B?gqA=?="
1192 "Subject: =?+Unknown-Charset?B?gqA=?="
1193 'embedded-encoded-word)
1196 "Subject: =?US-ASCII?G?H4sIACqUszUAA8tIzcnJBwCGphA2BQAAAA==?="
1197 "Subject: =?+US-ASCII?G?H4sIACqUszUAA8tIzcnJBwCGphA2BQAAAA==?="
1198 'embedded-encoded-word)
1201 "Subject: =?US-ASCII?Unknown-Encoding?H4sIAGOUszUAAwtyczYyMDEHAEpvqpIHAAAA?="
1202 "Subject: =?+US-ASCII?Unknown-Encoding?H4sIAGOUszUAAwtyczYyMDEHAEpvqpIHAAAA?="
1203 'embedded-encoded-word)
1206 "Subject: =?ISO-2022-JP?G?H4sIAGiTszUAA5NWcVIBAhMtaQ0nAGLSaeEMAAAA?=\r
1207 =?ISO-2022-JP?G?H4sIAH6TszUAA5NWcVIxV3FTyVbxldZwAgAuIikKDgAAAA==?="
1208 "Subject: =?+ISO-2022-JP?G?H4sIAGiTszUAA5NWcVIBAhMtaQ0nAGLSaeEMAAAA?==?+ISO-2022-JP?G?H4sIAH6TszUAA5NWcVIxV3FTyVbxldZwAgAuIikKDgAAAA==?="
1209 'embedded-encoded-word)
1212 "Subject: =?Unknown-Charset?B?gqA=?= =?Unknown-Charset?B?gqA=?="
1213 "Subject: =?+Unknown-Charset?B?gqA=?==?+Unknown-Charset?B?gqA=?="
1214 'embedded-encoded-word)
1217 "Subject: =?Unknown-Charset?B?gqA=?= =?Unknown-Charset?B?gqA=?="
1218 "Subject: =?+Unknown-Charset?B?gqA=?==?+Unknown-Charset?B?gqA=?="
1219 'embedded-encoded-word)
1222 "Subject: =?Unknown-Charset?B?gqA=?=\r
1223 =?Unknown-Charset?B?gqA=?="
1224 "Subject: =?+Unknown-Charset?B?gqA=?==?+Unknown-Charset?B?gqA=?="
1225 'embedded-encoded-word)
1228 "Subject: =?Unknown-Charset?B?gqA=?=\r
1229 =?Unknown-Charset?B?gqA=?="
1230 "Subject: =?+Unknown-Charset?B?gqA=?==?+Unknown-Charset?B?gqA=?="
1231 'embedded-encoded-word)
1234 "Subject: a=?Unknown-Charset?B?gqA=?="
1235 "Subject: a=?Unknown-Charset?B?gqA=?="
1236 'embedded-encoded-word)
1239 "Subject: =?Unknown-Charset?B?gqA=?=b"
1240 "Subject: =?Unknown-Charset?B?gqA=?=b"
1241 'embedded-encoded-word)
1244 "Subject: a=?Unknown-Charset?B?gqA=?=b"
1245 "Subject: a=?Unknown-Charset?B?gqA=?=b"
1246 'embedded-encoded-word)
1249 "Subject: a =?Unknown-Charset?B?gqA=?= b"
1250 "Subject: a =?+Unknown-Charset?B?gqA=?= b"
1251 'embedded-encoded-word)
1254 "Subject: =?ISO-2022-JP?B?DQoNCg==?="
1255 "Subject: =?+US-ASCII?Q?=0D=0A=0D=0A?="
1256 'embedded-encoded-word)
1259 "Subject: =?US-ASCII?Q?a=0D=0A_b?="
1261 'embedded-encoded-word)
1264 "Subject: =?US-ASCII?Q?a=0D=0Ab?="
1265 "Subject: a=?+US-ASCII?Q?=0D=0A?=b"
1266 'embedded-encoded-word)
1268 ;;; Section 8: CR and LF.
1271 "From: akr@jaist.ac.jp (\r\\\n)"
1272 "From: akr@jaist.ac.jp (\r\\\n)")
1275 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= =?US-ASCII?Q?a?=)"
1276 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= a)")
1279 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A_?=)"
1280 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A_?=)")
1283 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A=09?=)"
1284 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A=09?=)")
1287 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= )"
1288 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= )")
1291 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= )"
1292 "From: akr@jaist.ac.jp (\r=?US-ASCII?Q?=0A?= )")
1295 "From: akr@jaist.ac.jp (\\\r\\\n)"
1296 "From: akr@jaist.ac.jp (\\\r\\\n)")
1299 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A?= =?US-ASCII?Q?a?=)"
1300 "From: akr@jaist.ac.jp (=?+US-ASCII?Q?=0D=0A?=a)"
1301 'embedded-encoded-word)
1304 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0Aa?=)"
1305 "From: akr@jaist.ac.jp (=?+US-ASCII?Q?=0D=0A?=a)"
1306 'embedded-encoded-word)
1309 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A_?=)"
1310 "From: akr@jaist.ac.jp (\\ )")
1313 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A=09?=)"
1314 "From: akr@jaist.ac.jp (\\ )")
1317 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A?= )"
1318 "From: akr@jaist.ac.jp (\\ )")
1321 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A?= )"
1322 "From: akr@jaist.ac.jp (\\ )")
1325 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A?=\r
1326 =?US-ASCII?Q?=0D=0A?= =?US-ASCII?Q?a?=)"
1327 "From: akr@jaist.ac.jp (=?+US-ASCII?Q?=0D=0A=0D=0A?=a)"
1328 'embedded-encoded-word)
1331 "From: akr@jaist.ac.jp (\\\r=?US-ASCII?Q?=0A?=\r
1332 =?US-ASCII?Q?=0D?=\\\n =?US-ASCII?Q?a?=)"
1333 "From: akr@jaist.ac.jp (=?+US-ASCII?Q?=0D=0A?=\r\\
1335 'embedded-encoded-word)
1341 ;----------------------------------------------------------------------------