aboutsummaryrefslogtreecommitdiffstats
path: root/net/http
Commit message (Collapse)AuthorAgeFilesLines
* Merge 0.11->trunkMatthew Wild2020-10-131-1/+4
|\
| * net.http.server: Don't send Content-Length on 1xx/204 responses, per RFC ↵Matthew Wild2020-10-131-1/+4
| | | | | | | | (fixes #1596)
* | net.http.server: Default to HTTP result code 500 when promise is rejectedMatthew Wild2020-09-281-0/+1
| |
* | net.http.parser: Fix indentationKim Alvefur2020-08-201-2/+2
| | | | | | | | | | Probably due to a rebase/merge with a merge tool that ignores whitespace. Happens all the time to me :(
* | net.http.errors: Add new module for converting net.http errors to util.error ↵Matthew Wild2020-08-131-0/+115
| | | | | | | | objects
* | net.http.parser: Allow specifying sink for large request bodiesKim Alvefur2020-08-011-4/+22
| | | | | | | | | | | | | | This enables uses such as saving uploaded files directly to a file on disk or streaming parsing of payloads. See #726
* | net.http.parser: Switch to util.dbuffer for buffering incoming dataKim Alvefur2020-08-011-61/+49
| | | | | | | | | | | | This is primarily a step towards saving uploads directly to files, tho this should hopefully be more efficient than collapsing the entire buffer to a single string every now and then.
* | Merge 0.11->trunkKim Alvefur2020-06-231-1/+2
|\|
| * net.http.server: Fix reporting of missing Host headerKim Alvefur2020-06-231-1/+2
| | | | | | | | | | The "Missing or invalid 'Host' header" case was dead code previously because `host` was always at least an empty string.
| * net.http.server: Strip port from Host header in IPv6 friendly way (fix #1302)Kim Alvefur2020-06-231-1/+1
| | | | | | | | | | E.g. given `[::1]:5280` it would previously result in only `[` instead of the correct `[::1]`
* | Merge 0.11->trunkKim Alvefur2020-04-261-1/+1
|\|
* | net.http.server: Use error code from util.error (fixes #1502)Kim Alvefur2020-04-121-0/+1
| | | | | | | | Oversight in 955e54e451dc when this was added.
* | net.http.parser: Add TODO related to #726Kim Alvefur2020-01-011-0/+1
| |
* | net.http.parser: Silence warning about unused variable [luacheck]Kim Alvefur2019-12-231-1/+2
| |
* | util.error: Move default for numeric error code to net.http.serverKim Alvefur2019-12-141-1/+1
| | | | | | | | | | | | Stanza errors can also have numbers but these are a legacy thing and rarely used, except in MUC. HTTP errors on the other hand always have a number.
* | net.http.server: Treat promise rejection without value as a HTTP 500 errorKim Alvefur2019-11-051-1/+1
| |
* | net.http.server: Handle promises from http handlersKim Alvefur2019-11-011-0/+8
| |
* | net.http.server: Handle util.error objects from http handlersKim Alvefur2019-11-011-0/+3
| |
* | net.http.server: Tail call because tail call!Kim Alvefur2019-11-011-1/+1
| |
* | net.http.server: Factor out handling of event response for easier reuseKim Alvefur2019-11-011-31/+34
| |
* | net.http.codes: Avoid implicit number -> string coercionKim Alvefur2019-11-011-1/+1
| |
* | net.http.files: Explicitly convert number to string, avoiding implicit coercionKim Alvefur2019-10-121-1/+1
| |
* | net.http.server: Explicitly convert number to string, avoiding implicit coercionKim Alvefur2019-10-121-1/+1
| |
* | net.http.server: Re-fire unhandled HEAD requsts as GET events (fixes #1447)Kim Alvefur2019-10-121-0/+11
| | | | | | | | | | | | BC: This overloads the GET event. Previous commit ensures HEAD requests are sent without a body.
* | net.http.server: Ensure HEAD requests are sent with empty bodyKim Alvefur2019-10-121-0/+16
| |
* | net.http.files: Fix cache handlingKim Alvefur2019-06-291-1/+1
| | | | | | | | Typo that broke the LRU-ness of the caching
* | net.http.files: Bump cache hits so they stay cachedKim Alvefur2019-05-041-0/+1
| | | | | | | | It's not an LRU cache unless this is done.
* | net.http.files: Make into standalone libraryKim Alvefur2019-04-051-64/+14
| |
* | net.http.files: Copy of mod_http_filesKim Alvefur2019-04-051-0/+198
|/ | | | | | | | | The intent is to make it easier to reuse and simplify mod_http_files. Currently modules will use the serve() function exported by mod_http_files in order to serve their own files. This makes it unclear whether mod_http_files should be doing anything on its own. Moving the logic into a separate module should help here, as well as make re-use outside of prosody easier.
* net.http.server: Move event formation to avoid traceback on missing Host headerMatthew Wild2018-11-131-1/+1
|
* Many things: switch from hacky multi-arg xpcall implementations to a ↵Matthew Wild2018-10-261-6/+2
| | | | standard util.xpcall
* net.http.server: Delay host checks until after host-less eventKim Alvefur2018-09-231-9/+18
| | | | This allows handling events without any hosts enabled.
* net.http.server: Fire an event without hostKim Alvefur2018-09-211-3/+8
|
* Revert 2dc7490899ae::5d6b252bc36f: Unfinished and brokenKim Alvefur2018-09-211-2/+2
|
* net.http.server: Fix default host logicKim Alvefur2018-09-211-1/+1
| | | | This was used to construct the event name previously
* net.http.server: Move handling of hosts to mod_httpKim Alvefur2018-09-211-1/+1
| | | | | Now an event like `GET /path` is fired at first, and mod\_http dispatches the old `GET host/path` events.
* net.http.codes: "Correct" range of unassigned codes (thanks pep.)Kim Alvefur2018-08-121-1/+1
|
* net.http.codes: Regenerate from IANA registry with toolKim Alvefur2018-08-111-47/+59
|
* net.http.server: Include response object in most http-error eventsKim Alvefur2017-10-271-3/+5
|
* net.http: Pass error all the way to callbackKim Alvefur2017-04-021-1/+1
|
* net.http.parser: Don't collapse buffer when expecting a chunk and not enough ↵Kim Alvefur2016-08-261-0/+3
| | | | data has been received
* net.http.parser: Fix missing buffer length adjustment when parsing chunked ↵Kim Alvefur2016-08-261-0/+1
| | | | streams
* net.http.server: Add luacheck annotationsKim Alvefur2016-08-181-2/+2
|
* Merge 0.9->0.10Kim Alvefur2016-08-182-8/+34
|\
| * net.http.server: Expose way to set http server optionsKim Alvefur2016-08-181-1/+8
| |
| * net.http.parser: Allow limits to be configurable via options callbackKim Alvefur2016-08-181-2/+2
| |
| * net.http.parser: Add a limit on maximum buffer size, default to 20MKim Alvefur2016-08-181-0/+2
| |
| * net.http.parser: Add a limit on content length, default to 10MKim Alvefur2016-08-181-0/+2
| |
| * net.http.parser: Buffer into a table to reduce GC pressure, collapse to ↵Kim Alvefur2016-08-131-7/+22
| | | | | | | | string when needed (fixes #603)
* | net.http.codes: Add HTTP status code 451 Unavailable For Legal Reasons from ↵Kim Alvefur2016-08-131-0/+1
| | | | | | | | RFC 7725