Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | net.resolvers.basic: Normalise IP literals, ensures net.server is happy | Kim Alvefur | 2019-11-24 | 1 | -0/+2 | |
| | | ||||||
* | | net.resolvers.service: Pass IP literals directly to basic resolver | Kim Alvefur | 2019-11-24 | 1 | -0/+9 | |
| | | | | | | | | | | | | IP literals will not work with SRV records anyways. Fixes s2s with IP literals. | |||||
* | | Merge 0.11->trunk | Kim Alvefur | 2019-11-24 | 1 | -11/+17 | |
|\| | ||||||
| * | net.resolvers.basic: Fix resolution of IPv6 literals (in brackets) (fixes #1459) | Kim Alvefur | 2019-11-24 | 1 | -0/+3 | |
| | | ||||||
| * | net.resolvers.basic: Move IP literal check to constructor | Kim Alvefur | 2019-11-24 | 1 | -11/+14 | |
| | | | | | | | | | | This is to prepare for fixing #1459. An IPv6 literal in [ ] brackets does not pass IDNA and resolving it fails there. | |||||
* | | net.server_epoll: Save log tag in a field on FD watchers too | Kim Alvefur | 2019-11-17 | 1 | -2/+4 | |
| | | | | | | | | As with 0e1701197722 | |||||
* | | Back out c8aa66595072: Extra changes accidentally included | Kim Alvefur | 2019-11-17 | 1 | -5/+3 | |
| | | ||||||
* | | net.server_epoll: Save log tag in a field on FD watchers too | Kim Alvefur | 2019-11-17 | 1 | -3/+5 | |
| | | | | | | | | As with 0e1701197722 | |||||
* | | net.server_epoll: Improve read timeout debug messages | Kim Alvefur | 2019-10-19 | 1 | -2/+2 | |
| | | ||||||
* | | net.server_epoll: Clarify a debug message | Kim Alvefur | 2019-10-19 | 1 | -1/+1 | |
| | | | | | | | | Writing what? The data that's been buffered for writing | |||||
* | | server_event: Remove duplicated code (thanks waqas) | Kim Alvefur | 2019-11-13 | 1 | -4/+0 | |
| | | | | | | | | | | readcallback() calls onreadtimeout() and runs the exact same code if onreadtimeout() doesn't return true, which it doesn't do. | |||||
* | | Merge 0.11->trunk | Kim Alvefur | 2019-11-08 | 2 | -0/+2 | |
|\| | ||||||
| * | net.resolvers: Fix traceback from hostname failing IDNA | Kim Alvefur | 2019-11-08 | 2 | -0/+2 | |
| | | | | | | | | Related to #1426 | |||||
* | | net.http.server: Treat promise rejection without value as a HTTP 500 error | Kim Alvefur | 2019-11-05 | 1 | -1/+1 | |
| | | ||||||
* | | net.http.server: Handle promises from http handlers | Kim Alvefur | 2019-11-01 | 1 | -0/+8 | |
| | | ||||||
* | | net.http.server: Handle util.error objects from http handlers | Kim Alvefur | 2019-11-01 | 1 | -0/+3 | |
| | | ||||||
* | | net.http.server: Tail call because tail call! | Kim Alvefur | 2019-11-01 | 1 | -1/+1 | |
| | | ||||||
* | | net.http.server: Factor out handling of event response for easier reuse | Kim Alvefur | 2019-11-01 | 1 | -31/+34 | |
| | | ||||||
* | | Merge 0.11->trunk | Kim Alvefur | 2019-11-02 | 2 | -2/+14 | |
|\| | ||||||
| * | net.resolvers: Abort on hostnames not passing IDNA validation | Kim Alvefur | 2019-11-02 | 2 | -0/+10 | |
| | | | | | | | | | | | | Prevents error on trying to use nil. Needs better error reporting in the future. | |||||
| * | net.resolvers: Apply IDNA conversion to ascii for DNS lookups (fixes #1426) | Kim Alvefur | 2019-11-02 | 2 | -2/+4 | |
| | | ||||||
| * | net.server_epoll: Backport timer optimization 6c2370f17027 from trunk (see ↵ | Kim Alvefur | 2019-07-08 | 1 | -48/+29 | |
| | | | | | | | | | | | | | | #1388) The previous timer handling did not scale well and led to high CPU usage with many connections (each with at least an read timeout). | |||||
* | | net.http.codes: Avoid implicit number -> string coercion | Kim Alvefur | 2019-11-01 | 1 | -1/+1 | |
| | | ||||||
* | | net.server_epoll: Save IP and port from connection creation call | Kim Alvefur | 2019-10-12 | 1 | -0/+4 | |
| | | | | | | | | Might come out of :getpeername different later but at least it's something. | |||||
* | | server_epoll: Log full string represestation when connected | Kim Alvefur | 2019-10-12 | 1 | -1/+1 | |
| | | | | | | | | Since they may have been unknown when the connection was created. | |||||
* | | net.server_epoll: Handle getpeer/sockname returning a normal error | Kim Alvefur | 2019-10-12 | 1 | -2/+2 | |
| | | | | | | | | | | These will sometimes return nil, "Transport not connected" but not throw a hard error. This shouldn't be treated as success. | |||||
* | | net.server_epoll: Fix to get remote IP on direct TLS connections | Kim Alvefur | 2019-10-12 | 1 | -0/+1 | |
| | | | | | | | | | | | | | | | | A Direct TLS connection (eg HTTPS) gets turned into a LuaSec handle before the :updatenames call done in the :connect method. LuaSec does not expose the :getpeername and :getsockname methods, so the addresses remain obscured, making debugging trickier since the actual IP addrerss connected to does not show up. | |||||
* | | net.server_epoll: Move a log message to improve ordering | Kim Alvefur | 2019-10-12 | 1 | -1/+1 | |
| | | | | | | | | It was weird that it said "Prepared to start TLS" before "Client .. created" | |||||
* | | net.http.files: Explicitly convert number to string, avoiding implicit coercion | Kim Alvefur | 2019-10-12 | 1 | -1/+1 | |
| | | ||||||
* | | net.http.server: Explicitly convert number to string, avoiding implicit coercion | Kim Alvefur | 2019-10-12 | 1 | -1/+1 | |
| | | ||||||
* | | net.http.server: Re-fire unhandled HEAD requsts as GET events (fixes #1447) | Kim Alvefur | 2019-10-12 | 1 | -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 body | Kim Alvefur | 2019-10-12 | 1 | -0/+16 | |
| | | ||||||
* | | net.server_epoll: Guard against nil return from TLS info method | Kim Alvefur | 2019-10-06 | 1 | -2/+2 | |
| | | ||||||
* | | net.server_epoll: Log TLS version and cipher for all completed handshakes | Kim Alvefur | 2019-10-06 | 1 | -1/+6 | |
| | | | | | | | | | | The similar logging in mod_c2s and mod_s2s does not cover all connections, like HTTPS or other Direct TLS ports. | |||||
* | | net.server_epoll: Log size of partial writes (debug) | Kim Alvefur | 2019-10-05 | 1 | -0/+1 | |
| | | ||||||
* | | net.server_epoll: Return early when attepting to set write lock state to ↵ | Kim Alvefur | 2019-10-05 | 1 | -0/+6 | |
| | | | | | | | | | | | | current state Reduces needless duplication of work and log messages.. | |||||
* | | net.server_epoll: Correct indentation | Kim Alvefur | 2019-09-29 | 1 | -2/+2 | |
| | | ||||||
* | | net.server_epoll: Ignore unused self argument [luacheck] | Kim Alvefur | 2019-09-29 | 1 | -1/+1 | |
| | | ||||||
* | | net.server_epoll: Fix link function to not replace listeners | Kim Alvefur | 2019-09-29 | 1 | -9/+5 | |
| | | | | | | | | | | | | | | | | mod_proxy65 calls link twice, once for each direction. This would overwrite the listeners with one that has the previous listeners as metatable.__index, but none of the others. This takes advantage of 94c584d67533 to improve this. | |||||
* | | net.server_epoll: Handle read size argument to link | Kim Alvefur | 2019-09-29 | 1 | -1/+2 | |
| | | ||||||
* | | net.server_epoll: Add some timeout related logging | Kim Alvefur | 2019-09-29 | 1 | -0/+3 | |
| | | ||||||
* | | net.server_epoll: Add debug logging for various connection events | Kim Alvefur | 2019-09-29 | 1 | -0/+6 | |
| | | ||||||
* | | net.server_epoll: Make log tag accessible as a field | Kim Alvefur | 2019-09-29 | 1 | -1/+3 | |
| | | | | | | | | To allow referencing connections by id instead of tostring form | |||||
* | | net.server_epoll: Make it easy to override handler for incoming data | Kim Alvefur | 2019-09-29 | 1 | -2/+7 | |
| | | ||||||
* | | util.bitops: Library to find appropriate bitwise library (closes #1395) | Kim Alvefur | 2019-07-22 | 1 | -2/+1 | |
| | | ||||||
* | | net.http: Pass server name along for SNI (fixes #1408) | Kim Alvefur | 2019-09-01 | 1 | -1/+1 | |
| | | | | | | | | net.resolver.basic passes this 'extra' field along to server.addclient | |||||
* | | net.server: Handle server name (SNI) as extra argument | Kim Alvefur | 2019-09-01 | 3 | -0/+10 | |
| | | | | | | | | | | | | Code added in 75d2874502c3, 9a905888b96c and adc0672b700e uses this field. See #409 and #1408 | |||||
* | | net.server: Accept and save an 'extra' field for client connections | Kim Alvefur | 2019-09-01 | 3 | -15/+19 | |
| | | | | | | | | | | This lets code attach some extra data to be attached to client connections. | |||||
* | | net.server_epoll: Add support for opportunistic writes | Kim Alvefur | 2019-08-28 | 1 | -0/+8 | |
| | | | | | | | | | | | | | | | | This tries to flush data to the underlying sockets when receiving writes. This should lead to fewer timer objects being around. On the other hand, this leads to more and smaller writes which may translate to more TCP/IP packets being sent, depending on how the kernel handles this. This trades throughput for lower latency. | |||||
* | | net.resolvers.service: Fix DNS fallback | Kim Alvefur | 2019-08-17 | 1 | -1/+5 | |
| | |