summaryrefslogtreecommitdiff
path: root/source3/lib
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2009-01-13 11:19:11 -0800
committerJeremy Allison <jra@samba.org>2009-01-13 11:19:11 -0800
commit83c3b2809636cab704a54c2d699a907c6d07d199 (patch)
tree07eae5cb62d6d2e0c741ad8b63fce3099a94e4fa /source3/lib
parent4f079fe539ea3f41c5a9888279a6574760004098 (diff)
downloadsamba-83c3b2809636cab704a54c2d699a907c6d07d199.tar.gz
samba-83c3b2809636cab704a54c2d699a907c6d07d199.tar.bz2
samba-83c3b2809636cab704a54c2d699a907c6d07d199.zip
Fix bug #6019 File corruption in Clustered SMB/NFS environment managed via CTDB
Jeremy.
Diffstat (limited to 'source3/lib')
-rw-r--r--source3/lib/sendfile.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source3/lib/sendfile.c b/source3/lib/sendfile.c
index d1b178577c..fb10cae2aa 100644
--- a/source3/lib/sendfile.c
+++ b/source3/lib/sendfile.c
@@ -65,7 +65,7 @@ ssize_t sys_sendfile(int tofd, int fromfd, const DATA_BLOB *header, SMB_OFF_T of
#endif
} while (nwritten == -1 && errno == EINTR);
if (nwritten == -1) {
- if (errno == ENOSYS) {
+ if (errno == ENOSYS || errno == EINVAL) {
/* Ok - we're in a world of pain here. We just sent
* the header, but the sendfile failed. We have to
* emulate the sendfile at an upper layer before we
@@ -143,7 +143,7 @@ ssize_t sys_sendfile(int tofd, int fromfd, const DATA_BLOB *header, SMB_OFF_T of
nwritten = sendfile(tofd, fromfd, &small_offset, small_total);
} while (nwritten == -1 && errno == EINTR);
if (nwritten == -1) {
- if (errno == ENOSYS) {
+ if (errno == ENOSYS || errno == EINVAL) {
/* Ok - we're in a world of pain here. We just sent
* the header, but the sendfile failed. We have to
* emulate the sendfile at an upper layer before we