[ruby-list:37151] Re: TMailと..なFrom行
From:
Shinji Miura <snj@...>
Date:
2003-02-20 16:00:56 UTC
List:
ruby-list #37151
三浦@大阪電通大です。 私もDoCoMoの独自仕様のメールアドレスに悩んだくちです。 調べたところ、やはりRFC2822に違反しています。 From: ICHIKAWA Manabu <ichikawa@avion.co.jp> Subject: [ruby-list:37150] Re: TMailと..なFrom行 Date: Fri, 21 Feb 2003 00:34:46 +0900 > >はい。それだとパースに失敗すると思います。で、失敗すると > >メンバが nil になります。(たしか) メールサーバーによっては規格外のローカル部を 自動的にダブルクォーテーションで囲むものもあるようです。 例. "hogehoge..fuga"@docomo.ne.jp "hogefuga."@docomo.ne.jp この場合はそのままでもパース可能みたいです。 ちなみにダブルクォーテーションで囲まれた状態のアドレスで メールを送信しても私が確認した限りでは うまく宛先に届くようです。 > ありがとうございます。 > 今回は、時間切れのため強引に自前でヘッダを検索してしまったのですが > きれいに解決できた方が今後すごく助かります。 ちょっとパッチを作ってみました。 サンプルのfrom-checkでのみのテストしかできていない上に コンパイル時にconflictが起きていたり、 アレげな事をしていますがそれでもよろしければどうぞ。 -------------------------------------------------------------- 「三浦真磁」 snj@users.sourceforge.jp
Attachments (1)
tmail-0.10.6-all.diff
(29.3 KB, text/x-diff)
Only in tmail-0.10.6-all: config.save
Only in tmail-0.10.6-all/packages/raccrt/ext/racc/cparse: Makefile
Only in tmail-0.10.6-all/packages/raccrt/ext/racc/cparse: mkmf.log
Only in tmail-0.10.6-all/packages/tmail/ext/tmail/b64: Makefile
Only in tmail-0.10.6-all/packages/tmail/ext/tmail/b64: mkmf.log
Only in tmail-0.10.6-all/packages/tmail/ext/tmail/mails: Makefile
Only in tmail-0.10.6-all/packages/tmail/ext/tmail/mails: mkmf.log
diff -ur tmail-0.10.6-all.orig/packages/tmail/lib/tmail/parser.rb tmail-0.10.6-all/packages/tmail/lib/tmail/parser.rb
--- tmail-0.10.6-all.orig/packages/tmail/lib/tmail/parser.rb Sun Nov 10 23:18:39 2002
+++ tmail-0.10.6-all/packages/tmail/lib/tmail/parser.rb Fri Feb 21 00:38:18 2003
@@ -1,6 +1,6 @@
#
# DO NOT MODIFY!!!!
-# This file is automatically generated by racc 1.4.2
+# This file is automatically generated by racc 1.4.3
# from racc grammer file "mp.y".
#
@@ -26,7 +26,7 @@
class Parser < Racc::Parser
-module_eval <<'..end mp.y modeval..id2f9cb69383', 'mp.y', 310
+module_eval <<'..end mp.y modeval..idab9cd0820e', 'mp.y', 312
include TextUtils
@@ -70,9 +70,9 @@
raise SyntaxError, "parse error on token #{racc_token2str t}"
end
-..end mp.y modeval..id2f9cb69383
+..end mp.y modeval..idab9cd0820e
-##### racc 1.4.2 generates ###
+##### racc 1.4.3 generates ###
racc_reduce_table = [
0, 0, :racc_error,
@@ -146,8 +146,10 @@
1, 63, :_reduce_68,
1, 71, :_reduce_69,
3, 71, :_reduce_70,
- 1, 59, :_reduce_71,
- 3, 59, :_reduce_72,
+ 2, 71, :_reduce_71,
+ 2, 71, :_reduce_72,
+ 1, 59, :_reduce_73,
+ 3, 59, :_reduce_74,
1, 74, :_reduce_none,
1, 74, :_reduce_none,
1, 74, :_reduce_none,
@@ -156,22 +158,22 @@
1, 75, :_reduce_none,
1, 66, :_reduce_none,
2, 66, :_reduce_none,
- 3, 60, :_reduce_81,
- 1, 40, :_reduce_82,
- 3, 40, :_reduce_83,
+ 3, 60, :_reduce_83,
+ 1, 40, :_reduce_84,
+ 3, 40, :_reduce_85,
1, 77, :_reduce_none,
- 2, 77, :_reduce_85,
- 1, 41, :_reduce_86,
- 2, 41, :_reduce_87,
- 3, 42, :_reduce_88,
- 5, 43, :_reduce_89,
- 3, 43, :_reduce_90,
- 0, 78, :_reduce_91,
- 5, 78, :_reduce_92,
+ 2, 77, :_reduce_87,
+ 1, 41, :_reduce_88,
+ 2, 41, :_reduce_89,
+ 3, 42, :_reduce_90,
+ 5, 43, :_reduce_91,
+ 3, 43, :_reduce_92,
+ 0, 78, :_reduce_93,
+ 5, 78, :_reduce_94,
1, 80, :_reduce_none,
1, 80, :_reduce_none,
- 1, 44, :_reduce_95,
- 3, 45, :_reduce_96,
+ 1, 44, :_reduce_97,
+ 3, 45, :_reduce_98,
0, 79, :_reduce_none,
1, 79, :_reduce_none,
1, 76, :_reduce_none,
@@ -182,181 +184,189 @@
1, 76, :_reduce_none,
1, 76, :_reduce_none ]
-racc_reduce_n = 106
+racc_reduce_n = 108
-racc_shift_n = 164
+racc_shift_n = 166
racc_action_table = [
- -68, 22, 24, 132, 75, 28, 30, 102, 103, 16,
- 17, 19, 21, 74, 22, 24, -68, 31, 28, 30,
- 75, 150, 16, 17, 19, 21, -68, 26, 98, 74,
- 31, 22, 24, 151, 104, 28, 30, 142, 143, 16,
- 17, 19, 21, 96, 26, 22, 24, 31, 94, 28,
- 30, 110, 111, 16, 17, 19, 21, 92, 26, 108,
- 109, 31, 22, 24, 116, 76, 28, 30, 138, 139,
- 16, 17, 19, 21, 89, 26, 22, 24, 31, 113,
- 28, 30, 86, 79, 16, 17, 19, 21, 119, 26,
- 22, 24, 31, 98, 28, 30, 121, 122, 16, 17,
- 19, 21, 89, 26, 22, 24, 31, 124, 28, 30,
- 125, 109, 16, 17, 19, 21, 109, 51, 22, 24,
- 31, 126, 28, 30, 78, 77, 16, 17, 19, 21,
- 129, 22, 24, 76, 31, 28, 30, 76, 74, 16,
- 17, 19, 21, 64, 22, 24, 61, 31, 28, 30,
- 135, 109, 16, 17, 19, 21, 59, 22, 24, 98,
- 31, 28, 30, 43, 109, 16, 17, 19, 21, 144,
- 22, 24, 116, 31, 28, 30, 145, 148, 16, 17,
- 19, 21, 149, 26, 22, 24, 31, 67, 28, 30,
- 41, 153, 16, 17, 19, 21, 155, 26, 22, 24,
- 31, 39, 28, 30, 73, 15, 16, 17, 19, 21,
- 160, 22, 24, 39, 31, 28, 30, 162, 163, 16,
- 17, 19, 21, nil, 26, 22, 24, 31, nil, 28,
- 30, nil, nil, 16, 17, 19, 21, nil, 22, 24,
- nil, 31, 28, 30, nil, nil, 16, 17, 19, 21,
- nil, 22, 24, nil, 31, 28, 30, nil, nil, 16,
- 17, 19, 21, nil, 22, 24, nil, 31, 28, 30,
- 73, nil, 16, 17, 19, 21, nil, nil, 90, nil,
- 31, 22, 24, nil, nil, 28, 30, nil, nil, 16,
- 17, 19, 21, nil, nil, nil, nil, 31, 4, 6,
- 7, 8, 9, 10, 11, 12, 13, 1, 2, 3,
- 80, 24, nil, nil, 28, 30, nil, 84, 16, 17,
- 19, 21, 80, 24, nil, nil, 28, 30, nil, 84,
- 16, 17, 19, 21, 80, 24, nil, nil, 28, 30,
- nil, 84, 16, 17, 19, 21, 80, 24, nil, nil,
- 28, 30, nil, 84, 16, 17, 19, 21, 80, 24,
- nil, nil, 28, 30, nil, 84, 16, 17, 19, 21,
- 80, 24, nil, nil, 28, 30, nil, 84, 16, 17,
- 19, 21, 80, 24, nil, nil, 28, 30, nil, 84,
- 16, 17, 19, 21 ]
+ -68, 75, 22, 24, 100, 76, 28, 31, 106, 152,
+ 16, 17, 19, 21, 75, 98, -68, 29, 32, 96,
+ 76, 153, 94, 22, 24, 75, -68, 28, 31, 75,
+ 110, 16, 17, 19, 21, 78, 26, 91, 29, 32,
+ 22, 24, 104, 105, 28, 31, 144, 145, 16, 17,
+ 19, 21, 115, 26, 88, 29, 32, 22, 24, 140,
+ 141, 28, 31, 81, 121, 16, 17, 19, 21, 100,
+ 26, 123, 29, 32, 22, 24, 118, 124, 28, 31,
+ 91, 126, 16, 17, 19, 21, 127, 26, 111, 29,
+ 32, 22, 24, 111, 128, 28, 31, 80, 79, 16,
+ 17, 19, 21, 131, 26, 78, 29, 32, 22, 24,
+ 78, 134, 28, 31, 65, 62, 16, 17, 19, 21,
+ 137, 26, 111, 29, 32, 22, 24, 60, 100, 28,
+ 31, 44, 111, 16, 17, 19, 21, 146, 52, 147,
+ 29, 32, 22, 24, 150, 151, 28, 31, 112, 113,
+ 16, 17, 19, 21, 42, 22, 24, 111, 32, 28,
+ 31, 155, 157, 16, 17, 19, 21, 40, 22, 24,
+ 15, 32, 28, 31, 162, 40, 16, 17, 19, 21,
+ 164, 22, 24, 29, 32, 28, 31, 165, nil, 16,
+ 17, 19, 21, nil, 22, 24, 118, 32, 28, 31,
+ nil, nil, 16, 17, 19, 21, nil, 26, nil, 29,
+ 32, 22, 24, nil, 68, 28, 31, nil, nil, 16,
+ 17, 19, 21, nil, 26, nil, 29, 32, 22, 24,
+ nil, nil, 28, 31, 74, nil, 16, 17, 19, 21,
+ nil, 22, 24, 29, 32, 28, 31, nil, nil, 16,
+ 17, 19, 21, nil, 22, 24, nil, 32, 28, 31,
+ nil, nil, 16, 17, 19, 21, nil, 22, 24, 29,
+ 32, 28, 31, nil, nil, 16, 17, 19, 21, nil,
+ 22, 24, nil, 32, 28, 31, nil, nil, 16, 17,
+ 19, 21, nil, 26, nil, 29, 32, 22, 24, nil,
+ nil, 28, 31, nil, nil, 16, 17, 19, 21, nil,
+ 22, 24, nil, 32, 28, 31, 74, nil, 16, 17,
+ 19, 21, nil, nil, 92, 29, 32, 22, 24, nil,
+ nil, 28, 31, nil, nil, 16, 17, 19, 21, nil,
+ nil, nil, nil, 32, 4, 6, 7, 8, 9, 10,
+ 11, 12, 13, 1, 2, 3, 82, 24, nil, nil,
+ 28, 31, nil, 86, 16, 17, 19, 21, 82, 24,
+ nil, nil, 28, 31, nil, 86, 16, 17, 19, 21,
+ 82, 24, nil, nil, 28, 31, nil, 86, 16, 17,
+ 19, 21, 82, 24, nil, nil, 28, 31, nil, 86,
+ 16, 17, 19, 21, 82, 24, nil, nil, 28, 31,
+ nil, 86, 16, 17, 19, 21, 82, 24, nil, nil,
+ 28, 31, nil, 86, 16, 17, 19, 21, 82, 24,
+ nil, nil, 28, 31, nil, 86, 16, 17, 19, 21 ]
racc_action_check = [
- 27, 10, 10, 122, 69, 10, 10, 71, 71, 10,
- 10, 10, 10, 69, 2, 2, 27, 10, 2, 2,
- 27, 139, 2, 2, 2, 2, 27, 2, 65, 27,
- 2, 3, 3, 139, 72, 3, 3, 132, 132, 3,
- 3, 3, 3, 61, 3, 148, 148, 3, 59, 148,
- 148, 82, 82, 148, 148, 148, 148, 55, 148, 78,
- 82, 148, 88, 88, 88, 50, 88, 88, 130, 130,
- 88, 88, 88, 88, 49, 88, 67, 67, 88, 87,
- 67, 67, 44, 41, 67, 67, 67, 67, 94, 67,
- 7, 7, 67, 95, 7, 7, 96, 98, 7, 7,
- 7, 7, 99, 7, 8, 8, 7, 101, 8, 8,
- 102, 105, 8, 8, 8, 8, 107, 8, 9, 9,
- 8, 108, 9, 9, 40, 39, 9, 9, 9, 9,
- 113, 151, 151, 117, 9, 151, 151, 35, 66, 151,
- 151, 151, 151, 13, 92, 92, 12, 151, 92, 92,
- 126, 128, 92, 92, 92, 92, 11, 74, 74, 131,
- 92, 74, 74, 6, 134, 74, 74, 74, 74, 135,
- 123, 123, 123, 74, 123, 123, 136, 137, 123, 123,
- 123, 123, 138, 123, 25, 25, 123, 25, 25, 25,
- 5, 144, 25, 25, 25, 25, 147, 25, 26, 26,
- 25, 4, 26, 26, 26, 1, 26, 26, 26, 26,
- 153, 37, 37, 155, 26, 37, 37, 159, 160, 37,
- 37, 37, 37, nil, 37, 118, 118, 37, nil, 118,
- 118, nil, nil, 118, 118, 118, 118, nil, 57, 57,
- nil, 118, 57, 57, nil, nil, 57, 57, 57, 57,
- nil, 54, 54, nil, 57, 54, 54, nil, nil, 54,
- 54, 54, 54, nil, 51, 51, nil, 54, 51, 51,
- 51, nil, 51, 51, 51, 51, nil, nil, 51, nil,
- 51, 70, 70, nil, nil, 70, 70, nil, nil, 70,
- 70, 70, 70, nil, nil, nil, nil, 70, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 86, nil, nil, 86, 86, nil, 86, 86, 86,
- 86, 86, 73, 73, nil, nil, 73, 73, nil, 73,
- 73, 73, 73, 73, 109, 109, nil, nil, 109, 109,
- nil, 109, 109, 109, 109, 109, 110, 110, nil, nil,
- 110, 110, nil, 110, 110, 110, 110, 110, 75, 75,
- nil, nil, 75, 75, nil, 75, 75, 75, 75, 75,
- 43, 43, nil, nil, 43, 43, nil, 43, 43, 43,
- 43, 43, 125, 125, nil, nil, 125, 125, nil, 125,
- 125, 125, 125, 125 ]
+ 27, 77, 71, 71, 66, 70, 71, 71, 73, 141,
+ 71, 71, 71, 71, 70, 62, 27, 71, 71, 60,
+ 27, 141, 56, 2, 2, 67, 27, 2, 2, 27,
+ 80, 2, 2, 2, 2, 51, 2, 50, 2, 2,
+ 3, 3, 72, 72, 3, 3, 134, 134, 3, 3,
+ 3, 3, 89, 3, 45, 3, 3, 150, 150, 132,
+ 132, 150, 150, 42, 96, 150, 150, 150, 150, 97,
+ 150, 98, 150, 150, 90, 90, 90, 100, 90, 90,
+ 101, 103, 90, 90, 90, 90, 104, 90, 107, 90,
+ 90, 68, 68, 109, 110, 68, 68, 41, 40, 68,
+ 68, 68, 68, 115, 68, 119, 68, 68, 7, 7,
+ 36, 124, 7, 7, 13, 12, 7, 7, 7, 7,
+ 128, 7, 130, 7, 7, 8, 8, 11, 133, 8,
+ 8, 6, 136, 8, 8, 8, 8, 137, 8, 138,
+ 8, 8, 9, 9, 139, 140, 9, 9, 84, 84,
+ 9, 9, 9, 9, 5, 10, 10, 84, 9, 10,
+ 10, 146, 149, 10, 10, 10, 10, 4, 153, 153,
+ 1, 10, 153, 153, 155, 157, 153, 153, 153, 153,
+ 161, 94, 94, 153, 153, 94, 94, 162, nil, 94,
+ 94, 94, 94, nil, 125, 125, 125, 94, 125, 125,
+ nil, nil, 125, 125, 125, 125, nil, 125, nil, 125,
+ 125, 25, 25, nil, 25, 25, 25, nil, nil, 25,
+ 25, 25, 25, nil, 25, nil, 25, 25, 26, 26,
+ nil, nil, 26, 26, 26, nil, 26, 26, 26, 26,
+ nil, 120, 120, 26, 26, 120, 120, nil, nil, 120,
+ 120, 120, 120, nil, 29, 29, nil, 120, 29, 29,
+ nil, nil, 29, 29, 29, 29, nil, 58, 58, 29,
+ 29, 58, 58, nil, nil, 58, 58, 58, 58, nil,
+ 38, 38, nil, 58, 38, 38, nil, nil, 38, 38,
+ 38, 38, nil, 38, nil, 38, 38, 55, 55, nil,
+ nil, 55, 55, nil, nil, 55, 55, 55, 55, nil,
+ 52, 52, nil, 55, 52, 52, 52, nil, 52, 52,
+ 52, 52, nil, nil, 52, 52, 52, 75, 75, nil,
+ nil, 75, 75, nil, nil, 75, 75, 75, 75, nil,
+ nil, nil, nil, 75, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 88, 88, nil, nil,
+ 88, 88, nil, 88, 88, 88, 88, 88, 74, 74,
+ nil, nil, 74, 74, nil, 74, 74, 74, 74, 74,
+ 111, 111, nil, nil, 111, 111, nil, 111, 111, 111,
+ 111, 111, 112, 112, nil, nil, 112, 112, nil, 112,
+ 112, 112, 112, 112, 76, 76, nil, nil, 76, 76,
+ nil, 76, 76, 76, 76, 76, 44, 44, nil, nil,
+ 44, 44, nil, 44, 44, 44, 44, 44, 127, 127,
+ nil, nil, 127, 127, nil, 127, 127, 127, 127, 127 ]
racc_action_pointer = [
- 296, 174, 0, 17, 186, 190, 145, 76, 90, 104,
- -13, 142, 115, 112, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 170, 184, 0, nil, nil,
- nil, nil, nil, nil, nil, 111, nil, 197, nil, 109,
- 110, 83, nil, 356, 63, nil, nil, nil, nil, 58,
- 39, 250, nil, nil, 237, 41, nil, 224, nil, 19,
- nil, 11, nil, nil, nil, 2, 109, 62, nil, -16,
- 267, -9, 6, 308, 143, 344, nil, nil, 44, nil,
- nil, nil, 31, nil, nil, nil, 296, 57, 48, nil,
- nil, nil, 130, nil, 74, 67, 65, nil, 66, 86,
- nil, 79, 90, nil, nil, 82, nil, 87, 107, 320,
- 332, nil, nil, 115, nil, nil, nil, 107, 211, nil,
- nil, nil, -30, 156, nil, 368, 136, nil, 122, nil,
- 45, 133, 7, nil, 135, 152, 161, 152, 167, 6,
- nil, nil, nil, nil, 177, nil, nil, 170, 31, nil,
- nil, 117, nil, 193, nil, 198, nil, nil, nil, 189,
- 204, nil, nil, nil ]
+ 342, 139, 9, 26, 152, 154, 113, 94, 111, 128,
+ 141, 113, 84, 83, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 197, 214, 0, nil, 240,
+ nil, nil, nil, nil, nil, nil, 84, nil, 266, nil,
+ 82, 83, 63, nil, 402, 35, nil, nil, nil, nil,
+ 21, 9, 296, nil, nil, 283, 6, nil, 253, nil,
+ -10, nil, -17, nil, nil, nil, -22, -4, 77, nil,
+ -15, -12, 26, -20, 354, 313, 390, -28, nil, nil,
+ 15, nil, nil, nil, 128, nil, nil, nil, 342, 30,
+ 60, nil, nil, nil, 167, nil, 50, 43, 40, nil,
+ 46, 64, nil, 53, 66, nil, nil, 59, nil, 64,
+ 80, 366, 378, nil, nil, 88, nil, nil, nil, 79,
+ 227, nil, nil, nil, 78, 180, nil, 414, 106, nil,
+ 93, nil, 36, 102, 16, nil, 103, 120, 124, 119,
+ 130, -6, nil, nil, nil, nil, 147, nil, nil, 136,
+ 43, nil, nil, 154, nil, 157, nil, 160, nil, nil,
+ nil, 152, 173, nil, nil, nil ]
racc_action_default = [
- -106, -106, -106, -106, -14, -106, -20, -106, -106, -106,
- -106, -106, -106, -106, -10, -91, -102, -103, -44, -104,
- -11, -105, -75, -43, -99, -106, -106, -60, -100, -55,
- -101, -74, -69, -54, -73, -45, -12, -106, -1, -106,
- -106, -106, -2, -106, -22, -51, -48, -50, -3, -40,
- -41, -106, -46, -4, -82, -5, -84, -86, -6, -106,
- -7, -91, -8, -9, -95, -97, -61, -59, -56, -68,
- -106, -106, -106, -106, -106, -106, -57, -15, -106, 164,
- -78, -21, -24, -71, -77, -76, -106, -27, -106, -79,
- -47, -85, -106, -87, -106, -97, -106, -96, -98, -58,
- -52, -106, -106, -64, -63, -65, -70, -67, -106, -106,
- -106, -26, -23, -106, -29, -49, -80, -42, -83, -88,
- -90, -91, -106, -106, -62, -106, -106, -72, -25, -28,
- -31, -97, -106, -53, -66, -106, -106, -34, -106, -106,
- -89, -92, -94, -93, -106, -18, -13, -38, -106, -30,
- -33, -106, -32, -16, -19, -14, -35, -36, -37, -106,
- -106, -39, -81, -17 ]
+ -108, -108, -108, -108, -14, -108, -20, -108, -108, -108,
+ -108, -108, -108, -108, -10, -93, -104, -105, -44, -106,
+ -11, -107, -77, -43, -101, -108, -108, -60, -102, -108,
+ -55, -103, -76, -69, -54, -75, -45, -12, -108, -1,
+ -108, -108, -108, -2, -108, -22, -51, -48, -50, -3,
+ -40, -41, -108, -46, -4, -84, -5, -86, -88, -6,
+ -108, -7, -93, -8, -9, -97, -99, -61, -59, -56,
+ -68, -108, -108, -108, -108, -72, -108, -71, -57, -15,
+ -108, 166, -80, -21, -24, -73, -79, -78, -108, -27,
+ -108, -81, -47, -87, -108, -89, -108, -99, -108, -98,
+ -100, -58, -52, -108, -108, -64, -63, -65, -70, -67,
+ -108, -108, -108, -26, -23, -108, -29, -49, -82, -42,
+ -85, -90, -92, -93, -108, -108, -62, -108, -108, -74,
+ -25, -28, -31, -99, -108, -53, -66, -108, -108, -34,
+ -108, -108, -91, -94, -96, -95, -108, -18, -13, -38,
+ -108, -30, -33, -108, -32, -16, -19, -14, -35, -36,
+ -37, -108, -108, -39, -83, -17 ]
racc_goto_table = [
- 38, 66, 69, 72, 56, 57, 68, 35, 65, 23,
- 36, 37, 54, 66, 97, 88, 81, 154, 68, 105,
- 114, 107, 130, 85, 48, 52, 137, 69, 72, 147,
- 87, 44, 146, 152, 156, 136, 20, 14, 63, 18,
- 115, 99, 62, 60, 120, 58, 69, 101, 127, 91,
- 55, 53, 93, 85, 95, 85, 128, 42, 5, 112,
- 141, nil, nil, nil, nil, 123, 85, nil, nil, 106,
- nil, 134, nil, nil, 100, 37, nil, nil, nil, nil,
- 140, nil, nil, nil, nil, nil, nil, 56, nil, 85,
- 85, nil, nil, 117, nil, 118, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 85, nil, nil, nil, nil,
- nil, nil, nil, 91, 131, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, 69, 158, nil, 69, 159, 157,
- 133, 37, nil, nil, nil, nil, nil, nil, nil, nil,
+ 39, 67, 70, 73, 66, 77, 69, 57, 58, 23,
+ 37, 38, 36, 55, 67, 99, 107, 90, 109, 69,
+ 87, 83, 49, 53, 156, 116, 132, 139, 70, 73,
+ 149, 89, 45, 148, 154, 158, 138, 20, 14, 64,
+ 18, 117, 101, 63, 61, 59, 122, 70, 103, 129,
+ 87, 97, 87, 93, 130, 56, 95, 54, 43, 5,
+ 143, nil, nil, nil, 87, 114, nil, nil, 125, 136,
+ nil, nil, nil, 108, nil, 102, 38, nil, nil, nil,
+ nil, nil, 142, nil, nil, nil, nil, 87, 87, nil,
+ nil, nil, 57, nil, nil, nil, nil, nil, 120, nil,
+ 119, nil, nil, 87, nil, nil, nil, nil, nil, nil,
+ nil, nil, 133, nil, nil, nil, nil, nil, 93, nil,
+ nil, nil, nil, nil, nil, nil, 70, 160, nil, 70,
+ 161, 159, 135, 38, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 161 ]
+ nil, nil, nil, 163 ]
racc_goto_check = [
- 2, 37, 37, 29, 40, 40, 28, 31, 44, 13,
- 13, 36, 43, 37, 45, 32, 24, 23, 28, 25,
- 19, 25, 20, 42, 4, 4, 21, 37, 29, 22,
- 18, 17, 16, 26, 27, 15, 12, 11, 10, 33,
- 34, 35, 9, 8, 45, 7, 37, 29, 41, 40,
- 6, 5, 40, 42, 44, 42, 25, 3, 1, 24,
- 46, nil, nil, nil, nil, 32, 42, nil, nil, 40,
- nil, 25, nil, nil, 13, 36, nil, nil, nil, nil,
- 45, nil, nil, nil, nil, nil, nil, 40, nil, 42,
- 42, nil, nil, 31, nil, 43, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 42, nil, nil, nil, nil,
- nil, nil, nil, 40, 44, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, 37, 29, nil, 37, 29, 28,
- 13, 36, nil, nil, nil, nil, nil, nil, nil, nil,
+ 2, 37, 37, 29, 44, 37, 28, 40, 40, 13,
+ 13, 36, 31, 43, 37, 45, 25, 32, 25, 28,
+ 42, 24, 4, 4, 23, 19, 20, 21, 37, 29,
+ 22, 18, 17, 16, 26, 27, 15, 12, 11, 10,
+ 33, 34, 35, 9, 8, 7, 45, 37, 29, 41,
+ 42, 44, 42, 40, 25, 6, 40, 5, 3, 1,
+ 46, nil, nil, nil, 42, 24, nil, nil, 32, 25,
+ nil, nil, nil, 40, nil, 13, 36, nil, nil, nil,
+ nil, nil, 45, nil, nil, nil, nil, 42, 42, nil,
+ nil, nil, 40, nil, nil, nil, nil, nil, 43, nil,
+ 31, nil, nil, 42, nil, nil, nil, nil, nil, nil,
+ nil, nil, 44, nil, nil, nil, nil, nil, 40, nil,
+ nil, nil, nil, nil, nil, nil, 37, 29, nil, 37,
+ 29, 28, 13, 36, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 2 ]
+ nil, nil, nil, 2 ]
racc_goto_pointer = [
- nil, 58, -4, 51, 17, 43, 41, 35, 32, 30,
- 25, 36, 34, 7, nil, -91, -104, 25, -14, -67,
- -92, -104, -108, -130, -27, -54, -106, -114, -19, -23,
- nil, 5, -34, 37, -48, -26, 8, -24, nil, nil,
- -5, -61, -20, 3, -7, -51, -72 ]
+ nil, 59, -4, 52, 15, 49, 46, 35, 33, 31,
+ 26, 37, 35, 7, nil, -92, -105, 26, -14, -64,
+ -90, -105, -109, -125, -23, -58, -107, -115, -19, -23,
+ nil, 10, -33, 38, -49, -26, 8, -24, nil, nil,
+ -2, -62, -24, 4, -11, -51, -74 ]
racc_goto_default = [
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, 47, 40, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 82, nil, nil, 29, 33,
- 49, 50, nil, 45, 46, nil, 25, 27, 70, 71,
- 32, 83, 34, nil, nil, nil, nil ]
+ nil, nil, nil, 48, 41, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 84, nil, nil, 30, 34,
+ 50, 51, nil, 46, 47, nil, 25, 27, 71, 72,
+ 33, 85, 35, nil, nil, nil, nil ]
racc_token_table = {
false => 0,
@@ -497,7 +507,7 @@
'opt_semicolon',
'value']
-Racc_debug_parser = true
+Racc_debug_parser = false
##### racc system variables end #####
@@ -843,25 +853,33 @@
module_eval <<'.,.,', 'mp.y', 203
def _reduce_70( val, _values)
- val[0].push val[2]; val[0]
+ [[val[0], '.', val[2]].join]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 205
+module_eval <<'.,.,', 'mp.y', 204
def _reduce_71( val, _values)
- val
+ v = [val[0]].concat val[1]; [v.join]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 206
+module_eval <<'.,.,', 'mp.y', 205
def _reduce_72( val, _values)
- val[0].push val[2]; val[0]
+ v = val[0].push val[1]; [v.join]
end
.,.,
- # reduce 73 omitted
+module_eval <<'.,.,', 'mp.y', 207
+ def _reduce_73( val, _values)
+ val
+ end
+.,.,
- # reduce 74 omitted
+module_eval <<'.,.,', 'mp.y', 208
+ def _reduce_74( val, _values)
+ val[0].push val[2]; val[0]
+ end
+.,.,
# reduce 75 omitted
@@ -875,97 +893,97 @@
# reduce 80 omitted
-module_eval <<'.,.,', 'mp.y', 221
- def _reduce_81( val, _values)
+ # reduce 81 omitted
+
+ # reduce 82 omitted
+
+module_eval <<'.,.,', 'mp.y', 223
+ def _reduce_83( val, _values)
val[1] = val[1].spec
val.join('')
end
.,.,
-module_eval <<'.,.,', 'mp.y', 225
- def _reduce_82( val, _values)
+module_eval <<'.,.,', 'mp.y', 227
+ def _reduce_84( val, _values)
val
end
.,.,
-module_eval <<'.,.,', 'mp.y', 226
- def _reduce_83( val, _values)
+module_eval <<'.,.,', 'mp.y', 228
+ def _reduce_85( val, _values)
val[0].push val[2]; val[0]
end
.,.,
- # reduce 84 omitted
+ # reduce 86 omitted
-module_eval <<'.,.,', 'mp.y', 229
- def _reduce_85( val, _values)
+module_eval <<'.,.,', 'mp.y', 231
+ def _reduce_87( val, _values)
val[0] << ' ' << val[1]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 233
- def _reduce_86( val, _values)
+module_eval <<'.,.,', 'mp.y', 235
+ def _reduce_88( val, _values)
val.push nil
val
end
.,.,
-module_eval <<'.,.,', 'mp.y', 238
- def _reduce_87( val, _values)
+module_eval <<'.,.,', 'mp.y', 240
+ def _reduce_89( val, _values)
val
end
.,.,
-module_eval <<'.,.,', 'mp.y', 243
- def _reduce_88( val, _values)
+module_eval <<'.,.,', 'mp.y', 245
+ def _reduce_90( val, _values)
[ val[0].to_i, val[2].to_i ]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 248
- def _reduce_89( val, _values)
+module_eval <<'.,.,', 'mp.y', 250
+ def _reduce_91( val, _values)
[ val[0].downcase, val[2].downcase, decode_params(val[3]) ]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 252
- def _reduce_90( val, _values)
+module_eval <<'.,.,', 'mp.y', 254
+ def _reduce_92( val, _values)
[ val[0].downcase, nil, decode_params(val[1]) ]
end
.,.,
-module_eval <<'.,.,', 'mp.y', 257
- def _reduce_91( val, _values)
+module_eval <<'.,.,', 'mp.y', 259
+ def _reduce_93( val, _values)
{}
end
.,.,
-module_eval <<'.,.,', 'mp.y', 261
- def _reduce_92( val, _values)
+module_eval <<'.,.,', 'mp.y', 263
+ def _reduce_94( val, _values)
val[0][ val[2].downcase ] = val[4]
val[0]
end
.,.,
- # reduce 93 omitted
+ # reduce 95 omitted
- # reduce 94 omitted
+ # reduce 96 omitted
-module_eval <<'.,.,', 'mp.y', 270
- def _reduce_95( val, _values)
+module_eval <<'.,.,', 'mp.y', 272
+ def _reduce_97( val, _values)
val[0].downcase
end
.,.,
-module_eval <<'.,.,', 'mp.y', 275
- def _reduce_96( val, _values)
+module_eval <<'.,.,', 'mp.y', 277
+ def _reduce_98( val, _values)
[ val[0].downcase, decode_params(val[1]) ]
end
.,.,
- # reduce 97 omitted
-
- # reduce 98 omitted
-
# reduce 99 omitted
# reduce 100 omitted
@@ -979,6 +997,10 @@
# reduce 104 omitted
# reduce 105 omitted
+
+ # reduce 106 omitted
+
+ # reduce 107 omitted
def _reduce_none( val, _values)
val[0]
Only in tmail-0.10.6-all/packages/tmail/lib: tmail.rb
diff -ur tmail-0.10.6-all.orig/packages/tmail/src/mp.y tmail-0.10.6-all/packages/tmail/src/mp.y
--- tmail-0.10.6-all.orig/packages/tmail/src/mp.y Sun Nov 10 23:18:40 2002
+++ tmail-0.10.6-all/packages/tmail/src/mp.y Fri Feb 21 00:37:56 2003
@@ -201,8 +201,10 @@
| local { Address.new( val[0], nil ) }
local : word { val }
- | local '.' word { val[0].push val[2]; val[0] }
-
+ | local '.' word { [[val[0], '.', val[2]].join]}
+ | '.' local { v = [val[0]].concat val[1]; [v.join]}
+ | local '.' { v = val[0].push val[1]; [v.join]}
+
domain : domword { val }
| domain '.' domword { val[0].push val[2]; val[0] }