Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

107 lines
3.8 KiB

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: signcde.h
//
//--------------------------------------------------------------------------
#ifndef _SIGNCDE_H
#define _SIGNCDE_H
// OBSOLETE :- Split up, moved to mssip32.h, mscat.h, gentrust.h and authcode.h
//---------------------------------------------------------------------
//---------------------------------------------------------------------
// SignCode.h : main header file for the SIGNCODE application
//
#include "wincrypt.h"
#include "wintrust.h"
#include "signutil.h"
#ifdef __cplusplus
extern "C" {
#endif
/////////////////////
// OID's used for SPC
//
//+-------------------------------------------------------------------------
// Structures types for CryptEncodeObject() and CryptDecodeObject()
// ( see spc.h for addtional structures and information )
//+-------------------------------------------------------------------------
// SPC_CERT_EXTENSIONS_OBJID
//
// Since the type of this attribute value is CERT_EXTENSIONS, uses the
// CERT_EXTENSIONS data structure defined in wincrypt.h. It can be encoded/decoded
// using the the predefined lpszStructType of X509_EXTENSIONS.
//+-------------------------------------------------------------------------
// SPC_MINIMAL_CRITERIA_STRUCT
//
// pvStructInfo points to BOOL
//+-------------------------------------------------------------------------
#define SPC_COMMON_NAME_OBJID szOID_COMMON_NAME
#define SPC_CERT_EXTENSIONS_OBJID "1.3.6.1.4.1.311.2.1.14"
#define SPC_RAW_FILE_DATA_OBJID "1.3.6.1.4.1.311.2.1.18"
#define SPC_STRUCTURED_STORAGE_DATA_OBJID "1.3.6.1.4.1.311.2.1.19"
#define SPC_JAVA_CLASS_DATA_OBJID "1.3.6.1.4.1.311.2.1.20"
#define SPC_INDIVIDUAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.21"
#define SPC_COMMERCIAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.22"
#define SPC_CAB_DATA_OBJID "1.3.6.1.4.1.311.2.1.25"
#define SPC_GLUE_RDN_OBJID "1.3.6.1.4.1.311.2.1.25" // Duplicate number??
// Structure passed in and out is CryptoGraphicTimeStamp
//+-------------------------------------------------------------------------
// SPC X.509 v3 Certificate Extension Object Identifiers
//
// SPC certificates can also contain the following extensions
// defined in wincrypt.h:
// szOID_KEY_USAGE_RESTRICTION "2.5.29.4"
// szOID_BASIC_CONSTRAINTS "2.5.29.10"
// szOID_AUTHORITY_KEY_IDENTIFIER "2.5.29.1"
//--------------------------------------------------------------------------
//+-------------------------------------------------------------------------
// SPC_COMMON_NAME_OBJID
//
// Since the type of the common name extension is a CERT_NAME_VALUE
// uses the CERT_NAME_VALUE data structure defined in wincrypt.h.
// It can be encoded/decoded using the the predefined lpszStructType of
// X509_NAME_VALUE.
//--------------------------------------------------------------------------
//+-------------------------------------------------------------------------
// SPC Indirect Data Content Data Attribute Values:
//--------------------------------------------------------------------------
//+-------------------------------------------------------------------------
// List of SPC Indirect Data Content Data Attribute Values are:
// SPC_PE_IMAGE_DATA_OBJID
// SPC_RAW_FILE_DATA_OBJID
// SPC_JAVA_CLASS_DATA_OBJID
// SPC_STRUCTURED_STORAGE_DATA_OBJID
// SPC_CAB_DATA_OBJID
//
// These are the values can be currently added to SPC_INDIRECT_DATA_CONTENT
// Data field.
//
// SPC_LINK value types.
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
#ifdef __cplusplus
}
#endif
#endif