You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by bl...@apache.org on 2003/04/11 14:27:23 UTC

cvs commit: xml-security/c/src/utils XSECPlatformUtils.cpp

blautenb    2003/04/11 05:27:23

  Modified:    c/Projects/VC6.0/xsec/templatesign templatesign.dsp
               c/Projects/VC6.0/xsec/threadTest threadTest.dsp
               c/Projects/VC6.0/xsec/txfmout txfmout.dsp
               c/Projects/VC6.0/xsec/xsec_lib xsec_lib.dsp
               c/src/dsig DSIGSignature.cpp DSIGSignature.hpp
               c/src/framework XSECDefs.hpp XSECW32Config.hpp
               c/src/utils XSECPlatformUtils.cpp
  Log:
  Full Windows Crypto API support
  
  Revision  Changes    Path
  1.3       +2 -2      xml-security/c/Projects/VC6.0/xsec/templatesign/templatesign.dsp
  
  Index: templatesign.dsp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/Projects/VC6.0/xsec/templatesign/templatesign.dsp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- templatesign.dsp	7 Feb 2003 11:15:06 -0000	1.2
  +++ templatesign.dsp	11 Apr 2003 12:27:22 -0000	1.3
  @@ -52,7 +52,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ELSEIF  "$(CFG)" == "templatesign - Win32 Debug"
   
  @@ -125,7 +125,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib libeay32.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ENDIF 
   
  
  
  
  1.3       +6 -2      xml-security/c/Projects/VC6.0/xsec/threadTest/threadTest.dsp
  
  Index: threadTest.dsp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/Projects/VC6.0/xsec/threadTest/threadTest.dsp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- threadTest.dsp	7 Feb 2003 11:15:06 -0000	1.2
  +++ threadTest.dsp	11 Apr 2003 12:27:22 -0000	1.3
  @@ -41,6 +41,7 @@
   # PROP Use_Debug_Libraries 0
   # PROP Output_Dir "../../../../Build/Win32/VC6/Release"
   # PROP Intermediate_Dir "../../../../Build/Win32/VC6/Release/obj"
  +# PROP Ignore_Export_Lib 0
   # PROP Target_Dir ""
   # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
   # ADD CPP /nologo /W3 /GX /O2 /I "../../../../include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
  @@ -51,7 +52,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ELSEIF  "$(CFG)" == "threadTest - Win32 Debug"
   
  @@ -64,6 +65,7 @@
   # PROP Use_Debug_Libraries 1
   # PROP Output_Dir "../../../../Build/Win32/VC6/Debug"
   # PROP Intermediate_Dir "../../../../Build/Win32/VC6/Debug/obj"
  +# PROP Ignore_Export_Lib 0
   # PROP Target_Dir ""
   # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
   # ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../../../include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_AFXDLL" /YX /FD /GZ /c
  @@ -87,6 +89,7 @@
   # PROP Use_Debug_Libraries 0
   # PROP Output_Dir "threadTest___Win32_Release_No_Xalan"
   # PROP Intermediate_Dir "threadTest___Win32_Release_No_Xalan"
  +# PROP Ignore_Export_Lib 0
   # PROP Target_Dir ""
   # ADD BASE CPP /nologo /W3 /GX /O2 /I "../../../../include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
   # ADD CPP /nologo /W3 /GX /O2 /I "../../../../include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
  @@ -97,7 +100,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ELSEIF  "$(CFG)" == "threadTest - Win32 Debug No Xalan"
   
  @@ -110,6 +113,7 @@
   # PROP Use_Debug_Libraries 1
   # PROP Output_Dir "threadTest___Win32_Debug_No_Xalan"
   # PROP Intermediate_Dir "threadTest___Win32_Debug_No_Xalan"
  +# PROP Ignore_Export_Lib 0
   # PROP Target_Dir ""
   # ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../../../include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_AFXDLL" /YX /FD /GZ /c
   # ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../../../include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_AFXDLL" /YX /FD /GZ /c
  
  
  
  1.3       +4 -4      xml-security/c/Projects/VC6.0/xsec/txfmout/txfmout.dsp
  
  Index: txfmout.dsp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/Projects/VC6.0/xsec/txfmout/txfmout.dsp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- txfmout.dsp	7 Feb 2003 11:15:06 -0000	1.2
  +++ txfmout.dsp	11 Apr 2003 12:27:22 -0000	1.3
  @@ -52,7 +52,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ELSEIF  "$(CFG)" == "txfmout - Win32 Debug"
   
  @@ -76,7 +76,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
  -# ADD LINK32 xerces-c_2D.lib Xalan-C_1D.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
  +# ADD LINK32 xerces-c_2D.lib Xalan-C_1D.lib libeay32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
   
   !ELSEIF  "$(CFG)" == "txfmout - Win32 Release No Xalan"
   
  @@ -101,7 +101,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /subsystem:console /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2.lib libeay32.lib /nologo /subsystem:console /machine:I386
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib libeay32.lib /nologo /subsystem:console /machine:I386
   
   !ELSEIF  "$(CFG)" == "txfmout - Win32 Debug No Xalan"
   
  @@ -126,7 +126,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.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 xerces-c_2D.lib Xalan-C_1D.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
  -# ADD LINK32 xerces-c_2D.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
  +# ADD LINK32 xerces-c_2D.lib libeay32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
   
   !ENDIF 
   
  
  
  
  1.8       +17 -9     xml-security/c/Projects/VC6.0/xsec/xsec_lib/xsec_lib.dsp
  
  Index: xsec_lib.dsp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/Projects/VC6.0/xsec/xsec_lib/xsec_lib.dsp,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- xsec_lib.dsp	7 Apr 2003 12:27:12 -0000	1.7
  +++ xsec_lib.dsp	11 Apr 2003 12:27:22 -0000	1.8
  @@ -55,7 +55,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
  -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib Xalan-C_1.lib libeay32.lib /nologo /dll /machine:I386 /out:"../../../../Build/Win32/VC6/Release/xsec_lib_01.dll"
  +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib xerces-c_2.lib Xalan-C_1.lib crypt32.lib libeay32.lib /nologo /dll /machine:I386 /out:"../../../../Build/Win32/VC6/Release/xsec_lib_01.dll"
   
   !ELSEIF  "$(CFG)" == "xsec_lib - Win32 Debug"
   
  @@ -429,6 +429,14 @@
   # End Source File
   # Begin Source File
   
  +SOURCE=..\..\..\..\src\enc\WinCAPI\WinCAPICryptoKeyRSA.cpp
  +# End Source File
  +# Begin Source File
  +
  +SOURCE=..\..\..\..\src\enc\WinCAPI\WinCAPICryptoKeyRSA.hpp
  +# End Source File
  +# Begin Source File
  +
   SOURCE=..\..\..\..\src\enc\WinCAPI\WinCAPICryptoProvider.cpp
   # End Source File
   # Begin Source File
  @@ -741,6 +749,14 @@
   # End Source File
   # Begin Source File
   
  +SOURCE=..\..\..\..\src\transformers\TXFMMD5.cpp
  +# End Source File
  +# Begin Source File
  +
  +SOURCE=..\..\..\..\src\transformers\TXFMMD5.hpp
  +# End Source File
  +# Begin Source File
  +
   SOURCE=..\..\..\..\src\transformers\TXFMOutputFile.cpp
   # End Source File
   # Begin Source File
  @@ -804,13 +820,5 @@
   SOURCE=..\..\..\..\src\framework\version.rc
   # End Source File
   # End Group
  -# Begin Source File
  -
  -SOURCE=..\..\..\..\src\transformers\TXFMMD5.cpp
  -# End Source File
  -# Begin Source File
  -
  -SOURCE=..\..\..\..\src\transformers\TXFMMD5.hpp
  -# End Source File
   # End Target
   # End Project
  
  
  
  1.10      +21 -1     xml-security/c/src/dsig/DSIGSignature.cpp
  
  Index: DSIGSignature.cpp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/src/dsig/DSIGSignature.cpp,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- DSIGSignature.cpp	7 Apr 2003 12:27:13 -0000	1.9
  +++ DSIGSignature.cpp	11 Apr 2003 12:27:23 -0000	1.10
  @@ -611,6 +611,26 @@
   
   }
   
  +DSIGKeyInfoValue * DSIGSignature::appendRSAKeyValue(const XMLCh * modulus, 
  +						   const XMLCh * exponent) {
  +
  +	createKeyInfoElement();
  +
  +	// Create the new element
  +	DSIGKeyInfoValue * v;
  +	XSECnew(v, DSIGKeyInfoValue(this));
  +
  +	mp_KeyInfoNode->appendChild(v->createBlankRSAKeyValue(modulus, exponent));
  +	mp_KeyInfoNode->appendChild(mp_doc->createTextNode(DSIGConstants::s_unicodeStrNL));
  +
  +	// Add to the list
  +	m_keyInfoList.addKeyInfo(v);
  +
  +	return v;
  +
  +}
  +
  +
   DSIGKeyInfoX509 * DSIGSignature::appendX509Data(void) {
   
   	createKeyInfoElement();
  
  
  
  1.5       +14 -1     xml-security/c/src/dsig/DSIGSignature.hpp
  
  Index: DSIGSignature.hpp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/src/dsig/DSIGSignature.hpp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- DSIGSignature.hpp	2 Mar 2003 08:21:01 -0000	1.4
  +++ DSIGSignature.hpp	11 Apr 2003 12:27:23 -0000	1.5
  @@ -494,6 +494,19 @@
   						   const XMLCh * Y);
   
   	/**
  +	 * \brief Append a RSA KeyValue element 
  +	 *
  +	 * Add a new KeyInfo element for a RSA Value
  +	 *
  +	 * @param modulus Base64 encoded value of the modulus
  +	 * @param exponent Base64 encoded value of exponent
  +	 * @returns A pointer to the created object.
  +	 */
  +
  +	DSIGKeyInfoValue * appendRSAKeyValue(const XMLCh * modulus, 
  +						   const XMLCh * exponent);
  +
  +	/**
   	 * \brief Append a X509Data element.
   	 *
   	 * Add a new KeyInfo element for X509 data.
  
  
  
  1.5       +4 -1      xml-security/c/src/framework/XSECDefs.hpp
  
  Index: XSECDefs.hpp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/src/framework/XSECDefs.hpp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- XSECDefs.hpp	15 Mar 2003 04:21:24 -0000	1.4
  +++ XSECDefs.hpp	11 Apr 2003 12:27:23 -0000	1.5
  @@ -79,6 +79,9 @@
   #	if defined (_DEBUG)
   #		include <afx.h>
   #		include <crtdbg.h>
  +#	else
  +#		define WIN32_LEAN_AND_MEAN
  +#		include <windows.h>
   #	endif
   #	include <xsec/framework/XSECW32Config.hpp>
   #else
  
  
  
  1.5       +8 -1      xml-security/c/src/framework/XSECW32Config.hpp
  
  Index: XSECW32Config.hpp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/src/framework/XSECW32Config.hpp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- XSECW32Config.hpp	22 Feb 2003 11:17:23 -0000	1.4
  +++ XSECW32Config.hpp	11 Apr 2003 12:27:23 -0000	1.5
  @@ -90,3 +90,10 @@
   /* Windows direct.h */
   #define HAVE_DIRECT_H 1
   
  +/*
  + * Macros used to identify what crypto providers are available
  + */
  +
  +#define HAVE_OPENSSL 1
  +
  +#define HAVE_WINCAPI 1
  
  
  
  1.6       +25 -3     xml-security/c/src/utils/XSECPlatformUtils.cpp
  
  Index: XSECPlatformUtils.cpp
  ===================================================================
  RCS file: /home/cvs/xml-security/c/src/utils/XSECPlatformUtils.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- XSECPlatformUtils.cpp	7 Apr 2003 12:27:13 -0000	1.5
  +++ XSECPlatformUtils.cpp	11 Apr 2003 12:27:23 -0000	1.6
  @@ -72,17 +72,34 @@
   
   #include <xsec/utils/XSECPlatformUtils.hpp>
   #include <xsec/framework/XSECError.hpp>
  -#include <xsec/enc/OpenSSL/OpenSSLCryptoProvider.hpp>
   #include <xsec/dsig/DSIGConstants.hpp>
   
   #if defined(_WIN32)
   #include <xsec/utils/winutils/XSECBinHTTPURIInputStream.hpp>
   #endif
   
  +#if defined (HAVE_OPENSSL)
  +#	include <xsec/enc/OpenSSL/OpenSSLCryptoProvider.hpp>
  +#endif
  +
  +#if defined (HAVE_WINCAPI)
  +#	include <xsec/enc/WinCAPI/WinCAPICryptoProvider.hpp>
  +#endif
  +
   // Static data used by all of XSEC
   int XSECPlatformUtils::initCount = 0;
   XSECCryptoProvider * XSECPlatformUtils::g_cryptoProvider = NULL;
   
  +// Determine default crypto provider
  +
  +#if defined (HAVE_OPENSSL)
  +#	define XSEC_DEFAULT_PROVIDER	OpenSSLCryptoProvider()
  +#else
  +#	if defined (HAVE_WINCAPI)
  +#		define XSEC_DEFAULT_PROVIDER	WinCAPICryptoProvider()
  +#	endif
  +#endif
  +
   void XSECPlatformUtils::Initialise(XSECCryptoProvider * p) {
   
   	if (++initCount > 1)
  @@ -91,7 +108,12 @@
   	if (p != NULL)
   		g_cryptoProvider = p;
   	else
  -		XSECnew(g_cryptoProvider, OpenSSLCryptoProvider());
  +#if defined XSEC_DEFAULT_PROVIDER
  +		XSECnew(g_cryptoProvider, XSEC_DEFAULT_PROVIDER);
  +#else
  +	throw XSECException(XSECException::CryptoProviderError,
  +		"XSECPlatformUtils::Initialise() called with NULL provider, but no default defined");
  +#endif
   
   	// Set up necessary constants
   	DSIGConstants::create();