From: Sam Hartman Date: Sun, 3 Dec 2000 06:15:50 +0000 (+0000) Subject: This commit was generated by cvs2svn to compensate for changes in r102, X-Git-Tag: debian/1.0.1-1~4 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=2db4e85f959c37fd129199ad02ade9c8da11033f;p=packages%2Fo%2Fopenafs.git This commit was generated by cvs2svn to compensate for changes in r102, which included commits to RCS files with non-trunk default branches. --- diff --git a/src/README b/src/README index e86306cb6..292a85544 100644 --- a/src/README +++ b/src/README @@ -88,6 +88,9 @@ B Building C Problems If you have a problem building this source, you may want to visit - http://oss.software.ibm.com/developerworks/opensource/afs/ to see - if any problems have been reported or to find out how to get more - help. + http://www.openafs.org/ to see if any problems have been reported + or to find out how to get more help. + + Mailing lists have been set up to help; More details can be found + on the openafs.org site. + diff --git a/src/WINNT/client_config/drivemap.cpp b/src/WINNT/client_config/drivemap.cpp index cb623ae91..0fadf3ad5 100644 --- a/src/WINNT/client_config/drivemap.cpp +++ b/src/WINNT/client_config/drivemap.cpp @@ -146,6 +146,30 @@ static BOOL IsWindowsNT (void) } +BOOL IsWindows2000 (void) +{ + static BOOL fChecked = FALSE; + static BOOL fIsWin2K = FALSE; + + if (!fChecked) + { + fChecked = TRUE; + + OSVERSIONINFO Version; + memset (&Version, 0x00, sizeof(Version)); + Version.dwOSVersionInfoSize = sizeof(Version); + + if (GetVersionEx (&Version)) + { + if (Version.dwPlatformId == VER_PLATFORM_WIN32_NT && + Version.dwMajorVersion >= 5) + fIsWin2K = TRUE; + } + } + + return fIsWin2K; +} + /* * GENERAL ____________________________________________________________________ * @@ -704,13 +728,31 @@ BOOL GetDriveSubmount (TCHAR chDrive, LPTSTR pszSubmountNow) // // \Device\LanmanRedirector\Q:\machine-afs\submount // + // on Windows NT. On Windows 2000, it will be: + // + // \Device\LanmanRedirector\;Q:0\machine-afs\submount + // + // (This is presumably to support multiple drive mappings with + // Terminal Server). + // if (lstrncmpi (szMapping, cszLANMANDEVICE, lstrlen(cszLANMANDEVICE))) return FALSE; pszSubmount = &szMapping[ lstrlen(cszLANMANDEVICE) ]; - if (toupper(*pszSubmount) != chDrive) + + if (IsWindows2000()) + if (*(pszSubmount) != TEXT(';')) + return FALSE; + + if (toupper(*(++pszSubmount)) != chDrive) return FALSE; + if (*(++pszSubmount) != TEXT(':')) return FALSE; + + if (IsWindows2000()) + if (*(++pszSubmount) != TEXT('0')) + return FALSE; + if (*(++pszSubmount) != TEXT('\\')) return FALSE; for (++pszSubmount; *pszSubmount && (*pszSubmount != TEXT('\\')); ++pszSubmount)