#ifndef _MICASA_KEYS_H_ #define _MICASA_KEYS_H_ #include #include "IMiCASAKeys.h" #include #define MICASA_KEYS_CONTRACTID "@novell.com/CASA/MiCASAKeys;1" #define MICASA_KEYS_CLASSNAME "Common Authentication Services Adapter" // {287249D7-A851-4aa4-9AEE-5BCDA3B53566} #define MICASA_KEYS_CID { 0x287249d7, 0xa851, 0x4aa4, { 0x9a, 0xee, 0x5b, 0xcd, 0xa3, 0xb5, 0x35, 0x66 } } // External prototypes not yet in micasa.h typedef void * (STDAPICALLTYPE *PCASAOPEN)( SSCS_SECRETSTORE_T * ssid, unsigned long ssFlags, SSCS_EXT_T * ext ); typedef int (STDAPICALLTYPE *PCASACLOSE)( void * context, unsigned long ssFlags, SSCS_EXT_T * ext ); typedef int (STDAPICALLTYPE *PCASAWRITEKEY)( void * context, uint32_t ssFlags, SSCS_KEYCHAIN_ID_T * keyChainID, SSCS_SECRET_ID_T * sharedSecretID, SS_UTF8_T * key, uint32_t keyLen, uint8_t * val, uint32_t valLen, SSCS_PASSWORD_T * epPassword, SSCS_EXT_T * ext ); typedef int (STDAPICALLTYPE *PCASAREADKEY)( void * context, uint32_t ssFlags, SSCS_KEYCHAIN_ID_T * keyChainID, SSCS_SECRET_ID_T * sharedSecretID, SS_UTF8_T * key, uint32_t keyLen, uint8_t * val, uint32_t * valLen, SSCS_PASSWORD_T * epPassword, uint32_t * bytesRequired, SSCS_EXT_T * ext ); /* Header file */ class MiCASAKeys : public IMiCASAKeys { public: NS_DECL_ISUPPORTS NS_DECL_IMICASAKEYS MiCASAKeys(); private: ~MiCASAKeys(); HINSTANCE m_hCASALibrary; BOOLEAN m_bLibraryLoaded; PCASAOPEN m_pCASAOpen; PCASACLOSE m_pCASAClose; PCASAWRITEKEY m_pCASAWriteKey; PCASAREADKEY m_pCASAReadKey; protected: /* additional members */ }; #endif //_MICASA_KEYS_H_