summaryrefslogtreecommitdiffstats
path: root/library/http/http.tcl
Commit message (Collapse)AuthorAgeFilesLines
* (slightly) better error-message for invalid http -headers option. This works ↵jan.nijtmans2020-09-301-5/+3
| | | | for plain 8.6 too
* Ticket [0063cbcada]: check http::geturl -headers parameter to be a dict.oehhar2020-09-291-2/+4
|
* Prevent the usage of the term safe/unsafe child. Suggested by Keith Nash. ↵jan.nijtmans2020-09-141-1/+1
| | | | | Thanks! More usage of $index<0 in stead of $index==-1 consistantly
* Use $index<0 in stead of $index==-1 consistantlyjan.nijtmans2020-09-111-1/+1
|
* Fix for http bug c2dc1da315. Add tests. Add detail about -handler to ↵kjnash2020-08-241-2/+44
| | | | http(n). Bump version to 2.9.5.
* Bugfixes to the earlier fix of bug cb0373bb33, which broke HTTP/1.0 ↵kjnash2020-08-121-12/+28
| | | | transactions in which the server indicates neither a Content-Length nor that it will close the socket on completion ("Connection: close"). The HTTP/1.1 rule is that the response header "Connection", if absent, must default to "keep-alive"; but this rule does not apply to HTTP/1.0. Add test http11-3.4 and bump version to 2.9.4.
* Merge 8.6jan.nijtmans2020-07-251-9/+9
|\
* | Fix for bug cb0373bb33. In HTTP/1.1 the response header "Connection", if ↵kjnash2020-07-241-5/+28
|/ | | | absent, must default to "keep-alive". Add test http11-1.13 and bump version to 2.9.3.
* Bump http version to 2.9.2kjnash2020-06-191-1/+1
|
* Merge 8.6kjnash2020-06-191-1/+1
|\
| * Fix [13657a2dc3]: application/json is not a binary payload for http. http ↵jan.nijtmans2019-11-181-2/+2
| |\ | | | | | | | | | 2.9.0 -> 2.9.1
| | * http package from 2.7.14 to 2.7.15jan.nijtmans2019-11-181-1/+1
| | |
| | * Fix [13657a2dc3]: application/json is not a binary payload for httpjan.nijtmans2019-11-181-1/+1
| | |
| | * Use "package provide Tcl" consistantly, in stead of either "package present ↵jan.nijtmans2019-09-111-1/+1
| | | | | | | | | | | | Tcl" or "info tclversion"/"info patchlevel"
* | | Bugfix for #f81beca7af. Revert mistaken change to -querychannel -translation ↵kjnash2019-07-141-4/+2
|/ / | | | | | | in library/http/http.tcl. Bump http version to 2.9.1. Also, give correct major version in doc/http.n and adjust example user-agent string to a 2.9 value.
* | Give lambda function a name "ReceiveChunked" for easier testing. New ↵jan.nijtmans2018-09-231-100/+42
| | | | | | | | function quoteString and code cleanup
* | Update http version number, and fix some related test-casesjan.nijtmans2018-09-221-1/+1
| |
* | Bugfix - always cleanup persistent socket.kjnash2018-06-011-5/+6
| |
* | Restore production test settings: set tests/httpPipeline.test to ↵kjnash2018-04-211-64/+64
| | | | | | | | non-verbose, and comment out most Log calls in library/http/http.tcl
* | merge 8.6kjnash2018-04-211-3/+4
|\ \
| * | http::geturl now returns full error stack information if the initial socket ↵oehhar2018-04-181-3/+4
| | | | | | | | | | | | command fails Ticket [ff82755e15]
* | | Restore Tcl 8+4 tab conventionkjnash2018-04-131-28/+28
| | |
* | | Improve detection and reporting of TLS errors. New command ↵kjnash2018-04-131-14/+66
| | | | | | | | | | | | http::registerError to assist the latter. Ensure that http::cleanup cancels any timeout event if not already done. Add comments on non-blocking read/gets.
* | | Restore most lines to 80 columnskjnash2018-04-041-64/+83
| | |
* | | Use coroutines to remove blocking on HTTP connectionskjnash2018-04-041-408/+466
| | |
* | | Increase test timeout to 10s. Remove commenting from Log calls that report ↵kjnash2018-04-011-6/+12
| | | | | | | | | | | | long delay for [socket].
* | | Chasing timeout bug: reduce client timeout to 4s in tests; more sanity ↵kjnash2018-03-311-2/+27
| | | | | | | | | | | | checking in non-keep-alive tests; tidying; more logging in http.tcl.
* | | For thorough testing, set test file to verbose, and uncomment Log calls in ↵kjnash2018-03-301-54/+54
| | | | | | | | | | | | http.tcl.
* | | Bugfixes. Details in ticket 46b6edad51.kjnash2018-03-301-133/+239
| | |
* | | Implement queuing and pipelining for HTTP requests over a persistent connection.kjnash2018-03-271-44/+1404
| | |
* | | Adapt fconfigure -translation for two-way pipelined operation.kjnash2018-03-271-6/+19
| | |
* | | Define variable tk used in Log calls for testing.kjnash2018-03-271-0/+7
| | |
* | | First step for implementing concurrent requests using the same connection. ↵kjnash2018-03-271-0/+68
| | | | | | | | | | | | Define namespace variables socket* and http where they will (eventually) be used. Leave them unused except in http::init where they are initialised.
* | | BUGFIX. Send "Connection: keep-alive" even if HTTP/1.1. Some servers ↵kjnash2018-03-271-1/+3
| | | | | | | | | | | | (including Apache 2.2 on RHEL6) use the discretion granted by RFCs and will close the connection unless this header is sent.
* | | New http::config option -zip to control whether to send an "Accept-Encoding" ↵kjnash2018-03-271-1/+5
| | | | | | | | | | | | request-header for a zipped response. Default true for backward compatibility.
* | | Workaround for bug with https and unchunked response. A [read] does not ↵kjnash2018-03-271-1/+17
| | | | | | | | | | | | deliver until the server closes the socket. The workaround is to specify the buffer size as the precise length required.
* | | Changes to response handling in Finish, Eot and Event. Carefully distinguish ↵kjnash2018-03-271-9/+104
| | | | | | | | | | | | expected and premature eof. Stricter handling of errors, minor bugfixes. Details in ticket 46b6edad51.
* | | Add "array unset socketMapping" in http::init. The sockets are closed and ↵kjnash2018-03-271-1/+2
| | | | | | | | | | | | therefore do not belong in socketMapping, which should be unset.
* | | Tidying - add empty else clauses, omit :: at start of command name ↵kjnash2018-03-271-5/+13
| | | | | | | | | | | | http::CloseSocket in proc definition, use two lines instead of "return [Finish ...]" because there is no return value!
* | | Update some Log calls, mainly to specify token.kjnash2018-03-271-12/+18
| | |
* | | Update some comments and a Log.kjnash2018-03-271-17/+26
| | |
* | | Rename some variables and commands. Details in ticket 46b6edad51.kjnash2018-03-271-43/+57
| | |
* | | Add parentheses to some "if" tests; transform one test without changing its ↵kjnash2018-03-271-16/+27
| | | | | | | | | | | | outcome.
* | | Give all procs an explicit return, except where commented as "Implicit Return".kjnash2018-03-271-1/+15
| | |
* | | Adjust to 80 columns except one 82-column line which would be less intelligible.kjnash2018-03-271-8/+13
| | |
* | | Adjust whitespace to Tcl 8+4 tab convention.kjnash2018-03-271-50/+50
|/ /
* | http state 100 continue handling broken [2a94652ee1]oehhar2017-08-311-1/+2
|\ \
| * | http state 100 continue handling broken [2a94652ee1]oehhar2017-08-311-1/+2
|/ /
* | Cherry-pick [http://core.tcl.tk/tclconfig/info/18e79736d236d15d|All the ↵jan.nijtmans2017-05-181-1/+1
| | | | | | | | | | world was a VAX] for OpenBSD. Also fix [http://core.tcl.tk/tk/tktview?name=84a27b1c67|84a27b1c67]: Tcl and Tk's tcl.m4 not synced? (configure script not re-generated yet, I'm sure Don will do that in the rc branch)
* | Fix [6ca52aec14e0b33543d3cd9895f060b852ac4dbc|6ca52aec14]: HTTP package: ↵jan.nijtmans2017-05-091-4/+5
|\ \ | | | | | | | | | | | | Memory leak if client requests "Connection: close" but server responses with "Connection: keep-alive" http: 2.8.10 -> 2.8.11