[389-commits] coolkey/src/windows/csp Makefile, 1.1, 1.1.4.1 RegDll.cpp, 1.3, 1.3.4.1 Session.cpp, 1.1, 1.1.4.1 csp.cpp, 1.3, 1.3.4.1

Jack Magne jmagne at fedoraproject.org
Fri Oct 2 01:42:39 UTC 2009


Author: jmagne

Update of /cvs/dirsec/coolkey/src/windows/csp
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv19303/src/windows/csp

Modified Files:
      Tag: PKI_8_0_RTM_BRANCH
	Makefile RegDll.cpp Session.cpp csp.cpp 
Log Message:
Bugzilla #514341, get coolkey working on 64bit Windows.


Index: Makefile
===================================================================
RCS file: /cvs/dirsec/coolkey/src/windows/csp/Makefile,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -r1.1 -r1.1.4.1
--- Makefile	11 Oct 2006 18:12:58 -0000	1.1
+++ Makefile	2 Oct 2009 01:42:37 -0000	1.1.4.1
@@ -18,29 +18,51 @@
 #
 #
 # Nmake capable makefile.
+#
+
+
+# Deal with flags for the debug version.
 # 
-LCFLAGS=-Od -I$(CAPISDK)/sdkinc -DWIN32 -D_DEBUG -D_WINDOWS -D_USRDLL    \
+DBGLCFLAGS =
+DBGFLAGS =
+MTLIB = -MT
+
+!IF "$(BUILD_OPT)" == "1"
+DBGLCFLAGS = -ZI -DEBUG -D_DEBUG
+DBGFLAGS = /DEBUG
+MTLIB = -MTd
+!ENDIF
+
+# Deal with 32 or 64 bit machine.
+#
+ARCH = X86
+
+!IF "$(USE_64)" == "1"
+ARCH = X64
+!ENDIF
+ 
+LCFLAGS=-Od -I$(CAPISDK)/sdkinc -DWIN32  -D_WINDOWS -D_USRDLL    \
           -D_CONSOLE -DCSP_EXPORTS -D_WINDLL -DIDA_PROMPT_PINGUI -D_MBCS \
-	  -Gm -EHsc -RTC1 -W3 -nologo -c -ZI -TP
+	   -EHsc -RTC1 -W3 -nologo -c $(DBGCLFLAGS) -TP
 
-CSPRESFLAGS=/INCREMENTAL:NO /NOLOGO /DLL /DEF:"cspres.def" /DEBUG     \
+CSPRESFLAGS=/INCREMENTAL:NO /NOLOGO /DLL /DEF:"cspres.def" $(DBGFLAGS)    \
             /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /IMPLIB:"cspres.lib" \
-            /MACHINE:X86
+            /MACHINE:$(ARCH)
 
-CSPFLAGS=/INCREMENTAL:NO /NOLOGO /DLL /DEF:"csp.def" /DEBUG               \
-	 /SUBSYSTEM:WINDOWS /IMPLIB:"clkcsp.lib" /MACHINE:X86 crypt32.lib \
+CSPFLAGS=/INCREMENTAL:NO /NOLOGO /DLL /DEF:"csp.def" $(DBGFLAGS)          \
+	 /SUBSYSTEM:WINDOWS /IMPLIB:"clkcsp.lib" /MACHINE:$(ARCH) crypt32.lib \
 	 RpcRT4.Lib winscard.lib Scarddlg.lib cspres.lib  kernel32.lib    \
          user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib      \
          shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib 
 
-REGCERTSFLAGS=/INCREMENTAL:NO /NOLOGO /DEBUG /SUBSYSTEM:CONSOLE /MACHINE:X86 \
+REGCERTSFLAGS=/INCREMENTAL:NO /NOLOGO $(DBGFLAGS) /SUBSYSTEM:CONSOLE /MACHINE:$(ARCH) \
               kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib    \
               advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib       \
               odbc32.lib odbccp32.lib 
 CC=cl
 
 TARGETS=cspres.dll clkcsp.dll regcerts.exe clkcsp.sig
-TRASH=*.pdb *.lib *.exp *.idb
+TRASH=*.pdb *.lib *.exp *.idb *.manifest
 
 CSP_OBJ =  \
     csp.obj \
