mirror of
https://github.com/samba-team/samba.git
synced 2025-03-27 22:50:26 +03:00
s3: VFS: Change the function signature for SMB_VFS_READ_DFS_PATHAT() to take a non-const smb_filename.
Otherwise there's no good way to return proper stat(2) information for a DFS link without making assumptions it's a symlink store. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14391 Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
This commit is contained in:
parent
2a4705129d
commit
65b8c0cfbe
@ -115,7 +115,7 @@ static NTSTATUS skel_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS skel_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -116,7 +116,7 @@ static NTSTATUS skel_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS skel_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -324,6 +324,9 @@
|
||||
* Version 43 - Add dirfsp args to SMB_VFS_CREATE_FILE()
|
||||
* Version 43 - Add SMB_VFS_OPENAT()
|
||||
* Version 43 - Remove SMB_VFS_OPEN()
|
||||
* Version 43 - SMB_VFS_READ_DFS_PATHAT() should take a non-const name.
|
||||
There's no easy way to return stat info for a DFS link
|
||||
otherwise.
|
||||
*/
|
||||
|
||||
#define SMB_VFS_INTERFACE_VERSION 43
|
||||
@ -741,7 +744,7 @@ struct vfs_fn_pointers {
|
||||
NTSTATUS (*read_dfs_pathat_fn)(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count);
|
||||
|
||||
@ -1255,7 +1258,7 @@ NTSTATUS smb_vfs_call_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
NTSTATUS smb_vfs_call_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count);
|
||||
DIR *smb_vfs_call_fdopendir(struct vfs_handle_struct *handle,
|
||||
@ -1705,7 +1708,7 @@ NTSTATUS vfs_not_implemented_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
NTSTATUS vfs_not_implemented_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count);
|
||||
NTSTATUS vfs_not_implemented_snap_check_path(struct vfs_handle_struct *handle,
|
||||
|
@ -1042,7 +1042,7 @@ static NTSTATUS cap_create_dfs_pathat(vfs_handle_struct *handle,
|
||||
static NTSTATUS cap_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -2417,7 +2417,7 @@ static NTSTATUS catia_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS catia_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -1340,7 +1340,7 @@ static NTSTATUS cephwrap_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS cephwrap_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -420,7 +420,7 @@ static NTSTATUS vfswrap_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS vfswrap_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -921,7 +921,7 @@ static NTSTATUS smb_full_audit_create_dfs_pathat(struct vfs_handle_struct *handl
|
||||
static NTSTATUS smb_full_audit_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -1941,7 +1941,7 @@ static NTSTATUS vfs_gluster_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS vfs_gluster_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -109,7 +109,7 @@ NTSTATUS vfs_not_implemented_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
NTSTATUS vfs_not_implemented_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -2394,7 +2394,7 @@ static NTSTATUS shadow_copy2_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
static NTSTATUS shadow_copy2_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -352,7 +352,7 @@ static NTSTATUS smb_time_audit_create_dfs_pathat(struct vfs_handle_struct *handl
|
||||
static NTSTATUS smb_time_audit_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
@ -1677,7 +1677,7 @@ NTSTATUS smb_vfs_call_create_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
NTSTATUS smb_vfs_call_read_dfs_pathat(struct vfs_handle_struct *handle,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
struct smb_filename *smb_fname,
|
||||
struct referral **ppreflist,
|
||||
size_t *preferral_count)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user