Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

46 lines
1.2 KiB

#define PCT_CI_EMPTY 0
#define PCT_CI_FULL 1
#define CACHE_EXPIRE_TICKS 100*1000
typedef struct _ekis {
DWORD dwClearLen;
UCHAR ClearKey[MASTER_KEY_SIZE];
} ExportKeyInfo;
typedef struct _SessCacheItem {
DWORD dwCState;
DWORD Time;
PctSessionId Session;
UCHAR *TargetName;
CipherSpec SessCiphSpec;
HashSpec SessHashSpec;
CertSpec SessCertLen;
ExchSpec SessExchSpec;
UCHAR MasterKey[MASTER_KEY_SIZE];
ExportKeyInfo *ClearData;
UCHAR CertData[CERT_SIZE];
} SessCacheItem;
// PctCacheLockedAndLoaded -
// returns TRUE if the cache is ready to go.
BOOL PctCacheLockedAndLoaded();
// PctInitSessionCache(size)
// inits the internal cache to CacheSize items
BOOL PctInitSessionCache(DWORD CacheSize);
// PctFindSessIdInCache
// look for a cache item with a given session id
BOOL PctFindSessIdInCache(PctSessionId *ThisSession, SessCacheItem *RetItem);
// PctFindTargetInCache
// look for a cache item with a specific target name
BOOL PctFindTargetInCache(UCHAR *Target, SessCacheItem *RetItem);
// PctAddToCache
// add an item to a cache. Assumes that the TargetName parameter will
// remain valid until the cache frees it.
BOOL PctAddToCache(SessCacheItem *AddItem);