diff options
| author | Drahflow <drahflow@gmx.de> | 2014-12-28 16:32:47 +0100 |
|---|---|---|
| committer | Drahflow <drahflow@gmx.de> | 2014-12-28 16:32:47 +0100 |
| commit | e2cfcc8e4b59de8334da380dabf9d5208c5e7f4c (patch) | |
| tree | 3f872919f20fe2e06089696e089ac3d3fe8dc479 /elymas/lib/net/alg | |
| parent | 0e816c4c2c6f4df7f568b1ba0506354e8a83051c (diff) | |
Supply SO_REUSEADDR (default for buffered servers)
Diffstat (limited to 'elymas/lib/net/alg')
| -rw-r--r-- | elymas/lib/net/alg/server.ey | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/elymas/lib/net/alg/server.ey b/elymas/lib/net/alg/server.ey index 2b291a7..882b46f 100644 --- a/elymas/lib/net/alg/server.ey +++ b/elymas/lib/net/alg/server.ey @@ -4,11 +4,16 @@ { ==err ==actions _ 0 lt { actions err ??? } rep } "+???" deffd { < + sys .linux "+" via +epoll "++" via + sys .asm "+!" via + net .tcp "+:" via + < { 1 } /running deffst { 1000000 } /interval deffst { "unconfigured accept (of epollServer)" die } /accept deffst { "unconfigured port (of epollServer)" die } /port deffst + { 1 -01 +setsockopt .reuseAddr +??io.net.setsockopt -- } /reuseAddr deffst { = }' /set deffst { scope keys }' /setters deffst @@ -19,14 +24,12 @@ { deffst }' ::installSetters - sys .linux "+" via +epoll "++" via - sys .asm "+!" via - net .tcp "+:" via - < > ==:noHandler { - ::port +:listenFd ==listenFd + ::port { # ==s + ::reuseAddr + } +:listenOptFd ==listenFd [ ] ==allEventHandlers { ==fd ==handler |