@@ -67,7 +89,7 @@
 .SUFFIXES: .cpp .obj .OBJ .rc .res .Obj .dll .sig
 
 .cpp.obj:
-	$(CC) $(LCFLAGS) -MTd $<
+	$(CC) $(LCFLAGS) $(MTLIB) $<
 
 .cpp.Obj:
 	$(CC) $(LCFLAGS) -MLd -Wp64 $<
@@ -89,10 +111,17 @@
 
 cspres.dll: $(CSP_RES_OBJ)
 	link  /OUT:cspres.dll $(CSP_RES_OBJ) $(CSPRESFLAGS)
-
+#Process manifest file if applicable.
+!IF "$(_NMAKE_VER)" >= "8.00" 
+	mt.exe -manifest cspres.dll.manifest -outputresource:"cspres.dll;2"
+!ENDIF
 clkcsp.dll: $(CSP_OBJ) 
 	link  /OUT:clkcsp.dll $(CSP_OBJ) $(CSPFLAGS)
-
+!IF "$(_NMAKE_VER)" >= "8.00" 
+	mt.exe -manifest clkcsp.dll.manifest -outputresource:"clkcsp.dll;2"
+!ENDIF
 regcerts.exe: $(REG_CERTS_OBJ)
 	link  /OUT:regcerts.exe $(REG_CERTS_OBJ) $(REGCERTSFLAGS)
-
+!IF "$(_NMAKE_VER)" >= "8.00"
+	mt.exe -manifest regcerts.exe.manifest -outputresource:"regcerts.exe;1"
+!ENDIF


Index: RegDll.cpp
===================================================================
RCS file: /cvs/dirsec/coolkey/src/windows/csp/RegDll.cpp,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -r1.3 -r1.3.4.1
--- RegDll.cpp	11 Aug 2007 00:57:06 -0000	1.3
+++ RegDll.cpp	2 Oct 2009 01:42:37 -0000	1.3.4.1
@@ -101,7 +101,7 @@
 	return NULL;
     }
 
-    ext = strrchr(libName, '.');
+    ext = (char *) strrchr(libName, '.');
     if (ext) {
 	libLen = ext - libName;
     }


Index: Session.cpp
===================================================================
RCS file: /cvs/dirsec/coolkey/src/windows/csp/Session.cpp,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -r1.1 -r1.1.4.1
--- Session.cpp	27 Jul 2006 22:23:07 -0000	1.1
+++ Session.cpp	2 Oct 2009 01:42:37 -0000	1.1.4.1
@@ -107,8 +107,10 @@
    else
       (*container_name) = fqcn;
 
-   LOG("ParseFQCN: container_name: \"%s\"\n", StringifyBin(*container_name, false).c_str());
-   LOG("ParseFQCN: reader_name: \"%s\"\n", StringifyBin(*reader_name, false).c_str());
+   if(container_name->size())
+      LOG("ParseFQCN: container_name: \"%s\"\n", StringifyBin(*container_name, false).c_str());
+   if(reader_name->size())
+      LOG("ParseFQCN: reader_name: \"%s\"\n", StringifyBin(*reader_name, false).c_str());
 }
 
 } // namespace MCSP


Index: csp.cpp
===================================================================
RCS file: /cvs/dirsec/coolkey/src/windows/csp/csp.cpp,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -r1.3 -r1.3.4.1
--- csp.cpp	30 Apr 2007 23:30:58 -0000	1.3
+++ csp.cpp	2 Oct 2009 01:42:37 -0000	1.3.4.1
@@ -999,8 +999,8 @@
 
             BinStr containerName = (char*)pbData;
             CRYPT_KEY_PROV_INFO provInfo;
-            provInfo.pwszContainerName = new unsigned short[containerName.size()];
-            provInfo.pwszProvName = new unsigned short[strlen(PROVIDER_NAME) + 1];;
+            provInfo.pwszContainerName = (LPWSTR) new unsigned short[containerName.size()];
+            provInfo.pwszProvName = (LPWSTR) new unsigned short[strlen(PROVIDER_NAME) + 1];
             provInfo.dwProvType = PROVIDER_TYPE;
             provInfo.dwFlags = 0;
             provInfo.cProvParam = 0;




More information about the Fedora-directory-commits mailing list