diff options
| author | Nakidai <nakidai@disroot.org> | 2025-05-11 17:21:48 +0300 |
|---|---|---|
| committer | Nakidai <nakidai@disroot.org> | 2025-05-11 18:06:13 +0300 |
| commit | 337ee19afd48f271ec604ae0c442cbe8f3884d03 (patch) | |
| tree | bd524482334a8e13141f5033577716740629039c | |
| parent | 8f6cf913110f57e42143e0184bfcc8e2b1fe0ec2 (diff) | |
| download | ttb-337ee19afd48f271ec604ae0c442cbe8f3884d03.tar.gz ttb-337ee19afd48f271ec604ae0c442cbe8f3884d03.zip | |
Simplify sending
Since with tcp socket write call will either send whole buffer of return an error (no probability of partial send) complex sending loop can be removed and replaced with one write call instead see: send(2), write(2), signal(7)
| -rw-r--r-- | ttb.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/ttb.c b/ttb.c index 24c7a42..48e73c5 100644 --- a/ttb.c +++ b/ttb.c @@ -102,19 +102,8 @@ after: } for (size_t j = 1; j < lengthof(peers); ++j) - { - if (!peers[j] || i == j) - continue; - size_t writtenall = 0; - while (writtenall < reads) - { - ssize_t written = write(peers[j], buf + writtenall, reads - writtenall); - if (written == -1) - break; - else - writtenall += written; - } - } + if (peers[j] && i != j) + write(peers[j], buf, reads); } } } |