1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-13 13:18:06 +03:00

vfs_full_audit: pass conn to smb_fname_str_do_log()

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
Ralph Boehme 2019-08-15 14:43:07 +02:00 committed by Jeremy Allison
parent c9b38eb79c
commit b535f78897

View File

@ -658,7 +658,7 @@ static void do_log(vfs_op_type op, bool success, vfs_handle_struct *handle,
/** /**
* Return a string using the do_log_ctx() * Return a string using the do_log_ctx()
*/ */
static const char *smb_fname_str_do_log(const struct smb_filename *cwd, static const char *smb_fname_str_do_log(struct connection_struct *conn,
const struct smb_filename *smb_fname) const struct smb_filename *smb_fname)
{ {
char *fname = NULL; char *fname = NULL;
@ -680,11 +680,11 @@ static const char *smb_fname_str_do_log(const struct smb_filename *cwd,
if (!ISDOT(smb_fname->base_name)) { if (!ISDOT(smb_fname->base_name)) {
abs_name = talloc_asprintf(do_log_ctx(), abs_name = talloc_asprintf(do_log_ctx(),
"%s/%s", "%s/%s",
cwd->base_name, conn->cwd_fname->base_name,
smb_fname->base_name); smb_fname->base_name);
} else { } else {
abs_name = talloc_strdup(do_log_ctx(), abs_name = talloc_strdup(do_log_ctx(),
cwd->base_name); conn->cwd_fname->base_name);
} }
if (abs_name == NULL) { if (abs_name == NULL) {
return ""; return "";
@ -705,7 +705,7 @@ static const char *smb_fname_str_do_log(const struct smb_filename *cwd,
*/ */
static const char *fsp_str_do_log(const struct files_struct *fsp) static const char *fsp_str_do_log(const struct files_struct *fsp)
{ {
return smb_fname_str_do_log(fsp->conn->cwd_fname, fsp->fsp_name); return smb_fname_str_do_log(fsp->conn, fsp->fsp_name);
} }
/* Implementation of vfs_ops. Pass everything on to the default /* Implementation of vfs_ops. Pass everything on to the default
@ -1044,7 +1044,7 @@ static int smb_full_audit_open(vfs_handle_struct *handle,
do_log(SMB_VFS_OP_OPEN, (result >= 0), handle, "%s|%s", do_log(SMB_VFS_OP_OPEN, (result >= 0), handle, "%s|%s",
((flags & O_WRONLY) || (flags & O_RDWR))?"w":"r", ((flags & O_WRONLY) || (flags & O_RDWR))?"w":"r",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -1119,7 +1119,7 @@ static NTSTATUS smb_full_audit_create_file(vfs_handle_struct *handle,
"0x%x|%s|%s|%s", access_mask, "0x%x|%s|%s|%s", access_mask,
create_options & FILE_DIRECTORY_FILE ? "dir" : "file", create_options & FILE_DIRECTORY_FILE ? "dir" : "file",
str_create_disposition, str_create_disposition,
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -1358,8 +1358,8 @@ static int smb_full_audit_rename(vfs_handle_struct *handle,
result = SMB_VFS_NEXT_RENAME(handle, smb_fname_src, smb_fname_dst); result = SMB_VFS_NEXT_RENAME(handle, smb_fname_src, smb_fname_dst);
do_log(SMB_VFS_OP_RENAME, (result >= 0), handle, "%s|%s", do_log(SMB_VFS_OP_RENAME, (result >= 0), handle, "%s|%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname_src), smb_fname_str_do_log(handle->conn, smb_fname_src),
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname_dst)); smb_fname_str_do_log(handle->conn, smb_fname_dst));
return result; return result;
} }
@ -1441,7 +1441,7 @@ static int smb_full_audit_stat(vfs_handle_struct *handle,
result = SMB_VFS_NEXT_STAT(handle, smb_fname); result = SMB_VFS_NEXT_STAT(handle, smb_fname);
do_log(SMB_VFS_OP_STAT, (result >= 0), handle, "%s", do_log(SMB_VFS_OP_STAT, (result >= 0), handle, "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -1467,7 +1467,7 @@ static int smb_full_audit_lstat(vfs_handle_struct *handle,
result = SMB_VFS_NEXT_LSTAT(handle, smb_fname); result = SMB_VFS_NEXT_LSTAT(handle, smb_fname);
do_log(SMB_VFS_OP_LSTAT, (result >= 0), handle, "%s", do_log(SMB_VFS_OP_LSTAT, (result >= 0), handle, "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -1493,7 +1493,7 @@ static int smb_full_audit_unlink(vfs_handle_struct *handle,
result = SMB_VFS_NEXT_UNLINK(handle, smb_fname); result = SMB_VFS_NEXT_UNLINK(handle, smb_fname);
do_log(SMB_VFS_OP_UNLINK, (result >= 0), handle, "%s", do_log(SMB_VFS_OP_UNLINK, (result >= 0), handle, "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -1629,7 +1629,7 @@ static int smb_full_audit_ntimes(vfs_handle_struct *handle,
(result >= 0), (result >= 0),
handle, handle,
"%s|%s|%s|%s|%s", "%s|%s|%s|%s|%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname), smb_fname_str_do_log(handle->conn, smb_fname),
create_time_str, create_time_str,
atime_str, atime_str,
mtime_str, mtime_str,
@ -2065,7 +2065,7 @@ static NTSTATUS smb_full_audit_get_compression(vfs_handle_struct *handle,
do_log(SMB_VFS_OP_GET_COMPRESSION, NT_STATUS_IS_OK(result), handle, do_log(SMB_VFS_OP_GET_COMPRESSION, NT_STATUS_IS_OK(result), handle,
"%s", "%s",
(fsp ? fsp_str_do_log(fsp) : (fsp ? fsp_str_do_log(fsp) :
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname))); smb_fname_str_do_log(handle->conn, smb_fname)));
return result; return result;
} }
@ -2096,7 +2096,7 @@ static NTSTATUS smb_full_audit_readdir_attr(struct vfs_handle_struct *handle,
status = SMB_VFS_NEXT_READDIR_ATTR(handle, fname, mem_ctx, pattr_data); status = SMB_VFS_NEXT_READDIR_ATTR(handle, fname, mem_ctx, pattr_data);
do_log(SMB_VFS_OP_READDIR_ATTR, NT_STATUS_IS_OK(status), handle, "%s", do_log(SMB_VFS_OP_READDIR_ATTR, NT_STATUS_IS_OK(status), handle, "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, fname)); smb_fname_str_do_log(handle->conn, fname));
return status; return status;
} }
@ -2116,7 +2116,7 @@ static NTSTATUS smb_full_audit_get_dos_attributes(
NT_STATUS_IS_OK(status), NT_STATUS_IS_OK(status),
handle, handle,
"%s", "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return status; return status;
} }
@ -2277,7 +2277,7 @@ static NTSTATUS smb_full_audit_set_dos_attributes(
NT_STATUS_IS_OK(status), NT_STATUS_IS_OK(status),
handle, handle,
"%s", "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); smb_fname_str_do_log(handle->conn, smb_fname));
return status; return status;
} }
@ -2330,7 +2330,7 @@ static NTSTATUS smb_full_audit_get_nt_acl(vfs_handle_struct *handle,
mem_ctx, ppdesc); mem_ctx, ppdesc);
do_log(SMB_VFS_OP_GET_NT_ACL, NT_STATUS_IS_OK(result), handle, do_log(SMB_VFS_OP_GET_NT_ACL, NT_STATUS_IS_OK(result), handle,
"%s", smb_fname_str_do_log(handle->conn->cwd_fname, smb_fname)); "%s", smb_fname_str_do_log(handle->conn, smb_fname));
return result; return result;
} }
@ -2377,7 +2377,7 @@ static NTSTATUS smb_full_audit_audit_file(struct vfs_handle_struct *handle,
do_log(SMB_VFS_OP_AUDIT_FILE, NT_STATUS_IS_OK(result), handle, do_log(SMB_VFS_OP_AUDIT_FILE, NT_STATUS_IS_OK(result), handle,
"%s", "%s",
smb_fname_str_do_log(handle->conn->cwd_fname, file)); smb_fname_str_do_log(handle->conn, file));
return result; return result;
} }