aboutsummaryrefslogtreecommitdiffstats
path: root/net
Commit message (Collapse)AuthorAgeFilesLines
* net.resolvers: Abort on hostnames not passing IDNA validationKim Alvefur2019-11-022-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 Alvefur2019-11-022-2/+4
|
* net.server_epoll: Backport timer optimization 6c2370f17027 from trunk (see ↵Kim Alvefur2019-07-081-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.server_epoll: Restore wantread flag after pause (fixes #1354)Kim Alvefur2019-05-041-1/+1
| | | | | | | | | If a chunk of data has been received that is larger than the amount read at a time, then the connection is paused for a short time after which it tries to read some more. If, after that, there is still more data to read, it should do the same thing. However, because the "want read" flag is removed and was restored after the delayed reading, it would not schedule another delayed read.
* net.dns: Close resolv.conf handle when done (fixes #1342)Kim Alvefur2019-04-131-0/+1
|
* net.server_epoll: Skip delayed continuation read on paused connectionsKim Alvefur2019-03-281-1/+1
| | | | | | This should prevent #1333 in cases where LuaSockets buffer is "dirty", i.e.?contains more data after a read, where it gets resumed with a short delay.
* net.server_epoll: Handle LuaSec wantread/wantwrite conditions before ↵Kim Alvefur2019-03-281-5/+8
| | | | | | | callbacks (fixes #1333) This prevents the :set(true) call from resuming a connection that was paused in the onincoming callback.
* net.server_epoll: Rename handshake_timeout to ssl_handshake_timeout (fixes ↵Kim Alvefur2019-02-091-3/+3
| | | | | | #1319) This is to match server_event, see 430797a8fc81
* net.server_epoll: Use send_timeout for write timout like other ↵Kim Alvefur2019-02-071-2/+2
| | | | implementations (fixes #1316)
* server_epoll: Add comments describing config optionsKim Alvefur2018-11-301-0/+15
|
* net.server_epoll: Remove unused config optionKim Alvefur2018-11-301-1/+0
|
* server_epoll: Increase write timeoutKim Alvefur2018-11-301-1/+1
| | | | 7 may be too low for some slow machines and/or networks
* net.server_select: Fix IP validation to use correct variable (thanks quest)Kim Alvefur2018-11-171-1/+1
| | | | Copy-paste mistake most likely. Not caught because server_select is ignored by luacheck.
* net.http.server: Move event formation to avoid traceback on missing Host headerMatthew Wild2018-11-131-1/+1
|
* net.http: Manually merge settings (fixes #1231)Kim Alvefur2018-11-091-2/+6
| | | | Metatable table indexing is done raw, so metatables can't be chained
* net.server_epoll: Shuffle variables earlier to improve readabilityKim Alvefur2018-10-271-1/+1
|
* Many things: switch from hacky multi-arg xpcall implementations to a ↵Matthew Wild2018-10-262-9/+6
| | | | standard util.xpcall
* net.server_epoll: Special handling of signal interruptsKim Alvefur2018-10-121-1/+1
|
* net.server_epoll: Ignore ENOENT when deregitering socketKim Alvefur2018-10-121-1/+2
| | | | It should not really happen
* net.server_epoll: Graceful handling of registering already added socketKim Alvefur2018-10-121-1/+8
|
* net.server: Swich method for connecting sockets with remotesKim Alvefur2018-10-123-3/+3
| | | | | | | LuaSocket TCP sockets have have both :connect and :setpeername, which are the exact same function, however UDP sockets only have :setpeername. Switching to :setpeername allows most of this code to be generic wrt TCP/UDP.
* net.server_epoll: Check return conditions of early socket setupKim Alvefur2018-10-121-2/+4
|
* net.server_epoll: Add support for the conn_type argument to addclientKim Alvefur2018-10-121-8/+16
|
* net.resolvers.basic: Suffix IPv4 TCP socket types with '4' to match eg 'tcp6'Kim Alvefur2018-10-121-2/+2
|
* net.server: Remove socket constructor fallbackKim Alvefur2018-10-122-2/+2
| | | | Should no longer be needed
* net.server_epoll: Assert successful creation of util.poll handleKim Alvefur2018-10-111-1/+1
|
* net.server_epoll: Update copyright yearKim Alvefur2018-10-111-1/+1
|
* net.server: Require IP address as argument to addclient (no DNS names)Kim Alvefur2018-10-113-19/+34
| | | | The net.connect API should be used to resolve DNS names first
* net.server_epoll: Log error number from wait()Kim Alvefur2018-10-071-1/+1
|
* net.server_epoll: Pass error number to loggingKim Alvefur2018-10-061-1/+1
| | | | Why do we ignore unused secondaries?
* net.server_epoll: Fix luacheck annotationKim Alvefur2018-10-061-1/+1
|
* net.server_epoll: Make :set_send a noop, should fix net.adnsKim Alvefur2018-10-061-4/+3
| | | | | | This is also a noop in server_event. Supposedly meant to prevent buffered writes from being sent to the socket, but that path becomes unreachable when net.adns replaces the public send method
* net.server_epoll: Inherit Direct TLS flag from servers to their clientsKim Alvefur2018-09-141-1/+2
|
* net.server_epoll: Catch errors from luasec.wrapKim Alvefur2018-09-141-1/+5
| | | | It throws if given an invalid TLS context
* net.server_epoll: Delay wrapping sockets in TLS until just before first ↵Kim Alvefur2018-09-141-14/+21
| | | | handshake
* net.resolvers.service: Sort SRV records in correct directionKim Alvefur2018-09-301-1/+1
|
* net.resolvers.service: Fix sorting SRV recordKim Alvefur2018-09-301-1/+1
|
* net.resolvers.service: Rename internal variable since net.connect uses it ↵Kim Alvefur2018-09-291-4/+4
| | | | for __tostring
* net.resolvers.service: Add support for fallback to bare domain and default portKim Alvefur2018-09-291-0/+3
| | | | The default port must be configured separately to enable this behavior
* net.resolvers.service: Early return on empty result setKim Alvefur2018-09-291-0/+5
|
* net.resolvers.service: Understand when service is explicitly unavailableKim Alvefur2018-09-291-0/+5
| | | | | | RFC2782 states: > A Target of "." means that the service is decidedly not available at > this domain.
* net.resolvers.service: net.connect resolver that uses SRV recordsKim Alvefur2018-09-271-0/+57
|
* net.connect: Fix passing request table to new listenerKim Alvefur2018-09-264-7/+7
| | | | This could be a return value from ondetach
* net.connect: Remove manual onattach callback invocationKim Alvefur2018-09-261-3/+0
|
* net.server: Call a 'onattach' callback when replacing listenersKim Alvefur2018-09-263-0/+8
|
* net.server_epoll: Include errno in log messagesKim Alvefur2018-09-261-6/+6
|
* net.server_epoll: Factor out IP/port detection into its own methodKim Alvefur2018-09-261-5/+10
|
* net.server_epoll: Protect from errors in get{peer,sock}nameKim Alvefur2018-09-261-4/+6
|
* net.server_epoll: Watching instead of registering, seems more understandableKim Alvefur2018-09-241-2/+2
|
* net.http.server: Delay host checks until after host-less eventKim Alvefur2018-09-231-9/+18
| | | | This allows handling events without any hosts enabled.