diff options
Diffstat (limited to 'nscd/pwdcache.c')
-rw-r--r-- | nscd/pwdcache.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c index 6f4b032d10..c3039c89c4 100644 --- a/nscd/pwdcache.c +++ b/nscd/pwdcache.c @@ -32,9 +32,6 @@ #include <time.h> #include <unistd.h> #include <sys/mman.h> -#ifdef HAVE_SENDFILE -# include <sys/sendfile.h> -#endif #include <sys/socket.h> #include <stackinfo.h> @@ -305,8 +302,9 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, <= (sizeof (struct database_pers_head) + db->head->module * sizeof (ref_t) + db->head->data_size)); - off_t off = (char *) &dataset->resp - (char *) db->head; - written = sendfile (fd, db->wr_fd, &off, total); + written = sendfileall (fd, db->wr_fd, + (char *) &dataset->resp + - (char *) db->head, total); # ifndef __ASSUME_SENDFILE if (written == -1 && errno == ENOSYS) goto use_write; |