Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | fix received data incorrect arithmetics | tiptorrent development team | 2022-02-12 | 1 | -1/+1 |
| | | | | | subtract HTTP header otherwise connection is closed before all data is received. | ||||
* | validate received bytes and expected file size | tiptorrent development team | 2022-02-12 | 1 | -0/+6 |
| | |||||
* | increase number of chunks to 64 | tiptorrent development team | 2022-02-10 | 1 | -1/+1 |
| | |||||
* | do not reset number of retries counter | tiptorrent development team | 2022-02-08 | 1 | -0/+3 |
| | |||||
* | clean up state on each retry | tiptorrent development team | 2022-02-08 | 1 | -9/+12 |
| | | | | Reset the client object after retrying connection to download file. | ||||
* | update statistics after successful download | tiptorrent development team | 2022-02-08 | 1 | -5/+5 |
| | |||||
* | fall back to server after reaching maximum number of retries | tiptorrent development team | 2022-02-08 | 1 | -1/+18 |
| | | | | | | | | Use the HTTP header field: X-Accept-Redirect: off to ask for a direct download from the server. | ||||
* | bail out after maximum number of retries | tiptorrent development team | 2022-02-08 | 1 | -3/+17 |
| | | | | | stop downloading remaining chunks if one is missing after the maximum number of retries. | ||||
* | missing close() on file on exit path | tiptorrent development team | 2021-12-23 | 1 | -0/+1 |
| | |||||
* | use fallocate() to store the chunks in the file | tiptorrent development team | 2021-12-23 | 1 | -15/+89 |
| | | | | | | | The client sends a HTTP HEAD request to the server to check that the file exists and to get the file size, then it calls open() to create the file and fallocate() to preallocate the bytes. The client calculates the offset based on the chunk number and it calls lseek(). | ||||
* | add helper function to connect and send HTTP request | tiptorrent development team | 2021-12-23 | 1 | -23/+33 |
| | |||||
* | fix download of very small files | tiptorrent development team | 2021-12-23 | 1 | -3/+0 |
| | | | | | If the first recv() call fully gets the HTTP header and the file chunk, then tip_client_get_hdr() returns 1 to enter the TIP_CLIENT_DONE state to finish. | ||||
* | rename POST redirect handler | tiptorrent development team | 2021-12-23 | 1 | -2/+2 |
| | |||||
* | rename HTTP GET handlers | tiptorrent development team | 2021-12-23 | 1 | -4/+4 |
| | |||||
* | rename TIP_CLIENT_NOTIFY_REDIRECT to TIP_CLIENT_POST_REDIRECT | tiptorrent development team | 2021-12-23 | 1 | -4/+4 |
| | |||||
* | rename TIP_CLIENT_RECEIVING_* states to TIP_CLIENT_GET_* | tiptorrent development team | 2021-12-23 | 1 | -7/+7 |
| | |||||
* | add retry logic | tiptorrent development team | 2021-10-02 | 1 | -2/+13 |
| | | | | | | - if the connection to server fails, retry 5 times, sleeping 5 seconds before each retry. - if the redirection fails, go back and request the chunk from the server again. | ||||
* | display progress message every 30 seconds | tiptorrent development team | 2021-09-29 | 1 | -1/+4 |
| | | | | to avoid bloating the logs | ||||
* | print progress message | tiptorrent development team | 2021-09-29 | 1 | -0/+24 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Print a progress message to stdout: 0% (0 Mbytes/second) file.img.2 from 192.168.2.179:9999 29% (113 Mbytes/second) file.img.2 from 192.168.2.179:9999 59% (113 Mbytes/second) file.img.2 from 192.168.2.179:9999 88% (114 Mbytes/second) file.img.2 from 192.168.2.179:9999 100% (128 Mbytes/second) file.img.2 from 192.168.2.179:9999 0% (0 Mbytes/second) file.img.3 from 192.168.2.179:9999 29% (113 Mbytes/second) file.img.3 from 192.168.2.179:9999 58% (113 Mbytes/second) file.img.3 from 192.168.2.179:9999 88% (113 Mbytes/second) file.img.3 from 192.168.2.179:9999 100% (128 Mbytes/second) file.img.3 from 192.168.2.179:9999 0% (0 Mbytes/second) file.img.1 from 192.168.2.179:9999 29% (114 Mbytes/second) file.img.1 from 192.168.2.179:9999 59% (114 Mbytes/second) file.img.1 from 192.168.2.179:9999 88% (113 Mbytes/second) file.img.1 from 192.168.2.179:9999 100% (128 Mbytes/second) file.img.1 from 192.168.2.179:9999 0% (0 Mbytes/second) file.img.0 from 192.168.2.179:9999 29% (113 Mbytes/second) file.img.0 from 192.168.2.179:9999 59% (113 Mbytes/second) file.img.0 from 192.168.2.179:9999 88% (113 Mbytes/second) file.img.0 from 192.168.2.179:9999 100% (128 Mbytes/second) file.img.0 from 192.168.2.179:9999 OK. | ||||
* | tiptorrent-client is released under AGPL3+ | tiptorrent development team | 2021-09-29 | 1 | -0/+661 |
| | |||||
* | fix connection closed by server | tiptorrent development team | 2021-09-26 | 1 | -1/+1 |
| | |||||
* | floating exception if download is too fast | tiptorrent development team | 2021-09-23 | 1 | -2/+2 |
| | | | | fix divide by zero if file download takes less than 1 second. | ||||
* | no need for root to run tiptorrent-client | tiptorrent development team | 2021-09-22 | 1 | -1/+1 |
| | |||||
* | revisit error reporting | tiptorrent development team | 2021-09-20 | 1 | -7/+33 |
| | |||||
* | display failure stats on syslog | tiptorrent development team | 2021-09-19 | 1 | -2/+9 |
| | |||||
* | print stats to syslog | tiptorrent development team | 2021-09-19 | 1 | -1/+2 |
| | |||||
* | incorrect mbytes/second stats | tiptorrent development team | 2021-09-18 | 1 | -1/+3 |
| | | | | accumulate data from all file | ||||
* | report socket is connected, instead of connecting | tiptorrent development team | 2021-09-18 | 1 | -2/+2 |
| | |||||
* | incorrect loop break logic on error | tiptorrent development team | 2021-09-18 | 1 | -1/+1 |
| | |||||
* | fix connect error path | tiptorrent development team | 2021-09-18 | 1 | -6/+5 |
| | | | | Use syslog() and do not check for EINPROGRESS on the second connect() call. | ||||
* | display download rate in Mbytes/seconds | tiptorrent development team | 2021-09-18 | 1 | -1/+2 |
| | |||||
* | enable TCP keepalived | tiptorrent development team | 2021-09-18 | 1 | -0/+12 |
| | |||||
* | initial commit | tiptorrent development team | 2021-09-18 | 5 | -0/+536 |