|
|
//+-------------------------------------------------------------------------
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: pkioss.h
//
// Contents: PKI OSS support functions.
//
// PkiOssEncode
// PkiOssEncode2
// PkiOssDecode
// PkiOssDecode2
//
// History: 23-Oct-98 philh created
//--------------------------------------------------------------------------
#ifndef __PKIOSS_H__
#define __PKIOSS_H__
#include "asn1hdr.h"
#include "ossglobl.h"
#ifdef __cplusplus
extern "C" { #endif
//+-------------------------------------------------------------------------
// OSS Encode function. The encoded output is allocated and must be freed
// by calling ossFreeBuf
//--------------------------------------------------------------------------
int WINAPI PkiOssEncode( IN OssGlobal *Pog, IN void *pvOssInfo, IN int id, OUT BYTE **ppbEncoded, OUT DWORD *pcbEncoded );
//+-------------------------------------------------------------------------
// OSS Encode function. The encoded output isn't allocated.
//
// If pbEncoded is NULL, does a length only calculation.
//--------------------------------------------------------------------------
int WINAPI PkiOssEncode2( IN OssGlobal *Pog, IN void *pvOssInfo, IN int id, OUT OPTIONAL BYTE *pbEncoded, IN OUT DWORD *pcbEncoded );
//+-------------------------------------------------------------------------
// OSS Decode function. The allocated, decoded structure, **pvOssInfo, must
// be freed by calling ossFreePDU().
//--------------------------------------------------------------------------
int WINAPI PkiOssDecode( IN OssGlobal *Pog, OUT void **ppvOssInfo, IN int id, IN const BYTE *pbEncoded, IN DWORD cbEncoded );
//+-------------------------------------------------------------------------
// OSS Decode function. The allocated, decoded structure, **pvOssInfo, must
// be freed by calling ossFreePDU().
//
// For a successful decode, *ppbEncoded is advanced
// past the decoded bytes and *pcbDecoded is decremented by the number
// of decoded bytes.
//--------------------------------------------------------------------------
int WINAPI PkiOssDecode2( IN OssGlobal *Pog, OUT void **ppvOssInfo, IN int id, IN OUT BYTE **ppbEncoded, IN OUT DWORD *pcbEncoded );
#ifdef __cplusplus
} // Balance extern "C" above
#endif
#endif
|