In ltp testcase sendfile08.c, it use offset=NULL to test the api.

PATCH V2:
fixup the stupid missing check in the end. Sorry for lose test.

See "man sendfile" and it really support offset is NULL.

Signed-off-by: Guo Ren <ren_...@c-sky.com>
---
 libc/sysdeps/linux/common/sendfile.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libc/sysdeps/linux/common/sendfile.c 
b/libc/sysdeps/linux/common/sendfile.c
index af05ba4..f0372c1 100644
--- a/libc/sysdeps/linux/common/sendfile.c
+++ b/libc/sysdeps/linux/common/sendfile.c
@@ -40,7 +40,7 @@ ssize_t sendfile(int out_fd, int in_fd, __off_t *offset, 
size_t count)
                return -1;
        }
 
-       if (offset == NULL || (int)offset < 0) {
+       if ((int)offset < 0) {
                __set_errno(EFAULT);
                return -1;
        }
@@ -54,7 +54,7 @@ ssize_t sendfile(int out_fd, int in_fd, __off_t *offset, 
size_t count)
 
        res = INLINE_SYSCALL(sendfile64, 4, out_fd, in_fd, off, count);
 
-       if (res >= 0)
+       if (res >= 0 && offset != NULL)
                *offset = off64;
 
        return res;
-- 
2.7.4

_______________________________________________
devel mailing list
devel@uclibc-ng.org
https://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel

Reply via email to