]> arthur.barton.de Git - netatalk.git/blobdiff - libatalk/adouble/ad_sendfile.c
Merge pull request #13 from hat001/dbdshowpath
[netatalk.git] / libatalk / adouble / ad_sendfile.c
index 113f30c9bf0f130b122ce732c7c03f3b1c639bff..3cb28e7802c935db16ab4acf80645db577b43816 100644 (file)
@@ -59,10 +59,19 @@ ssize_t sys_sendfile(int tofd, int fromfd, off_t *offset, size_t count)
 #elif defined(SENDFILE_FLAVOR_BSD )
 #include <sys/types.h>
 #include <sys/socket.h>
-#include <sys/uio.h><
+#include <sys/uio.h>
 ssize_t sys_sendfile(int tofd, int fromfd, off_t *offset, size_t count)
 {
-  return sendfile(fromfd, tofd, *offset, count, NULL, offset, 0);
+    off_t len;
+    int ret;
+
+    ret = sendfile(fromfd, tofd, *offset, count, NULL, &len, 0);
+
+    *offset += len;
+
+    if (ret != 0)
+        return -1;
+    return len;
 }
 
 #else