diff options
author | James Peach <jpeach@samba.org> | 2005-09-03 07:19:28 +0000 |
---|---|---|
committer | James Peach <jpeach@samba.org> | 2005-09-03 07:19:28 +0000 |
commit | 016d1669f46f4ce785d3e989c6d87eff2b22acad (patch) | |
tree | efff4136de29936be91bb414edb8cd7b1a4064e2 /source/smbd/reply.c | |
parent | c575e198862a6b3aad677488c486a1922f98ff07 (diff) | |
download | samba-016d1669f46f4ce785d3e989c6d87eff2b22acad.tar.gz samba-016d1669f46f4ce785d3e989c6d87eff2b22acad.tar.xz samba-016d1669f46f4ce785d3e989c6d87eff2b22acad.zip |
r9985: Move the all the strict sync logic into file_sync().
Diffstat (limited to 'source/smbd/reply.c')
-rw-r--r-- | source/smbd/reply.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/source/smbd/reply.c b/source/smbd/reply.c index e96c3dc01ff..90500066531 100644 --- a/source/smbd/reply.c +++ b/source/smbd/reply.c @@ -2786,8 +2786,7 @@ int reply_writebraw(connection_struct *conn, char *inbuf,char *outbuf, int size, SSVAL(outbuf,smb_vwv0,total_written); - if ((lp_syncalways(SNUM(conn)) || write_through) && lp_strict_sync(SNUM(conn))) - sync_file(conn,fsp); + sync_file(conn, fsp, write_through); DEBUG(3,("writebraw2 fnum=%d start=%.0f num=%d wrote=%d\n", fsp->fnum, (double)startpos, (int)numtowrite,(int)total_written)); @@ -2852,8 +2851,7 @@ int reply_writeunlock(connection_struct *conn, char *inbuf,char *outbuf, nwritten = write_file(fsp,data,startpos,numtowrite); } - if (lp_syncalways(SNUM(conn))) - sync_file(conn,fsp); + sync_file(conn, fsp, False /* write through */); if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) { END_PROFILE(SMBwriteunlock); @@ -2940,8 +2938,7 @@ int reply_write(connection_struct *conn, char *inbuf,char *outbuf,int size,int d } else nwritten = write_file(fsp,data,startpos,numtowrite); - if (lp_syncalways(SNUM(conn))) - sync_file(conn,fsp); + sync_file(conn, fsp, False); if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) { END_PROFILE(SMBwrite); @@ -3068,8 +3065,7 @@ int reply_write_and_X(connection_struct *conn, char *inbuf,char *outbuf,int leng DEBUG(3,("writeX fnum=%d num=%d wrote=%d\n", fsp->fnum, (int)numtowrite, (int)nwritten)); - if (lp_syncalways(SNUM(conn)) || write_through) - sync_file(conn,fsp); + sync_file(conn, fsp, write_through); END_PROFILE(SMBwriteX); return chain_reply(inbuf,outbuf,length,bufsize); @@ -3166,7 +3162,7 @@ int reply_flush(connection_struct *conn, char *inbuf,char *outbuf, int size, int if (!fsp) { file_sync_all(conn); } else { - sync_file(conn,fsp); + sync_file(conn,fsp, True); } DEBUG(3,("flush\n")); @@ -5433,8 +5429,7 @@ int reply_writebmpx(connection_struct *conn, char *inbuf,char *outbuf, int size, nwritten = write_file(fsp,data,startpos,numtowrite); - if(lp_syncalways(SNUM(conn)) || write_through) - sync_file(conn,fsp); + sync_file(conn, fsp, write_through); if(nwritten < (ssize_t)numtowrite) { END_PROFILE(SMBwriteBmpx); @@ -5546,8 +5541,7 @@ int reply_writebs(connection_struct *conn, char *inbuf,char *outbuf, int dum_siz nwritten = write_file(fsp,data,startpos,numtowrite); - if(lp_syncalways(SNUM(conn)) || write_through) - sync_file(conn,fsp); + sync_file(conn, fsp, write_through); if (nwritten < (ssize_t)numtowrite) { if(write_through) { |