tmail 1.2.2 → 1.2.3
Sign up to get free protection for your applications and to get access to all the features.
- data/MANIFEST +153 -150
- data/NOTES +34 -46
- data/ext/tmailscanner/tmail/extconf.rb +4 -0
- data/ext/tmailscanner/tmail/tmailscanner.c +1 -1
- data/lib/tmail/attachments.rb +1 -2
- data/lib/tmail/encode.rb +29 -7
- data/lib/tmail/mail.rb +14 -2
- data/lib/tmail/scanner_r.rb +4 -5
- data/lib/tmail/stringio.rb +1 -0
- data/lib/tmail/utils.rb +6 -6
- data/lib/tmail/version.rb +1 -1
- data/log/BugTrackingLog.txt +13 -0
- data/log/Fixme.txt +6 -0
- data/log/Testlog.txt +2226 -0
- data/log/fixme.rdoc +6 -0
- data/meta/VERSION +1 -1
- data/meta/project.yaml +8 -1
- data/setup.rb +2 -1
- data/site/img/mailman.gif +0 -0
- data/test/fixtures/raw_attack_email_with_zero_length_whitespace +29 -0
- data/test/fixtures/raw_email_with_mimepart_without_content_type +94 -0
- data/test/test_address.rb +1 -2
- data/test/test_attachments.rb +1 -2
- data/test/test_encode.rb +7 -0
- data/test/test_header.rb +3 -4
- data/test/test_mail.rb +6 -0
- data/work/script/make +0 -0
- data/work/script/rdoc +0 -0
- data/work/script/setup +0 -0
- data/work/script/test +0 -0
- metadata +197 -192
- data/log/Changelog-0.txt +0 -1189
data/MANIFEST
CHANGED
@@ -1,188 +1,191 @@
|
|
1
|
-
Rakefile
|
2
|
-
doc
|
3
|
-
test
|
4
|
-
test/temp_test_one.rb
|
5
|
-
test/kcode.rb
|
6
|
-
test/test_utils.rb
|
7
|
-
test/test_attachments.rb
|
8
|
-
test/test_encode.rb
|
9
|
-
test/test_mbox.rb
|
10
|
-
test/test_helper.rb
|
11
|
-
test/test_header.rb
|
12
|
-
test/test_base64.rb
|
13
|
-
test/test_address.rb
|
14
|
-
test/fixtures
|
15
|
-
test/fixtures/raw_email8
|
16
|
-
test/fixtures/raw_email_simple
|
17
|
-
test/fixtures/raw_email13
|
18
|
-
test/fixtures/raw_email5
|
19
|
-
test/fixtures/mailbox_without_any_from_or_sender
|
20
|
-
test/fixtures/raw_email4
|
21
|
-
test/fixtures/mailbox
|
22
|
-
test/fixtures/raw_email_with_nested_attachment
|
23
|
-
test/fixtures/raw_email
|
24
|
-
test/fixtures/raw_email_quoted_with_0d0a
|
25
|
-
test/fixtures/raw_base64_decoded_string
|
26
|
-
test/fixtures/mailbox_without_return_path
|
27
|
-
test/fixtures/raw_email3
|
28
|
-
test/fixtures/raw_email_reply
|
29
|
-
test/fixtures/raw_email_with_bad_date
|
30
|
-
test/fixtures/mailbox_without_from
|
31
|
-
test/fixtures/raw_email_multiple_from
|
32
|
-
test/fixtures/raw_email10
|
33
|
-
test/fixtures/raw_email_with_quoted_illegal_boundary
|
34
|
-
test/fixtures/raw_base64_email
|
35
|
-
test/fixtures/raw_email_with_partially_quoted_subject
|
36
|
-
test/fixtures/raw_email9
|
37
|
-
test/fixtures/raw_email2
|
38
|
-
test/fixtures/raw_email11
|
39
|
-
test/fixtures/raw_email_with_multipart_mixed_quoted_boundary
|
40
|
-
test/fixtures/raw_email_with_illegal_boundary
|
41
|
-
test/fixtures/raw_email6
|
42
|
-
test/fixtures/raw_email7
|
43
|
-
test/fixtures/raw_base64_encoded_string
|
44
|
-
test/fixtures/raw_email12
|
45
|
-
test/test_mail.rb
|
46
|
-
test/test_scanner.rb
|
47
|
-
test/test_port.rb
|
48
|
-
test/extctrl.rb
|
49
|
-
test/test_quote.rb
|
50
|
-
NOTES
|
51
1
|
CHANGES
|
52
|
-
|
53
|
-
README
|
2
|
+
doc
|
54
3
|
ext
|
4
|
+
ext/Makefile
|
55
5
|
ext/tmailscanner
|
56
6
|
ext/tmailscanner/tmail
|
57
7
|
ext/tmailscanner/tmail/depend
|
58
|
-
ext/tmailscanner/tmail/MANIFEST
|
59
8
|
ext/tmailscanner/tmail/extconf.rb
|
9
|
+
ext/tmailscanner/tmail/MANIFEST
|
60
10
|
ext/tmailscanner/tmail/tmailscanner.c
|
61
|
-
|
62
|
-
|
11
|
+
lib
|
12
|
+
lib/tmail
|
13
|
+
lib/tmail/address.rb
|
14
|
+
lib/tmail/attachments.rb
|
15
|
+
lib/tmail/base64.rb
|
16
|
+
lib/tmail/compat.rb
|
17
|
+
lib/tmail/config.rb
|
18
|
+
lib/tmail/core_extensions.rb
|
19
|
+
lib/tmail/encode.rb
|
20
|
+
lib/tmail/header.rb
|
21
|
+
lib/tmail/index.rb
|
22
|
+
lib/tmail/interface.rb
|
23
|
+
lib/tmail/loader.rb
|
24
|
+
lib/tmail/mail.rb
|
25
|
+
lib/tmail/mailbox.rb
|
26
|
+
lib/tmail/main.rb
|
27
|
+
lib/tmail/Makefile
|
28
|
+
lib/tmail/mbox.rb
|
29
|
+
lib/tmail/net.rb
|
30
|
+
lib/tmail/obsolete.rb
|
31
|
+
lib/tmail/parser.rb
|
32
|
+
lib/tmail/parser.y
|
33
|
+
lib/tmail/port.rb
|
34
|
+
lib/tmail/quoting.rb
|
35
|
+
lib/tmail/require_arch.rb
|
36
|
+
lib/tmail/scanner.rb
|
37
|
+
lib/tmail/scanner_r.rb
|
38
|
+
lib/tmail/stringio.rb
|
39
|
+
lib/tmail/utils.rb
|
40
|
+
lib/tmail/version.rb
|
41
|
+
lib/tmail.rb
|
42
|
+
LICENSE
|
43
|
+
log
|
44
|
+
log/BugTrackingLog.txt
|
45
|
+
log/Changelog.txt
|
46
|
+
log/fixme.rdoc
|
47
|
+
log/Fixme.txt
|
48
|
+
log/Testlog.txt
|
49
|
+
log/Todo.txt
|
63
50
|
meta
|
64
51
|
meta/MANIFEST
|
65
52
|
meta/project.yaml
|
66
53
|
meta/unixname
|
67
54
|
meta/VERSION
|
55
|
+
NOTES
|
56
|
+
Rakefile
|
57
|
+
README
|
58
|
+
sample
|
59
|
+
sample/bench_base64.rb
|
60
|
+
sample/data
|
61
|
+
sample/data/multipart
|
62
|
+
sample/data/normal
|
63
|
+
sample/data/sendtest
|
64
|
+
sample/data/simple
|
65
|
+
sample/data/test
|
66
|
+
sample/extract-attachements.rb
|
67
|
+
sample/from-check.rb
|
68
|
+
sample/multipart.rb
|
69
|
+
sample/parse-bench.rb
|
70
|
+
sample/parse-test.rb
|
71
|
+
sample/sendmail.rb
|
72
|
+
setup.rb
|
68
73
|
site
|
74
|
+
site/contributing
|
75
|
+
site/contributing/index.html
|
76
|
+
site/css
|
77
|
+
site/css/clean.css
|
78
|
+
site/css/layout.css
|
79
|
+
site/css/style.css
|
80
|
+
site/download
|
81
|
+
site/download/index.html
|
69
82
|
site/img
|
70
|
-
site/img/tfire.jpg
|
71
|
-
site/img/stamp.jpg
|
72
|
-
site/img/tmail.png
|
73
|
-
site/img/mailman.gif
|
74
83
|
site/img/envelope.jpg
|
84
|
+
site/img/mailman.gif
|
75
85
|
site/img/stamp-sm.jpg
|
86
|
+
site/img/stamp.jpg
|
76
87
|
site/img/stampborder.jpg
|
77
|
-
site/
|
78
|
-
site/
|
79
|
-
site/
|
80
|
-
site/quickstart/quickstart.html
|
88
|
+
site/img/tfire.jpg
|
89
|
+
site/img/tmail.png
|
90
|
+
site/index.html
|
81
91
|
site/js
|
82
92
|
site/js/jquery.js
|
93
|
+
site/log
|
94
|
+
site/log/changelog.xml
|
95
|
+
site/log/Changelog.xsl
|
83
96
|
site/outdated
|
97
|
+
site/outdated/BUGS
|
84
98
|
site/outdated/DEPENDS
|
85
|
-
site/outdated/Incompatibilities
|
86
|
-
site/outdated/Incompatibilities.ja
|
87
|
-
site/outdated/README.ja
|
88
|
-
site/outdated/NEWS
|
89
99
|
site/outdated/doc.ja
|
90
|
-
site/outdated/doc.ja/config.html
|
91
|
-
site/outdated/doc.ja/usage.html
|
92
|
-
site/outdated/doc.ja/mailbox.html
|
93
|
-
site/outdated/doc.ja/mail.html
|
94
|
-
site/outdated/doc.ja/index.html
|
95
|
-
site/outdated/doc.ja/basics.html
|
96
|
-
site/outdated/doc.ja/tmail.html
|
97
100
|
site/outdated/doc.ja/address.html
|
101
|
+
site/outdated/doc.ja/basics.html
|
102
|
+
site/outdated/doc.ja/config.html
|
98
103
|
site/outdated/doc.ja/details.html
|
104
|
+
site/outdated/doc.ja/index.html
|
105
|
+
site/outdated/doc.ja/mail.html
|
106
|
+
site/outdated/doc.ja/mailbox.html
|
99
107
|
site/outdated/doc.ja/port.html
|
108
|
+
site/outdated/doc.ja/tmail.html
|
109
|
+
site/outdated/doc.ja/usage.html
|
110
|
+
site/outdated/Incompatibilities
|
111
|
+
site/outdated/Incompatibilities.ja
|
112
|
+
site/outdated/NEWS
|
100
113
|
site/outdated/rdd
|
101
|
-
site/outdated/rdd/
|
102
|
-
site/outdated/rdd/
|
114
|
+
site/outdated/rdd/address.rrd.m
|
115
|
+
site/outdated/rdd/basics.rd.m
|
103
116
|
site/outdated/rdd/config.rrd.m
|
117
|
+
site/outdated/rdd/details.rd.m
|
104
118
|
site/outdated/rdd/index.rhtml.m
|
119
|
+
site/outdated/rdd/mail.rrd.m
|
105
120
|
site/outdated/rdd/mailbox.rrd.m
|
106
|
-
site/outdated/rdd/
|
107
|
-
site/outdated/rdd/basics.rd.m
|
108
|
-
site/outdated/rdd/details.rd.m
|
121
|
+
site/outdated/rdd/port.rrd.m
|
109
122
|
site/outdated/rdd/tmail.rrd.m
|
110
|
-
site/outdated/rdd/
|
111
|
-
site/outdated/
|
112
|
-
site/
|
113
|
-
site/
|
114
|
-
site/
|
123
|
+
site/outdated/rdd/usage.rd.m
|
124
|
+
site/outdated/README.ja
|
125
|
+
site/quickstart
|
126
|
+
site/quickstart/index.html
|
127
|
+
site/quickstart/quickstart.html
|
128
|
+
site/quickstart/usage.html
|
115
129
|
site/reference
|
130
|
+
site/reference/address.html
|
116
131
|
site/reference/config.html
|
117
|
-
site/reference/mailbox.html
|
118
|
-
site/reference/mail.html
|
119
132
|
site/reference/index.html
|
120
|
-
site/reference/
|
121
|
-
site/reference/
|
133
|
+
site/reference/mail.html
|
134
|
+
site/reference/mailbox.html
|
122
135
|
site/reference/port.html
|
123
|
-
site/
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
sample/data/multipart
|
174
|
-
sample/data/sendtest
|
175
|
-
sample/from-check.rb
|
176
|
-
sample/sendmail.rb
|
136
|
+
site/reference/tmail.html
|
137
|
+
test
|
138
|
+
test/extctrl.rb
|
139
|
+
test/fixtures
|
140
|
+
test/fixtures/mailbox
|
141
|
+
test/fixtures/mailbox_without_any_from_or_sender
|
142
|
+
test/fixtures/mailbox_without_from
|
143
|
+
test/fixtures/mailbox_without_return_path
|
144
|
+
test/fixtures/raw_attack_email_with_zero_length_whitespace
|
145
|
+
test/fixtures/raw_base64_decoded_string
|
146
|
+
test/fixtures/raw_base64_email
|
147
|
+
test/fixtures/raw_base64_encoded_string
|
148
|
+
test/fixtures/raw_email
|
149
|
+
test/fixtures/raw_email10
|
150
|
+
test/fixtures/raw_email11
|
151
|
+
test/fixtures/raw_email12
|
152
|
+
test/fixtures/raw_email13
|
153
|
+
test/fixtures/raw_email2
|
154
|
+
test/fixtures/raw_email3
|
155
|
+
test/fixtures/raw_email4
|
156
|
+
test/fixtures/raw_email5
|
157
|
+
test/fixtures/raw_email6
|
158
|
+
test/fixtures/raw_email7
|
159
|
+
test/fixtures/raw_email8
|
160
|
+
test/fixtures/raw_email9
|
161
|
+
test/fixtures/raw_email_multiple_from
|
162
|
+
test/fixtures/raw_email_quoted_with_0d0a
|
163
|
+
test/fixtures/raw_email_reply
|
164
|
+
test/fixtures/raw_email_simple
|
165
|
+
test/fixtures/raw_email_with_bad_date
|
166
|
+
test/fixtures/raw_email_with_illegal_boundary
|
167
|
+
test/fixtures/raw_email_with_mimepart_without_content_type
|
168
|
+
test/fixtures/raw_email_with_multipart_mixed_quoted_boundary
|
169
|
+
test/fixtures/raw_email_with_nested_attachment
|
170
|
+
test/fixtures/raw_email_with_partially_quoted_subject
|
171
|
+
test/fixtures/raw_email_with_quoted_illegal_boundary
|
172
|
+
test/kcode.rb
|
173
|
+
test/temp_test_one.rb
|
174
|
+
test/test_address.rb
|
175
|
+
test/test_attachments.rb
|
176
|
+
test/test_base64.rb
|
177
|
+
test/test_encode.rb
|
178
|
+
test/test_header.rb
|
179
|
+
test/test_helper.rb
|
180
|
+
test/test_mail.rb
|
181
|
+
test/test_mbox.rb
|
182
|
+
test/test_port.rb
|
183
|
+
test/test_quote.rb
|
184
|
+
test/test_scanner.rb
|
185
|
+
test/test_utils.rb
|
177
186
|
work
|
178
187
|
work/script
|
179
|
-
work/script/
|
188
|
+
work/script/make
|
180
189
|
work/script/rdoc
|
181
190
|
work/script/setup
|
182
|
-
work/script/
|
183
|
-
log
|
184
|
-
log/BugTrackingLog.txt
|
185
|
-
log/Changelog.txt
|
186
|
-
log/Changelog-0.txt
|
187
|
-
log/Todo.txt
|
188
|
-
log/Testlog.txt
|
191
|
+
work/script/test
|
data/NOTES
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
[ANN] TMail 1.2.
|
1
|
+
[ANN] TMail 1.2.3 - Security Update - 4 Apr 2008
|
2
2
|
|
3
3
|
TMail is The Mail Handling Library for Ruby!
|
4
4
|
|
@@ -20,62 +20,50 @@ http://tmail.rubyforge.org/
|
|
20
20
|
|
21
21
|
Release Summary:
|
22
22
|
------------------
|
23
|
+
This update handles a potential DOS vulnerability on
|
24
|
+
any host using TMail to handle incomming email; a
|
25
|
+
crafted email with carefully positioned whitespace
|
26
|
+
can cause the TMail library to go into an endless
|
27
|
+
loop causing denial of service attack on email services.
|
28
|
+
|
23
29
|
New release handles five tickets in the TMail
|
24
|
-
tracker as well as
|
25
|
-
|
30
|
+
tracker as well as more documentation and more
|
31
|
+
work on the moving Ruby 1.9 Encoding/Decoding Target
|
26
32
|
|
27
|
-
Additionally added
|
33
|
+
Additionally added 7 more test cases to the library
|
28
34
|
to handle the above tickets.
|
29
35
|
|
30
36
|
This should be a drop in replacement for existing
|
31
|
-
TMail installations
|
37
|
+
TMail installations - unless you are using TMail on
|
38
|
+
Ruby 1.9, in which case, you _might_ run into encoding
|
39
|
+
problems if you are on Ruby 1.9.1, Ruby 1.9 still
|
40
|
+
works, YMMV, any feedback on TMail on 1.9.1 with
|
41
|
+
patches is really welcome!
|
32
42
|
|
33
43
|
|
34
44
|
Release Update Details:
|
35
45
|
-------------------------
|
36
46
|
|
37
|
-
Closed #
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
Closed 16025 - TMail scanner.rb would not parse ATOM
|
55
|
-
chars correctly making it fail tests where the C version
|
56
|
-
passed them. Fixed this by updating the Scanner.rb
|
57
|
-
version to be in step with the C version (there was an
|
58
|
-
extra @ symbol in the ATOM CHARS definition that was not
|
59
|
-
in the C version.) (mikel)
|
60
|
-
|
61
|
-
Closed 16283 - TMail would not decode correctly due to
|
62
|
-
bug in text-utils - put in previous patch from old tmail
|
63
|
-
trunk version. Thanks to garyo for spotting this.
|
64
|
-
|
65
|
-
Closed Bug - Handled quote boundary being gready on
|
66
|
-
content-type header fields (M. Mondragon)
|
67
|
-
|
68
|
-
Changed the name of mailscanner to tmailscanner to handle
|
69
|
-
a copyright issue. MailScanner is a copyrighted name.
|
70
|
-
|
71
|
-
Added about 15 test cases from the Rails community. Added
|
72
|
-
failing test case for an unquoted @ char in the From
|
73
|
-
header field. Need to check fully if this is needed or
|
74
|
-
not, but it is there anyway - to be resolved. I have
|
75
|
-
emailed 822 mailing list to check this out.
|
76
|
-
|
77
|
-
See the changelog for previous changes.
|
47
|
+
* Closed #18881 - TMail goes into an endless loop
|
48
|
+
if sent an crafted email which puts a whitespace
|
49
|
+
character at position 78 of the line to be wrapped.
|
50
|
+
|
51
|
+
* Closed #19203 - TMail errors in Ruby 1.9.1 on
|
52
|
+
invalid multibyte chars.
|
53
|
+
|
54
|
+
* Closed #18814 - Fixed attchment.rb failing on
|
55
|
+
mail part that had a nil content-type - now assumes
|
56
|
+
text/plain as the missing content type and preserves
|
57
|
+
the mail structure.
|
58
|
+
|
59
|
+
* Closed #18516 - Fixed TMail::Mail#preamble, and
|
60
|
+
added #preamble=, this allows you now to set and
|
61
|
+
read the preamble text of an email (the plain text
|
62
|
+
that appears before any MIME encoded attachments that
|
63
|
+
you can read in any email client) (Charles Lowe)
|
78
64
|
|
65
|
+
* Closed #18515 - Removed ftools from test case
|
66
|
+
to clean it up (Charles Lowe)
|
79
67
|
|
80
68
|
Bug Reports / Fixes:
|
81
69
|
----------------------
|
@@ -7,6 +7,10 @@ arch = Config::CONFIG['sitearch']
|
|
7
7
|
|
8
8
|
windows = (/djgpp|(cyg|ms|bcc)win|mingw/ =~ arch)
|
9
9
|
|
10
|
+
# For now use pure Ruby tmailscanner if on Windows, since
|
11
|
+
# most Window's users don't have developer tools needed.
|
12
|
+
ENV['NORUBYEXT'] = true if windows
|
13
|
+
|
10
14
|
if (ENV['NORUBYEXT'] == 'true')
|
11
15
|
File.open('Makefile', 'w') do |f|
|
12
16
|
f << "all:\n"
|