summaryrefslogtreecommitdiffstats
path: root/src/handler.c
diff options
context:
space:
mode:
authortiptorrent development team <tiptorrent@soleta.eu>2021-09-10 17:06:35 +0200
committertiptorrent development team <tiptorrent@soleta.eu>2021-09-29 15:48:11 +0200
commitd6dbb6c979bc785e501cf109a7d155635b1647ea (patch)
tree2ccbde66d426ee9a32cad4c73f95d1726254b6ef /src/handler.c
parentb7b410ddc2b84c06801bc2b2320bbeaf7f3fa936 (diff)
add a close wait state
Wait for clients to close the connection, then: - create redirection. - activate pending clients. Do no refresh timeout while in close wait state.
Diffstat (limited to 'src/handler.c')
-rw-r--r--src/handler.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/handler.c b/src/handler.c
index ab9fdc4..164a484 100644
--- a/src/handler.c
+++ b/src/handler.c
@@ -148,8 +148,10 @@ int tip_client_state_process_payload_bulk(struct tip_client *cli)
{
sendfile(tip_client_socket(cli), cli->fd, &cli->offset, BLOCK);
- if (cli->offset >= cli->size)
+ if (cli->offset >= cli->size) {
+ cli->state = TIP_CLIENT_CLOSE_WAIT;
return 1;
+ }
return 0;
}