aboutsummaryrefslogtreecommitdiff
path: root/docs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Address PR review: pass raw socket to headers callback, use ok/err return ↵http-headers-callbackThijs Schreijer2 days1-1/+35
| | | | | | | | | | | | | convention Rename response_headers to headers_callback, pass the raw connection as a 4th argument (for use cases like WebSocket upgrade handoff), and switch its return contract to the idiomatic ok/err shape used elsewhere in this file: truthy ok continues (optionally swapping in a new sink), falsy ok closes the connection and propagates the callback's error via socket.protect instead of faking a success return. Claude-Session: https://claude.ai/code/session_01S4imKCU4hxDg96DXj9hxSB
* Add Lua 5.5 support (#473)Caleb Maclennan3 days1-1/+1
|
* Merge pull request #472 from lunarmodules/feat/url-hosttypeCaleb Maclennan3 days1-0/+82
|\ | | | | feat(url): classify host as name/ipv4/ipv6 in parse and build
| * feat(url): classify host as name/ipv4/ipv6 in parse and buildThijs Schreijer4 days1-0/+82
| | | | | | | | | | | | | | | | | | | | parse() now sets hosttype ("name"/"ipv4"/"ipv6") plus a matching hostname/ipv4/ipv6 field alongside host. build() accepts those same fields when host is absent, erroring if more than one is set. classify_host is exported for standalone use; it classifies by shape (colon present -> ipv6, dotted-quad shape -> ipv4) rather than validating the address.
* | Merge pull request #470 from lunarmodules/header-canonCaleb Maclennan3 days1-3/+23
|\ \ | | | | | | feat(headers): dynamically create cononicalized headers
| * | feat(headers): dynamically create cononicalized headersThijs Schreijer5 days1-3/+23
| |/ | | | | | | | | | | | | | | Instead of a static list dynamically add entries in proper casing. Also allowing to add non-standard ones through `setcanonic`. closes #442 fixes #440
* | Merge pull request #463 from lunarmodules/feat/receive-limitCaleb Maclennan3 days1-10/+22
|\ \ | | | | | | feat(receive): add maxsize argument to bound memory usage
| * | chore(docs): some cleanupThijs Schreijer2026-08-171-46/+6
| | |
| * | feat(receive): add maxsize argument to bound memory usageThijs Schreijer2026-07-301-3/+55
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | client:receive("*l") and receive("*a") are unbounded: a peer that never sends a newline, or never closes, makes LuaSocket buffer until the process runs out of memory (e.g. src/http.lua reading response headers in a loop). Add an optional maxsize argument that caps the payload a single call may accumulate, including prefix. - Hoist all argument validation ahead of timeout_markstart() so bad calls (maxsize < 1, #prefix >= maxsize, numeric pattern > maxsize) raise before any I/O and leave the socket untouched. - recvline/recvall take a budget and return a new internal BUF_OVERSIZED code, surfaced to Lua as the "oversized" error alongside "timeout"/"closed", with the partial held in the 3rd return value. - recvraw is left untouched: argument checks make the cap unreachable for numeric patterns. - Preserve three invariants: a timeout partial is always shorter than maxsize (safe to retry as prefix), completion beats the cap for *a, and no bytes are lost or skipped on overflow. - tcp.c, unixstream.c and serial.c all share this code path unchanged. Adds test coverage (argument errors, *l/*a boundaries, timeout/close at the cap, the drain idiom, numeric patterns, unix-stream mirror) and documents the new argument, error, and recovery idioms in docs/tcp.html.
* / chore(docs): add docs for SO_EXCLUSIVEADDRUSE and othersThijs Schreijer3 days2-5/+71
|/ | | | | Adds docs for the option, but also adds the docs for other options present in the code but missing from the docs.
* docs: Improve installation instructions, focus on LuaRocks installation (#454)Sharad Singh2025-03-311-55/+15
|
* docs: Remove unnecessary `value` argument from gettimeoutMasak12025-02-231-2/+2
|
* docs: Fix udp documentation gettimeout typoMasak12025-02-231-2/+2
|
* chore(docs): update LTN12 links (#428)Thijs Schreijer2024-03-155-20/+20
|
* fix(docs): link to included LTN documents (#426)Thijs Schreijer2024-03-052-1/+10
|
* style(docs): Trim trailing whitespace in HTML docsCaleb Maclennan2023-11-113-82/+82
| | | | | | Many editors remove these automatically anyway which makes opening and editng the docs cause a bunch of noise. This is just to get the noise out of the way in a style commit so it doesn't leak into other PRs
* chore(core): Update version markers to last released versionCaleb Maclennan2023-11-111-1/+1
| | | | Closes #401
* Merge pull request #364 from lunarmodules/cleanupThijs Schreijer2022-08-242-0/+210
|\
| * cleanup; move logo file into docs, more appropriateThijs Schreijer2022-03-291-0/+210
| |
| * cleanup; delete unreferenced powerpoint file from docsThijs Schreijer2022-03-291-0/+0
| |
* | chore: Release v3.1.0v3.1.0Caleb Maclennan2022-07-271-1/+1
| |
* | feat(tcp): Add support for TCP Defer AcceptKim Alvefur2022-07-271-0/+2
| | | | | | | | | | | | | | | | This makes it so that a listening socket does not become readable for accept() until a connection has been fully established *and* started sending something, thus the program doesn't have to wait for the first data. This only makes sense for client-speaks-first protocols. Co-authored-by: Caleb Maclennan <caleb@alerque.com>
* | feat(tcp): Add support for TCP Fast OpenKim Alvefur2022-07-271-0/+4
|/
* chore: Update internal version references to match release (#370)Robert Scheck2022-03-281-1/+1
|
* chore: Release v3.0.0v3.0.0Caleb Maclennan2022-03-251-4/+3
|
* docs: Drop obsolete changelog from docs indexCaleb Maclennan2022-03-251-76/+0
|
* Update URL references to source repositoryCaleb Maclennan2022-03-231-1/+1
|
* Move doc→docs so we can serve it with GitHub PagesCaleb Maclennan2022-03-2317-0/+5274