1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1 |
<?xml version="1.0" encoding="latin1" ?>
|
2 |
<!DOCTYPE chapter SYSTEM "chapter.dtd">
|
|
3 |
||
4 |
<chapter>
|
|
5 |
<header>
|
|
6 |
<copyright>
|
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
7 |
<year>2004</year><year>2010</year> |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
8 |
<holder>Ericsson AB. All Rights Reserved.</holder> |
9 |
</copyright>
|
|
10 |
<legalnotice>
|
|
11 |
The contents of this file are subject to the Erlang Public License, |
|
12 |
Version 1.1, (the "License"); you may not use this file except in |
|
13 |
compliance with the License. You should have received a copy of the |
|
14 |
Erlang Public License along with this software. If not, it can be |
|
15 |
retrieved online at http://www.erlang.org/. |
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
16 |
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
17 |
Software distributed under the License is distributed on an "AS IS" |
18 |
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See |
|
19 |
the License for the specific language governing rights and limitations |
|
20 |
under the License. |
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
21 |
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
22 |
</legalnotice>
|
23 |
||
24 |
<title>Inets Release Notes History</title> |
|
25 |
<prepared></prepared>
|
|
26 |
<responsible></responsible>
|
|
27 |
<docno></docno>
|
|
28 |
<approved></approved>
|
|
29 |
<checked></checked>
|
|
30 |
<date>04-09-30</date> |
|
31 |
<rev>A</rev> |
|
32 |
<file>notes_history.sgml</file> |
|
33 |
</header>
|
|
34 |
||
35 |
<section>
|
|
36 |
<title>Inets 4.7.17</title> |
|
37 |
||
38 |
<section>
|
|
39 |
<title>Fixed Bugs and Malfunctions</title> |
|
40 |
<list type="bulleted"> |
|
41 |
<item>
|
|
42 |
<p>[HTTP client] - Could fail in retry_pipeline/2 due to an
|
|
43 |
incorrect assumption of an internal returnvalue.</p>
|
|
44 |
<p>Own Id: OTP-6791</p> |
|
45 |
</item>
|
|
46 |
<item>
|
|
47 |
<p>[HTTP client] - The check of the value of the transfer
|
|
48 |
encoding has been updated so that it is case insensitive.</p>
|
|
49 |
<p>Own Id: OTP-6807</p> |
|
50 |
</item>
|
|
51 |
<item>
|
|
52 |
<p>[HTTP client] - When receiving a 304 "Not Modified"
|
|
53 |
reply, the httpc_handler will no longer expect to receive |
|
54 |
a HTTP body.</p>
|
|
55 |
<p>Own Id: OTP-6821</p> |
|
56 |
</item>
|
|
57 |
<item>
|
|
58 |
<p>[HTTP client] - Parsing of the HTTP response failed when
|
|
59 |
there was no headers fields in the response.</p>
|
|
60 |
<p>Own Id: OTP-6830</p> |
|
61 |
</item>
|
|
62 |
</list>
|
|
63 |
</section>
|
|
64 |
||
65 |
<section>
|
|
66 |
<title>Improvements and New Features</title> |
|
67 |
<list type="bulleted"> |
|
68 |
<item>
|
|
69 |
<p>[HTTP server] - Started clean up of code so that it uses
|
|
70 |
stdlib functions instead of reinventing them.</p>
|
|
71 |
<p>Own Id: OTP-6808</p> |
|
72 |
</item>
|
|
73 |
</list>
|
|
74 |
</section>
|
|
75 |
||
76 |
</section>
|
|
77 |
||
78 |
<section>
|
|
79 |
<title>Inets 4.7.16</title> |
|
80 |
||
81 |
<section>
|
|
82 |
<title>Improvements and New Features</title> |
|
83 |
<list type="bulleted"> |
|
84 |
<item>
|
|
85 |
<p>Minor Makefile changes.</p> |
|
86 |
<p>Own Id: OTP-6689</p> |
|
87 |
</item>
|
|
88 |
<item>
|
|
89 |
<p>http_base_64:encode/decode and
|
|
90 |
httpd_util:to_upper/to_lower are now deprecated, as these |
|
91 |
functions has been moved to stdlib, using them will now |
|
92 |
cause an compiler warning and the documentation of them |
|
93 |
has been removed.</p>
|
|
94 |
<p>Own Id: OTP-6716</p> |
|
95 |
</item>
|
|
96 |
<item>
|
|
97 |
<p>When making an asynchronous HTTP request and the
|
|
98 |
underlying gen_tcp:connect failed with timeout (not a |
|
99 |
very common case) the return of the asynchronous HTTP |
|
100 |
request was delayed for "timeout" seconds. This happened |
|
101 |
due to the fact that when spawning a gen_server process |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
102 |
the spawn will wait for the init function to complete. |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
103 |
This is now avoided using proc_lib and |
104 |
gen_server:enter_loop/3, hence the asynchronous HTTP |
|
105 |
request return will not be delayed. Also the request |
|
106 |
timeout value is now propagated to gen_tcp rather that |
|
107 |
relying on the system default.</p>
|
|
108 |
<p>Own Id: OTP-6735</p> |
|
109 |
</item>
|
|
110 |
</list>
|
|
111 |
</section>
|
|
112 |
</section>
|
|
113 |
||
114 |
<section>
|
|
115 |
<title>Inets 4.7.15</title> |
|
116 |
||
117 |
<section>
|
|
118 |
<title>Fixed Bugs and Malfunctions</title> |
|
119 |
<list type="bulleted"> |
|
120 |
<item>
|
|
121 |
<p>[tftp] The TFTP client/server implements now a more
|
|
122 |
relaxed interpretation of the RFC 1350 regarding |
|
123 |
re-receive of acknowledgments. If multiple copies of the |
|
124 |
same acknowledgments is received the spurious ones are |
|
125 |
silently ignored. This fix was intended for inets-4.7.14 |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
126 |
but accidentaly it was not included in that release.</p>
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
127 |
<p>Own Id: OTP-6706 Aux Id: OTP-6691 </p> |
128 |
</item>
|
|
129 |
</list>
|
|
130 |
</section>
|
|
131 |
||
132 |
<section>
|
|
133 |
<title>Improvements and New Features</title> |
|
134 |
<list type="bulleted"> |
|
135 |
<item>
|
|
136 |
<p>Minor Makefile changes.</p> |
|
137 |
<p>Own Id: OTP-6689</p> |
|
138 |
</item>
|
|
139 |
</list>
|
|
140 |
</section>
|
|
141 |
</section>
|
|
142 |
||
143 |
<section>
|
|
144 |
<title>Inets 4.7.14</title> |
|
145 |
||
146 |
<section>
|
|
147 |
<title>Fixed Bugs and Malfunctions</title> |
|
148 |
<list type="bulleted"> |
|
149 |
<item>
|
|
150 |
<p>[tftp] The TFTP client/server implements now a more
|
|
151 |
relaxed interpretation of the RFC 1350 regarding |
|
152 |
re-receive of acknowledgments. If multiple copies of the |
|
153 |
same acknowledgments is received the spurious ones are |
|
154 |
silently ignored.</p>
|
|
155 |
<p>Own Id: OTP-6691</p> |
|
156 |
</item>
|
|
157 |
</list>
|
|
158 |
</section>
|
|
159 |
</section>
|
|
160 |
||
161 |
<section>
|
|
162 |
<title>Inets 4.7.13</title> |
|
163 |
||
164 |
<section>
|
|
165 |
<title>Improvements and New Features</title> |
|
166 |
<list type="bulleted"> |
|
167 |
<item>
|
|
168 |
<p>[tftp] The TFTP client/server implements now a more
|
|
169 |
relaxed interpretation of the RFC 1350 regarding |
|
170 |
re-receive of data packets. If multiple copies of the |
|
171 |
same data packet is received the spurious ones are |
|
172 |
silently ignored.</p>
|
|
173 |
<p>Own Id: OTP-6642</p> |
|
174 |
</item>
|
|
175 |
</list>
|
|
176 |
</section>
|
|
177 |
</section>
|
|
178 |
||
179 |
<section>
|
|
180 |
<title>Inets 4.7.12</title> |
|
181 |
||
182 |
<section>
|
|
183 |
<title>Improvements and New Features</title> |
|
184 |
<list type="bulleted"> |
|
185 |
<item>
|
|
186 |
<p>[httpd] - When calling httpd:restart there was a file
|
|
187 |
descriptor and ets table leek due to the fact that the |
|
188 |
semantics of the function restart is not restart but |
|
189 |
reload.</p>
|
|
190 |
<p>Own Id: OTP-6573 Aux Id: seq10607 </p> |
|
191 |
</item>
|
|
192 |
<item>
|
|
193 |
<p>[tftp] Crash in tftp_engine:terminate/3 caused big crash
|
|
194 |
report. The file was however transferred as normal, but |
|
195 |
the ugly printout is now gone.</p>
|
|
196 |
<p>Own Id: OTP-6596 Aux Id: seq10618 </p> |
|
197 |
</item>
|
|
198 |
</list>
|
|
199 |
</section>
|
|
200 |
</section>
|
|
201 |
||
202 |
<section>
|
|
203 |
<title>Inets 4.7.11</title> |
|
204 |
||
205 |
<section>
|
|
206 |
<title>Fixed Bugs and Malfunctions</title> |
|
207 |
<list type="bulleted"> |
|
208 |
<item>
|
|
209 |
<p>[http] - Chunked encoding updated to handle the empty
|
|
210 |
chunk.</p>
|
|
211 |
<p>Own Id: OTP-6511</p> |
|
212 |
</item>
|
|
213 |
<item>
|
|
214 |
<p>[http] - Removed minor bugs and dead code found by
|
|
215 |
dialyzer.</p>
|
|
216 |
<p>Own Id: OTP-6522</p> |
|
217 |
</item>
|
|
218 |
</list>
|
|
219 |
</section>
|
|
220 |
</section>
|
|
221 |
||
222 |
<section>
|
|
223 |
<title>Inets 4.7.10</title> |
|
224 |
||
225 |
<section>
|
|
226 |
<title>Improvements and New Features</title> |
|
227 |
<list type="bulleted"> |
|
228 |
<item>
|
|
229 |
<p>[httpd] - The server no longer produces error messages
|
|
230 |
when the client resets the the connection. This is not an |
|
231 |
error as far as the server is concerned.</p>
|
|
232 |
<p>Own Id: OTP-6484 Aux Id: seq10568 </p> |
|
233 |
</item>
|
|
234 |
<item>
|
|
235 |
<p>[tftp] The server is now silent by default. Error
|
|
236 |
messages can however be displayed by setting the debug |
|
237 |
level to 'error' (new) or higher.</p>
|
|
238 |
<p>Own Id: OTP-6498</p> |
|
239 |
</item>
|
|
240 |
</list>
|
|
241 |
</section>
|
|
242 |
</section>
|
|
243 |
||
244 |
<section>
|
|
245 |
<title>Inets 4.7.9</title> |
|
246 |
||
247 |
<section>
|
|
248 |
<title>Fixed Bugs and Malfunctions</title> |
|
249 |
<list type="bulleted"> |
|
250 |
<item>
|
|
251 |
<p>Bug in in handling of request timers has been corrected.</p> |
|
252 |
<p>Own Id: OTP-6476</p> |
|
253 |
</item>
|
|
254 |
</list>
|
|
255 |
</section>
|
|
256 |
||
257 |
<section>
|
|
258 |
<title>Improvements and New Features</title> |
|
259 |
<list type="bulleted"> |
|
260 |
<item>
|
|
261 |
<p>[tftp] - Daemon was only able to process one request when
|
|
262 |
fd option was given.</p>
|
|
263 |
<p>Own Id: OTP-6480</p> |
|
264 |
</item>
|
|
265 |
</list>
|
|
266 |
</section>
|
|
267 |
</section>
|
|
268 |
||
269 |
<section>
|
|
270 |
<title>Inets 4.7.8</title> |
|
271 |
||
272 |
<section>
|
|
273 |
<title>Fixed Bugs and Malfunctions</title> |
|
274 |
<list type="bulleted"> |
|
275 |
<item>
|
|
276 |
<p>[ftp, httpc] - Updated the internal ensure_started
|
|
277 |
functions to handle that inets was started as an included |
|
278 |
application.</p>
|
|
279 |
<p>Own Id: OTP-6409 Aux Id: seq10546 </p> |
|
280 |
</item>
|
|
281 |
</list>
|
|
282 |
</section>
|
|
283 |
||
284 |
<section>
|
|
285 |
<title>Improvements and New Features</title> |
|
286 |
<list type="bulleted"> |
|
287 |
<item>
|
|
288 |
<p>[httpd] - Guard added to API function
|
|
289 |
httpd_util:integer_to_hexlist/1.</p>
|
|
290 |
<p>Own Id: OTP-6397</p> |
|
291 |
</item>
|
|
292 |
<item>
|
|
293 |
<p>[tftp] - Introduced ability to use prebound ports (see
|
|
294 |
the option {port, Port} for more info). Added peer info |
|
295 |
(host and port) as new optional argument to prepare and |
|
296 |
open functions in tftp callback modules.</p>
|
|
297 |
<p>Own Id: OTP-6413</p> |
|
298 |
</item>
|
|
299 |
</list>
|
|
300 |
</section>
|
|
301 |
</section>
|
|
302 |
||
303 |
<section>
|
|
304 |
<title>Inets 4.7.7</title> |
|
305 |
||
306 |
<section>
|
|
307 |
<title>Fixed Bugs and Malfunctions</title> |
|
308 |
<list type="bulleted"> |
|
309 |
<item>
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
310 |
<p>[httpd] - The http server could throw away pipelined
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
311 |
requests leaving the client hanging.</p>
|
312 |
<p>Own Id: OTP-6310</p> |
|
313 |
</item>
|
|
314 |
<item>
|
|
315 |
<p>[ftp] - Code for handling fallback to ipv4 was not
|
|
316 |
exhaustive.</p>
|
|
317 |
<p>Own Id: OTP-6312</p> |
|
318 |
</item>
|
|
319 |
<item>
|
|
320 |
<p>[httpd] - Incorrect handling of ipv6 address would crash
|
|
321 |
the loading of the BindAddress parameter, which had the |
|
322 |
consequence that you could not start more than one HTTP |
|
323 |
server on an erlang node.</p>
|
|
324 |
<p>Own Id: OTP-6323</p> |
|
325 |
</item>
|
|
326 |
<item>
|
|
327 |
<p>[httpc] - Some 30X codes, as for instance 302, should not
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
328 |
always be automatically redirected but in inets-4.7.6 some |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
329 |
restrictions where made too hard, never allowing an |
330 |
automatic redirection. (Automatic redirect should be |
|
331 |
allowed for get and head.)</p>
|
|
332 |
<p>Own Id: OTP-6332</p> |
|
333 |
</item>
|
|
334 |
<item>
|
|
335 |
<p>[ftp] - The mode flag that could be used to force ftp
|
|
336 |
active mode was ignored. Only the deprecated function |
|
337 |
force_active/1 works for prior releases to this one.</p>
|
|
338 |
<p>Own Id: OTP-6342</p> |
|
339 |
</item>
|
|
340 |
</list>
|
|
341 |
</section>
|
|
342 |
||
343 |
<section>
|
|
344 |
<title>Improvements and New Features</title> |
|
345 |
<list type="bulleted"> |
|
346 |
<item>
|
|
347 |
<p>[httpc] - Added debug feature to turn on/off some basic
|
|
348 |
erlang tracing on client processes.</p>
|
|
349 |
<p>Own Id: OTP-6326</p> |
|
350 |
</item>
|
|
351 |
</list>
|
|
352 |
</section>
|
|
353 |
</section>
|
|
354 |
||
355 |
<section>
|
|
356 |
<title>Inets 4.7.6</title> |
|
357 |
||
358 |
<section>
|
|
359 |
<title>Fixed Bugs and Malfunctions</title> |
|
360 |
<list type="bulleted"> |
|
361 |
<item>
|
|
362 |
<p>[httpc] - The parsing of uri's was rewritten so that it
|
|
363 |
should handle all types of uri's including ipv6 uri's.</p>
|
|
364 |
<p>Own Id: OTP-5677</p> |
|
365 |
</item>
|
|
366 |
<item>
|
|
367 |
<p>[httpc, httpd] - Extensions and trailers where not
|
|
368 |
properly handled by the chunk decoding implementation.</p>
|
|
369 |
<p>Own Id: OTP-6005 Aux Id: OTP-6264 </p> |
|
370 |
</item>
|
|
371 |
<item>
|
|
372 |
<p>[httpc] - A request resulting in an empty body is now
|
|
373 |
returned without any delays.</p>
|
|
374 |
<p>Own Id: OTP-6243</p> |
|
375 |
</item>
|
|
376 |
<item>
|
|
377 |
<p>[httpc] - When http:request/4 was used with a configured
|
|
378 |
proxy, and the webserver returns 3XX code, http:request/4 |
|
379 |
entered an endless loop. Two problems was solved in this |
|
380 |
area, the absolute uri is now updated when a redirect is |
|
381 |
issued, so that the problem in this case will not arise, |
|
382 |
and the redirection endless loop detection was fixed so |
|
383 |
that will actually detect potential endless loops.</p>
|
|
384 |
<p>Own Id: OTP-6244</p> |
|
385 |
</item>
|
|
386 |
<item>
|
|
387 |
<p>[httpc, httpd] - In some cases if a body contained the
|
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
388 |
sequence "\r\n0" and was chunked encoded this sequence |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
389 |
was incorrectly interpreted as the last chunk.</p>
|
390 |
<p>Own Id: OTP-6264 Aux Id: OTP-6005 </p> |
|
391 |
</item>
|
|
392 |
<item>
|
|
393 |
<p>[httpc, httpd] - http_request.erl didn't handle https
|
|
394 |
URIs, which meant that redirects from ESI did not work.</p>
|
|
395 |
<p>Own Id: OTP-6274</p> |
|
396 |
</item>
|
|
397 |
<item>
|
|
398 |
<p>[httpc, httpd] - The base 64 decoder was missing a guard
|
|
399 |
so that invalid input lead to an emulator crash instead |
|
400 |
of a function clause as expected. Also the http server |
|
401 |
has been improved to handle the function clause error |
|
402 |
returning a bad credentials reply to the client.</p>
|
|
403 |
<p>Own Id: OTP-6279</p> |
|
404 |
</item>
|
|
405 |
<item>
|
|
406 |
<p>[httpc] - Changed internal default value as it sometimes
|
|
407 |
would be interpreted incorrectly causing the client to |
|
408 |
return an incomplete body.</p>
|
|
409 |
<p>Own Id: OTP-6283</p> |
|
410 |
</item>
|
|
411 |
<item>
|
|
412 |
<p>[httpc] - Handling of 30X codes was changed so that it
|
|
413 |
works according to the documentation. For instance 301 |
|
414 |
and 302 codes will not be automatically redirected.</p>
|
|
415 |
<p>Own Id: OTP-6297</p> |
|
416 |
</item>
|
|
417 |
<item>
|
|
418 |
<p>[httpc] - A bug in the pipeline-handling code could cause
|
|
419 |
a response to be sent to the client with an incorrect |
|
420 |
request id.</p>
|
|
421 |
<p>Own Id: OTP-6303</p> |
|
422 |
</item>
|
|
423 |
</list>
|
|
424 |
</section>
|
|
425 |
||
426 |
<section>
|
|
427 |
<title>Improvements and New Features</title> |
|
428 |
<list type="bulleted"> |
|
429 |
<item>
|
|
430 |
<p>[httpc] - Added feature to send header values as they
|
|
431 |
where typed by the user of the client. Note that the http |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
432 |
standard requires them to be case insensitive. This |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
433 |
feature should only be used if there is no other way to |
434 |
communicate with the server or for testing purpose.</p>
|
|
435 |
<p>Own Id: OTP-5527</p> |
|
436 |
</item>
|
|
437 |
<item>
|
|
438 |
<p>[httpc] - When using asynchronous HTTP-request it is now
|
|
439 |
possible to receive "200-responses" as streams instead of |
|
440 |
having to wait until the whole response has been |
|
441 |
delivered. It also possible to stream "200-response |
|
442 |
bodys" to a file both for synchronous and asynchronous |
|
443 |
requests.</p>
|
|
444 |
<p>Own Id: OTP-6263</p> |
|
445 |
</item>
|
|
446 |
<item>
|
|
447 |
<p>[httpc] - Added option to generate Proxy-Authorization
|
|
448 |
header from provided proxy username and password.</p>
|
|
449 |
<p>Own Id: OTP-6280</p> |
|
450 |
</item>
|
|
451 |
</list>
|
|
452 |
</section>
|
|
453 |
</section>
|
|
454 |
||
455 |
<section>
|
|
456 |
<title>Inets 4.7.5</title> |
|
457 |
||
458 |
<section>
|
|
459 |
<title>Fixed Bugs and Malfunctions</title> |
|
460 |
<list type="bulleted"> |
|
461 |
<item>
|
|
462 |
<p>[FTP] Change documentation so that it agrees with the
|
|
463 |
default behaviour of the code regarding the use of |
|
464 |
transfer type, which is right according to rfc959.</p>
|
|
465 |
<p>Own Id: OTP-6018</p> |
|
466 |
</item>
|
|
467 |
<item>
|
|
468 |
<p>[ftp] The application handles the case if the owning
|
|
469 |
process terminates with the reason 'shutdown'.</p>
|
|
470 |
<p>Own Id: OTP-6035</p> |
|
471 |
</item>
|
|
472 |
<item>
|
|
473 |
<p>[ftp] Handle file errors from the FTP server.</p> |
|
474 |
<p>Own Id: OTP-6036</p> |
|
475 |
</item>
|
|
476 |
<item>
|
|
477 |
<p>[httpd] Header parsing of reply from cgi script incorrect.</p> |
|
478 |
<p>Own Id: OTP-6145</p> |
|
479 |
</item>
|
|
480 |
<item>
|
|
481 |
<p>[ftp] The timeout given in the ftp:open call was not
|
|
482 |
properly used, which could leave the caller hanging |
|
483 |
forever.</p>
|
|
484 |
<p>Own Id: OTP-6184</p> |
|
485 |
<p>Aux Id: seq10388</p> |
|
486 |
</item>
|
|
487 |
<item>
|
|
488 |
<p>[httpd] HTTPD request handler does not handle unexpected info
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
489 |
properly, which causes an unnecessarily obscure error |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
490 |
message.</p>
|
491 |
<p>Own Id: OTP-6189</p> |
|
492 |
<p>Aux Id: seq10395</p> |
|
493 |
</item>
|
|
494 |
<item>
|
|
495 |
<p>[http] Misc fixes in the URI parsing module.</p> |
|
496 |
<p>Igor Goryachev</p> |
|
497 |
<p>Own Id: OTP-6191</p> |
|
498 |
</item>
|
|
499 |
</list>
|
|
500 |
</section>
|
|
501 |
||
502 |
<section>
|
|
503 |
<title>Improvements and New Features</title> |
|
504 |
<list type="bulleted"> |
|
505 |
<item>
|
|
506 |
<p>Added application interface module: <c>inets</c>.</p> |
|
507 |
<p>Own Id: OTP-6135</p> |
|
508 |
</item>
|
|
509 |
</list>
|
|
510 |
</section>
|
|
511 |
</section>
|
|
512 |
||
513 |
<section>
|
|
514 |
<title>Inets 4.7.4</title> |
|
515 |
||
516 |
<section>
|
|
517 |
<title>Fixed Bugs and Malfunctions</title> |
|
518 |
<list type="bulleted"> |
|
519 |
<item>
|
|
520 |
<p>Removed code generating compiler warnings</p> |
|
521 |
<p>Own Id: OTP-6069</p> |
|
522 |
</item>
|
|
523 |
</list>
|
|
524 |
</section>
|
|
525 |
||
526 |
<section>
|
|
527 |
<title>Improvements and New Features</title> |
|
528 |
<list type="bulleted"> |
|
529 |
<item>
|
|
530 |
<p>[tftp] Added documentation (manual page) for
|
|
531 |
<seealso marker="tftp">TFTP</seealso>.</p> |
|
532 |
<p>Own Id: OTP-6082</p> |
|
533 |
</item>
|
|
534 |
</list>
|
|
535 |
</section>
|
|
536 |
</section>
|
|
537 |
||
538 |
<section>
|
|
539 |
<title>Inets 4.7.3</title> |
|
540 |
||
541 |
<section>
|
|
542 |
<title>Fixed Bugs and Malfunctions</title> |
|
543 |
<list type="bulleted"> |
|
544 |
<item>
|
|
545 |
<p>[http,server] started dbg even though no debugging was
|
|
546 |
desired.</p>
|
|
547 |
<p>Own Id: OTP-5984 Aux Id: seq10290 </p> |
|
548 |
</item>
|
|
549 |
<item>
|
|
550 |
<p>[http,server] request handler process died ugly due to a
|
|
551 |
parse error when validating a bad request.</p>
|
|
552 |
<p>Own Id: OTP-6003 Aux Id: seq10260 </p> |
|
553 |
</item>
|
|
554 |
</list>
|
|
555 |
</section>
|
|
556 |
</section>
|
|
557 |
||
558 |
<section>
|
|
559 |
<title>Inets 4.7.2</title> |
|
560 |
||
561 |
<section>
|
|
562 |
<title>Fixed Bugs and Malfunctions</title> |
|
563 |
<list type="bulleted"> |
|
564 |
<item>
|
|
565 |
<p>[http,server] Server falsely sets ipv6 enabled when it
|
|
566 |
gets an ipv4-mapped ipv6 address.</p>
|
|
567 |
<p>Own Id: OTP-5941 Aux Id: seq10221 </p> |
|
568 |
</item>
|
|
569 |
<item>
|
|
570 |
<p>[http,server] In case http version is unknown of client
|
|
571 |
use HTTP1.0 to send status.</p>
|
|
572 |
<p>Own Id: OTP-5943 Aux Id: seq10198 </p> |
|
573 |
</item>
|
|
574 |
<item>
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
575 |
<p>[http,server] The process handling a request now ignores
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
576 |
garbage messages.</p>
|
577 |
<p>Own Id: OTP-5961 Aux Id: seq10198 </p> |
|
578 |
</item>
|
|
579 |
<item>
|
|
580 |
<p>[http,server] Changed some actions taken if config data
|
|
581 |
in httpd services was faulty.</p>
|
|
582 |
<p>Own Id: OTP-5962 Aux Id: seq10198 </p> |
|
583 |
</item>
|
|
584 |
</list>
|
|
585 |
</section>
|
|
586 |
</section>
|
|
587 |
||
588 |
<section>
|
|
589 |
<title>inets 4.7.1</title> |
|
590 |
||
591 |
<section>
|
|
592 |
<title>Fixed Bugs and Malfunctions</title> |
|
593 |
<list type="bulleted"> |
|
594 |
<item>
|
|
595 |
<p>[http,server] It was possible to read arbitrary files on
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
596 |
server by prepending ././ and ../../ in front of the file |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
597 |
name.</p>
|
598 |
<p>Own Id: OTP-5938</p> |
|
599 |
</item>
|
|
600 |
</list>
|
|
601 |
</section>
|
|
602 |
</section>
|
|
603 |
||
604 |
<section>
|
|
605 |
<title>Inets 4.7</title> |
|
606 |
||
607 |
<section>
|
|
608 |
<title>Fixed Bugs and Malfunctions</title> |
|
609 |
<list type="bulleted"> |
|
610 |
<item>
|
|
611 |
<p>[http,server] Handling of undefined file times (e.g.
|
|
612 |
modification time: the mtime field on the file_info |
|
613 |
record).</p>
|
|
614 |
<p>Own Id: OTP-5865 Aux Id: OTP-5844 </p> |
|
615 |
</item>
|
|
616 |
</list>
|
|
617 |
</section>
|
|
618 |
||
619 |
<section>
|
|
620 |
<title>Improvements and New Features</title> |
|
621 |
<list type="bulleted"> |
|
622 |
<item>
|
|
623 |
<p>[http,server]It is now possible to set the wanted timeout
|
|
624 |
for the server to setup a request connection. A new |
|
625 |
syntax for inets.config is provided in the users guide |
|
626 |
documentation. This syntax also allows to set tracing of |
|
627 |
the server for debug purposes.</p>
|
|
628 |
<p>Own Id: OTP-5913 Aux Id: seq10198 </p> |
|
629 |
</item>
|
|
630 |
</list>
|
|
631 |
</section>
|
|
632 |
</section>
|
|
633 |
||
634 |
<section>
|
|
635 |
<title>Inets 4.6.2</title> |
|
636 |
||
637 |
<section>
|
|
638 |
<title>Fixed Bugs and Malfunctions</title> |
|
639 |
<list type="bulleted"> |
|
640 |
<item>
|
|
641 |
<p>[http,server] Had earlier forgot to convert a value in
|
|
642 |
entity_body to a binary.</p>
|
|
643 |
<p>Own Id: OTP-5796</p> |
|
644 |
</item>
|
|
645 |
<item>
|
|
646 |
<p>[http,server] Now application checks whether the
|
|
647 |
necessary directives under directive Directory exist.</p>
|
|
648 |
<p>Own Id: OTP-5821</p> |
|
649 |
</item>
|
|
650 |
</list>
|
|
651 |
</section>
|
|
652 |
</section>
|
|
653 |
||
654 |
<section>
|
|
655 |
<title>Inets 4.6.1</title> |
|
656 |
||
657 |
<section>
|
|
658 |
<title>Fixed Bugs and Malfunctions</title> |
|
659 |
<list type="bulleted"> |
|
660 |
<item>
|
|
661 |
<p>[http, client] If an Ipv4-mapped ipv6 address is used the
|
|
662 |
client now falls back on ipv4.</p>
|
|
663 |
<p>Own Id: OTP-5773 Aux Id: OTP-5765, OTP-5764 </p> |
|
664 |
</item>
|
|
665 |
<item>
|
|
666 |
<p>[http,server] Content-length may got a too low value,
|
|
667 |
causing loss of data in clients.</p>
|
|
668 |
<p>Own Id: OTP-5775 Aux Id: seq10110 </p> |
|
669 |
</item>
|
|
670 |
</list>
|
|
671 |
</section>
|
|
672 |
||
673 |
<section>
|
|
674 |
<title>Improvements and New Features</title> |
|
675 |
<list type="bulleted"> |
|
676 |
<item>
|
|
677 |
<p>[http, client] The verbose mode prints what was sent and
|
|
678 |
received during a request. Added a <c>verbose</c> option |
|
679 |
that can be used by <c>http:set_options/1</c></p> |
|
680 |
<p>Own Id: OTP-5766</p> |
|
681 |
</item>
|
|
682 |
</list>
|
|
683 |
</section>
|
|
684 |
</section>
|
|
685 |
||
686 |
<section>
|
|
687 |
<title>Inets 4.6</title> |
|
688 |
||
689 |
<section>
|
|
690 |
<title>Fixed Bugs and Malfunctions</title> |
|
691 |
<list type="bulleted"> |
|
692 |
<item>
|
|
693 |
<p>[ftp, client] - Improvement of error handling if
|
|
694 |
something goes wrong while handling the option list in |
|
695 |
ftp:open/[1,2,3].</p>
|
|
696 |
<p>Own Id: OTP-5711</p> |
|
697 |
</item>
|
|
698 |
<item>
|
|
699 |
<p>[ftp, client] - Error when parsing a multiple FTP
|
|
700 |
response line. The last line in a multiple response must |
|
701 |
be the response code followed by a space. A server may |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
702 |
have intermediate lines that start with the response code |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
703 |
even if this is not recommended. The parsing missed to |
704 |
make sure that that space was present in what it |
|
705 |
considered to be the last line.</p>
|
|
706 |
<p>Own Id: OTP-5712</p> |
|
707 |
</item>
|
|
708 |
<item>
|
|
709 |
<p>[http, client] - The HTTP client will now retry a
|
|
710 |
pipelined request that was unsuccessful due to the fact |
|
711 |
that the server unexpectedly closed the pipeline |
|
712 |
connection.</p>
|
|
713 |
<p>Own Id: OTP-5728</p> |
|
714 |
</item>
|
|
715 |
<item>
|
|
716 |
<p>[http, server, esi] - Under some circumstances mod_esi
|
|
717 |
would send a corrupted content-length header.</p>
|
|
718 |
<p>Own Id: OTP-5735</p> |
|
719 |
</item>
|
|
720 |
<item>
|
|
721 |
<p>[http, server, get] - Removed debug printout which
|
|
722 |
caused a confusing "Socket closed"-printout at high |
|
723 |
load.</p>
|
|
724 |
<p>Own Id: OTP-5762 Aux Id: seq10101 </p> |
|
725 |
</item>
|
|
726 |
<item>
|
|
727 |
<p>FTP: a data connection setup to the ftp server that
|
|
728 |
failed caused a crash of the client. Now it is handled |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
729 |
smoothly.</p>
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
730 |
<p>Own Id: OTP-5738</p> |
731 |
</item>
|
|
732 |
<item>
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
733 |
<p>[ftp] If host name is a ipv4 tuple ftp erroneous tries to
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
734 |
connect as a ipv6 address with the ipv4 address.</p>
|
735 |
<p>Own Id: OTP-5764</p> |
|
736 |
</item>
|
|
737 |
<item>
|
|
738 |
<p>[ftp] Handles connect to ipv6/ipv4 address differently
|
|
739 |
according to a change in <c>inet:getaddr</c>.</p> |
|
740 |
<p>Own Id: OTP-5765</p> |
|
741 |
</item>
|
|
742 |
</list>
|
|
743 |
</section>
|
|
744 |
||
745 |
<section>
|
|
746 |
<title>Improvements and New Features</title> |
|
747 |
<list type="bulleted"> |
|
748 |
<item>
|
|
749 |
<p>[http, server] - The HTTP request handling was remoduled
|
|
750 |
to have a more straight forward error-handling. And the |
|
751 |
internal debug strategy was changed to use tracing |
|
752 |
instead of debug macros, which means we do not have to |
|
753 |
write special debug code.</p>
|
|
754 |
<p>Own Id: OTP-5729</p> |
|
755 |
</item>
|
|
756 |
<item>
|
|
757 |
<p>ftp:ls towards different ftp servers resulted in
|
|
758 |
different return results. E.g. the solaris 9 default |
|
759 |
server caused <c>{ok,[]}</c> while older servers caused |
|
760 |
<c>{error,epath}</c> as the result. For backwards |
|
761 |
compatibility the behaviour has been changed to the old |
|
762 |
result.</p>
|
|
763 |
<p>Own Id: OTP-5731</p> |
|
764 |
</item>
|
|
765 |
<item>
|
|
766 |
<p>[http, server] - The documentation for the HTTP server
|
|
767 |
has been partly rewritten and very restructured too |
|
768 |
provide a better overall picture. Lots of information |
|
769 |
provided by "semi manual pages" has been moved to the |
|
770 |
Users Guide.</p>
|
|
771 |
<p>Own Id: OTP-5752</p> |
|
772 |
</item>
|
|
773 |
<item>
|
|
774 |
<p>FTP: verbose mode now also prints what the client sends
|
|
775 |
on the control channel.</p>
|
|
776 |
<p>Own Id: OTP-5753</p> |
|
777 |
</item>
|
|
778 |
</list>
|
|
779 |
</section>
|
|
780 |
</section>
|
|
781 |
||
782 |
<section>
|
|
783 |
<title>Inets 4.5.4</title> |
|
784 |
||
785 |
<section>
|
|
786 |
<title>Fixed Bugs and Malfunctions</title> |
|
787 |
<list type="bulleted"> |
|
788 |
<item>
|
|
789 |
<p>[ftp, client] - Timing related issues could sometimes
|
|
790 |
cause the ftp response to be delayed.</p>
|
|
791 |
<p>Own Id: OTP-5705 Aux Id: seq10055 </p> |
|
792 |
</item>
|
|
793 |
<item>
|
|
794 |
<p>[http, server, esi] - The dispatching of the post body to
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
795 |
the esi callback function was broken.</p>
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
796 |
<p>Own Id: OTP-5706</p> |
797 |
</item>
|
|
798 |
</list>
|
|
799 |
</section>
|
|
800 |
</section>
|
|
801 |
||
802 |
<section>
|
|
803 |
<title>Inets 4.5.3</title> |
|
804 |
||
805 |
<section>
|
|
806 |
<title>Fixed Bugs and Malfunctions</title> |
|
807 |
<list type="bulleted"> |
|
808 |
<item>
|
|
809 |
<p>[ftp, client] - The FTP error code 550 was handled in an
|
|
810 |
unexpected way. Some earlier versions of inets had a |
|
811 |
workaround for this in ftp:recv_bin/2 that was eliminated |
|
812 |
during restructuring of the ftp module while implementing |
|
813 |
ipv6 capabilities. The problem is now fixed.</p>
|
|
814 |
<p>Own Id: OTP-5682 Aux Id: seq10048 </p> |
|
815 |
</item>
|
|
816 |
<item>
|
|
817 |
<p>[http, client] Post request with a body in binary format
|
|
818 |
failed as length was used instead of size.</p>
|
|
819 |
<p>Own Id: OTP-5686</p> |
|
820 |
</item>
|
|
821 |
<item>
|
|
822 |
<p>[ftp, client] - For some FTP commands the FTP server will
|
|
823 |
send more than one reply on the FTP control channel. In |
|
824 |
the case of a fast FTP server the client would sometimes |
|
825 |
wrongly disregard the second answer as trailing garbage |
|
826 |
attached to the first reply.</p>
|
|
827 |
<p>Own Id: OTP-5690 Aux Id: seq10055 </p> |
|
828 |
</item>
|
|
829 |
</list>
|
|
830 |
</section>
|
|
831 |
||
832 |
<section>
|
|
833 |
<title>Improvements and New Features</title> |
|
834 |
<list type="bulleted"> |
|
835 |
<item>
|
|
836 |
<p>[ftp, client] - A new option {progress, {CBmodule,
|
|
837 |
CBFunction, InitProgressTerm} has been added to allow |
|
838 |
users to create things such as progress bars in there |
|
839 |
GUI's. The option affects ftp:send/[3,4] and |
|
840 |
ftp:recv/[3,4].</p>
|
|
841 |
<p>Own Id: OTP-5680</p> |
|
842 |
</item>
|
|
843 |
<item>
|
|
844 |
<p>[http, client] - Added new API function http:request/1</p> |
|
845 |
<p>Own Id: OTP-5691</p> |
|
846 |
</item>
|
|
847 |
<item>
|
|
848 |
<p>[httpd, server] - mod_cgi is implemented according to
|
|
849 |
CGI-1.1 RFC 3875, an early implementation was based on |
|
850 |
some draft that is not totally compliant to the RFC. |
|
851 |
Documentation was updated. Also some code was |
|
852 |
restructured to facilitate testing and maintenance of the |
|
853 |
server.</p>
|
|
854 |
<p>Own Id: OTP-5694</p> |
|
855 |
</item>
|
|
856 |
</list>
|
|
857 |
</section>
|
|
858 |
</section>
|
|
859 |
||
860 |
<section>
|
|
861 |
<title>Inets 4.5.2</title> |
|
862 |
||
863 |
<section>
|
|
864 |
<title>Fixed Bugs and Malfunctions</title> |
|
865 |
<list type="bulleted"> |
|
866 |
<item>
|
|
867 |
<p>[ftp, client] Calling ftp:recv/2 twice on the same
|
|
868 |
connection failed due to that the last message on the |
|
869 |
ctrl channel was not appropriately taken care of. This |
|
870 |
could potentially cause a problem for any operation |
|
871 |
performed on the same connection where there had |
|
872 |
previously been an ftp:recv/2 call. Also, in some cases, |
|
873 |
when the process tries to close the data connection, it |
|
874 |
does not take into account that the data connection may |
|
875 |
actually not have been established.</p>
|
|
876 |
<p>Own Id: OTP-5662 Aux Id: seq10004, seq9988 </p> |
|
877 |
</item>
|
|
878 |
<item>
|
|
879 |
<p>[ftp, client] Enhanced error handling, mainly so the ftp
|
|
880 |
client behaves gracefully when the user does strange |
|
881 |
things such as violate the user API.</p>
|
|
882 |
<p>Own Id: OTP-5665</p> |
|
883 |
</item>
|
|
884 |
</list>
|
|
885 |
</section>
|
|
886 |
||
887 |
<section>
|
|
888 |
<title>Improvements and New Features</title> |
|
889 |
<list type="bulleted"> |
|
890 |
<item>
|
|
891 |
<p>[ftp, client] Added open option: mode.Deprecates
|
|
892 |
function force_active/1.</p>
|
|
893 |
<p>Own Id: OTP-5663</p> |
|
894 |
</item>
|
|
895 |
</list>
|
|
896 |
</section>
|
|
897 |
</section>
|
|
898 |
||
899 |
<section>
|
|
900 |
<title>Inets 4.5.1</title> |
|
901 |
||
902 |
<section>
|
|
903 |
<title>Fixed Bugs and Malfunctions</title> |
|
904 |
<list type="bulleted"> |
|
905 |
<item>
|
|
906 |
<p>[http, server] The server did not handle the config
|
|
907 |
directive BindAddress value "*" properly. |
|
908 |
When creating the option list for the listen call, |
|
909 |
everything beside the atom undefined (if BindAddress |
|
910 |
was never given) and an 4-tuple (e.g. BindAddress |
|
911 |
value is 192.168.0.30) was incorrectly assumed to be |
|
912 |
an ipv6 address. |
|
913 |
For undefined (no BindAddress), Inets attempts to |
|
914 |
figure out if it is running on a ipv6-machine, and if |
|
915 |
so, add the inet6 option when calling listen. The |
|
916 |
same approach should be used when BindAddress is |
|
917 |
assigned the value "*".</p>
|
|
918 |
<p>Own Id: OTP-5642</p> |
|
919 |
</item>
|
|
920 |
<item>
|
|
921 |
<p>Some data doesn't pass through http_base_64:decode/1 correctly.
|
|
922 |
The decoding routine fails whenever a 4-character group of the |
|
923 |
encoding ends with "9" or "99". If it ends with 99, two bytes |
|
924 |
will be lost in the decode routine. If it ends with a single 9, |
|
925 |
one byte will be lost in the decode.</p>
|
|
926 |
<p>Own Id: OTP-5635 Aux Id: seq9971</p> |
|
927 |
</item>
|
|
928 |
<item>
|
|
929 |
<p>[http, server,esi] Web server does not handle status-code
|
|
930 |
returned by an esi function. I.e. the esi-function |
|
931 |
can no longer control the status code.</p>
|
|
932 |
<p>Own Id: OTP-5648 Aux Id: seq9982</p> |
|
933 |
</item>
|
|
934 |
<item>
|
|
935 |
<p>[http, server,esi] Corrected header format. First character
|
|
936 |
was lower case, and there where no space after the ":" |
|
937 |
character, example: content-length:0. Now, first character |
|
938 |
was upper case, and a space after the ":" character, |
|
939 |
example: Content-Length: 0 (To preserve |
|
940 |
backward compatibility with the de-facto standard as the |
|
941 |
new way does not break the HTTP standard!)</p>
|
|
942 |
<p>Own Id: OTP-5649 Aux Id: seq9982</p> |
|
943 |
</item>
|
|
944 |
<item>
|
|
945 |
<p>[http, server, cgi] Parsing of the status header field could
|
|
946 |
cause a crash.</p>
|
|
947 |
<p>Own Id: OTP-5650 Aux Id: seq9982</p> |
|
948 |
</item>
|
|
949 |
</list>
|
|
950 |
</section>
|
|
951 |
</section>
|
|
952 |
||
953 |
<section>
|
|
954 |
<title>Inets 4.5</title> |
|
955 |
||
956 |
<section>
|
|
957 |
<title>Fixed Bugs and Malfunctions</title> |
|
958 |
<list type="bulleted"> |
|
959 |
<item>
|
|
960 |
<p>The internal design of using blocking gen_tcp:recv with a
|
|
961 |
timeout and retries resulted in code that was hard to get |
|
962 |
a good overview of, and ultimate led to situations where |
|
963 |
the client got the wrong answer or no answer at all. The |
|
964 |
errors where many times very timing dependent and mainly |
|
965 |
effected the chunk-related functions, so if you where |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
966 |
lucky you probably would not have noticed. The internal |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
967 |
design was changed to use gen_tcp active once semantics. |
968 |
The API is not effected except for the function |
|
969 |
ftp:quote/2 which now returns a list of strings (ftp |
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
970 |
result lines) where the line endings "\r\n" has been |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
971 |
removed. This was the original intention for the return |
972 |
value of ftp:quote/2 but it was non trivial to make a |
|
973 |
good such solution with the old design and a compromise |
|
974 |
was made.</p>
|
|
975 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
976 |
<p>Own Id: OTP-5623</p> |
|
977 |
</item>
|
|
978 |
<item>
|
|
979 |
<p>The new implementation of pipelining in inets-4.1 alas
|
|
980 |
was slightly broken and unfortunately not caught by the |
|
981 |
test suite that apparently needs some additions. The |
|
982 |
result was that requests that ought to have been |
|
983 |
pipelined where not, this has now been fixed.</p>
|
|
984 |
<p>Own Id: OTP-5624</p> |
|
985 |
</item>
|
|
986 |
<item>
|
|
987 |
<p>When using the latest esi interface with the callback
|
|
988 |
interface of arity 3, HTTP Content-Type headers where |
|
989 |
ignored, this due to a subtle difference between this |
|
990 |
interface and the old one in how they viewed HTTP |
|
991 |
delimiters.</p>
|
|
992 |
<p>Own Id: OTP-5627</p> |
|
993 |
</item>
|
|
994 |
</list>
|
|
995 |
</section>
|
|
996 |
||
997 |
<section>
|
|
998 |
<title>Improvements and New Features</title> |
|
999 |
<list type="bulleted"> |
|
1000 |
<item>
|
|
1001 |
<p>The HTTP server now supports ipv6 in the case that the
|
|
1002 |
underlying mechanisms also do so. (ssl does not yet |
|
1003 |
support ipv6.)</p>
|
|
1004 |
<p>Own Id: OTP-5141</p> |
|
1005 |
</item>
|
|
1006 |
<item>
|
|
1007 |
<p>The FTP client now supports ipv6 in the case that the
|
|
1008 |
underlying mechanisms also do so.</p>
|
|
1009 |
<p>Own Id: OTP-5142</p> |
|
1010 |
</item>
|
|
1011 |
<item>
|
|
1012 |
<p>An option was added to disable the ipv6 support in the
|
|
1013 |
HTTP client. This to provide a workaround possibility for |
|
1014 |
buggy ipv6-stacks.</p>
|
|
1015 |
<p>Own Id: OTP-5625 Aux Id: seq9872</p> |
|
1016 |
</item>
|
|
1017 |
<item>
|
|
1018 |
<p>When generating dynamic HTTP response bodies the the
|
|
1019 |
default content-type is now set to "text/html" instead of |
|
1020 |
"text/plain" which is more intuitive.</p>
|
|
1021 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1022 |
<p>Own Id: OTP-5626</p> |
|
1023 |
</item>
|
|
1024 |
</list>
|
|
1025 |
</section>
|
|
1026 |
</section>
|
|
1027 |
||
1028 |
<section>
|
|
1029 |
<title>Inets 4.4.1</title> |
|
1030 |
||
1031 |
<section>
|
|
1032 |
<title>Fixed Bugs and Malfunctions</title> |
|
1033 |
<list type="bulleted"> |
|
1034 |
<item>
|
|
1035 |
<p>Wrapper function http_transport:accept/3 did
|
|
1036 |
error-handling that it should not do because only the |
|
1037 |
caller of the wrapper can determine what action to take. |
|
1038 |
So timeouts where handled twice, once in http_transport |
|
1039 |
and once in httpd_acceptor. Clean up of the wrapper |
|
1040 |
module http_transport changed the action of the wrapper |
|
1041 |
module and made the unwanted behavior noticeable in in |
|
1042 |
OTP error logs. And now the unwanted error handling has |
|
1043 |
been removed. The cleanup helped us find bad code but |
|
1044 |
alas it also generates a lot of log printouts that are |
|
1045 |
quite disturbing to the user of the HTTP-server.</p>
|
|
1046 |
<p>Own Id: OTP-5549 Aux Id: seq9851 </p> |
|
1047 |
</item>
|
|
1048 |
<item>
|
|
1049 |
<p>In the rewrite for 4.4 some mod_esi-environment values
|
|
1050 |
where mistaken for ordinary header values and where |
|
1051 |
incorrectly transformed to strings. They are now atoms |
|
1052 |
again.</p>
|
|
1053 |
<p>Own Id: OTP-5551 Aux Id: seq9854 </p> |
|
1054 |
</item>
|
|
1055 |
<item>
|
|
1.2.5
by Sergei Golovan
Import upstream version 13.b.4-dfsg |
1056 |
<p>The HTTP server now handles
|
1057 |
"GET /\r\n\r\n" |
|
1058 |
as well as |
|
1059 |
"GET / \r\n\r\n". |
|
1060 |
According to the RFC the whitespace is not needed.</p>
|
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1061 |
<p>Own Id: OTP-5552 Aux Id: seq8426 </p> |
1062 |
</item>
|
|
1063 |
</list>
|
|
1064 |
</section>
|
|
1065 |
||
1066 |
<section>
|
|
1067 |
<title>Improvements and New Features</title> |
|
1068 |
<list type="bulleted"> |
|
1069 |
<item>
|
|
1070 |
<p>The ftp client now supports passive mode. Actually the
|
|
1071 |
ftp client will always try to use passive mode and if it |
|
1072 |
fails it will use active mode instead. It is also |
|
1073 |
possible to force the ftp-client to use active mode, if |
|
1074 |
that is desired, by calling ftp:force_active/1 this way |
|
1075 |
you can get the old behavior.</p>
|
|
1076 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1077 |
<p>Own Id: OTP-5148</p> |
|
1078 |
</item>
|
|
1079 |
</list>
|
|
1080 |
</section>
|
|
1081 |
</section>
|
|
1082 |
||
1083 |
<section>
|
|
1084 |
<title>Inets 4.4</title> |
|
1085 |
||
1086 |
<section>
|
|
1087 |
<title>Fixed Bugs and Malfunctions</title> |
|
1088 |
<list type="bulleted"> |
|
1089 |
<item>
|
|
1090 |
<p>The server did not handle HTTP-0.9 messages with an
|
|
1091 |
implicit version.</p>
|
|
1092 |
<p>Own Id: OTP-5513</p> |
|
1093 |
</item>
|
|
1094 |
<item>
|
|
1095 |
<p>An internal server timeout killed the request handling
|
|
1096 |
process without sending a message back to the client. As |
|
1097 |
this timeout only affects a single request it has been |
|
1098 |
set to infinity (if the main server process dies the |
|
1099 |
request handling process will also die and the client |
|
1100 |
will receive an error). This might make a client that |
|
1101 |
does not use a timeout hang for a longer period of time, |
|
1102 |
but that is an expected behavior!</p>
|
|
1103 |
<p>Own Id: OTP-5514 Aux Id: seq9806 </p> |
|
1104 |
</item>
|
|
1105 |
<item>
|
|
1106 |
<p>That a third party closes the http servers accept socket
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1107 |
is recoverable for inets, hence inets will only produce |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1108 |
an info report as there was no error in Inets but |
1109 |
measures where taken to avoid failure due to errors |
|
1110 |
elsewhere.</p>
|
|
1111 |
<p>Own Id: OTP-5516 Aux Id: seq9806 </p> |
|
1112 |
</item>
|
|
1113 |
<item>
|
|
1114 |
<p>The HTTP client proxy settings where ignored. Bug
|
|
1115 |
introduced in inets-4.3.</p>
|
|
1116 |
<p>Own Id: OTP-5517</p> |
|
1117 |
</item>
|
|
1118 |
<item>
|
|
1119 |
<p>Inets only sent the "WWW-Authenticate" header at the
|
|
1120 |
first attempt to get a page, if the user supplied the |
|
1121 |
wrong user/password combination the header was not sent |
|
1122 |
again. This forces the user to kill the browser entirely |
|
1123 |
after a failed login attempt, before the user may try to |
|
1124 |
login again. Inets now always send the authentication |
|
1125 |
header.</p>
|
|
1126 |
<p>Own Id: OTP-5521</p> |
|
1127 |
</item>
|
|
1128 |
<item>
|
|
1129 |
<p>A major rewrite of big parts of the HTTP server code was
|
|
1130 |
performed. There where many things that did not work |
|
1131 |
satisfactory. Cgi script handling can never have worked |
|
1132 |
properly and the cases when it did sort of work, a big |
|
1133 |
unnecessary delay was enforced. Headers where not always |
|
1134 |
treated as expected and HTTP version handling did not |
|
1135 |
work, all responses where sent as version HTTP/1.1 no |
|
1136 |
matter what.</p>
|
|
1137 |
<p>Own Id: OTP-5537</p> |
|
1138 |
</item>
|
|
1139 |
</list>
|
|
1140 |
</section>
|
|
1141 |
</section>
|
|
1142 |
||
1143 |
<section>
|
|
1144 |
<title>Inets 4.3.1</title> |
|
1145 |
||
1146 |
<section>
|
|
1147 |
<title>Fixed Bugs and Malfunctions</title> |
|
1148 |
<list type="bulleted"> |
|
1149 |
<item>
|
|
1150 |
<p>When further testing the functionality of https requests
|
|
1151 |
that goes through a proxy. We realised that alas this can |
|
1152 |
not currently be supported as it requires features from |
|
1153 |
the ssl implementation that is not currently available. |
|
1154 |
So for now an error message will be returned when trying |
|
1155 |
to use this functionality.</p>
|
|
1156 |
<p>Own Id: OTP-5453</p> |
|
1157 |
</item>
|
|
1158 |
<item>
|
|
1159 |
<p>When trying to get a url from a server that does not
|
|
1160 |
exist the client hanged instead of returning an error |
|
1161 |
message. Bug introduced in inets-4.3.</p>
|
|
1162 |
<p>Own Id: OTP-5454</p> |
|
1163 |
</item>
|
|
1164 |
</list>
|
|
1165 |
</section>
|
|
1166 |
</section>
|
|
1167 |
||
1168 |
<section>
|
|
1169 |
<title>Inets 4.3</title> |
|
1170 |
||
1171 |
<section>
|
|
1172 |
<title>Fixed Bugs and Malfunctions</title> |
|
1173 |
<list type="bulleted"> |
|
1174 |
<item>
|
|
1175 |
<p>Tunneling of SSL through a proxy has now been
|
|
1176 |
implemented. However due to lack of test sites this has only |
|
1177 |
partially been verified, it is likely that there will |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1178 |
have to be future improvements in this area.</p>
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1179 |
<p>Own Id: OTP-5443</p> |
1180 |
</item>
|
|
1181 |
</list>
|
|
1182 |
</section>
|
|
1183 |
||
1184 |
<section>
|
|
1185 |
<title>Improvements and New Features</title> |
|
1186 |
<list type="bulleted"> |
|
1187 |
<item>
|
|
1188 |
<p>The pipeline timeout was changed to be zero by default to
|
|
1189 |
avoid that people by accident would create connection |
|
1190 |
processes that never dies and eats up the socket |
|
1191 |
resources.</p>
|
|
1192 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1193 |
<p>Own Id: OTP-5442</p> |
|
1194 |
</item>
|
|
1195 |
<item>
|
|
1196 |
<p>Altered the way spawn_link is used in mod_esi to avoid
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1197 |
getting, in this scenario unwanted error reports, from |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1198 |
spawn_link. (The behavior of spawn_link was altered in a |
1199 |
not backwards compatible way.)</p>
|
|
1200 |
<p>Own Id: OTP-5444</p> |
|
1201 |
</item>
|
|
1202 |
</list>
|
|
1203 |
</section>
|
|
1204 |
</section>
|
|
1205 |
||
1206 |
<section>
|
|
1207 |
<title>Inets 4.2.1</title> |
|
1208 |
||
1209 |
<section>
|
|
1210 |
<title>Fixed Bugs and Malfunctions</title> |
|
1211 |
<list type="bulleted"> |
|
1212 |
<item>
|
|
1213 |
<p>Sometimes EWS modules where called with an Info record
|
|
1214 |
where the peername field was {-1, "unknown"}. This could |
|
1215 |
happen when a client was making a lot of requests which |
|
1216 |
it discards before they where answered by the server. The |
|
1217 |
server now ignores such requests and does not call the |
|
1218 |
EWS modules in this case.</p>
|
|
1219 |
<p>Own Id: OTP-5380 Aux Id: seq9739 </p> |
|
1220 |
</item>
|
|
1221 |
<item>
|
|
1222 |
<p>The HTTP-server now returns the 408 status code upon a
|
|
1223 |
request timeout as expected instead of the previous |
|
1224 |
faulty behavior of sending a 500 status code.</p>
|
|
1225 |
<p>Own Id: OTP-5409</p> |
|
1226 |
</item>
|
|
1227 |
<item>
|
|
1228 |
<p>The content length was put in to the HTTP-headers as an
|
|
1229 |
integer instead of as a string.</p>
|
|
1230 |
<p>Own Id: OTP-5410</p> |
|
1231 |
</item>
|
|
1232 |
<item>
|
|
1233 |
<p>It was wrongly presumed that code:priv_dir would always
|
|
1234 |
be writable due to how the test-server works. The |
|
1235 |
directory is now a configuration parameter in the |
|
1236 |
inets-application configuration file. Failing to |
|
1237 |
configure it will result in that all cookies are treated |
|
1238 |
as session cookies.</p>
|
|
1239 |
<p>Own Id: OTP-5411</p> |
|
1240 |
</item>
|
|
1241 |
</list>
|
|
1242 |
</section>
|
|
1243 |
||
1244 |
<section>
|
|
1245 |
<title>Improvements and New Features</title> |
|
1246 |
<list type="bulleted"> |
|
1247 |
<item>
|
|
1248 |
<p>An undocumented beta version of tftp is included.</p> |
|
1249 |
<p>Own Id: OTP-5419</p> |
|
1250 |
</item>
|
|
1251 |
</list>
|
|
1252 |
</section>
|
|
1253 |
</section>
|
|
1254 |
||
1255 |
<section>
|
|
1256 |
<title>Inets 4.2</title> |
|
1257 |
||
1258 |
<section>
|
|
1259 |
<title>Fixed Bugs and Malfunctions</title> |
|
1260 |
<list type="bulleted"> |
|
1261 |
<item>
|
|
1262 |
<p>When sending a request through a proxy the absolute URI
|
|
1263 |
must be used.</p>
|
|
1264 |
<p>Own Id: OTP-5368</p> |
|
1265 |
</item>
|
|
1266 |
</list>
|
|
1267 |
</section>
|
|
1268 |
||
1269 |
<section>
|
|
1270 |
<title>Improvements and New Features</title> |
|
1271 |
<list type="bulleted"> |
|
1272 |
<item>
|
|
1273 |
<p>Basic support for cookies was implemented. Later some
|
|
1274 |
more functions to inspect cookies may be added.</p>
|
|
1275 |
<p>Own Id: OTP-5331</p> |
|
1276 |
</item>
|
|
1277 |
<item>
|
|
1278 |
<p>A top tftp supervisor was added in preparation for adding
|
|
1279 |
a tftp service in a future Inets release.</p>
|
|
1280 |
<p>Own Id: OTP-5379</p> |
|
1281 |
</item>
|
|
1282 |
</list>
|
|
1283 |
</section>
|
|
1284 |
</section>
|
|
1285 |
||
1286 |
<section>
|
|
1287 |
<title>Inets 4.1</title> |
|
1288 |
||
1289 |
<section>
|
|
1290 |
<title>Fixed Bugs and Malfunctions</title> |
|
1291 |
<list type="bulleted"> |
|
1292 |
<item>
|
|
1293 |
<p>The URI check that disables relative links that goes
|
|
1294 |
outside the server-root still missed a few cases, in |
|
1295 |
spite of the improvement in OTP-5140.</p>
|
|
1296 |
<p>Own Id: OTP-5249</p> |
|
1297 |
</item>
|
|
1298 |
<item>
|
|
1299 |
<p>The http client pipelining implementation has been
|
|
1300 |
rewritten as the old implementation was too optimistic |
|
1301 |
about when to pipeline. In the process of doing this also |
|
1302 |
the error handling was improved, better clean up is |
|
1303 |
performed when the request handling process terminates |
|
1304 |
and better handling of the case that the httpc_manager |
|
1305 |
process dies and is restarted.</p>
|
|
1306 |
<p>Own Id: OTP-5303</p> |
|
1307 |
</item>
|
|
1308 |
<item>
|
|
1309 |
<p>Improved handling of status codes 30X and 50X.</p> |
|
1310 |
<p>Own Id: OTP-5309</p> |
|
1311 |
</item>
|
|
1312 |
</list>
|
|
1313 |
</section>
|
|
1314 |
||
1315 |
<section>
|
|
1316 |
<title>Improvements and New Features</title> |
|
1317 |
<list type="bulleted"> |
|
1318 |
<item>
|
|
1319 |
<p>The Inets supervision tree has been reorganized to create
|
|
1320 |
a better balance between the Inets services. Preferably |
|
1321 |
they should not effect each other. The ftp service has |
|
1322 |
also been included in the Inets supervision tree, it was |
|
1323 |
for reasons unknown, not included before.</p>
|
|
1324 |
<p>Own Id: OTP-5188</p> |
|
1325 |
</item>
|
|
1326 |
<item>
|
|
1327 |
<p>The service concept in Inets is now better documented.</p> |
|
1328 |
<p>Own Id: OTP-5189</p> |
|
1329 |
</item>
|
|
1330 |
<item>
|
|
1331 |
<p>The Inets shutdown times have proven to be too short
|
|
1332 |
under some circumstances, as a heavy load, therefore they |
|
1333 |
have been prolonged.</p>
|
|
1334 |
<p>Own Id: OTP-5261 Aux Id: seq9624</p> |
|
1335 |
</item>
|
|
1336 |
<item>
|
|
1337 |
<p>Options for automatic redirection and pipelining is now
|
|
1338 |
available in the http client API.</p>
|
|
1339 |
<p>Own Id: OTP-5304</p> |
|
1340 |
</item>
|
|
1341 |
</list>
|
|
1342 |
</section>
|
|
1343 |
</section>
|
|
1344 |
||
1345 |
<section>
|
|
1346 |
<title>Inets 4.0.1</title> |
|
1347 |
||
1348 |
<section>
|
|
1349 |
<title>Fixed Bugs and Malfunctions</title> |
|
1350 |
<list type="bulleted"> |
|
1351 |
<item>
|
|
1352 |
<p>A programming error could cause a badmatch in the
|
|
1353 |
http-client when the http response was chunk decoded.</p>
|
|
1354 |
<p>Own Id: OTP-5101</p> |
|
1355 |
</item>
|
|
1356 |
<item>
|
|
1357 |
<p>The parsing of HTTP messages was missing a base case.
|
|
1358 |
This caused unexpected behavior when the separator CR and |
|
1359 |
LF where received in different tcp packets.</p>
|
|
1360 |
<p>Own Id: OTP-5239</p> |
|
1361 |
</item>
|
|
1362 |
</list>
|
|
1363 |
</section>
|
|
1364 |
</section>
|
|
1365 |
||
1366 |
<section>
|
|
1367 |
<title>Inets 4.0</title> |
|
1368 |
||
1369 |
<section>
|
|
1370 |
<title>Fixed Bugs and Malfunctions</title> |
|
1371 |
<list type="bulleted"> |
|
1372 |
<item>
|
|
1373 |
<p>When receiving a status 100 code, the client should only
|
|
1374 |
respond by sending the message body, if the client sent |
|
1375 |
an expect header in the first place. Failing to do so may |
|
1376 |
result in that the server receives the body twice.</p>
|
|
1377 |
<p>Own Id: OTP-4848</p> |
|
1378 |
</item>
|
|
1379 |
<item>
|
|
1380 |
<p>mod_get now also handles http version HTTP/0.9</p> |
|
1381 |
<p>Own Id: OTP-4935 Aux Id: seq8426 </p> |
|
1382 |
</item>
|
|
1383 |
<item>
|
|
1384 |
<p>"Last-modified" field was incorrectly set to local time
|
|
1385 |
with the tag GMT, it is now corrected so that the time |
|
1386 |
reflected is in fact GMT.</p>
|
|
1387 |
<p>Own Id: OTP-4936</p> |
|
1388 |
</item>
|
|
1389 |
<item>
|
|
1390 |
<p>The client will only add a host-field to the request if
|
|
1391 |
there is not one already present.</p>
|
|
1392 |
<p>Own Id: OTP-4984</p> |
|
1393 |
</item>
|
|
1394 |
<item>
|
|
1395 |
<p>The Inets application tries to be compatible with
|
|
1396 |
Apache. To be more compatible the option |
|
1397 |
'MaxKeepAliveRequest' is renamed 'MaxKeepAliveRequests'. |
|
1398 |
The old name is kept for backward compatibility.</p>
|
|
1399 |
<p>Own Id: OTP-5024</p> |
|
1400 |
</item>
|
|
1401 |
<item>
|
|
1402 |
<p>Changing the base 64 decoding to not accept invalid
|
|
1403 |
input, uncovered a logical error in mod_security.erl An |
|
1404 |
already decoded string was sent as input to decode. In |
|
1405 |
this case, as it so happened, the two errors worked |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1406 |
together creating the illusion that everything was right. |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1407 |
This has now been corrected.</p>
|
1408 |
<p>Own Id: OTP-5083</p> |
|
1409 |
</item>
|
|
1410 |
<item>
|
|
1411 |
<p>URLs where not properly scrutinised for relative paths. A
|
|
1412 |
malicious user could exploit this to read files outside |
|
1413 |
the document root. This is no longer the case.</p>
|
|
1414 |
<p>Own Id: OTP-5140</p> |
|
1415 |
</item>
|
|
1416 |
</list>
|
|
1417 |
</section>
|
|
1418 |
||
1419 |
<section>
|
|
1420 |
<title>Improvements and New Features</title> |
|
1421 |
<list type="bulleted"> |
|
1422 |
<item>
|
|
1423 |
<p>A HTTP 1.1 client is officially included in Inets. It is
|
|
1424 |
loosely based on the previously unsupported code |
|
1425 |
contributed by Johan Blom. In this first version only the |
|
1426 |
most basic HTTP functionality is supported. The user API |
|
1427 |
has been changed.</p>
|
|
1428 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1429 |
<p>Own Id: OTP-5047</p> |
|
1430 |
</item>
|
|
1431 |
<item>
|
|
1432 |
<p>Fixed erroneous link in documentation.</p> |
|
1433 |
<p>Own Id: OTP-5089 Aux Id: seq8887 </p> |
|
1434 |
</item>
|
|
1435 |
<item>
|
|
1436 |
<p>Added the function quote/2 that lets you send an
|
|
1437 |
arbitrary FTP command to the FTP client.</p>
|
|
1438 |
<p>Own Id: OTP-5099 Aux Id: seq8961 </p> |
|
1439 |
</item>
|
|
1440 |
<item>
|
|
1441 |
<p>Started integration of the HTTP client and server code
|
|
1442 |
too facilitate maintenance and further development.</p>
|
|
1443 |
<p>Own Id: OTP-5110</p> |
|
1444 |
</item>
|
|
1445 |
<item>
|
|
1446 |
<p>Due to several possibilities to interpret the ftp
|
|
1447 |
standard some newer ftp-servers have interpreted the |
|
1448 |
standard in such a way that the documented return value |
|
1449 |
of ftp:nlist/2 does not always match the actual return |
|
1450 |
value. Some extra checks have now been added to ensure |
|
1451 |
the documented return value. This will also result in |
|
1452 |
that ftp:nlist is not bug compatible in the case that |
|
1453 |
nlist is given a filename instead of a directory it will |
|
1454 |
now return an error instead of {ok, FileName}.</p>
|
|
1455 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1456 |
<p>Own Id: OTP-5165</p> |
|
1457 |
</item>
|
|
1458 |
<item>
|
|
1459 |
<p>Created a Users Guide for Inets. Earlier there where some
|
|
1460 |
fake manual pages and information was scattered |
|
1461 |
everywhere and hard to find.</p>
|
|
1462 |
<p>Own Id: OTP-5180</p> |
|
1463 |
</item>
|
|
1464 |
</list>
|
|
1465 |
</section>
|
|
1466 |
</section>
|
|
1467 |
||
1468 |
<section>
|
|
1469 |
<title>Inets 3.0.10</title> |
|
1470 |
||
1471 |
<section>
|
|
1472 |
<title>Fixed Bugs and Malfunctions</title> |
|
1473 |
<list type="bulleted"> |
|
1474 |
<item>
|
|
1475 |
<p>[httpd] - When calling httpd:restart there was a file
|
|
1476 |
descriptor and ets table leek due to the fact that the |
|
1477 |
semantics of the function restart is not restart but |
|
1478 |
reload. This is solved in inets-4.7.12 and this special |
|
1479 |
inets-3.0.10 release is intended for old systems only.</p>
|
|
1480 |
<p>Own Id: OTP-6579 Aux Id: OTP-6573, seq10607 </p> |
|
1481 |
</item>
|
|
1482 |
</list>
|
|
1483 |
</section>
|
|
1484 |
</section>
|
|
1485 |
||
1486 |
<section>
|
|
1487 |
<title>Inets 3.0.9</title> |
|
1488 |
||
1489 |
<section>
|
|
1490 |
<title>Fixed Bugs and Malfunctions</title> |
|
1491 |
<list type="bulleted"> |
|
1492 |
<item>
|
|
1493 |
<p>[http,server] Illegal hexadecimal code in URL was not
|
|
1494 |
handled. The validation of URI:s are therefore updated.</p>
|
|
1495 |
<p>Own Id: OTP-6078 Aux Id: seq10306 </p> |
|
1496 |
</item>
|
|
1497 |
</list>
|
|
1498 |
</section>
|
|
1499 |
</section>
|
|
1500 |
||
1501 |
<section>
|
|
1502 |
<title>Inets 3.0.8 </title> |
|
1503 |
<p>Special version featuring some small 4.1 improvements
|
|
1504 |
without enforcing the big changes of the 4.X releases. </p>
|
|
1505 |
||
1506 |
<section>
|
|
1507 |
<title>Fixed Bugs and Malfunctions</title> |
|
1508 |
<list type="bulleted"> |
|
1509 |
<item>
|
|
1510 |
<p>The URI check that disables relative links that goes
|
|
1511 |
outside the server-root missed a few cases.</p>
|
|
1512 |
<p>Own Id: OTP-5249</p> |
|
1513 |
</item>
|
|
1514 |
</list>
|
|
1515 |
</section>
|
|
1516 |
||
1517 |
<section>
|
|
1518 |
<title>Improvements and New Features</title> |
|
1519 |
<list type="bulleted"> |
|
1520 |
<item>
|
|
1521 |
<p>The inets shutdown times have proven to be too short
|
|
1522 |
under some circumstances, as a heavy load, therefore they |
|
1523 |
have been prolonged.</p>
|
|
1524 |
<p>Own Id: OTP-5261 Aux Id: seq9624 </p> |
|
1525 |
</item>
|
|
1526 |
</list>
|
|
1527 |
</section>
|
|
1528 |
</section>
|
|
1529 |
||
1530 |
<section>
|
|
1531 |
<title>Inets 3.0.7</title> |
|
1532 |
||
1533 |
<section>
|
|
1534 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1535 |
<list type="bulleted"> |
|
1536 |
<item>
|
|
1537 |
<p>[httpd] Fixed a number of transfer-encoding problems.</p> |
|
1538 |
<p>First part of the data received from a CGI-script was sent
|
|
1539 |
as chunked even if the client was HTTP/1.0.</p>
|
|
1540 |
<p>Introduced new directive
|
|
1541 |
(<c>DisableChunkedTransferEncodingSend</c>) to turn off usage |
|
1542 |
of chunked transfer-encoding (when sending) since it appear's |
|
1543 |
some browser's have problems handling this. This applies |
|
1544 |
if the client is HTTP/1.1.</p>
|
|
1545 |
<p>(Own Id: OTP-4806)
|
|
1546 |
<br></br>
|
|
1547 |
Aux Id: Seq 8150</p>
|
|
1548 |
</item>
|
|
1549 |
<item>
|
|
1550 |
<p>[httpc] HTTP client reformats some URLs (e.g. containing %20,
|
|
1551 |
space).</p>
|
|
1552 |
<p>Updated client from sowap.sf.net as of 2003-09-08.</p> |
|
1553 |
<p>Johan Blom of Mobile Arts AB</p> |
|
1554 |
<p>(Own Id: OTP-4807)</p> |
|
1555 |
</item>
|
|
1556 |
<item>
|
|
1557 |
<p>[httpd] In module mod_browser, malformed search for parsed
|
|
1558 |
header, user-agent.</p>
|
|
1559 |
<p>Also added new os and browser</p> |
|
1560 |
<p>(Own Id: OTP-4808)</p> |
|
1561 |
</item>
|
|
1562 |
<item>
|
|
1563 |
<p>[ftp] FTP client doesn't notice when disk is full.</p> |
|
1564 |
<p>(Own Id: OTP-4822)
|
|
1565 |
<br></br>
|
|
1566 |
Aux Id: Seq 8175</p>
|
|
1567 |
</item>
|
|
1568 |
</list>
|
|
1569 |
</section>
|
|
1570 |
</section>
|
|
1571 |
||
1572 |
<section>
|
|
1573 |
<title>Inets 3.0.6</title> |
|
1574 |
||
1575 |
<section>
|
|
1576 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1577 |
<list type="bulleted"> |
|
1578 |
<item>
|
|
1579 |
<p>On Windows the <c>ftp:ls</c> function sometimes exits.</p> |
|
1580 |
<p>Workaround for a problem that seems to happen only on Windows
|
|
1581 |
when calling the ls function. Closing an already closed socket |
|
1582 |
will result in enotsock returned which will result in an exit.</p>
|
|
1583 |
<p>(Own Id: OTP-4770)</p> |
|
1584 |
</item>
|
|
1585 |
</list>
|
|
1586 |
</section>
|
|
1587 |
</section>
|
|
1588 |
||
1589 |
<section>
|
|
1590 |
<title>Inets 3.0.5</title> |
|
1591 |
||
1592 |
<section>
|
|
1593 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1594 |
<list type="bulleted"> |
|
1595 |
<item>
|
|
1596 |
<p>Web server does not handle econnaborted accept result.</p> |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1597 |
<p>This results in an unnecessary acceptor process restart.</p> |
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1598 |
<p>(Own Id: OTP-4732)</p> |
1599 |
</item>
|
|
1600 |
</list>
|
|
1601 |
</section>
|
|
1602 |
</section>
|
|
1603 |
||
1604 |
<section>
|
|
1605 |
<title>Inets 3.0.4</title> |
|
1606 |
||
1607 |
<section>
|
|
1608 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1609 |
<list type="bulleted"> |
|
1610 |
<item>
|
|
1611 |
<p>ESI callback generates broken HTTP.</p> |
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1612 |
<p>This was a problem for (at least) Netscape 4.75. It worked for
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1613 |
Mozilla 1.4a (on Solaris 8) and rumor has it that it also worked |
1614 |
for IE.</p>
|
|
1615 |
<p> <br></br> |
|
1616 |
Sean Hinde</p>
|
|
1617 |
<p>(Own Id: OTP-4696)</p> |
|
1618 |
</item>
|
|
1619 |
<item>
|
|
1620 |
<p>Log-size values ignored for security- and error disk-logs
|
|
1621 |
(SecurityDiskLogSize and ErrorDiskLogSize in mod_disk_log). |
|
1622 |
Instead the TransferDiskLogSize was used. |
|
1623 |
<br></br>
|
|
1624 |
Thomas Lange</p>
|
|
1625 |
<p>(Own Id: OTP-4659)</p> |
|
1626 |
</item>
|
|
1627 |
</list>
|
|
1628 |
</section>
|
|
1629 |
</section>
|
|
1630 |
||
1631 |
<section>
|
|
1632 |
<title>Inets 3.0.3</title> |
|
1633 |
||
1634 |
<section>
|
|
1635 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1636 |
<list type="bulleted"> |
|
1637 |
<item>
|
|
1638 |
<p>HTTP client called undefined function in HTTP server
|
|
1639 |
(httpd_response:send_status/3).</p>
|
|
1640 |
<p>(Own Id: OTP-4628)</p> |
|
1641 |
</item>
|
|
1642 |
</list>
|
|
1643 |
</section>
|
|
1644 |
</section>
|
|
1645 |
||
1646 |
<section>
|
|
1647 |
<title>Inets 3.0.2</title> |
|
1648 |
||
1649 |
<section>
|
|
1650 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1651 |
<list type="bulleted"> |
|
1652 |
<item>
|
|
1653 |
<p>HTTP client <em>now</em> updated to jnets-0.1. |
|
1654 |
<br></br>
|
|
1655 |
Auther: Johan Blom of Mobile Arts AB.</p>
|
|
1656 |
<p>(Own Id: OTP-4588)</p> |
|
1657 |
</item>
|
|
1658 |
</list>
|
|
1659 |
</section>
|
|
1660 |
</section>
|
|
1661 |
||
1662 |
<section>
|
|
1663 |
<title>Inets 3.0.1</title> |
|
1664 |
||
1665 |
<section>
|
|
1666 |
<title>Improvements and new features</title> |
|
1667 |
<list type="bulleted"> |
|
1668 |
<item>
|
|
1669 |
<p>FTP client now supports chunked receive. Proposal of Luke Gorrie
|
|
1670 |
provided inspiration but not algorithm.</p>
|
|
1671 |
<p>(Own Id: OTP-4549)</p> |
|
1672 |
</item>
|
|
1673 |
<item>
|
|
1674 |
<p>HTTP client updated to jnets-0.1, now supporting proxy.
|
|
1675 |
<br></br>
|
|
1676 |
Auther: Johan Blom of Mobile Arts AB.</p>
|
|
1677 |
<p>(Own Id: OTP-4552)</p> |
|
1678 |
</item>
|
|
1679 |
</list>
|
|
1680 |
</section>
|
|
1681 |
||
1682 |
<section>
|
|
1683 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1684 |
<list type="bulleted"> |
|
1685 |
<item>
|
|
1686 |
<p>Body length calculation incorrect.</p> |
|
1687 |
<p>(Own Id: OTP-4548)</p> |
|
1688 |
<p>(Aux Id: OTP-4207, Seq 7209)</p> |
|
1689 |
</item>
|
|
1690 |
<item>
|
|
1691 |
<p>HTTP-request with a BODY length longer than 0 does not work.</p> |
|
1692 |
<p>(Own Id: OTP-4550)</p> |
|
1693 |
<p>(Aux Id: Seq 7653)</p> |
|
1694 |
</item>
|
|
1695 |
<item>
|
|
1696 |
<p>Calculation of remaining chunk size incorrect.</p> |
|
1697 |
<p>(Own Id: OTP-4551)</p> |
|
1698 |
</item>
|
|
1699 |
<item>
|
|
1700 |
<p>Wrong module name used when attempting to stop the security
|
|
1701 |
server (mod_sec_server instead of mod_security_server).</p>
|
|
1702 |
<p>(Own Id: OTP-4556)</p> |
|
1703 |
</item>
|
|
1704 |
</list>
|
|
1705 |
</section>
|
|
1706 |
</section>
|
|
1707 |
||
1708 |
<section>
|
|
1709 |
<title>Inets 3.0</title> |
|
1710 |
||
1711 |
<section>
|
|
1712 |
<title>Improvements and new features</title> |
|
1713 |
<list type="bulleted"> |
|
1714 |
<item>Added HTTP client to the application.
|
|
1715 |
<br></br>
|
|
1716 |
Auther: Johan Blom of Mobile Arts AB.</item>
|
|
1717 |
<item>FTP: More info in exit reason when socket operation fails.
|
|
1718 |
<br></br>
|
|
1719 |
(Own Id: OTP-4429)</item>
|
|
1720 |
<item>Make install targets corrected (INSTALL_SCRIPT is used instead
|
|
1721 |
of INSTALL_PROGRAMS for scripts). |
|
1722 |
<br></br>
|
|
1723 |
(Own Id: OTP-4428)</item>
|
|
1724 |
<item>In inets, mod_cgi crashes when a directory is protected for
|
|
1725 |
a group or for a user and we try to execute a CGI script |
|
1726 |
inside this protected directory. |
|
1727 |
<br></br>
|
|
1728 |
Guillaume Bongenaar. |
|
1729 |
<br></br>
|
|
1730 |
(Own Id: OTP-4416)</item>
|
|
1731 |
<item>Removed crypto application dependency.
|
|
1732 |
<br></br>
|
|
1733 |
Matthias Lang |
|
1734 |
<br></br>
|
|
1735 |
(Own Id: OTP-4417)</item>
|
|
1736 |
<item>Use the same read algorithm for socket type ssl as is used
|
|
1737 |
for ip_comm. As of version 2.3.5 of the ssl application it |
|
1738 |
is possible to use socket option {active, once}, so the same |
|
1739 |
algorithm can be used for both ip_comm and ssl. |
|
1740 |
<br></br>
|
|
1741 |
(Own Id: OTP-4374) |
|
1742 |
<br></br>
|
|
1743 |
(Aux Id: Seq 7417)</item>
|
|
1744 |
<item>Added inets test suite to the release. Including the
|
|
1745 |
lightweight inets test server.</item>
|
|
1746 |
<item>Incorrectly formated disk log entries.
|
|
1747 |
<em>term_to_binary</em> was (incorrectly) used for the |
|
1748 |
external format. |
|
1749 |
<br></br>
|
|
1750 |
Own Id: OTP-4228 |
|
1751 |
<br></br>
|
|
1752 |
Aux Id: Seq 7239</item>
|
|
1753 |
<item>Adding verbosity printouts to 'catch' cgi problems on some
|
|
1754 |
platforms.</item>
|
|
1755 |
<item>
|
|
1756 |
<p>Updated to handle HTTP/1.1.</p> |
|
1757 |
<list type="bulleted"> |
|
1758 |
<item>Persistent connections are now default for http/1.1 clients</item> |
|
1759 |
<item>Module <c>mod_esi</c> can send data to the client in chunks.</item> |
|
1760 |
<item>Updated configuration directives <em>KeepAlive</em></item> |
|
1761 |
<item>
|
|
1762 |
<p>New configuration directives:</p> |
|
1763 |
<list type="bulleted"> |
|
1764 |
<item><em>MaxKeepAliveRequest</em></item> |
|
1765 |
<item><em>ErlScriptTimeout</em></item> |
|
1766 |
<item><em>ErlScriptNoCache</em></item> |
|
1767 |
<item><em>ScriptTimeout</em></item> |
|
1768 |
<item><em>ScriptNoCache</em></item> |
|
1769 |
</list>
|
|
1770 |
</item>
|
|
1771 |
<item>New functions in httpd_utility to ease the development of
|
|
1772 |
http/1.1 complaint modules.</item>
|
|
1773 |
<item>Record mod has a new field absolute_uri.</item> |
|
1774 |
<item>All header field names in parsed_header is in lowercase.</item> |
|
1775 |
<item>httpd handles chunked requests.</item> |
|
1776 |
<item>New module <em>mod_range</em> that handles range-requests.</item> |
|
1777 |
<item>New module <em>mod_responsecontrol</em> that controls how |
|
1778 |
the request will be handled the due to the If-Modified, |
|
1779 |
If-Match and If-Range http header fields.</item>
|
|
1780 |
</list>
|
|
1781 |
</item>
|
|
1782 |
</list>
|
|
1783 |
</section>
|
|
1784 |
||
1785 |
<section>
|
|
1786 |
<title>Reported Fixed Bugs and Malfunctions</title> |
|
1787 |
<list type="bulleted"> |
|
1788 |
<item>POST requests not properly handled.
|
|
1789 |
<br></br>
|
|
1790 |
(Own Id: OTP-4409) |
|
1791 |
<br></br>
|
|
1792 |
(Aux Id: Seq 7485)</item>
|
|
1793 |
<item>
|
|
1794 |
<p>Change in the inets API.
|
|
1795 |
<br></br>
|
|
1796 |
(Own Id: OTP-4408) |
|
1797 |
<br></br>
|
|
1798 |
(Aux Id: Seq 7485)</p>
|
|
1799 |
<p>*** POTENTIAL INCOMPATIBILITY ***</p> |
|
1800 |
<p></p>
|
|
1801 |
</item>
|
|
1802 |
<item>When opening the disk log (mod_disk_log), an open attempt
|
|
1803 |
is made without a size option. If the file exist, then it is |
|
1804 |
opened. If the file does not exist, then another attempt is |
|
1805 |
made, this time with the size option. |
|
1806 |
<br></br>
|
|
1807 |
(Own Id: OTP-4281) |
|
1808 |
<br></br>
|
|
1809 |
(Aux Id: Seq 7312)</item>
|
|
1.2.4
by Sergei Golovan
Import upstream version 13.b.3-dfsg |
1810 |
<item>Changing of disk log format fails. Restart of webserver after
|
1.1.14
by Sergei Golovan
Import upstream version 13.a-dfsg |
1811 |
change of disk log format (DiskLogFormat) fails with |
1812 |
<em>arg_mismatch</em>. |
|
1813 |
<br></br>
|
|
1814 |
(Own Id: OTP-4231) |
|
1815 |
<br></br>
|
|
1816 |
(Aux Id: Seq 7244)</item>
|
|
1817 |
</list>
|
|
1818 |
</section>
|
|
1819 |
</section>
|
|
1820 |
</chapter>
|
|
1821 |
||
1822 |