aboutsummaryrefslogtreecommitdiffstats
path: root/net
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* 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.server_epoll: Simplify minimal string representationKim Alvefur2018-09-151-1/+1
| | | | .conn might just be the FD sometimes
* net.server_epoll: Add back setflags API for compatKim Alvefur2018-09-151-0/+13
|
* net.server_epoll: Fix write signal handling in watchfd APIKim Alvefur2018-09-151-3/+3
| | | | The main loop calls :onwritable but here it was spelled :onwriteable
* net.server_epoll: Use util.pollKim Alvefur2018-05-161-69/+74
|
* net.server_epoll: Make read_size a server-wide optionKim Alvefur2018-09-131-1/+2
| | | | Can still be overriden per connection
* net.server_epoll: Rename pattern to read_sizeKim Alvefur2018-09-131-10/+10
|
* net.server_epoll: Refactor Direct TLS assumptions outwardsKim Alvefur2018-09-131-8/+17
| | | | | | | | | | The assumption that connections are "Direct TLS" when a TLS context is supplided should be broken. The goal is to make it easy to add a new API that can be given a TLS context at creation even if it should do STARTTLS. With this commit, only the exposed server_select-compatible API assumes Direct TLS when a TLS context is included.
* net.server_epoll: Factor Direct TLS handling out of connection initializationKim Alvefur2018-09-131-6/+6
| | | | | Eventually it should be possible to create a socket that has a TLS context but that does not automatically start TLS on connect.