From: Ralph Boehme Date: Fri, 13 Dec 2019 15:25:44 +0000 (+0100) Subject: s3: pass session_info to remove_msdfs_link() X-Git-Tag: ldb-2.1.0~185 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e12a724f0ddf0280b43cbd8107d34fe316585795;p=thirdparty%2Fsamba.git s3: pass session_info to remove_msdfs_link() Signed-off-by: Ralph Boehme Reviewed-by: Stefan Metzmacher --- diff --git a/source3/rpc_server/dfs/srv_dfs_nt.c b/source3/rpc_server/dfs/srv_dfs_nt.c index 878148d803b..d7005081cfa 100644 --- a/source3/rpc_server/dfs/srv_dfs_nt.c +++ b/source3/rpc_server/dfs/srv_dfs_nt.c @@ -162,7 +162,7 @@ WERROR _dfs_Remove(struct pipes_struct *p, struct dfs_Remove *r) /* if no server-share pair given, remove the msdfs link completely */ if(!r->in.servername && !r->in.sharename) { - if(!remove_msdfs_link(jn)) { + if(!remove_msdfs_link(jn, p->session_info)) { return WERR_NERR_DFSNOSUCHVOLUME; } } else { @@ -193,7 +193,7 @@ WERROR _dfs_Remove(struct pipes_struct *p, struct dfs_Remove *r) /* Only one referral, remove it */ if(jn->referral_count == 1) { - if(!remove_msdfs_link(jn)) { + if(!remove_msdfs_link(jn, p->session_info)) { return WERR_NERR_DFSNOSUCHVOLUME; } } else { diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c index 3ac9740873f..5d2c1dc59b9 100644 --- a/source3/smbd/msdfs.c +++ b/source3/smbd/msdfs.c @@ -1496,7 +1496,8 @@ out: return ret; } -bool remove_msdfs_link(const struct junction_map *jucn) +bool remove_msdfs_link(const struct junction_map *jucn, + struct auth_session_info *session_info) { TALLOC_CTX *frame = talloc_stackframe(); char *path = NULL; diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h index d40ccd4af8a..e94587442b6 100644 --- a/source3/smbd/proto.h +++ b/source3/smbd/proto.h @@ -493,7 +493,9 @@ char *msdfs_link_string(TALLOC_CTX *ctx, size_t referral_count); bool create_msdfs_link(const struct junction_map *jucn, struct auth_session_info *session_info); -bool remove_msdfs_link(const struct junction_map *jucn); +bool remove_msdfs_link(const struct junction_map *jucn, + struct auth_session_info *session_info); + struct junction_map *enum_msdfs_links(TALLOC_CTX *ctx, size_t *p_num_jn); NTSTATUS resolve_dfspath_wcard(TALLOC_CTX *ctx, connection_struct *conn,