mirror of
https://github.com/samba-team/samba.git
synced 2025-08-04 08:22:08 +03:00
Fix to correctly return NT_STATUS_DELETE_PENDING.
Jeremy.
(This used to be commit 4ec381d642
)
This commit is contained in:
@ -23,6 +23,7 @@
|
|||||||
/* these can be set by some functions to override the error codes */
|
/* these can be set by some functions to override the error codes */
|
||||||
int unix_ERR_class=SMB_SUCCESS;
|
int unix_ERR_class=SMB_SUCCESS;
|
||||||
int unix_ERR_code=0;
|
int unix_ERR_code=0;
|
||||||
|
NTSTATUS unix_ERR_ntstatus = NT_STATUS_OK;
|
||||||
|
|
||||||
/* From lib/error.c */
|
/* From lib/error.c */
|
||||||
extern struct unix_error_map unix_dos_nt_errmap[];
|
extern struct unix_error_map unix_dos_nt_errmap[];
|
||||||
@ -59,8 +60,10 @@ int unix_error_packet(char *outbuf,int def_class,uint32 def_code,
|
|||||||
if (unix_ERR_class != SMB_SUCCESS) {
|
if (unix_ERR_class != SMB_SUCCESS) {
|
||||||
eclass = unix_ERR_class;
|
eclass = unix_ERR_class;
|
||||||
ecode = unix_ERR_code;
|
ecode = unix_ERR_code;
|
||||||
|
ntstatus = unix_ERR_ntstatus;
|
||||||
unix_ERR_class = SMB_SUCCESS;
|
unix_ERR_class = SMB_SUCCESS;
|
||||||
unix_ERR_code = 0;
|
unix_ERR_code = 0;
|
||||||
|
unix_ERR_ntstatus = NT_STATUS_OK;
|
||||||
} else {
|
} else {
|
||||||
while (unix_dos_nt_errmap[i].dos_class != 0) {
|
while (unix_dos_nt_errmap[i].dos_class != 0) {
|
||||||
if (unix_dos_nt_errmap[i].unix_error == errno) {
|
if (unix_dos_nt_errmap[i].unix_error == errno) {
|
||||||
|
@ -401,6 +401,7 @@ static BOOL check_share_mode(connection_struct *conn, share_mode_entry *share, i
|
|||||||
fname ));
|
fname ));
|
||||||
unix_ERR_class = ERRDOS;
|
unix_ERR_class = ERRDOS;
|
||||||
unix_ERR_code = ERRnoaccess;
|
unix_ERR_code = ERRnoaccess;
|
||||||
|
unix_ERR_ntstatus = NT_STATUS_DELETE_PENDING;
|
||||||
return False;
|
return False;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user