| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Close some files when too many are open | Remy Noulin | 2022-12-19 | 1 | -0/+11 |
| | | |||||
| * | notify clients about malformed requests | Julian Maingot | 2022-08-15 | 1 | -1/+4 |
| | | | | | | | | I think this has been broken for a while and I came across it while implementing my own client. The server should notify the client that the request is malformed but wasn't sending the response when SSL_read returned SSL_ERROR_WANT_READ. | ||||
| * | disconnect_client: fix index calculation | Eyal Sawady | 2021-05-16 | 1 | -1/+1 |
| | | | | | | | This was sometimes causing a gmnisrv_client to be overwritten by the deinitialized client, which occasionally lead to a segfault when we later tried to use it. | ||||
| * | Fix use of wrong index during pollfd refresh | Kenny Levinsen | 2020-11-10 | 1 | -1/+1 |
| | | | | | | | The right side of the refresh ended up using the index of the deleted client instead of the index from the loop, which happens to work when the destroyed client is either last or second-last. | ||||
| * | Update pollfd pointers when destroying a client | Kenny Levinsen | 2020-11-08 | 1 | -0/+4 |
| | | | | | | | | | The client pollfd pointer would go stale when the server pollfd array was moved to compensate for a destroyed client, which in turn led to poll breakage. Refresh the pollfd pointers after memmove. | ||||
| * | Prevent double free of client resources | Drew DeVault | 2020-11-08 | 1 | -0/+4 |
| | | |||||
| * | Set POLLOUT only when there's something to write | mbays | 2020-11-08 | 1 | -1/+1 |
| | | |||||
| * | Don't memmove one past clients | Tom Lebreux | 2020-11-08 | 1 | -1/+3 |
| | | |||||
| * | Fix not moving all fds | Tom Lebreux | 2020-11-08 | 1 | -1/+1 |
| | | |||||
| * | server: handle write errors | Drew DeVault | 2020-10-28 | 1 | -1/+5 |
| | | |||||
| * | Overhaul network I/O to be async for real | Drew DeVault | 2020-10-25 | 1 | -91/+217 |
| | | | | | | Had to totally cut off OpenSSL from the network fd because obviously OpenSSL is just going to wreck our shit | ||||
| * | Bubble up client disconnect state | Drew DeVault | 2020-09-27 | 1 | -23/+36 |
| | | | | | This will fix the segfaults but won't fix slowlorris | ||||
| * | Break after processing polled client | Drew DeVault | 2020-09-27 | 1 | -0/+3 |
| | | | | | Otherwise we might not grok it, ya jive | ||||
| * | Only handle one client per poll iteration | Drew DeVault | 2020-09-27 | 1 | -8/+4 |
| | | | | | | This is a bit of a hack but it avoids some problems with invalid reads when a client gets disconnected | ||||
| * | server.c: re-locate definitions to appropriate scope | Drew DeVault | 2020-09-26 | 1 | -7/+7 |
| | | |||||
| * | Set SO_REUSEADDR | Drew DeVault | 2020-09-26 | 1 | -1/+2 |
| | | |||||
| * | server.c: appease GCC's magic pixie bullshit | Drew DeVault | 2020-09-26 | 1 | -2/+2 |
| | | |||||
| * | server.c: import netinet/in.h | Drew DeVault | 2020-09-26 | 1 | -0/+1 |
| | | |||||
| * | Fix size of in{,6}_addr | Drew DeVault | 2020-09-26 | 1 | -2/+2 |
| | | |||||
| * | Document (and tweak) log format | Drew DeVault | 2020-09-26 | 1 | -3/+2 |
| | | |||||
| * | Free up resources throughout | Drew DeVault | 2020-09-26 | 1 | -4/+14 |
| | | |||||
| * | disconnect_client: free more client resources | Drew DeVault | 2020-09-26 | 1 | -0/+7 |
| | | |||||
| * | Implement autoindex option | Drew DeVault | 2020-09-26 | 1 | -6/+5 |
| | | |||||
| * | Rehome some logic from server.c -> serve.c | Drew DeVault | 2020-09-26 | 1 | -119/+1 |
| | | |||||
| * | Bump client buffer size to BUFSIZ | Drew DeVault | 2020-09-26 | 1 | -1/+0 |
| | | |||||
| * | Log response body size in bytes | Drew DeVault | 2020-09-26 | 1 | -1/+4 |
| | | |||||
| * | Serve files from root | Drew DeVault | 2020-09-26 | 1 | -11/+82 |
| | | |||||
| * | disconnect_client: clean up bios | Drew DeVault | 2020-09-26 | 1 | -2/+3 |
| | | |||||
| * | Parse requests and serve simple responses | Drew DeVault | 2020-09-26 | 1 | -17/+169 |
| | | |||||
| * | Use O_NONBLOCK for client file descriptors | Drew DeVault | 2020-09-26 | 1 | -2/+13 |
| | | |||||
| * | Implement TLS exchange with clients | Drew DeVault | 2020-09-24 | 1 | -6/+99 |
| | | | | | This probably leaves a bit to be desired tbh | ||||
| * | Log bind addresses on startup | Drew DeVault | 2020-09-24 | 1 | -1/+4 |
| | | |||||
| * | Generalize logging | Drew DeVault | 2020-09-23 | 1 | -28/+5 |
| | | |||||
| * | Implement basic server event loop | Drew DeVault | 2020-09-23 | 1 | -4/+180 |
| | | |||||
| * | Generalize IPV6_V6ONLY usage | Drew DeVault | 2020-09-23 | 1 | -1/+1 |
| | | | | | Some platforms other than Linux may implement this socket option. | ||||
| * | Initialize sockets | Drew DeVault | 2020-09-23 | 1 | -0/+92 |
