winnt-enable-global-drive-mappings-20030701

FIXES 1614

This will allow access to AFS from system processes and scheduled tasks.
It also means that each user does not have to map AFS to his own
drive.
This commit is contained in:
Douglas Engert 2003-07-01 20:43:08 +00:00 committed by Derrick Brashear
parent f661ad4e58
commit 4bda27a286

View File

@ -138,9 +138,10 @@ doneTrace:
}
}
#if 0
#if 1
/* This code was moved to Drivemap.cpp*/
/* Mount a drive into AFS if the user wants us to */
/* DEE Could check first if we are run as SYSTEM */
void CheckMountDrive()
{
char szAfsPath[_MAX_PATH];
@ -172,9 +173,27 @@ void CheckMountDrive()
}
}
#if 0
sprintf(szAfsPath, "\\Device\\LanmanRedirector\\%s\\%s-AFS\\%s", szDriveToMapTo, cm_HostName, szSubMount);
dwResult = DefineDosDevice(DDD_RAW_TARGET_PATH, szDriveToMapTo, szAfsPath);
#else
{
NETRESOURCE nr;
memset (&nr, 0x00, sizeof(NETRESOURCE));
sprintf(szAfsPath,"\\\\%s-AFS\\%s",cm_HostName,szSubMount);
nr.dwScope = RESOURCE_GLOBALNET;
nr.dwType=RESOURCETYPE_DISK;
nr.lpLocalName=szDriveToMapTo;
nr.lpRemoteName=szAfsPath;
nr.dwDisplayType = RESOURCEDISPLAYTYPE_SHARE;
nr.dwUsage = RESOURCEUSAGE_CONNECTABLE;
dwResult = WNetAddConnection2(&nr,NULL,NULL,FALSE);
}
#endif
afsi_log("GlobalAutoMap of %s to %s %s", szDriveToMapTo, szSubMount, dwResult ? "succeeded" : "failed");
}
@ -252,7 +271,7 @@ void afsd_Main()
}
/* Check if we should mount a drive into AFS */
/* CheckMountDrive();*/
CheckMountDrive();
WaitForSingleObject(WaitToTerminate, INFINITE);