From 3ebb6be00d88aeb27cfe7d2cc931b14d4993a94b Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 2 Apr 2008 11:23:36 -0700 Subject: Fix MSDFS bug noticed by Ofir Azoulay . There is no reason to ensure the target host is ourselves, and this breaks MS clients in some cases. Jeremy. (This used to be commit c19fdf43d16ce9fba3e8e12e6192bac31837715e) --- source3/smbd/msdfs.c | 30 ------------------------------ 1 file changed, 30 deletions(-) (limited to 'source3/smbd/msdfs.c') diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c index 8ffa0f7751..fb757a5f74 100644 --- a/source3/smbd/msdfs.c +++ b/source3/smbd/msdfs.c @@ -127,28 +127,6 @@ static NTSTATUS parse_dfs_path(const char *pathname, DEBUG(10,("parse_dfs_path: hostname: %s\n",pdp->hostname)); - /* If we got a hostname, is it ours (or an IP address) ? */ - if (!is_myname_or_ipaddr(pdp->hostname)) { - /* Repair path. */ - *p = sepchar; - DEBUG(10,("parse_dfs_path: hostname %s isn't ours. " - "Try local path from path %s\n", - pdp->hostname, temp)); - /* - * Possibly client sent a local path by mistake. - * Try and convert to a local path. - */ - - pdp->hostname = eos_ptr; /* "" */ - pdp->servicename = eos_ptr; /* "" */ - - p = temp; - DEBUG(10,("parse_dfs_path: trying to convert %s " - "to a local path\n", - temp)); - goto local_path; - } - /* Parse out servicename. */ temp = p+1; p = strchr_m(temp,sepchar); @@ -751,14 +729,6 @@ NTSTATUS get_referred_path(TALLOC_CTX *ctx, return status; } - /* Verify hostname in path */ - if (!is_myname_or_ipaddr(pdp->hostname)) { - DEBUG(3, ("get_referred_path: Invalid hostname %s in path %s\n", - pdp->hostname, dfs_path)); - TALLOC_FREE(pdp); - return NT_STATUS_NOT_FOUND; - } - jucn->service_name = talloc_strdup(ctx, pdp->servicename); jucn->volume_name = talloc_strdup(ctx, pdp->reqpath); if (!jucn->service_name || !jucn->volume_name) { -- cgit