1 ;----------------------------------------------------------------------------
2 ;-------- This sequece of HYPHEN-MINUS is 76 bytes long. --------------------
3 ;----------------------------------------------------------------------------
6 ;encode-sticked-comment-as-atom ; violate policy preventing structure
7 ;ignore-75bytes-limit ; violate RFC2047
8 ;ignore-76bytes-limit ; violate RFC2047
9 ;permit-sticked-comment ; violate RFC2047
10 ;permit-sticked-special ; violate RFC2047
11 ;separate-sticked-comment ; violate policy preserving absence of space
12 ;separate-sticked-special ; violate policy preserving absence of space
13 ;zero-characters-encoded-word-hack ; violate common sense (very tricky)
14 ;quoted-encoded-word ; violate character sequence semantics
16 ;;; test driver for FLAM (and FLIM)
18 (defun decode-flam (src dsts &rest opts)
19 (setq eword-lexical-analyze-cache nil)
20 (setq eword-decode-sticked-encoded-word
21 (or (memq 'permit-sticked-comment opts)
22 (memq 'permit-sticked-special opts)))
23 (setq eword-decode-quoted-encoded-word nil)
25 (insert src "\n" mail-header-separator)
26 (eword-decode-header 'us-ascii mail-header-separator)
27 (goto-char (point-min))
28 (std11-narrow-to-header mail-header-separator)
30 (let ((result (buffer-substring (point-min) (point))))
31 (if (member result dsts) t result))))
33 (defun encode-flam (src dsts &rest opts)
34 (setq eword-lexical-analyze-cache nil)
35 (setq eword-decode-sticked-encoded-word nil)
36 (setq eword-decode-quoted-encoded-word nil)
38 (insert src "\n" mail-header-separator)
39 (goto-char (point-min))
40 (eword-encode-header 'us-ascii)
41 (goto-char (point-min))
42 (std11-narrow-to-header mail-header-separator)
44 (let ((result (buffer-substring (point-min) (point))))
45 (if (member result dsts) t result))))
47 (setq decode-test 'decode-flam)
48 (setq encode-test 'encode-flam)
50 (setq decode-succ-count 0)
51 (setq decode-all-count 0)
52 (defun decode (src dsts &rest opts)
53 (if (stringp dsts) (setq dsts (list dsts)))
54 (setq decode-all-count (1+ decode-all-count))
55 (let ((res (condition-case nil
56 (apply decode-test src dsts opts)
59 (setq decode-succ-count (1+ decode-succ-count))
60 (insert (format "\n;fail;%S" res)))
63 (setq encode-succ-count 0)
64 (setq encode-all-count 0)
65 (defun encode (src dsts &rest opts)
66 (if (stringp dsts) (setq dsts (list dsts)))
67 (setq encode-all-count (1+ decode-all-count))
68 (let ((res (condition-case nil
69 (apply encode-test src dsts opts)
72 (setq encode-succ-count (1+ encode-succ-count))
73 (insert (format "\n;fail;%S" res)))
78 (format "\n\"Decode: %d/%d Encode: %d/%d\""
79 decode-succ-count decode-all-count
80 encode-succ-count encode-all-count)))
85 ;; Section 1: Decoding examples from RFC2047
88 "From: =?US-ASCII?Q?Keith_Moore?= <moore@cs.utk.edu>"
89 "From: Keith Moore <moore@cs.utk.edu>")
92 "To: =?ISO-8859-1?Q?Keld_J=F8rn_Simonsen?= <keld@dkuug.dk>"
93 "To: Keld J
\e.A
\eNxrn Simonsen <keld@dkuug.dk>")
\e*B
96 "CC: =?ISO-8859-1?Q?Andr=E9?= Pirard <PIRARD@vm1.ulg.ac.be>"
97 "CC: Andr
\e.A
\eNi Pirard <PIRARD@vm1.ulg.ac.be>")
\e*B
100 "Subject: =?ISO-8859-1?B?SWYgeW91IGNhbiByZWFkIHRoaXMgeW8=?=
101 =?ISO-8859-2?B?dSB1bmRlcnN0YW5kIHRoZSBleGFtcGxlLg==?="
102 "Subject: If you can read this you understand the example.")
105 "From: =?ISO-8859-1?Q?Olle_J=E4rnefors?= <ojarnef@admin.kth.se>"
106 "From: Olle J
\e.A
\eNdrnefors <ojarnef@admin.kth.se>")
\e*B
109 "From: =?ISO-8859-1?Q?Patrik_F=E4ltstr=F6m?= <paf@nada.kth.se>"
110 "From: Patrik F
\e.A
\eNdltstr
\eNvm <paf@nada.kth.se>")
\e*B
113 "From: Nathaniel Borenstein <nsb@thumper.bellcore.com>
114 (=?iso-8859-8?b?7eXs+SDv4SDp7Oj08A==?=)"
115 "From: Nathaniel Borenstein <nsb@thumper.bellcore.com> (
\e.H
\eNm
\eNe
\eNl
\eNy
\eNo
\eNa
\eNi
\eNl
\eNh
\eNt
\eNp)")
\e*B
119 "From: foo@bar.baz (=?ISO-8859-1?Q?a?=)"
120 "From: foo@bar.baz (a)")
123 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= b)"
124 "From: foo@bar.baz (a b)")
127 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
128 "From: foo@bar.baz (ab)")
131 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
132 "From: foo@bar.baz (ab)")
135 "From: foo@bar.baz (=?ISO-8859-1?Q?a?=
137 "From: foo@bar.baz (ab)")
140 "From: foo@bar.baz (=?ISO-8859-1?Q?a_b?=)"
141 "From: foo@bar.baz (a b)")
144 "From: foo@bar.baz (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)"
145 "From: foo@bar.baz (a b)")
148 "Subject: (=?ISO-8859-1?Q?a?=)"
149 "Subject: (=?ISO-8859-1?Q?a?=)")
152 "Subject: (=?ISO-8859-1?Q?a?= b)"
153 "Subject: (=?ISO-8859-1?Q?a?= b)")
156 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
157 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
160 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)"
161 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
164 "Subject: (=?ISO-8859-1?Q?a?=
166 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-1?Q?b?=)")
169 "Subject: (=?ISO-8859-1?Q?a_b?=)"
170 "Subject: (=?ISO-8859-1?Q?a_b?=)")
173 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)"
174 "Subject: (=?ISO-8859-1?Q?a?= =?ISO-8859-2?Q?_b?=)")
176 ;; Section 2: Decoding trivial inputs.
179 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
180 "From:
\e$B$"
\e(B <akr@jaist.ac.jp>")
183 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= =?ISO-2022-JP?B?GyRCJCQbKEI=?=
185 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
188 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=
189 =?ISO-2022-JP?B?GyRCJCQbKEI=?=
191 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
194 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=
195 =?ISO-2022-JP?B?GyRCJCQbKEI=?=
197 "From:
\e$B$"$$
\e(B <akr@jaist.ac.jp>")
200 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=
201 =?ISO-2022-JP?B?GyhC?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=
202 =?ISO-2022-JP?B?GyhC?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
203 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)")
206 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
207 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
210 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>"
211 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>")
214 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>"
215 "From: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b <akr@jaist.ac.jp>")
218 "From: \"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\" <akr@jaist.ac.jp>"
219 "From: \"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\" <akr@jaist.ac.jp>")
222 "From: \"\\\"\\\\\" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \"\\\"\\\\\" <akr@jaist.ac.jp>"
223 "From: \"\\\"\\\\\"
\e$B$"
\e(B \"\\\"\\\\\" <akr@jaist.ac.jp>")
226 "From: < =?ISO-2022-JP?B?GyRCJCIbKEI=?= @jaist.ac.jp>"
227 "From: < =?ISO-2022-JP?B?GyRCJCIbKEI=?= @jaist.ac.jp>")
231 "From: =?ISO-2022-JP?Q?=1B=24BAA=1B=28B?= <akr@jaist.ac.jp>"
232 "From:
\e$BAA
\e(B <akr@jaist.ac.jp>")
235 "From: =?ISO-2022-JP?Q?=1B$BAA=1B(B?= ) <akr@jaist.ac.jp>"
236 "From: =?ISO-2022-JP?Q?=1B$BAA=1B(B?= ) <akr@jaist.ac.jp>")
239 "From: (=?US-ASCII?Q?(?=)foo@bar.baz(=?US-ASCII?Q?))baz@bar.foo(?=)"
240 "From: (=?US-ASCII?Q?(?=)foo@bar.baz(=?US-ASCII?Q?))baz@bar.foo(?=)")
243 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>"
244 "From: \"
\e$B$"
\e(B(
\e$B$"
\e(B)\" <akr@jaist.ac.jp>")
247 "From: =?US-ASCII?Q?=28?= <akr@jaist.ac.jp>, =?US-ASCII?Q?=29?= <akr@jaist.ac.jp>"
248 "From: \"(\" <akr@jaist.ac.jp>, \")\" <akr@jaist.ac.jp>")
251 "From: =?ISO-2022-JP?B?YSJiGyRCJCIbKEJjXA==?= <akr@jaist.ac.jp>"
252 "From: \"a\\\"b
\e$B$"
\e(Bc\\\\\" <akr@jaist.ac.jp>")
255 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?="
256 "Subject:
\e$B$"
\e(B")
259 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?="
260 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
263 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b"
264 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=b")
267 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b"
268 "Subject: a=?ISO-2022-JP?B?GyRCJCIbKEI=?=b")
271 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?="
272 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
275 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)"
276 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)")
279 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)"
280 "Subject: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b)")
283 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?="
284 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
287 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\""
288 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\"")
291 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\""
292 "Subject: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\"")
295 "Subject: (Re: =?ISO-2022-JP?B?GyRCJCIbKEI=?=)"
296 "Subject: (Re: =?ISO-2022-JP?B?GyRCJCIbKEI=?=)")
299 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:"
300 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:")
303 "Subject: =?ISO-2022-JP?B??="
304 "Subject: =?ISO-2022-JP?B??=")
307 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a
308 =?ISO-2022-JP?B?GyRCJCQbKEI=?="
309 "Subject:
\e$B$"
\e(B a
\e$B$$
\e(B")
312 "Subject: =?ISO-2022-JP?B?GyRCMCQbKEIgICAgICAgICAgICAgICAgICAgICAgICAgICAg?=
313 =?US-ASCII?Q?____________________________________________________________?=
314 =?ISO-2022-JP?B?ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBskQlJfGyhC?="
315 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B")
318 "From: =?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29=22=5C?= <akr@jaist.ac.jp>"
319 "From: \"abcdefghijklmnopqrst
\e.A
\eN!()\\\"\\\\\" <akr@jaist.ac.jp>")
\e*B
326 "Subject: \" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \""
327 "Subject: \"
\e$B$"
\e(B \"")
330 "From: \"\\\\\" =?ISO-2022-JP?B?GyRCJCIbKEI=?= \"\" <akr@jaist.ac.jp>"
331 "From: \"\\\\\"
\e$B$"
\e(B \"\" <akr@jaist.ac.jp>")
334 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B_=1B$B$\"=1B(B?="
335 "Subject:
\e$B$"
\e(B
\e$B$"
\e(B")
338 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B =1B$B$\"=1B(B?="
339 "Subject: =?ISO-2022-JP?Q?=1B$B$\"=1B(B =1B$B$\"=1B(B?=")
342 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a =?ISO-8859-8?Q?=E0?="
343 "Subject:
\e$B$"
\e(B a
\e.H
\eN`")
\e*B
346 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
347 "Subject:
\e.H
\eN`
\e$BNm
\e(B")
\e*B
350 "Subject: =?ISO-8859-8?Q?=E0_?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
351 "Subject:
\e.H
\eN`
\e$BNm
\e(B")
\e*B
354 "Subject: =?ISO-2022-JP-2?B?Gy5GG05DGyRCNFg/dBsoQg==?="
355 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B")
\e*B
358 "Subject: =?ISO-8859-7?Q?=C3?= =?ISO-2022-JP?B?GyRCNFg/dBsoQg==?="
359 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B")
\e*B
362 "Subject: =?Shift_JIS?B?gqA=?="
363 "Subject:
\e$B$"
\e(B"
364 'quoted-encoded-word)
367 "Subject: =?EUC-JP?B?pKI=?="
368 "Subject:
\e$B$"
\e(B"
369 'quoted-encoded-word)
372 "Subject: = =?ISO-2022-JP?B?GyRCJCIbKEI=?="
373 "Subject: =
\e$B$"
\e(B")
376 "Subject: =? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
377 "Subject: =?
\e$B$"
\e(B")
380 "Subject: =?ISO-2022-JP =?ISO-2022-JP?B?GyRCJCIbKEI=?="
381 "Subject: =?ISO-2022-JP
\e$B$"
\e(B")
384 "Subject: =?ISO-2022-JP? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
385 "Subject: =?ISO-2022-JP?
\e$B$"
\e(B")
388 "Subject: =?ISO-2022-JP?B =?ISO-2022-JP?B?GyRCJCIbKEI=?="
389 "Subject: =?ISO-2022-JP?B
\e$B$"
\e(B")
392 "Subject: =?ISO-2022-JP?B? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
393 "Subject: =?ISO-2022-JP?B?
\e$B$"
\e(B")
396 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI =?ISO-2022-JP?B?GyRCJCIbKEI=?="
397 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI
\e$B$"
\e(B")
400 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI= =?ISO-2022-JP?B?GyRCJCIbKEI=?="
401 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=
\e$B$"
\e(B")
404 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=? =?ISO-2022-JP?B?GyRCJCIbKEI=?="
405 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?
\e$B$"
\e(B")
408 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= =?ISO-2022-JP?B?GyRCJCIbKEI=?="
409 "Subject:
\e$B$"$"
\e(B")
412 "Subject: ==?ISO-2022-JP?B?GyRCJCIbKEI=?="
413 "Subject: ==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
416 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=="
417 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==")
419 ;; Section 3: Decoding melancholy inputs.
422 "From:=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
423 "From:=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
427 "From: akr@jaist.ac.jp
428 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=\\a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)"
429 "From: akr@jaist.ac.jp (
\e$B$"
\e(B\\a
\e$B$$
\e(B)")
433 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
434 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
437 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
438 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>")
441 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
442 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>")
445 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
446 "From: (a)
\e$B$"
\e(B <akr@jaist.ac.jp>"
447 'permit-sticked-comment)
450 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
451 "From:
\e$B$"
\e(B(b) <akr@jaist.ac.jp>"
452 'permit-sticked-comment)
455 "From: (a)=?ISO-2022-JP?B?GyRCJCIbKEI=?=(b) <akr@jaist.ac.jp>"
456 "From: (a)
\e$B$"
\e(B(b) <akr@jaist.ac.jp>"
457 'permit-sticked-comment)
460 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
461 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
464 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>"
465 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>")
468 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>"
469 "From: \"a\"=?ISO-2022-JP?B?GyRCJCIbKEI=?=\"b\" <akr@jaist.ac.jp>")
472 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)
474 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
475 'permit-sticked-comment)
478 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
479 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
482 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
483 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
484 'permit-sticked-special)
487 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
488 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
491 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
492 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
493 'permit-sticked-special)
496 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
497 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>")
500 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
501 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
502 'permit-sticked-special)
505 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
506 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;")
509 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
510 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
511 'permit-sticked-special)
514 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
515 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;")
518 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
519 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
520 'ignore-76bytes-limit 'permit-sticked-special)
523 "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>"
524 "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>")
527 "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>"
528 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
529 'ignore-76bytes-limit 'permit-sticked-special)
532 "Subject:=?ISO-2022-JP?B?GyRCJCIbKEI=?="
533 "Subject:=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
536 "Subject:=?ISO-2022-JP?B?GyRCJCIbKEI=?="
538 'permit-sticked-special)
540 ;; Section 4: Decoding invalid inputs.
543 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCQbKEI=?=
545 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCQbKEI=?= <akr@jaist.ac.jp>")
548 "From: akr@jaist.ac.jp
549 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)"
550 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=a=?ISO-2022-JP?B?GyRCJCQbKEI=?=)")
554 "From: akr@jaist.ac.jp
555 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
556 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)")
560 "From: akr@jaist.ac.jp
561 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
562 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
563 'ignore-76bytes-limit)
566 "Subject: =?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
567 "Subject: =?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
570 "Subject: =?ISO-2022-JP=?ISO-2022-JP?B?GyRCJCIbKEI=?="
571 "Subject: =?ISO-2022-JP=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
574 "Subject: =?ISO-2022-JP?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
575 "Subject: =?ISO-2022-JP?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
578 "Subject: =?ISO-2022-JP?B=?ISO-2022-JP?B?GyRCJCIbKEI=?="
579 "Subject: =?ISO-2022-JP?B=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
582 "Subject: =?ISO-2022-JP?B?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
583 "Subject: =?ISO-2022-JP?B?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
586 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?ISO-2022-JP?B?GyRCJCIbKEI=?="
587 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
590 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI==?ISO-2022-JP?B?GyRCJCIbKEI=?="
591 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
594 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=?ISO-2022-JP?B?GyRCJCIbKEI=?="
595 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?=?ISO-2022-JP?B?GyRCJCIbKEI=?=")
598 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCIbKEI=?="
599 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?==?ISO-2022-JP?B?GyRCJCIbKEI=?=")
602 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI?="
603 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI?=")
606 "Subject: =?ISO-2022-JP?B?GyRCNFg-dBsoQg==?="
607 "Subject: =?ISO-2022-JP?B?GyRCNFg-dBsoQg==?=")
609 ;; Section 5: Encoding trivial inputs.
612 "From:
\e$B$"
\e(B <akr@jaist.ac.jp>"
613 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>")
616 "From: \"
\e$B$"
\e(B(
\e$B$"
\e(B)\" <akr@jaist.ac.jp>"
617 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>")
621 "From: \"a\\\"b
\e$B$"
\e(Bc\\\\\" <akr@jaist.ac.jp>"
622 "From: =?ISO-2022-JP?B?YSJiGyRCJCIbKEJjXA==?= <akr@jaist.ac.jp>")
626 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B"
627 "Subject: =?ISO-2022-JP?B?GyRCMCQbKEIgICAgICAgICAgICAgICAgICAgICAgICAgICAg?=
628 =?US-ASCII?Q?____________________________________________________________?=
629 =?ISO-2022-JP?B?ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBskQlJfGyhC?=")
633 "Subject:
\e$B0$
\e(B
\e$BR_
\e(B"
634 "Subject: =?ISO-2022-JP?B?GyQpQrCkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDS3w=="
635 'ignore-76bytes-limit 'ignore-75bytes-limit)
639 "From:
\e.A
\eN! <akr@jaist.ac.jp>"
\e*B
640 "From: =?ISO-8859-1?Q?=A1?= <akr@jaist.ac.jp>")
643 "From: \"abcdefghijklmnopqrst
\e.A
\eN!()\\\"\\\\\" <akr@jaist.ac.jp>"
\e*B
644 "From: =?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29=22=5C?= <akr@jaist.ac.jp>")
648 "From: akr@jaist.ac.jp (abcdefghijklmnopqrst
\e.A
\eN!\\(\\)\"\\\\)"
\e*B
649 "From: akr@jaist.ac.jp (=?ISO-8859-1?Q?abcdefghijklmnopqrst=A1=28=29\"=5C?=)")
653 "Subject:
\e$B$"
\e(B a
\e.H
\eN`"
\e*B
654 "Subject: =?ISO-2022-JP?B?GyRCJCIbKEI=?= a =?ISO-8859-8?Q?=E0?=")
657 "Subject:
\e.H
\eN`
\e$BNm
\e(B"
\e*B
658 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?GyRCTm0bKEI=?=")
662 "Subject:
\e.H
\eN`
\e$BNm
\e(B"
\e*B
663 '("Subject: =?ISO-8859-8?Q?=E0_?= =?ISO-2022-JP?B?GyRCTm0bKEI=?="
664 "Subject: =?ISO-8859-8?Q?=E0?= =?ISO-2022-JP?B?IBskQk5tGyhC?="))
667 "Subject:
\e.F
\eNC
\e$B4X?t
\e(B"
\e*B
668 '("Subject: =?ISO-8859-7?Q?=C3?= =?ISO-2022-JP?B?GyRCNFg/dBsoQg==?="
669 "Subject: =?ISO-2022-JP-2?B?Gy5GG05DGyRCNFg/dBsoQg==?="))
671 ;; Section 6: Encoding melancholy inputs.
674 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
675 "From: akr@jaist.ac.jp
676 (=?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
677 'ignore-76bytes-limit)
681 "From: akr@jaist.ac.jp (
\e$B$"
\e(B(
\e$B$$
\e(B)
\e$B$&
\e(B)"
682 "From: akr@jaist.ac.jp (=?ISO-2022-JP?B?GyRCJCIbKEI=?=
683 =?ISO-2022-JP?B?GyhC?=(=?ISO-2022-JP?B?GyRCJCQbKEI=?=
684 =?ISO-2022-JP?B?GyhC?=)=?ISO-2022-JP?B?GyRCJCYbKEI=?=)"
685 'zero-characters-encoded-word-hack)
689 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
690 "From: =?ISO-2022-JP?B?GyRCJCIbKEIoGyRCJCIbKEIp?= <akr@jaist.ac.jp>"
691 'encode-sticked-comment-as-atom)
695 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
696 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?=(=?ISO-2022-JP?B?GyRCJCIbKEI=?=)
698 'permit-sticked-comment)
702 "From:
\e$B$"
\e(B(
\e$B$"
\e(B) <akr@jaist.ac.jp>"
703 "From: =?ISO-2022-JP?B?GyRCJCIbKEI=?= (=?ISO-2022-JP?B?GyRCJCIbKEI=?=)
705 'separate-sticked-comment)
709 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
710 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
711 'permit-sticked-special)
715 "To:
\e$B$"
\e(B<akr@jaist.ac.jp>"
716 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
717 'separate-sticked-special)
720 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
721 "To: <akr@jaist.ac.jp>,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
722 'permit-sticked-special)
726 "To: <akr@jaist.ac.jp>,
\e$B$"
\e(B<akr@jaist.ac.jp>"
727 "To: <akr@jaist.ac.jp>, =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
728 'separate-sticked-special)
731 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
732 "To: akr@jaist.ac.jp,=?ISO-2022-JP?B?GyRCJCIbKEI=?=<akr@jaist.ac.jp>"
733 'permit-sticked-special)
737 "To: akr@jaist.ac.jp,
\e$B$"
\e(B<akr@jaist.ac.jp>"
738 "To: akr@jaist.ac.jp, =?ISO-2022-JP?B?GyRCJCIbKEI=?= <akr@jaist.ac.jp>"
739 'separate-sticked-special)
742 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
743 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:akr@jaist.ac.jp;"
744 'permit-sticked-special)
748 "To:
\e$B$"
\e(B:akr@jaist.ac.jp;"
749 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= :akr@jaist.ac.jp;"
750 'separate-sticked-special)
754 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
755 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=<akr@jaist.ac.jp>;"
756 'ignore-76bytes-limit 'permit-sticked-special)
760 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
761 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=
762 =?ISO-2022-JP?B?GyhC?=<akr@jaist.ac.jp>;"
763 'zero-characters-encoded-word-hack 'permit-sticked-special)
767 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<akr@jaist.ac.jp>;"
768 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= : =?ISO-2022-JP?B?GyRCJCQbKEI=?=
770 'separate-sticked-special)
774 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
775 "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>"
776 'ignore-76bytes-limit 'permit-sticked-special)
780 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
781 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?=:=?ISO-2022-JP?B?GyRCJCQbKEI=?=
782 =?ISO-2022-JP?B?GyhC?=<foo@bar>,=?ISO-2022-JP?B?GyRCJCYbKEI=?=
783 =?ISO-2022-JP?B?GyhC?=<foo@bar>;,=?ISO-2022-JP?B?GyRCJCgbKEI=?=<foo@bar>"
784 'zero-characters-encoded-word-hack 'permit-sticked-special)
788 "To:
\e$B$"
\e(B:
\e$B$$
\e(B<foo@bar>,
\e$B$&
\e(B<foo@bar>;,
\e$B$(
\e(B<foo@bar>"
789 "To: =?ISO-2022-JP?B?GyRCJCIbKEI=?= : =?ISO-2022-JP?B?GyRCJCQbKEI=?=
790 <foo@bar>, =?ISO-2022-JP?B?GyRCJCYbKEI=?= <foo@bar>;,
791 =?ISO-2022-JP?B?GyRCJCgbKEI=?= <foo@bar>"
792 'separate-sticked-special)
795 ;; Section 7: Using quoted-encoded-words.
797 ;; quoted-encoded-word
\e$BI=8=
\e(B
799 ; 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
800 ;
\e$B=PNO$7$J$1$l$P$J$i$J$$$3$H$,$"$k!#
\e(B
802 ; 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
803 ; =?unknown-charset?known-encoding?some-encoded-text?=
804 ; =?known-charset?unknown-encoding?some-encoded-text?=
805 ; =?unknown-charset?unknown-encoding?some-encoded-text?=
807 ; 2.
\e$B%G%3!<%I$G$-$F$bFbMF$,7uF]$9$.$k$H$-!#
\e(B
808 ; 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
809 ;
\e$B7k2L$rKd$a9~$`$N$O4m81$9$.$k!#
\e(B
811 ;
\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
812 ;
\e$B$l$P$J$i$J$$$3$H$b$"$k!#
\e(B
814 ; =?US-ASCII?Q?=3D=3FUS-ASCII=3FQ=3Ftext=3F=3D?=
816 ;
\e$B%G%3!<%@$,C1$J$kJ8;zNs$r=PNO$9$k>l9g!"C1=c$K$d$k$H
\e(B encoded-word
\e$B$=$N$b$N$H
\e(B
817 ; encoded-word
\e$B$N$h$&$K$_$($kJ8;zNs$r6hJL$G$-$J$$!#
\e(B
818 ;
\e$B$3$3$G$OJ8;zNsCf$G$=$l$i$r3N<B$K6hJL$7$FI=8=$9$kJ}K!$r<($9!#
\e(B
820 ; rule 1:
\e$BJ8;zNsCf$G
\e(B =?charset?encoding?text?=
\e$B$H$$$&%Q%?!<%s$K
\e(B
821 ;
\e$B%^%C%A$7$J$$ItJ,$O$=$NItJ,$N$^$^$NFbMF$rI=$9!#
\e(B
823 ; rule 2:
\e$BJ8;zNsCf$G
\e(B =?charset?encoding?text?=
\e$B$H$$$&%Q%?!<%s$K
\e(B
824 ;
\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
825 ;
\e$B2r<a$rJQ$($k!#
\e(B
827 ;
\e$B6v?t$N>l9g
\e(B(0, 2, 4, ...): charset
\e$B$N@hF,$N
\e(B '*'
\e$B$N?t$rH>J,$K$7$?J8;zNs
\e(B
828 ;
\e$B4q?t$N>l9g
\e(B(1, 3, 5, ...): charset
\e$B$N@hF,$N
\e(B '*'
\e$B$N?t$rH>J,
\e(B(
\e$B>.?tE@0J2<
\e(B
829 ;
\e$B@Z<N$F
\e(B)
\e$B$K$7$F!"$=$l$r
\e(B encoded-word
\e$B$H;W$C$F%G%3!<%I$7$?J8;zNs!#
\e(B
831 ; NOTE: '*'
\e$B$r
\e(B quoted-encoded-word
\e$BI=8=$N
\e(B quote
\e$BJ8;z$H8F$V!#
\e(B
833 ; NOTE:
\e$B8=;~E@
\e(B(1998/07/19)
\e$B$G
\e(B IANA
\e$B$N%l%8%9%H%j$K$O
\e(B '*'
\e$B$r4^$`
\e(B charset
\e$B$O
\e(B
834 ;
\e$BEPO?$5$l$F$$$J$$$N$G!"$=$l$i$N
\e(B charset
\e$B$r;H$C$?
\e(B
835 ; 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
837 ; =?US-ASCII?Q?abcdef?=
\e$B$H$$$&
\e(Bencoded-word : =?*US-ASCII?Q?abcdef?=
839 ; =?US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?US-ASCII?Q?abcdef?=
840 ; =?*US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?**US-ASCII?Q?abcdef?=
841 ; =?**US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?****US-ASCII?Q?abcdef?=
842 ; =?***US-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?******US-ASCII?Q?abcdef?=
843 ; =?US-ASCII*?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?US-ASCII*?Q?abcdef?=
844 ; =?U*S-ASCII?Q?abcdef?=
\e$B$H$$$&J8;zNs
\e(B : =?U*S-ASCII?Q?abcdef?=
846 ; NOTE: encoded-word
\e$B$K8+$($kJ8;zNs$G
\e(B '*'
\e$B$,G\A}$5$l$k$N$O
\e(B charset
\e$B$N
\e(B
847 ;
\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
848 ;
\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
850 ; 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
851 ;
\e$BJ8;zNs$rC1=c$KO"7k$7$?J8;zNs$H$9$k!#
\e(B
853 ; 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
854 ; encoded-word
\e$B$O
\e(B 75bytes
\e$B0J2<$G$J$1$l$P$J$i$J$$$H$+!"
\e(B
855 ; 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
856 ;
\e$B5,Ls$,$"$k$,!"
\e(Bquoted-encoded-word
\e$BI=8=$G$O$=$l$i$O:NMQ$7$J$$!#
\e(B
857 ;
\e$BC1=c$K
\e(B encoded-word
\e$BFbIt$NJ8K!$@$1$rMxMQ$9$k!#
\e(B
858 ; (
\e$BK\<AE*$K$O0[$J$kJ8K!$r:NMQ$9$k$3$H$b2DG=$G$"$k$,!"
\e(BRFC2047
\e$B$K7I0U$r
\e(B
859 ;
\e$BI=$7$F
\e(B encoded-word
\e$B$NJ8K!$r:NMQ$9$k!#
\e(B)
861 ; NOTE: quoted-encoded-word
\e$BI=8=$7$?J8;zNs$NO"7k$O0BA4$G$O$J$$!#
\e(B
862 ; =?*US-ASCII?Q?ab
\e$B$H
\e(B cd?=
\e$B$H$$$&
\e(B quoted-encoded-word
\e$BI=8=$7$?J8;zNs$O
\e(B
863 ;
\e$B$=$l$>$l$=$NJ8;zNs$=$N$b$N$rI=8=$9$k$,!"$=$l$i$rO"7k$7$?J8;zNs
\e(B
864 ; =?*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
865 ;
\e$B$=$l$>$l$NFbMF$NO"7k$H$O$J$i$J$$!#
\e(B
867 ;
\e$B$3$l$O$H$/$K
\e(B Non ASCII
\e$B3HD%
\e(B RFC822
\e$B$NCf$K
\e(B quoted-encoded-word
\e$BI=8=$r
\e(B
868 ;
\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
869 ; quoted-encoded-word
\e$BI=8=$H$O$J$i$J$$$+$bCN$l$J$$!#
\e(B)
872 "Subject: =?Unknown-Charset?B?gqA=?="
873 "Subject: =?*Unknown-Charset?B?gqA=?="
874 'quoted-encoded-word)
878 "Subject: =?US-ASCII?G?H4sIAMsIsjUCA0tMSk5JTQMA7zmOSwYAAAA?="
879 "Subject: =?*US-ASCII?G?H4sIAMsIsjUCA0tMSk5JTQMA7zmOSwYAAAA?="
880 'quoted-encoded-word)
884 "Subject: =?US-ASCII?Unknown-Encoding?H4sIAMsIsjUCA0tMSk5JTQMA7zmOSwYAAAA?="
885 "Subject: =?*US-ASCII?Unknown-Encoding?H4sIAMsIsjUCA0tMSk5JTQMA7zmOSwYAAAA?="
886 'quoted-encoded-word)
890 "Subject: =?Unknown-Charset?B?gqA=?= =?Unknown-Charset?B?gqA=?="
891 "Subject: =?*Unknown-Charset?B?gqA=?==?*Unknown-Charset?B?gqA=?="
892 'quoted-encoded-word)
896 "Subject: =?Unknown-Charset?B?gqA=?= =?Unknown-Charset?B?gqA=?="
897 "Subject: =?*Unknown-Charset?B?gqA=?==?*Unknown-Charset?B?gqA=?="
898 'quoted-encoded-word)
902 "Subject: =?Unknown-Charset?B?gqA=?=
903 =?Unknown-Charset?B?gqA=?="
904 "Subject: =?*Unknown-Charset?B?gqA=?==?*Unknown-Charset?B?gqA=?="
905 'quoted-encoded-word)
909 "Subject: =?Unknown-Charset?B?gqA=?=
910 =?Unknown-Charset?B?gqA=?="
911 "Subject: =?*Unknown-Charset?B?gqA=?==?*Unknown-Charset?B?gqA=?="
912 'quoted-encoded-word)
916 "Subject: a=?Unknown-Charset?B?gqA=?="
917 "Subject: a=?Unknown-Charset?B?gqA=?="
918 'quoted-encoded-word)
921 "Subject: =?Unknown-Charset?B?gqA=?=b"
922 "Subject: =?Unknown-Charset?B?gqA=?=b"
923 'quoted-encoded-word)
926 "Subject: a=?Unknown-Charset?B?gqA=?=b"
927 "Subject: a=?Unknown-Charset?B?gqA=?=b"
928 'quoted-encoded-word)
931 "Subject: a =?Unknown-Charset?B?gqA=?= b"
932 "Subject: a =?*Unknown-Charset?B?gqA=?= b"
933 'quoted-encoded-word)
937 "Subject: =?ISO-2022-JP?B?DQoNCg==?="
938 "Subject: =?*US-ASCII?Q?=0D=0A=0D=0A?="
939 'quoted-encoded-word)
943 "Subject: =?US-ASCII?Q?a=0D=0A_b?="
944 "Subject: a=?*US-ASCII?Q?=0D=0A?= b"
945 'quoted-encoded-word)
952 ;----------------------------------------------------------------------------