aboutsummaryrefslogtreecommitdiffstats
path: root/net/server_select.lua
Commit message (Collapse)AuthorAgeFilesLines
* net.server: New API for creating server listenersKim Alvefur2018-09-131-8/+22
| | | | server.listen(interface, port, listeners, options);
* Merge 0.11->trunkKim Alvefur2018-11-181-1/+1
|\
| * 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.server: Add an API for holding writes of outgoing dataKim Alvefur2018-10-251-12/+19
| |
* | net.server_select: Still allow buffering outgoing data on write-locked ↵Kim Alvefur2018-10-281-4/+1
| | | | | | | | connections
* | net.server_select: Replace use of deprecated :lock_read in server.linkKim Alvefur2018-10-281-2/+2
| |
* | net.server_select: Deprecate :lock methodKim Alvefur2018-10-281-0/+1
| | | | | | | | Exists only in server_select and I found nothing using it
* | server_select: Fix :lock methodKim Alvefur2018-10-281-1/+1
| | | | | | | | | | | | This always unlocks reading. I don't believe this is used anywhere. server_event does not implement this.
* | net.server_select: Move code from :lock_read into :pause and :resumeKim Alvefur2018-10-281-13/+15
| |
* | net.server_select: Deprecate connection:lock_read() methodKim Alvefur2018-10-281-1/+1
|/
* net.server: Swich method for connecting sockets with remotesKim Alvefur2018-10-121-1/+1
| | | | | | | 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: Remove socket constructor fallbackKim Alvefur2018-10-121-1/+1
| | | | Should no longer be needed
* net.server: Require IP address as argument to addclient (no DNS names)Kim Alvefur2018-10-111-7/+10
| | | | The net.connect API should be used to resolve DNS names first
* net.connect: Fix passing request table to new listenerKim Alvefur2018-09-261-2/+2
| | | | This could be a return value from ondetach
* net.server: Call a 'onattach' callback when replacing listenersKim Alvefur2018-09-261-0/+3
|
* net.server: Set default read timeout to 14 minutes (fixes #971)Kim Alvefur2018-07-061-1/+1
|
* net.server: Add watchfd, a simple API for watching file descriptorsKim Alvefur2018-05-091-0/+43
|
* net.server_select: Allow setquitting("once") to allow resuming the loop laterMatthew Wild2018-04-101-2/+2
|
* Fix spelling throughout the codebase [codespell]Kim Alvefur2018-02-041-3/+3
|
* net.server_select: Better detection of errors for outgoing connectionsMatthew Wild2018-02-231-6/+7
| | | | | | | | | | | On connection failure, a socket is marked readable and writable. So to detect initial connection failures (connection refused, etc.) we now watch for sockets becoming readable during initial connection, and also read from readable sockets before writing to writable sockets. This should fix 'onconnect' being called for outgoing connections that actually failed.
* Merge 0.10->trunkKim Alvefur2016-11-261-0/+1
|\
| * Merge 0.9->0.10Kim Alvefur2016-11-241-0/+1
| |\
| | * net.server_select: Prevent writes after a handler is closed (fixes #783 I hope)Kim Alvefur2016-11-221-0/+1
| | |
| * | net.server_select: remove unused import [luacheck]Anton Shestakov2016-07-281-1/+0
| | |
* | | Merge 0.10->trunkKim Alvefur2016-07-141-1/+1
|\| |
| * | net.server_select: remove unused one-letter loop variable [luacheck]Anton Shestakov2016-07-141-1/+1
| | |
* | | Merge 0.10->trunkKim Alvefur2016-07-081-2/+2
|\| |
| * | net.server_select: remove unused one-letter loop variables [luacheck]Anton Shestakov2016-07-091-2/+2
| | |
| * | net.server_select: Remove do-nothing os_difftime calls [backported from trunk]daurnimator2015-01-191-5/+3
| | |
* | | Merge 0.10->trunkKim Alvefur2016-01-221-1/+21
|\| |
| * | Merge 0.9->0.10Kim Alvefur2016-01-221-0/+20
| |\|
| | * server_select: Add logging of when servers are paused and resumedKim Alvefur2016-01-221-0/+2
| | |
| | * server_select: Pause and mark server as full if accepting a client fails ↵Kim Alvefur2016-01-221-0/+2
| | | | | | | | | | | | (fixes #597)
| | * server_select: Retry accepting clients from full servers after 10s (matches ↵Kim Alvefur2016-01-221-0/+11
| | | | | | | | | | | | libevent behaviour)
| | * server_select: Keep track of which server listeners are fullKim Alvefur2016-01-221-0/+5
| | |
* | | Merge 0.10->trunkKim Alvefur2016-01-101-0/+3
|\| |
| * | net.server_select: Add 'server' method to client connections (present in ↵Kim Alvefur2016-01-091-0/+3
| | | | | | | | | | | | server_event)
* | | Merge 0.10->trunkMatthew Wild2016-01-041-2/+3
|\| |
| * | server_select: Forward the actual TLS handshake error messageKim Alvefur2016-01-031-2/+3
| | |
* | | Merge 0.10->trunkMatthew Wild2016-01-021-0/+1
|\| |
| * | net.server_select: Close all connections when quitting (and not just ↵Matthew Wild2016-01-021-0/+1
| | | | | | | | | | | | stepping), matches server_event
| * | net.server_{select,event}: addclient: Use getaddrinfo to detect IP address ↵Kim Alvefur2013-12-231-1/+9
| | | | | | | | | | | | type if no socket type argument given. (Argument must be given for non-TCP)
| * | net.server_{select,event}: addclient: Add argument for overriding socket typeKim Alvefur2013-12-231-2/+9
| | |
| * | net/server_select: Fix typodaurnimator2013-12-181-1/+1
| | |
| * | net/server_select: addclient: Check argumentsdaurnimator2013-12-181-0/+15
| | |
| * | net/server_select: addclient: Check for failure correctly; remove ↵daurnimator2013-12-181-3/+3
| | | | | | | | | | | | wrapconnection call on failure
| * | net/server_select: Check arguments to add_server correctlydaurnimator2013-12-181-3/+4
| | |
| * | net.server_{select,event}: Don't rely on LuaSocket and LuaSec being present ↵Kim Alvefur2015-02-231-5/+5
| | | | | | | | | | | | in the globals table
* | | net.server_select: Remove unused codedaurnimator2015-01-191-6/+0
| | |
* | | net.server_select: Remove socket.sleep call from main loopdaurnimator2015-01-191-8/+0
| | | | | | | | | | | | | | | | | | It's been there since the start; but should really not be required. People can remember an issue with FreeBSD that this solved, but this was a hack solution anyway. If that issue rears it's head again, we will solve it properly.