aboutsummaryrefslogtreecommitdiffstats
path: root/src/server_socket.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* don't define WINVER in *.c filesMax Kellermann2011-10-091-1/+0
| | | | | In a C file, that is too late, because _mingw.h defaults to 0x0502, and ours would be illegal redefintion.
* server_socket: use resolve_host_port() instead of getaddrinfo()Max Kellermann2011-09-201-17/+4
| | | | Allow port specification in "bind_to_address" settings.
* socket_util: move sockaddr_to_string() to resolver.cMax Kellermann2011-09-201-0/+1
|
* Merge branch 'v0.16.x'Max Kellermann2011-09-201-2/+3
|\
| * fd_util: add function close_socket()Max Kellermann2011-09-201-1/+1
| | | | | | | | Wrap close(), use closesocket() on WIN32/WinSock.
| * glib_socket.h: wrap g_io_channel_*_new() calls portablyMax Kellermann2011-09-201-1/+2
| | | | | | | | | | The server_socket library (used by the httpd output plugin) didn't check for WIN32, that's fixed now.
* | Set socket TCP keepalive option on incoming connectionsDan McGee2011-09-191-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a connected host disappears without our knowledge, as can happen over wireless or a hibernating machine, we continue to hold the port open waiting for messages. Because we never try to send anything down this now-broken pipe, the connection will sit idle taking up a slot in our allowed incoming connections list. If enough of these happen, an unintended Denial of Service takes place, where all connection slots are filled with now-broken, never ending connections. Setting the TCP keepalive option at least allows these to time out after the default two hours, which is sufficient in the non-malicious case. Signed-off-by: Dan McGee <dan@archlinux.org>
* | copyright year 2011Max Kellermann2011-01-291-1/+1
| |
* | Build fix for Linux. Define _GNU_SOURCE in src/server_socket.c.Ben Kibbey2010-12-271-0/+5
|/
* server_socket: remove AI_ADDRCONFIGMantas Mikulenas2010-11-041-3/+0
| | | | | | | When you pass the flag AI_ADDRCONFIG to getaddrinfo(), it does not consider address families on the loopback device. When run on a machine without an external network card, just with "lo", it was unable to look up any address.
* listen: move generic code to server_socket.cMax Kellermann2010-10-051-0/+447