summaryrefslogtreecommitdiff
path: root/source3/modules/onefs.h
diff options
context:
space:
mode:
authorTim Prouty <tprouty@samba.org>2009-02-20 13:27:39 -0800
committerTim Prouty <tprouty@samba.org>2009-02-21 17:10:42 -0800
commit8ec9903426ec4e559df8ac8306a8ebcdf0706176 (patch)
treed851e433a5f634e1b977b00b489d61c22a050366 /source3/modules/onefs.h
parent0dcfa9ce1baa9f2074a002fdb5c8b88cc5db28db (diff)
downloadsamba-8ec9903426ec4e559df8ac8306a8ebcdf0706176.tar.gz
samba-8ec9903426ec4e559df8ac8306a8ebcdf0706176.tar.bz2
samba-8ec9903426ec4e559df8ac8306a8ebcdf0706176.zip
s3 OneFS: Add an atomic sendfile implementation
Diffstat (limited to 'source3/modules/onefs.h')
-rw-r--r--source3/modules/onefs.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/source3/modules/onefs.h b/source3/modules/onefs.h
index ea452a454d..a70664bbf3 100644
--- a/source3/modules/onefs.h
+++ b/source3/modules/onefs.h
@@ -47,6 +47,8 @@ enum onefs_acl_wire_format
#define PARM_ATIME_STATIC_DEFAULT NULL
#define PARM_ATIME_SLOP "atime now slop"
#define PARM_ATIME_SLOP_DEFAULT 0
+#define PARM_ATOMIC_SENDFILE "atomic sendfile"
+#define PARM_ATOMIC_SENDFILE_DEFAULT true
#define PARM_CREATOR_OWNER_GETS_FULL_CONTROL "creator owner gets full control"
#define PARM_CREATOR_OWNER_GETS_FULL_CONTROL_DEFAULT true
#define PARM_CTIME_NOW "ctime now files"
@@ -63,6 +65,10 @@ enum onefs_acl_wire_format
#define PARM_MTIME_SLOP_DEFAULT 0
#define PARM_USE_READDIRPLUS "use readdirplus"
#define PARM_USE_READDIRPLUS_DEFAULT true
+#define PARM_SENDFILE_LARGE_READS "sendfile large reads"
+#define PARM_SENDFILE_LARGE_READS_DEFAULT false
+#define PARM_SENDFILE_SAFE "sendfile safe"
+#define PARM_SENDFILE_SAFE_DEFAULT true
#define PARM_SIMPLE_FILE_SHARING_COMPATIBILITY_MODE "simple file sharing compatibility mode"
#define PARM_SIMPLE_FILE_SHARING_COMPATIBILITY_MODE_DEFAULT false
#define PARM_UNMAPPABLE_SIDS_DENY_EVERYONE "unmappable sids deny everyone"
@@ -254,6 +260,10 @@ int onefs_sys_create_file(connection_struct *conn,
uint32_t ntfs_flags,
int *granted_oplock);
+ssize_t onefs_sys_sendfile(connection_struct *conn, int tofd, int fromfd,
+ const DATA_BLOB *header, SMB_OFF_T offset,
+ size_t count);
+
ssize_t onefs_sys_recvfile(int fromfd, int tofd, SMB_OFF_T offset,
size_t count);