Introduction
Introduction Statistics Contact Development Disclaimer Help
Advance send buffer in xsendfile for conservative method. - geomyidae - A small…
git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfri…
Log
Files
Refs
Tags
README
LICENSE
---
commit 74efed84eb2e5cc3f5b72be8b112020a362e7232
parent e9292b7acff19655482c6b53ff19f8c51f06bdcd
Author: Christoph Lohmann <[email protected]>
Date: Wed, 7 Feb 2018 20:17:56 +0100
Advance send buffer in xsendfile for conservative method.
Thanks Lucas Gabriel Vuotto <[email protected]>!
Diffstat:
M ind.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/ind.c b/ind.c
@@ -78,7 +78,7 @@ int
xsendfile(int fd, int sock)
{
struct stat st;
- char *sendb;
+ char *sendb, *sendi;
size_t bufsiz = BUFSIZ, count = 0;
int len, sent, optval;
@@ -121,12 +121,14 @@ xsendfile(int fd, int sock)
if (count > 0) {
sendb = xmalloc(bufsiz);
while ((len = read(fd, sendb, bufsiz)) > 0) {
+ sendi = sendb;
while (len > 0) {
- if ((sent = send(sock, sendb, len, 0)) < 0) {
+ if ((sent = send(sock, sendi, len, 0)) < 0) {
free(sendb);
return -1;
}
len -= sent;
+ sendi += sent;
}
}
free(sendb);
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.