SMB_VFS_OP_TELLDIR,
SMB_VFS_OP_REWINDDIR,
SMB_VFS_OP_MKDIR,
+ SMB_VFS_OP_MKDIRAT,
SMB_VFS_OP_RMDIR,
SMB_VFS_OP_CLOSEDIR,
{ SMB_VFS_OP_TELLDIR, "telldir" },
{ SMB_VFS_OP_REWINDDIR, "rewinddir" },
{ SMB_VFS_OP_MKDIR, "mkdir" },
+ { SMB_VFS_OP_MKDIRAT, "mkdirat" },
{ SMB_VFS_OP_RMDIR, "rmdir" },
{ SMB_VFS_OP_CLOSEDIR, "closedir" },
{ SMB_VFS_OP_OPEN, "open" },
return result;
}
+static int smb_full_audit_mkdirat(vfs_handle_struct *handle,
+ struct files_struct *dirfsp,
+ const struct smb_filename *smb_fname,
+ mode_t mode)
+{
+ int result;
+
+ result = SMB_VFS_NEXT_MKDIRAT(handle,
+ dirfsp,
+ smb_fname,
+ mode);
+
+ do_log(SMB_VFS_OP_MKDIRAT, (result >= 0), handle, "%s",
+ smb_fname->base_name);
+
+ return result;
+}
+
static int smb_full_audit_rmdir(vfs_handle_struct *handle,
const struct smb_filename *smb_fname)
{
.telldir_fn = smb_full_audit_telldir,
.rewind_dir_fn = smb_full_audit_rewinddir,
.mkdir_fn = smb_full_audit_mkdir,
+ .mkdirat_fn = smb_full_audit_mkdirat,
.rmdir_fn = smb_full_audit_rmdir,
.closedir_fn = smb_full_audit_closedir,
.open_fn = smb_full_audit_open,