mirror of
https://github.com/samba-team/samba.git
synced 2025-02-04 17:47:26 +03:00
Ensure we return disk full by default on short writes.
Jeremy. (This used to be commit 2a974bc284b9d193c24972d073b966eb9b3b3ad0)
This commit is contained in:
parent
38aee23f80
commit
a2cce2f075
@ -2011,7 +2011,7 @@ int reply_writeunlock(connection_struct *conn, char *inbuf,char *outbuf,
|
||||
|
||||
if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) {
|
||||
END_PROFILE(SMBwriteunlock);
|
||||
return(UNIXERROR(ERRDOS,ERRnoaccess));
|
||||
return(UNIXERROR(ERRHRD,ERRdiskfull));
|
||||
}
|
||||
|
||||
status = do_unlock(fsp, conn, SVAL(inbuf,smb_pid), (SMB_BIG_UINT)numtowrite,
|
||||
@ -2092,7 +2092,7 @@ int reply_write(connection_struct *conn, char *inbuf,char *outbuf,int size,int d
|
||||
|
||||
if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) {
|
||||
END_PROFILE(SMBwrite);
|
||||
return(UNIXERROR(ERRDOS,ERRnoaccess));
|
||||
return(UNIXERROR(ERRHRD,ERRdiskfull));
|
||||
}
|
||||
|
||||
outsize = set_message(outbuf,1,0,True);
|
||||
@ -2187,7 +2187,7 @@ int reply_write_and_X(connection_struct *conn, char *inbuf,char *outbuf,int leng
|
||||
|
||||
if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) {
|
||||
END_PROFILE(SMBwriteX);
|
||||
return(UNIXERROR(ERRDOS,ERRnoaccess));
|
||||
return(UNIXERROR(ERRHRD,ERRdiskfull));
|
||||
}
|
||||
|
||||
set_message(outbuf,6,0,True);
|
||||
@ -2465,9 +2465,9 @@ int reply_writeclose(connection_struct *conn,
|
||||
fsp->fnum, (int)numtowrite, (int)nwritten,
|
||||
conn->num_files_open));
|
||||
|
||||
if (nwritten <= 0) {
|
||||
if(((nwritten == 0) && (numtowrite != 0))||(nwritten < 0)) {
|
||||
END_PROFILE(SMBwriteclose);
|
||||
return(UNIXERROR(ERRDOS,ERRnoaccess));
|
||||
return(UNIXERROR(ERRHRD,ERRdiskfull));
|
||||
}
|
||||
|
||||
if(close_err != 0) {
|
||||
@ -2791,7 +2791,7 @@ int reply_printwrite(connection_struct *conn, char *inbuf,char *outbuf, int dum_
|
||||
|
||||
if (write_file(fsp,data,-1,numtowrite) != numtowrite) {
|
||||
END_PROFILE(SMBsplwr);
|
||||
return(UNIXERROR(ERRDOS,ERRnoaccess));
|
||||
return(UNIXERROR(ERRHRD,ERRdiskfull));
|
||||
}
|
||||
|
||||
DEBUG( 3, ( "printwrite fnum=%d num=%d\n", fsp->fnum, numtowrite ) );
|
||||
|
Loading…
x
Reference in New Issue
Block a user