From 7a32febee6ac0d5ac2630b597ca7c9f3b8e452e6 Mon Sep 17 00:00:00 2001 From: James Peterson Date: Wed, 4 Dec 2002 14:20:44 +0000 Subject: [PATCH] STABLE12-windows-build-cleanup-20021204 makefile changes. initialize variables to NULL before use clean up CellServDB parsing make sure files do not get timestamp of -1 (1969) update product version --- src/WINNT/afsapplib/NTMakefile | 4 - src/WINNT/afsd/cm_config.c | 10 +- src/WINNT/afsd/cm_conn.c | 6 +- src/WINNT/afsd/smb3.c | 7 +- src/WINNT/client_config/NTMakefile | 4 - src/WINNT/client_creds/NTMakefile | 2 +- src/WINNT/client_creds/shortcut.cpp | 1 + src/WINNT/eventlog/lang/NTMakefile | 2 +- src/WINNT/install/InstallShield5/NTMakefile | 3 +- src/config/NTMakefile.i386_nt40 | 63 ++++++------ src/config/NTMakefile.i386_win95 | 15 --- src/config/util_cr.c | 103 +++++++++++++++++++- src/libafsrpc/NTMakefile | 3 +- src/rxkad/NTMakefile | 2 + 14 files changed, 154 insertions(+), 71 deletions(-) diff --git a/src/WINNT/afsapplib/NTMakefile b/src/WINNT/afsapplib/NTMakefile index c19d74065..44ef0a61f 100644 --- a/src/WINNT/afsapplib/NTMakefile +++ b/src/WINNT/afsapplib/NTMakefile @@ -5,10 +5,6 @@ # License. For details, see the LICENSE file in the top-level source # directory or online at http://www.openafs.org/dl/license10.html -# make compiler warnings fatal - -AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -WX - # indicate that the functions in this library should be exported AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -DEXPORT_AFSAPPLIB -DEXPORTED=_declspec(dllexport) diff --git a/src/WINNT/afsd/cm_config.c b/src/WINNT/afsd/cm_config.c index f09e9fcc6..2501ff85a 100644 --- a/src/WINNT/afsd/cm_config.c +++ b/src/WINNT/afsd/cm_config.c @@ -241,8 +241,14 @@ long cm_SearchCellFile(char *cellNamep, char *newCellNamep, return -4; } valuep++; /* skip the "#" */ - - valuep += strspn(valuep, " "); /* skip SP & TAB */ + valuep += strspn(valuep, " \t"); /* skip SP & TAB */ + /* strip spaces and tabs in the end. They should not be there according to CellServDB format + so do this just in case */ + while (valuep[strlen(valuep) - 1] == ' ' || valuep[strlen(valuep) - 1] == '\t') valuep[strlen(valuep) - 1] = '\0'; + + /* strip spaces and tabs in the end. They should not be there according to CellServDB format + so do this just in case */ + while (valuep[strlen(valuep) - 1] == ' ' || valuep[strlen(valuep) - 1] == '\t') valuep[strlen(valuep) - 1] = '\0'; #endif /* !DJGPP */ if (inRightCell) { #if !defined(DJGPP) && !defined(AFS_WIN95_ENV) diff --git a/src/WINNT/afsd/cm_conn.c b/src/WINNT/afsd/cm_conn.c index 0f7406032..3b326022e 100644 --- a/src/WINNT/afsd/cm_conn.c +++ b/src/WINNT/afsd/cm_conn.c @@ -63,9 +63,9 @@ long cm_GetServerList(struct cm_fid *fidp, struct cm_user *userp, struct cm_req *reqp, cm_serverRef_t **serverspp) { long code; - cm_volume_t *volp; - cm_serverRef_t *serversp; - cm_cell_t *cellp; + cm_volume_t *volp = NULL; + cm_serverRef_t *serversp = NULL; + cm_cell_t *cellp = NULL; if (!fidp) { *serverspp = NULL; diff --git a/src/WINNT/afsd/smb3.c b/src/WINNT/afsd/smb3.c index ef4e7e2b8..0fa49bc84 100644 --- a/src/WINNT/afsd/smb3.c +++ b/src/WINNT/afsd/smb3.c @@ -1448,7 +1448,10 @@ long smb_ReceiveTran2SetFileInfo(smb_vc_t *vcp, smb_tran2Packet_t *p, smb_packet /* prepare for setattr call */ attr.mask = 0; lastMod = *((FILETIME *)(p->datap + 16)); - if (LargeIntegerNotEqualToZero(*((LARGE_INTEGER *)&lastMod))) { + /* when called as result of move a b, lastMod is (-1, -1). If the check for -1 is not present, timestamp + of the resulting file will be 1969 (-1) + */ + if (LargeIntegerNotEqualToZero(*((LARGE_INTEGER *)&lastMod)) && lastMod.dwLowDateTime != -1 && lastMod.dwHighDateTime != -1) { attr.mask |= CM_ATTRMASK_CLIENTMODTIME; smb_UnixTimeFromLargeSearchTime(&attr.clientModTime, &lastMod); @@ -4064,7 +4067,7 @@ long smb_ReceiveNTCancel(smb_vc_t *vcp, smb_packet_t *inp, smb_packet_t *outp) osi_Log3(afsd_logp, "Cancelling change notification for fid %d wtree %d file %s", fid, watchtree, - osi_LogSaveString(afsd_logp, fidp->NTopen_wholepathp)); + osi_LogSaveString(afsd_logp, (fidp)?fidp->NTopen_wholepathp:"")); scp = fidp->scp; lock_ObtainMutex(&scp->mx); diff --git a/src/WINNT/client_config/NTMakefile b/src/WINNT/client_config/NTMakefile index fc20442dd..0d1d17610 100644 --- a/src/WINNT/client_config/NTMakefile +++ b/src/WINNT/client_config/NTMakefile @@ -5,10 +5,6 @@ # License. For details, see the LICENSE file in the top-level source # directory or online at http://www.openafs.org/dl/license10.html -# make compiler warnings fatal - -AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -WX - # include the AFSD source tree on our inclusion path AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -I ..\afsd diff --git a/src/WINNT/client_creds/NTMakefile b/src/WINNT/client_creds/NTMakefile index cd4d6a2d5..85f9736b2 100644 --- a/src/WINNT/client_creds/NTMakefile +++ b/src/WINNT/client_creds/NTMakefile @@ -100,7 +100,7 @@ COPYSOURCES = \ ############################################################################ $(EXEFILE) : $(EXEOBJS) $(EXELIBS) - $(EXEGUILINK) $(VCLIBS) + $(EXEMFCLINK) $(VCLIBS) $(EXEPREP) install : $(COPYSOURCES) $(COPYHEADERS) $(EXEFILE) lang diff --git a/src/WINNT/client_creds/shortcut.cpp b/src/WINNT/client_creds/shortcut.cpp index ee66dd9a6..b6c4adef7 100644 --- a/src/WINNT/client_creds/shortcut.cpp +++ b/src/WINNT/client_creds/shortcut.cpp @@ -16,6 +16,7 @@ extern "C" { #include #include #include +#undef INITGUID #include #include #include "shortcut.h" diff --git a/src/WINNT/eventlog/lang/NTMakefile b/src/WINNT/eventlog/lang/NTMakefile index 7c8894c3f..6b176a86b 100644 --- a/src/WINNT/eventlog/lang/NTMakefile +++ b/src/WINNT/eventlog/lang/NTMakefile @@ -40,7 +40,7 @@ EVENTRESFILE = $(LANGNAME)\event.res DLLOBJS = $(DLLRESFILE) $(DLLFILE): $(DLLOBJS) - $(DLLCONLINK) + $(DLLRESLINK) $(DLLPREP) ############################################################################ diff --git a/src/WINNT/install/InstallShield5/NTMakefile b/src/WINNT/install/InstallShield5/NTMakefile index 5577a96b4..91a960b7d 100644 --- a/src/WINNT/install/InstallShield5/NTMakefile +++ b/src/WINNT/install/InstallShield5/NTMakefile @@ -62,8 +62,7 @@ build: $(DEL) /q $(DESTDIR)\Wininstall\PackageWeb\*.* $(ISWEB)\Pftwwiz.exe $(AFSROOT)\src\winnt\install\InstallShield5\PackageWeb.pfw -s -a !ENDIF - xcopy /s/e/y "Media\OpenAFS\Disk Images\disk1\*.*" $(DESTDIR)\WinInstall + $(DESTDIR)\bin\util_cr.exe # xp w2 # xcopy /s/e/y /s/e Media\OpenAFS\DiskIm~1\disk1\*.* $(DESTDIR)\WinInstall copy AFS_component_version_number.txt $(DESTDIR)\WinInstall\Version.txt $(DEL) /q "Media\OpenAFS\Disk Images\disk1\*.*" - install: prep build diff --git a/src/config/NTMakefile.i386_nt40 b/src/config/NTMakefile.i386_nt40 index 43f278963..fe7b908c2 100644 --- a/src/config/NTMakefile.i386_nt40 +++ b/src/config/NTMakefile.i386_nt40 @@ -37,8 +37,8 @@ APPVER = 4.0 !ENDIF #define used in WinNT/2000 installation and program version display -AFSPRODUCT_VERSION=1.2.2 b -CELLNAME_DEFAULT=Your Cell Name +AFSPRODUCT_VERSION=1.2.8 a +CELLNAME_DEFAULT=openafs.org CELLSERVDB_INSTALL=CellServDB.GrandCentral CELLSERVDB_WEB=http://grand.central.org/dl/cellservdb/CellServDB #NMAKE_DEFINES=-DDEBUG_VERBOSE @@ -63,40 +63,26 @@ AFSDEV_BUILDTYPE = NONE # Limit default include and library directories to those specified for build. -!IFNDEF AFSDEV_INCLUDE -!ERROR Must define AFSDEV_INCLUDE to be the default include directories. -!ENDIF +#!IFNDEF AFSDEV_INCLUDE +#!ERROR Must define AFSDEV_INCLUDE to be the default include directories. +#!ENDIF -!IF ((!DEFINED(INCLUDE)) && ([set INCLUDE=$(AFSDEV_INCLUDE)] != 0)) +#!IF ((!DEFINED(INCLUDE)) && ([set INCLUDE=$(AFSDEV_INCLUDE)] != 0)) # If env. var. INCLUDE not defined then macro assignment won't set it. -!ERROR Failed setting environment variable INCLUDE. -!ENDIF -INCLUDE = $(AFSDEV_INCLUDE) +#!ERROR Failed setting environment variable INCLUDE. +#!ENDIF +#INCLUDE = $(AFSDEV_INCLUDE) -!IFNDEF AFSDEV_LIB -!ERROR Must define AFSDEV_LIB to be the default library directories. -!ENDIF +#!IFNDEF AFSDEV_LIB +#!ERROR Must define AFSDEV_LIB to be the default library directories. +#!ENDIF -!IF ((!DEFINED(LIB)) && ([set LIB=$(AFSDEV_LIB)] != 0)) +#!IF ((!DEFINED(LIB)) && ([set LIB=$(AFSDEV_LIB)] != 0)) # If env. var. LIB not defined then macro assignment won't set it. -!ERROR Failed setting environment variable LIB. -!ENDIF -LIB = $(AFSDEV_LIB) - - -# Put default build binary directories at front of path. - -!IFNDEF AFSDEV_BIN -!ERROR Must define AFSDEV_BIN to be the default build binary directories. -!ENDIF - -!IF ((!DEFINED(PATH)) && ([set PATH=$(AFSDEV_BIN)] != 0)) -# If env. var. PATH not defined then macro assignment won't set it. -!ERROR Failed setting environment variable PATH. -!ENDIF -PATH = $(AFSDEV_BIN);$(PATH) - +#!ERROR Failed setting environment variable LIB. +#!ENDIF +#LIB = $(AFSDEV_LIB) # Undefine WIN32.MAK NODEBUG macro. # Always generate full debug info, unless profiling or tuning (see below). @@ -183,14 +169,16 @@ afscflags =\ !IF ("$(AFSDEV_BUILDTYPE)" == "FREE") # Apply full optimization; generate full debug info in obj. -afscflags = $(afscflags) /Ox /Z7 -ldebug = $(ldebug) -debugtype:both +afscflags = $(afscflags) /Ox /Zi +ldebug = $(ldebug) cdebug = $(cdebug:-Od=) # avoid annoying override warning (D4025) +cvarsdll = $(cvarsdll:-MDd=-MD) !ELSEIF ("$(AFSDEV_BUILDTYPE)" == "CHECKED") # Disable optimization; generate full debug info in obj. -afscflags = $(afscflags) /Od /Z7 +afscflags = $(afscflags) /Od /Zi ldebug = $(ldebug) -debugtype:both +cdebug = $(cdebug:-Z7=-Zi) # avoid annoying override warning (D4025) !ENDIF # Set compiler warning level @@ -215,14 +203,14 @@ afscflags = $(afscflags) /W$(AFSDEV_WARNLEVEL) # /FIXED:NO generates a relocation section in the executable afslflags =\ - /FIXED:NO + /FIXED:NO /VERBOSE:LIB # For checked builds, define DEBUG (but not the MS control flag _DEBUG). !IF ("$(AFSDEV_BUILDTYPE)" == "CHECKED") -afscdefs = $(afscdefs) -DDEBUG +#afscdefs = $(afscdefs) -DDEBUG !ENDIF # Utilize the debug version of the MSVC runtime, if requested. @@ -279,6 +267,11 @@ EXEMFCLINK = $(link) /OUT:$@ $(ldebug) $(mfclflags) $(afslflags) $(mfclibsdll) $ DLLCONLINK = $(link) /OUT:$@ $(ldebug) $(dlllflags) $(afslflags) $(conlibsdll) $** # DLL link macro for GUI applications +!IF ("$(AFSDEV_BUILDTYPE)" == "CHECKED") +DLLGUILINK = $(link) /OUT:$@ /NODEFAULTLIB:LIBC $(ldebug) $(dlllflags) $(afslflags) $(guilibsdll) $** +!ELSE +DLLGUILINK = $(link) /OUT:$@ $(ldebug) $(dlllflags) $(afslflags) $(guilibsdll) $** +!ENDIF DLLGUILINK = $(link) /OUT:$@ $(ldebug) $(dlllflags) $(afslflags) $(guilibsdll) $** # DLL link macro for MFC applications diff --git a/src/config/NTMakefile.i386_win95 b/src/config/NTMakefile.i386_win95 index 13799adf9..7d2c950d6 100644 --- a/src/config/NTMakefile.i386_win95 +++ b/src/config/NTMakefile.i386_win95 @@ -11,7 +11,6 @@ # AFSDEV_BUILDTYPE = [ CHECKED | FREE ] # AFSDEV_INCLUDE = # AFSDEV_LIB = -# AFSDEV_BIN = # # Optional definitions: # AFSDEV_DESTDIR = (default is $(AFSROOT)\DEST) @@ -94,20 +93,6 @@ INCLUDE = $(AFSDEV_INCLUDE) !ENDIF LIB = $(AFSDEV_LIB) - -# Put default build binary directories at front of path. - -!IFNDEF AFSDEV_BIN -!ERROR Must define AFSDEV_BIN to be the default build binary directories. -!ENDIF - -!IF ((!DEFINED(PATH)) && ([set PATH=$(AFSDEV_BIN)] != 0)) -# If env. var. PATH not defined then macro assignment won't set it. -!ERROR Failed setting environment variable PATH. -!ENDIF -PATH = $(AFSDEV_BIN);$(PATH) - - # Undefine WIN32.MAK NODEBUG macro. # Always generate full debug info, unless profiling or tuning (see below). diff --git a/src/config/util_cr.c b/src/config/util_cr.c index 15e54e0c8..73adc3d2c 100644 --- a/src/config/util_cr.c +++ b/src/config/util_cr.c @@ -16,6 +16,7 @@ #include "windows.h" #include "malloc.h" #include "time.h" +#include "stdlib.h" void usuage() { @@ -29,10 +30,106 @@ void usuage() OR util_cr * \"-[register key value]\" ; aremove register key value\n\ OR util_cr @ file.ini \"[SectionKey]variable=value\" ; update ini-ipr-pwf file\n\ OR util_cr @ file.ini \"[SectionKey]variable=value*DatE*\" ; update ini-ipr-pwf file, insert date\n\ - OR util_cr ~ ;force error\n"); + OR util_cr ~ ;force error\n\ + OR util_cr # [nt xp 98 9x w2] ;test for OS, return 0 if match else 1\n\ + OR util_cr # [nt xp 98 9x w2] #[command] [true options] [false optiosn] [paramters] \n\t test for OS; execute command with options\n"); exit(0xc000); } +int CheckVersion(int argc,char *argv[]) +{ + OSVERSIONINFO VersionInfo; + int i; + memset(&VersionInfo,0,sizeof(VersionInfo)); + VersionInfo.dwOSVersionInfoSize =sizeof(OSVERSIONINFO); + if (!GetVersionEx(&VersionInfo)) + { + return 0XC000; + } + for (i=1;i=argc) + return (!ret)?0:1; + for (++x;((x