Leaked source code of windows server 2003
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.
 
 
 
 
 
 

195 lines
7.8 KiB

// CertObj.idl : IDL source for CertObj.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (CertObj.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(BD0C73BC-805B-4043-9C30-9A28D64DD7D2),
dual,
helpstring("IIISCertObj Interface"),
pointer_default(unique)
]
interface IIISCertObj : IDispatch
{
[propput, id(1), helpstring("property ServerName")]
HRESULT ServerName([in] BSTR newVal);
[propput, id(2), helpstring("property UserName")]
HRESULT UserName([in] BSTR newVal);
[propput, id(3), helpstring("property UserPassword")]
HRESULT UserPassword([in] BSTR newVal);
[propput, id(4), helpstring("property InstanceName")]
HRESULT InstanceName([in] BSTR newVal);
[id(5), local, helpstring("method IsInstalled")]
HRESULT IsInstalled([out, retval] VARIANT_BOOL * retval);
[id(6), hidden, helpstring("method IsInstalledRemote")]
HRESULT IsInstalledRemote([out, retval] VARIANT_BOOL * retval);
[id(7), local, helpstring("method IsExportable")]
HRESULT IsExportable([out, retval] VARIANT_BOOL * retval);
[id(8), hidden, helpstring("method IsExportableRemote")]
HRESULT IsExportableRemote([out, retval] VARIANT_BOOL * retval);
[id(9), local, helpstring("method GetCertInfo")]
HRESULT GetCertInfo([out,retval] VARIANT * BinaryVariant);
[id(10), hidden, helpstring("method GetCertInfoRemote")]
HRESULT GetCertInfoRemote([out,retval] VARIANT * BinaryVariant);
[id(11), local, helpstring("method Copy")]
HRESULT Copy(
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting,
[in] BSTR bstrDestinationServerName,
[in] BSTR bstrDestinationServerInstance,
[in,optional] VARIANT bstrDestinationServerUserName,
[in,optional] VARIANT bstrDestinationServerPassword);
[id(12), local, helpstring("method Move")]
HRESULT Move(
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting,
[in] BSTR bstrDestinationServerName,
[in] BSTR bstrDestinationServerInstance,
[in,optional] VARIANT bstrDestinationServerUserName,
[in,optional] VARIANT bstrDestinationServerPassword);
[id(13), local, helpstring("method RemoveCert")]
HRESULT RemoveCert([in] VARIANT_BOOL bRemoveFromCertStore, [in] VARIANT_BOOL bPrivateKey);
[id(14), local, helpstring("method Import")]
HRESULT Import(
[in] BSTR FileName,
[in] BSTR Password,
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting);
[id(15), local, helpstring("method ImportToCertStore")]
HRESULT ImportToCertStore(
[in] BSTR FileName,
[in] BSTR Password,
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting,
[out,retval] VARIANT * BinaryVariant
);
[id(16), hidden, helpstring("method ImportFromBlob")]
HRESULT ImportFromBlob(
[in] BSTR InstanceName, [in] BSTR Password,
[in] VARIANT_BOOL bInstallToMetabase,
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting,
[in] DWORD pcbSize,
[in,string,size_is(pcbSize)] char * pBlobBinary
);
[id(17), hidden, helpstring("method ImportFromBlob")]
HRESULT ImportFromBlobGetHash(
[in] BSTR InstanceName, [in] BSTR Password,
[in] VARIANT_BOOL bInstallToMetabase,
[in] VARIANT_BOOL bAllowExport,
[in] VARIANT_BOOL bOverWriteExisting,
[in] DWORD pcbSize,
[in,string,size_is(pcbSize)] char * pBlobBinary,
[out] DWORD *pcbCertHashSize,
[out] char ** pCertHash
);
[id(18), local, helpstring("method Export")]
HRESULT Export(
[in] BSTR FileName,
[in] BSTR Password,
[in] VARIANT_BOOL bPrivateKey,
[in] VARIANT_BOOL bCertChain,
[in] VARIANT_BOOL bRemoveCert);
[id(19), hidden, helpstring("method ExportToBlob")]
HRESULT ExportToBlob(
[in] BSTR InstanceName,
[in] BSTR Password,
[in] VARIANT_BOOL bPrivateKey,
[in] VARIANT_BOOL bCertChain,
[in,out] DWORD *pcbSize,
[in,out,string] char ** pBlobBinary);
};
#ifdef USE_CERT_REQUEST_OBJECT
[
object,
uuid(1200D816-D200-4DB9-AE2C-AFBAFEA5BCEA),
dual,
helpstring("IIISCertRequest Interface"),
pointer_default(unique)
]
interface IIISCertRequest : IDispatch
{
[propput, id(1), helpstring("property ServerName")] HRESULT ServerName([in] BSTR newVal);
[propput, id(2), helpstring("property UserName")] HRESULT UserName([in] BSTR newVal);
[propput, id(3), helpstring("property UserPassword")] HRESULT UserPassword([in] BSTR newVal);
[propput, id(4), helpstring("property InstanceName")] HRESULT InstanceName([in] BSTR newVal);
[propget, id(5), helpstring("property Info_CommonName")] HRESULT Info_CommonName([out, retval] BSTR *pVal);
[propput, id(5), helpstring("property Info_CommonName")] HRESULT Info_CommonName([in] BSTR newVal);
[propget, id(6), helpstring("property Info_FriendlyName")] HRESULT Info_FriendlyName([out, retval] BSTR *pVal);
[propput, id(6), helpstring("property Info_FriendlyName")] HRESULT Info_FriendlyName([in] BSTR newVal);
[propget, id(7), helpstring("property Info_Country")] HRESULT Info_Country([out, retval] BSTR *pVal);
[propput, id(7), helpstring("property Info_Country")] HRESULT Info_Country([in] BSTR newVal);
[propget, id(8), helpstring("property Info_State")] HRESULT Info_State([out, retval] BSTR *pVal);
[propput, id(8), helpstring("property Info_State")] HRESULT Info_State([in] BSTR newVal);
[propget, id(9), helpstring("property Info_Locality")] HRESULT Info_Locality([out, retval] BSTR *pVal);
[propput, id(9), helpstring("property Info_Locality")] HRESULT Info_Locality([in] BSTR newVal);
[propget, id(10), helpstring("property Info_Organization")] HRESULT Info_Organization([out, retval] BSTR *pVal);
[propput, id(10), helpstring("property Info_Organization")] HRESULT Info_Organization([in] BSTR newVal);
[propget, id(11), helpstring("property Info_OrganizationUnit")] HRESULT Info_OrganizationUnit([out, retval] BSTR *pVal);
[propput, id(11), helpstring("property Info_OrganizationUnit")] HRESULT Info_OrganizationUnit([in] BSTR newVal);
[propget, id(12), helpstring("property Info_CAName")] HRESULT Info_CAName([out, retval] BSTR *pVal);
[propput, id(12), helpstring("property Info_CAName")] HRESULT Info_CAName([in] BSTR newVal);
[propget, id(13), helpstring("property Info_ExpirationDate")] HRESULT Info_ExpirationDate([out, retval] BSTR *pVal);
[propput, id(13), helpstring("property Info_ExpirationDate")] HRESULT Info_ExpirationDate([in] BSTR newVal);
[propget, id(14), helpstring("property Info_Usage")] HRESULT Info_Usage([out, retval] BSTR *pVal);
[propput, id(14), helpstring("property Info_Usage")] HRESULT Info_Usage([in] BSTR newVal);
[propget, id(15), helpstring("property Info_AltSubject")] HRESULT Info_AltSubject([out, retval] BSTR *pVal);
[propput, id(15), helpstring("property Info_AltSubject")] HRESULT Info_AltSubject([in] BSTR newVal);
[id(16), helpstring("method SubmitRequest")] HRESULT SubmitRequest();
[propget, id(17), helpstring("property DispositionMessage")] HRESULT DispositionMessage([out, retval] BSTR *pVal);
[propput, id(17), helpstring("property DispositionMessage")] HRESULT DispositionMessage([in] BSTR newVal);
[id(18), helpstring("method SaveRequestToFile")] HRESULT SaveRequestToFile();
[id(19), helpstring("method Info_Dump")] HRESULT Info_Dump();
};
#endif
[
uuid(939CE595-0BB3-4F3F-A504-8CE81BDF4943),
version(1.0),
helpstring("IIS CertObj 1.0 Type Library")
]
library CERTOBJLib
{
importlib("stdole2.tlb");
[
uuid(62B8CCBE-5A45-4372-8C4A-6A87DD3EDD60),
helpstring("IIS CertObj")
]
coclass IISCertObj
{
[default] interface IIISCertObj;
};
#ifdef USE_CERT_REQUEST_OBJECT
[
uuid(2B024027-594E-4D11-88EE-15F5AE28AC61),
helpstring("IIS CertRequest")
]
coclass IISCertRequest
{
[default] interface IIISCertRequest;
};
#endif
};