1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

Change fd_close_posix() to return int instead of NTSTATUS.

The errno is handed up through the VFS layer to the callers.

Michael
This commit is contained in:
Michael Adam 2008-01-11 13:28:28 +01:00
parent df264bf3e0
commit d928e6648d
2 changed files with 6 additions and 15 deletions

View File

@ -607,7 +607,7 @@ static size_t get_posix_pending_close_entries(TALLOC_CTX *mem_ctx,
to delete all locks on this fsp before this function is called.
****************************************************************************/
NTSTATUS fd_close_posix(struct files_struct *fsp)
int fd_close_posix(struct files_struct *fsp)
{
int saved_errno = 0;
int ret;
@ -620,11 +620,7 @@ NTSTATUS fd_close_posix(struct files_struct *fsp)
* which will lose all locks on all fd's open on this dev/inode,
* just close.
*/
ret = close(fsp->fh->fd);
if (ret == -1) {
return map_nt_error_from_unix(errno);
}
return NT_STATUS_OK;
return close(fsp->fh->fd);
}
if (get_windows_lock_ref_count(fsp)) {
@ -635,7 +631,7 @@ NTSTATUS fd_close_posix(struct files_struct *fsp)
*/
add_fd_to_close_entry(fsp);
return NT_STATUS_OK;
return 0;
}
/*
@ -678,11 +674,7 @@ NTSTATUS fd_close_posix(struct files_struct *fsp)
ret = -1;
}
if (ret == -1) {
return map_nt_error_from_unix(errno);
}
return NT_STATUS_OK;
return ret;
}
/****************************************************************************

View File

@ -210,13 +210,12 @@ static int vfswrap_open(vfs_handle_struct *handle, const char *fname,
static int vfswrap_close(vfs_handle_struct *handle, files_struct *fsp, int fd)
{
NTSTATUS result;
int result;
START_PROFILE(syscall_close);
result = fd_close_posix(fsp);
END_PROFILE(syscall_close);
return NT_STATUS_IS_OK(result) ? 0 : -1;
return result;
}
static ssize_t vfswrap_read(vfs_handle_struct *handle, files_struct *fsp, void *data, size_t n)