return WERR_NOMEM;
}
- if(!create_junction(ctx, r->in.dfs_entry_path, jn)) {
+ if(!create_junction(ctx, r->in.dfs_entry_path,
+ !smbd_server_conn->using_smb2, jn)) {
return WERR_DFS_NO_SUCH_SERVER;
}
bool create_junction(TALLOC_CTX *ctx,
const char *dfs_path,
+ bool allow_broken_path,
struct junction_map *jucn)
{
int snum;
if (!pdp) {
return False;
}
- status = parse_dfs_path(NULL, dfs_path, False,
- !smbd_server_conn->using_smb2, pdp, &dummy);
+ status = parse_dfs_path(NULL, dfs_path, False, allow_broken_path,
+ pdp, &dummy);
if (!NT_STATUS_IS_OK(status)) {
return False;
}
char **ppdata, NTSTATUS *pstatus);
bool create_junction(TALLOC_CTX *ctx,
const char *dfs_path,
+ bool allow_broken_path,
struct junction_map *jucn);
bool create_msdfs_link(const struct junction_map *jucn);
bool remove_msdfs_link(const struct junction_map *jucn);