From 83e22d270ea07cd473bc98a5fb2e7191cb840a40 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Mon, 26 Jun 2006 03:24:14 +0000 Subject: [PATCH 1/1] windows-32bit-tools-client-dir-20060625 Modify afssw_GetClientInstallDir to check both the registry for both the full client installation as well as the 32-bit tools installation for the Client Install Pathname. --- src/WINNT/afsreg/afsreg.h | 12 +++++++++--- src/WINNT/afsreg/afssw.c | 7 ++++++- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/WINNT/afsreg/afsreg.h b/src/WINNT/afsreg/afsreg.h index ef51617..e0bafae 100644 --- a/src/WINNT/afsreg/afsreg.h +++ b/src/WINNT/afsreg/afsreg.h @@ -23,9 +23,8 @@ #define AFSREG_SVR_SW_NAME "AFS Server" #define AFSREG_CLT_SVC_NAME "TransarcAFSDaemon" -#define AFSREG_CLT_SW_NAME "AFS Client" - - +#define AFSREG_CLT_SW_NAME "AFS Client" +#define AFSREG_CLT_TOOLS_SW_NAME "AFS Client 32-Bit Binaries" /* ---- NT system configuration information ---- */ @@ -123,6 +122,13 @@ #define AFSREG_CLT_SW_VERSION_KEY AFSREG_CLT_SW_KEY "\\CurrentVersion" #define AFSREG_CLT_SW_VERSION_SUBKEY AFSREG_CLT_SW_SUBKEY "\\CurrentVersion" +#define AFSREG_CLT_TOOLS_SW_SUBKEY \ + "Software\\TransarcCorporation\\" AFSREG_CLT_TOOLS_SW_NAME +#define AFSREG_CLT_TOOLS_SW_KEY "HKEY_LOCAL_MACHINE\\" AFSREG_CLT_TOOLS_SW_SUBKEY + +#define AFSREG_CLT_TOOLS_SW_VERSION_KEY AFSREG_CLT_TOOLS_SW_KEY "\\CurrentVersion" +#define AFSREG_CLT_TOOLS_SW_VERSION_SUBKEY AFSREG_CLT_TOOLS_SW_SUBKEY "\\CurrentVersion" + /* AFSREG_CLT_SW_VERSION_KEY values */ #define AFSREG_CLT_SW_VERSION_DIR_VALUE "PathName" #define AFSREG_CLT_SW_VERSION_MAJOR_VALUE "MajorVersion" diff --git a/src/WINNT/afsreg/afssw.c b/src/WINNT/afsreg/afssw.c index 3bd5bf1..c6aa2fe 100644 --- a/src/WINNT/afsreg/afssw.c +++ b/src/WINNT/afsreg/afssw.c @@ -58,9 +58,14 @@ afssw_GetServerInstallDir(char **bufPP) /* [out] data buffer */ int afssw_GetClientInstallDir(char **bufPP) /* [out] data buffer */ { - return StringDataRead(AFSREG_CLT_SW_VERSION_KEY, + int retval = StringDataRead(AFSREG_CLT_SW_VERSION_KEY, AFSREG_CLT_SW_VERSION_DIR_VALUE, bufPP); + if (retval) + retval = StringDataRead(AFSREG_CLT_TOOLS_SW_VERSION_KEY, + AFSREG_CLT_SW_VERSION_DIR_VALUE, + bufPP); + return retval; } /* -- 1.9.4