icertadmind

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ICertAdminD interface identifier d99e6e71-fc88-11d0-b498-00a0c90312f3
	CertAdminDIID = &dcom.IID{Data1: 0xd99e6e71, Data2: 0xfc88, Data3: 0x11d0, Data4: []byte{0xb4, 0x98, 0x00, 0xa0, 0xc9, 0x03, 0x12, 0xf3}}
	// Syntax UUID
	CertAdminDSyntaxUUID = &uuid.UUID{TimeLow: 0xd99e6e71, TimeMid: 0xfc88, TimeHiAndVersion: 0x11d0, ClockSeqHiAndReserved: 0xb4, ClockSeqLow: 0x98, Node: [6]uint8{0x0, 0xa0, 0xc9, 0x3, 0x12, 0xf3}}
	// Syntax ID
	CertAdminDSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: CertAdminDSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/csra"
)

Functions

func CertAdminDServerHandle

func CertAdminDServerHandle(ctx context.Context, o CertAdminDServer, opNum int, r ndr.Reader) (dcerpc.Operation, error)

func NewCertAdminDServerHandle

func NewCertAdminDServerHandle(o CertAdminDServer) dcerpc.ServerHandle

func RegisterCertAdminDServer

func RegisterCertAdminDServer(conn dcerpc.Conn, o CertAdminDServer, opts ...dcerpc.Option)

Types

type BackupCloseFileRequest

type BackupCloseFileRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupCloseFileRequest structure represents the BackupCloseFile operation request

func (*BackupCloseFileRequest) MarshalNDR

func (o *BackupCloseFileRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupCloseFileRequest) UnmarshalNDR

func (o *BackupCloseFileRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupCloseFileResponse

type BackupCloseFileResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The BackupCloseFile return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupCloseFileResponse structure represents the BackupCloseFile operation response

func (*BackupCloseFileResponse) MarshalNDR

func (o *BackupCloseFileResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupCloseFileResponse) UnmarshalNDR

func (o *BackupCloseFileResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupEndRequest

type BackupEndRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupEndRequest structure represents the BackupEnd operation request

func (*BackupEndRequest) MarshalNDR

func (o *BackupEndRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupEndRequest) UnmarshalNDR

func (o *BackupEndRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupEndResponse

type BackupEndResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The BackupEnd return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupEndResponse structure represents the BackupEnd operation response

func (*BackupEndResponse) MarshalNDR

func (o *BackupEndResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupEndResponse) UnmarshalNDR

func (o *BackupEndResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupGetAttachmentInformationRequest

type BackupGetAttachmentInformationRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupGetAttachmentInformationRequest structure represents the BackupGetAttachmentInformation operation request

func (*BackupGetAttachmentInformationRequest) MarshalNDR

func (*BackupGetAttachmentInformationRequest) UnmarshalNDR

type BackupGetAttachmentInformationResponse

type BackupGetAttachmentInformationResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppwszzDBFiles: A pointer to a WCHAR pointer that will receive the list of null-terminated
	// database file names. Detailed information on database file name structure formatting
	// is specified in section 2.2.4.
	DBFiles []string `idl:"name:ppwszzDBFiles;size_is:(, pcwcDBFiles)" json:"db_files"`
	// pcwcDBFiles: A pointer to an integer value that contains the total length, in characters,
	// of all strings (including a NULL-terminator character) returned in ppwszzDBFiles.
	DBFilesLength int32 `idl:"name:pcwcDBFiles" json:"db_files_length"`
	// Return: The BackupGetAttachmentInformation return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupGetAttachmentInformationResponse structure represents the BackupGetAttachmentInformation operation response

func (*BackupGetAttachmentInformationResponse) MarshalNDR

func (*BackupGetAttachmentInformationResponse) UnmarshalNDR

type BackupGetBackupLogsRequest

type BackupGetBackupLogsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupGetBackupLogsRequest structure represents the BackupGetBackupLogs operation request

func (*BackupGetBackupLogsRequest) MarshalNDR

func (o *BackupGetBackupLogsRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupGetBackupLogsRequest) UnmarshalNDR

func (o *BackupGetBackupLogsRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupGetBackupLogsResponse

type BackupGetBackupLogsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppwszzLogFiles: A pointer to the WCHAR pointer that receives the list of null-terminated
	// log file names. Detailed information about database file name structure formatting
	// is specified in section 2.2.4.
	LogFiles []string `idl:"name:ppwszzLogFiles;size_is:(, pcwcLogFiles)" json:"log_files"`
	// pcwcLogFiles: A pointer to an integer value that contains the total length, in characters,
	// of all strings (including the NULL terminator character) returned in ppwszzLogFiles.
	LogFilesLength int32 `idl:"name:pcwcLogFiles" json:"log_files_length"`
	// Return: The BackupGetBackupLogs return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupGetBackupLogsResponse structure represents the BackupGetBackupLogs operation response

func (*BackupGetBackupLogsResponse) MarshalNDR

func (*BackupGetBackupLogsResponse) UnmarshalNDR

func (o *BackupGetBackupLogsResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupGetDynamicFilesRequest

type BackupGetDynamicFilesRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupGetDynamicFilesRequest structure represents the BackupGetDynamicFiles operation request

func (*BackupGetDynamicFilesRequest) MarshalNDR

func (*BackupGetDynamicFilesRequest) UnmarshalNDR

func (o *BackupGetDynamicFilesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupGetDynamicFilesResponse

type BackupGetDynamicFilesResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppwszzFiles: A pointer to a WCHAR pointer that receives the list of null-terminated
	// dynamic file names that are used by a CA.
	Files []string `idl:"name:ppwszzFiles;size_is:(, pcwcFiles)" json:"files"`
	// pcwcFiles: A pointer to the LONG value that specifies the number of characters in
	// ppwszzFiles.
	FilesLength int32 `idl:"name:pcwcFiles" json:"files_length"`
	// Return: The BackupGetDynamicFiles return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupGetDynamicFilesResponse structure represents the BackupGetDynamicFiles operation response

func (*BackupGetDynamicFilesResponse) MarshalNDR

func (*BackupGetDynamicFilesResponse) UnmarshalNDR

func (o *BackupGetDynamicFilesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupOpenFileRequest

type BackupOpenFileRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszPath: A null-terminated UNICODE string that specifies the path to the targeted
	// file. The file name MUST be UNC form, for example: "\\server\sharepoint\...path...\filename.ext".
	Path string `idl:"name:pwszPath;string;pointer:unique" json:"path"`
}

BackupOpenFileRequest structure represents the BackupOpenFile operation request

func (*BackupOpenFileRequest) MarshalNDR

func (o *BackupOpenFileRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupOpenFileRequest) UnmarshalNDR

func (o *BackupOpenFileRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupOpenFileResponse

type BackupOpenFileResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pliLength: A pointer to a signed 64-bit integer that receives the size, in bytes,
	// of the targeted file.
	Length uint64 `idl:"name:pliLength" json:"length"`
	// Return: The BackupOpenFile return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupOpenFileResponse structure represents the BackupOpenFile operation response

func (*BackupOpenFileResponse) MarshalNDR

func (o *BackupOpenFileResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupOpenFileResponse) UnmarshalNDR

func (o *BackupOpenFileResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupPrepareRequest

type BackupPrepareRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// grbitJet: An unsigned long value. This MUST be one of the following values.
	//
	//	+------------+----------------------------------------------------------------------------------+
	//	|            |                                                                                  |
	//	|   VALUE    |                                     MEANING                                      |
	//	|            |                                                                                  |
	//	+------------+----------------------------------------------------------------------------------+
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000000 | Prepare for full backup of the CA database.                                      |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000001 | Prepare for an incremental backup as opposed to a full backup. This means that   |
	//	|            | only the log files since the last full or incremental backup will be backed up.  |
	//	+------------+----------------------------------------------------------------------------------+
	Jet uint32 `idl:"name:grbitJet" json:"jet"`
	// dwBackupFlags: An unsigned long value. MUST be 0. MUST be ignored on receipt.
	BackupFlags uint32 `idl:"name:dwBackupFlags" json:"backup_flags"`
	// pwszBackupAnnotation: Not Used. Can be set to any arbitrary value, and MUST be ignored
	// on receipt.
	BackupAnnotation uint16 `idl:"name:pwszBackupAnnotation" json:"backup_annotation"`
	// dwClientIdentifier: An unsigned long value. Not used. MUST be 0. MUST be ignored
	// on receipt.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<46>
	ClientID uint32 `idl:"name:dwClientIdentifier" json:"client_id"`
}

BackupPrepareRequest structure represents the BackupPrepare operation request

func (*BackupPrepareRequest) MarshalNDR

func (o *BackupPrepareRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupPrepareRequest) UnmarshalNDR

func (o *BackupPrepareRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupPrepareResponse

type BackupPrepareResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The BackupPrepare return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupPrepareResponse structure represents the BackupPrepare operation response

func (*BackupPrepareResponse) MarshalNDR

func (o *BackupPrepareResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupPrepareResponse) UnmarshalNDR

func (o *BackupPrepareResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupReadFileRequest

type BackupReadFileRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// cbBuffer: The size, in bytes, of the preceding buffer. This parameter MUST be a multiple
	// of the page size of the operating system.
	BufferLength int32 `idl:"name:cbBuffer" json:"buffer_length"`
}

BackupReadFileRequest structure represents the BackupReadFile operation request

func (*BackupReadFileRequest) MarshalNDR

func (o *BackupReadFileRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupReadFileRequest) UnmarshalNDR

func (o *BackupReadFileRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupReadFileResponse

type BackupReadFileResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pbBuffer: A pointer to the buffer that receives the read data.
	Buffer []byte `idl:"name:pbBuffer;size_is:(cbBuffer);pointer:ref" json:"buffer"`
	// pcbRead: A pointer to an integer that receives the actual number of bytes read.
	ReadLength int32 `idl:"name:pcbRead" json:"read_length"`
	// Return: The BackupReadFile return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupReadFileResponse structure represents the BackupReadFile operation response

func (*BackupReadFileResponse) MarshalNDR

func (o *BackupReadFileResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupReadFileResponse) UnmarshalNDR

func (o *BackupReadFileResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupTruncateLogsRequest

type BackupTruncateLogsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

BackupTruncateLogsRequest structure represents the BackupTruncateLogs operation request

func (*BackupTruncateLogsRequest) MarshalNDR

func (o *BackupTruncateLogsRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupTruncateLogsRequest) UnmarshalNDR

func (o *BackupTruncateLogsRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BackupTruncateLogsResponse

type BackupTruncateLogsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The BackupTruncateLogs return value.
	Return int32 `idl:"name:Return" json:"return"`
}

BackupTruncateLogsResponse structure represents the BackupTruncateLogs operation response

func (*BackupTruncateLogsResponse) MarshalNDR

func (o *BackupTruncateLogsResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BackupTruncateLogsResponse) UnmarshalNDR

func (o *BackupTruncateLogsResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type CertAdminDClient

type CertAdminDClient interface {

	// IUnknown retrieval method.
	Unknown() iunknown.UnknownClient

	// The SetExtension method allows adding, modifying, or disabling of extensions, as
	// specified in [RFC3280]. A CA can include an extension in an issued certificate for
	// a particular pending request.
	SetExtension(context.Context, *SetExtensionRequest, ...dcerpc.CallOption) (*SetExtensionResponse, error)

	// The SetAttributes method sets attributes in the specified pending certificate request.
	SetAttributes(context.Context, *SetAttributesRequest, ...dcerpc.CallOption) (*SetAttributesResponse, error)

	// The ResubmitRequest method resubmits a specific pending or denied certificate request
	// to the CA.
	ResubmitRequest(context.Context, *ResubmitRequestRequest, ...dcerpc.CallOption) (*ResubmitRequestResponse, error)

	// The DenyRequest method denies a specific certificate request that is pending.
	DenyRequest(context.Context, *DenyRequestRequest, ...dcerpc.CallOption) (*DenyRequestResponse, error)

	// The IsValidCertificate method verifies the certificate against the CA key and verifies
	// that the certificate has not been revoked.
	IsValidCertificate(context.Context, *IsValidCertificateRequest, ...dcerpc.CallOption) (*IsValidCertificateResponse, error)

	// The PublishCRL method sends a request to the CA server to publish a new CRL.
	PublishCRL(context.Context, *PublishCRLRequest, ...dcerpc.CallOption) (*PublishCRLResponse, error)

	// The GetCRL method instructs the CA to return the current base CRL for the current
	// CA key.
	GetCRL(context.Context, *GetCRLRequest, ...dcerpc.CallOption) (*GetCRLResponse, error)

	// The RevokeCertificate method revokes a certificate either immediately or on a specified
	// date. It instructs the CA to revoke a certificate based on the certificate's serial
	// number and reason code.
	RevokeCertificate(context.Context, *RevokeCertificateRequest, ...dcerpc.CallOption) (*RevokeCertificateResponse, error)

	// The EnumViewColumn method returns an array of column information.
	EnumViewColumn(context.Context, *EnumViewColumnRequest, ...dcerpc.CallOption) (*EnumViewColumnResponse, error)

	// The GetViewDefaultColumnSet method returns an array of column identifiers that are
	// associated with a specific view.
	GetViewDefaultColumnSet(context.Context, *GetViewDefaultColumnSetRequest, ...dcerpc.CallOption) (*GetViewDefaultColumnSetResponse, error)

	// The EnumAttributesOrExtensions method is used to access sets of attributes or extensions
	// for a particular row ID.
	EnumAttributesOrExtensions(context.Context, *EnumAttributesOrExtensionsRequest, ...dcerpc.CallOption) (*EnumAttributesOrExtensionsResponse, error)

	// The OpenView method opens a view into the database and returns a set of resultant
	// row data.
	OpenView(context.Context, *OpenViewRequest, ...dcerpc.CallOption) (*OpenViewResponse, error)

	// The EnumView method returns a set of resultant row data for the opened view.
	EnumView(context.Context, *EnumViewRequest, ...dcerpc.CallOption) (*EnumViewResponse, error)

	// The CloseView method closes a view that was previously opened by using the OpenView
	// method call.
	CloseView(context.Context, *CloseViewRequest, ...dcerpc.CallOption) (*CloseViewResponse, error)

	// The ServerControl method is used to force the CA server to unregister the ICertAdminD
	// and ICertAdminD2 interfaces.
	ServerControl(context.Context, *ServerControlRequest, ...dcerpc.CallOption) (*ServerControlResponse, error)

	// The Ping method is used to test whether the certificate server is alive.
	Ping(context.Context, *PingRequest, ...dcerpc.CallOption) (*PingResponse, error)

	// The GetServerState method is used to validate that the caller has permission to read
	// the CA database.
	GetServerState(context.Context, *GetServerStateRequest, ...dcerpc.CallOption) (*GetServerStateResponse, error)

	// The BackupPrepare method is used to prepare the database for performing further backup
	// operations, such as BackupEnd, BackupGetAttachmentInformation, BackupGetBackupLogs,
	// BackupOpenFile, BackupReadFile, BackupCloseFile, and BackupTruncateLogs.
	BackupPrepare(context.Context, *BackupPrepareRequest, ...dcerpc.CallOption) (*BackupPrepareResponse, error)

	// The BackupEnd method completes the backup process that is started via a call to ICertAdminD::BackupPrepare.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<48>
	BackupEnd(context.Context, *BackupEndRequest, ...dcerpc.CallOption) (*BackupEndResponse, error)

	// The BackupGetAttachmentInformation method is used to query the CA for the names of
	// database files that should become part of the backup file set.
	BackupGetAttachmentInformation(context.Context, *BackupGetAttachmentInformationRequest, ...dcerpc.CallOption) (*BackupGetAttachmentInformationResponse, error)

	// The BackupGetBackupLogs method queries the CA for the names of database transaction
	// log files that should become part of the backup file set.
	BackupGetBackupLogs(context.Context, *BackupGetBackupLogsRequest, ...dcerpc.CallOption) (*BackupGetBackupLogsResponse, error)

	// The BackupOpenFile method opens a file for backup.
	BackupOpenFile(context.Context, *BackupOpenFileRequest, ...dcerpc.CallOption) (*BackupOpenFileResponse, error)

	// The BackupReadFile method reads the database file and loads the contents into the
	// buffer that is provided. The file MUST be initialized by a prior call to BackupOpenFile.
	BackupReadFile(context.Context, *BackupReadFileRequest, ...dcerpc.CallOption) (*BackupReadFileResponse, error)

	// The BackupCloseFile method closes the database file that was initialized by a prior
	// call to the BackupOpenFile.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<58>
	BackupCloseFile(context.Context, *BackupCloseFileRequest, ...dcerpc.CallOption) (*BackupCloseFileResponse, error)

	// The BackupTruncateLogs method function eliminates redundant records from the log
	// files and reduces the disk storage space that is used by log files.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<59>
	BackupTruncateLogs(context.Context, *BackupTruncateLogsRequest, ...dcerpc.CallOption) (*BackupTruncateLogsResponse, error)

	// The ImportCertificate method imports a certificate into the CA database.
	ImportCertificate(context.Context, *ImportCertificateRequest, ...dcerpc.CallOption) (*ImportCertificateResponse, error)

	// The BackupGetDynamicFiles method retrieves the list of CA dynamic file names that
	// need to be backed up. The dynamic files are those that are not included in the CA
	// database backup and are created dynamically by the CA, for example: CRL files created
	// by the CA. Note that BackupOpenFile and BackupReadFile cannot be used to open and
	// read the dynamic files whose names are returned by this method. Dynamic files must
	// be backed up by means outside this protocol.
	BackupGetDynamicFiles(context.Context, *BackupGetDynamicFilesRequest, ...dcerpc.CallOption) (*BackupGetDynamicFilesResponse, error)

	// The RestoreGetDatabaseLocation method retrieves the list of CA server database location
	// names for all the database files being restored.
	RestoreGetDatabaseLocations(context.Context, *RestoreGetDatabaseLocationsRequest, ...dcerpc.CallOption) (*RestoreGetDatabaseLocationsResponse, error)

	// AlterContext alters the client context.
	AlterContext(context.Context, ...dcerpc.Option) error

	// IPID sets the object interface identifier.
	IPID(context.Context, *dcom.IPID) CertAdminDClient
}

ICertAdminD interface.

func NewCertAdminDClient

func NewCertAdminDClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (CertAdminDClient, error)

type CertAdminDServer

type CertAdminDServer interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// The SetExtension method allows adding, modifying, or disabling of extensions, as
	// specified in [RFC3280]. A CA can include an extension in an issued certificate for
	// a particular pending request.
	SetExtension(context.Context, *SetExtensionRequest) (*SetExtensionResponse, error)

	// The SetAttributes method sets attributes in the specified pending certificate request.
	SetAttributes(context.Context, *SetAttributesRequest) (*SetAttributesResponse, error)

	// The ResubmitRequest method resubmits a specific pending or denied certificate request
	// to the CA.
	ResubmitRequest(context.Context, *ResubmitRequestRequest) (*ResubmitRequestResponse, error)

	// The DenyRequest method denies a specific certificate request that is pending.
	DenyRequest(context.Context, *DenyRequestRequest) (*DenyRequestResponse, error)

	// The IsValidCertificate method verifies the certificate against the CA key and verifies
	// that the certificate has not been revoked.
	IsValidCertificate(context.Context, *IsValidCertificateRequest) (*IsValidCertificateResponse, error)

	// The PublishCRL method sends a request to the CA server to publish a new CRL.
	PublishCRL(context.Context, *PublishCRLRequest) (*PublishCRLResponse, error)

	// The GetCRL method instructs the CA to return the current base CRL for the current
	// CA key.
	GetCRL(context.Context, *GetCRLRequest) (*GetCRLResponse, error)

	// The RevokeCertificate method revokes a certificate either immediately or on a specified
	// date. It instructs the CA to revoke a certificate based on the certificate's serial
	// number and reason code.
	RevokeCertificate(context.Context, *RevokeCertificateRequest) (*RevokeCertificateResponse, error)

	// The EnumViewColumn method returns an array of column information.
	EnumViewColumn(context.Context, *EnumViewColumnRequest) (*EnumViewColumnResponse, error)

	// The GetViewDefaultColumnSet method returns an array of column identifiers that are
	// associated with a specific view.
	GetViewDefaultColumnSet(context.Context, *GetViewDefaultColumnSetRequest) (*GetViewDefaultColumnSetResponse, error)

	// The EnumAttributesOrExtensions method is used to access sets of attributes or extensions
	// for a particular row ID.
	EnumAttributesOrExtensions(context.Context, *EnumAttributesOrExtensionsRequest) (*EnumAttributesOrExtensionsResponse, error)

	// The OpenView method opens a view into the database and returns a set of resultant
	// row data.
	OpenView(context.Context, *OpenViewRequest) (*OpenViewResponse, error)

	// The EnumView method returns a set of resultant row data for the opened view.
	EnumView(context.Context, *EnumViewRequest) (*EnumViewResponse, error)

	// The CloseView method closes a view that was previously opened by using the OpenView
	// method call.
	CloseView(context.Context, *CloseViewRequest) (*CloseViewResponse, error)

	// The ServerControl method is used to force the CA server to unregister the ICertAdminD
	// and ICertAdminD2 interfaces.
	ServerControl(context.Context, *ServerControlRequest) (*ServerControlResponse, error)

	// The Ping method is used to test whether the certificate server is alive.
	Ping(context.Context, *PingRequest) (*PingResponse, error)

	// The GetServerState method is used to validate that the caller has permission to read
	// the CA database.
	GetServerState(context.Context, *GetServerStateRequest) (*GetServerStateResponse, error)

	// The BackupPrepare method is used to prepare the database for performing further backup
	// operations, such as BackupEnd, BackupGetAttachmentInformation, BackupGetBackupLogs,
	// BackupOpenFile, BackupReadFile, BackupCloseFile, and BackupTruncateLogs.
	BackupPrepare(context.Context, *BackupPrepareRequest) (*BackupPrepareResponse, error)

	// The BackupEnd method completes the backup process that is started via a call to ICertAdminD::BackupPrepare.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<48>
	BackupEnd(context.Context, *BackupEndRequest) (*BackupEndResponse, error)

	// The BackupGetAttachmentInformation method is used to query the CA for the names of
	// database files that should become part of the backup file set.
	BackupGetAttachmentInformation(context.Context, *BackupGetAttachmentInformationRequest) (*BackupGetAttachmentInformationResponse, error)

	// The BackupGetBackupLogs method queries the CA for the names of database transaction
	// log files that should become part of the backup file set.
	BackupGetBackupLogs(context.Context, *BackupGetBackupLogsRequest) (*BackupGetBackupLogsResponse, error)

	// The BackupOpenFile method opens a file for backup.
	BackupOpenFile(context.Context, *BackupOpenFileRequest) (*BackupOpenFileResponse, error)

	// The BackupReadFile method reads the database file and loads the contents into the
	// buffer that is provided. The file MUST be initialized by a prior call to BackupOpenFile.
	BackupReadFile(context.Context, *BackupReadFileRequest) (*BackupReadFileResponse, error)

	// The BackupCloseFile method closes the database file that was initialized by a prior
	// call to the BackupOpenFile.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<58>
	BackupCloseFile(context.Context, *BackupCloseFileRequest) (*BackupCloseFileResponse, error)

	// The BackupTruncateLogs method function eliminates redundant records from the log
	// files and reduces the disk storage space that is used by log files.
	//
	// This method has no parameters.
	//
	// If Config_CA_Interface_Flags contains the value IF_NOREMOTEICERTADMINBACKUP, the
	// server SHOULD return an error.<59>
	BackupTruncateLogs(context.Context, *BackupTruncateLogsRequest) (*BackupTruncateLogsResponse, error)

	// The ImportCertificate method imports a certificate into the CA database.
	ImportCertificate(context.Context, *ImportCertificateRequest) (*ImportCertificateResponse, error)

	// The BackupGetDynamicFiles method retrieves the list of CA dynamic file names that
	// need to be backed up. The dynamic files are those that are not included in the CA
	// database backup and are created dynamically by the CA, for example: CRL files created
	// by the CA. Note that BackupOpenFile and BackupReadFile cannot be used to open and
	// read the dynamic files whose names are returned by this method. Dynamic files must
	// be backed up by means outside this protocol.
	BackupGetDynamicFiles(context.Context, *BackupGetDynamicFilesRequest) (*BackupGetDynamicFilesResponse, error)

	// The RestoreGetDatabaseLocation method retrieves the list of CA server database location
	// names for all the database files being restored.
	RestoreGetDatabaseLocations(context.Context, *RestoreGetDatabaseLocationsRequest) (*RestoreGetDatabaseLocationsResponse, error)
}

ICertAdminD server interface.

type CloseViewRequest

type CloseViewRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

CloseViewRequest structure represents the CloseView operation request

func (*CloseViewRequest) MarshalNDR

func (o *CloseViewRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*CloseViewRequest) UnmarshalNDR

func (o *CloseViewRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type CloseViewResponse

type CloseViewResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The CloseView return value.
	Return int32 `idl:"name:Return" json:"return"`
}

CloseViewResponse structure represents the CloseView operation response

func (*CloseViewResponse) MarshalNDR

func (o *CloseViewResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*CloseViewResponse) UnmarshalNDR

func (o *CloseViewResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DenyRequestRequest

type DenyRequestRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// dwRequestId: A 32-bit nonzero unsigned integer value that specifies the ID of the
	// certificate request.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
}

DenyRequestRequest structure represents the DenyRequest operation request

func (*DenyRequestRequest) MarshalNDR

func (o *DenyRequestRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DenyRequestRequest) UnmarshalNDR

func (o *DenyRequestRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DenyRequestResponse

type DenyRequestResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The DenyRequest return value.
	Return int32 `idl:"name:Return" json:"return"`
}

DenyRequestResponse structure represents the DenyRequest operation response

func (*DenyRequestResponse) MarshalNDR

func (o *DenyRequestResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DenyRequestResponse) UnmarshalNDR

func (o *DenyRequestResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type EnumAttributesOrExtensionsRequest

type EnumAttributesOrExtensionsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the pwszAuthority definition in section ICertAdminD::SetExtension
	// (section 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// RowId: An unsigned integer that specifies the RequestID value of the row to retrieve
	// attributes or extensions.
	RowID uint32 `idl:"name:RowId" json:"row_id"`
	// Flags: An unsigned integer value that MUST take either of the following values.
	//
	//	+------------+----------------------+
	//	|            |                      |
	//	|   VALUE    |       MEANING        |
	//	|            |                      |
	//	+------------+----------------------+
	//	+------------+----------------------+
	//	| 0x00000000 | Enumerate attributes |
	//	+------------+----------------------+
	//	| 0x00000001 | Enumerate extensions |
	//	+------------+----------------------+
	Flags uint32 `idl:"name:Flags" json:"flags"`
	// pwszLast: A pointer to a null-terminated UNICODE string that specifies the name of
	// the attribute or extension beyond which the data is requested. If the value of Flags
	// is 1, the name MUST be an OID (1) string as specified in [X680].
	Last string `idl:"name:pwszLast;string;pointer:unique" json:"last"`
	// celt: An unsigned integer value that specifies the requested count of attributes
	// (CERTTRANSDBATTRIBUTE) or extensions (CERTTRANSDBEXTENSION) structures to be returned
	// to the client.
	Count uint32 `idl:"name:celt" json:"count"`
}

EnumAttributesOrExtensionsRequest structure represents the EnumAttributesOrExtensions operation request

func (*EnumAttributesOrExtensionsRequest) MarshalNDR

func (*EnumAttributesOrExtensionsRequest) UnmarshalNDR

type EnumAttributesOrExtensionsResponse

type EnumAttributesOrExtensionsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pceltFetched: A pointer to the unsigned integer that receives the actual count of
	// the attributes (CERTTRANSDBATTRIBUTE) or extensions (CERTTRANSDBEXTENSION) structure
	// data returned by the server in the pctbOut parameter.
	Fetched uint32 `idl:"name:pceltFetched" json:"fetched"`
	// pctbOut: A pointer to the CERTTRANSBLOB structure. The data returned is marshaled
	// CERTTRANSDBATTRIBUTE or CERTTRANSDBEXTENSION structure array as described in CERTTRANSDBATTRIBUTE
	// and CERTTRANSDBEXTENSION.
	//
	// The EnumAttributesOrExtensions method obtains information about the attributes or
	// extensions (as specified in [MS-WCCE] section 2.2.2.7) that are associated with a
	// specific request in the Request table.
	Out *csra.CertTransportBlob `idl:"name:pctbOut;pointer:ref" json:"out"`
	// Return: The EnumAttributesOrExtensions return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumAttributesOrExtensionsResponse structure represents the EnumAttributesOrExtensions operation response

func (*EnumAttributesOrExtensionsResponse) MarshalNDR

func (*EnumAttributesOrExtensionsResponse) UnmarshalNDR

type EnumViewColumnRequest

type EnumViewColumnRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the definition of the pwszAuthority parameter in ICertAdminD::SetExtension
	// (section 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// iColumn: An unsigned integer that specifies the identifier of the column with which
	// to begin the enumeration. Valid values are from 0 to one less than the maximum number
	// of columns for the Request table.
	Column uint32 `idl:"name:iColumn" json:"column"`
	// cColumn: An unsigned integer that specifies the requested number of columns to return.
	ColumnCount uint32 `idl:"name:cColumn" json:"column_count"`
}

EnumViewColumnRequest structure represents the EnumViewColumn operation request

func (*EnumViewColumnRequest) MarshalNDR

func (o *EnumViewColumnRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EnumViewColumnRequest) UnmarshalNDR

func (o *EnumViewColumnRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type EnumViewColumnResponse

type EnumViewColumnResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That           *dcom.ORPCThat `idl:"name:That" json:"that"`
	ColumnOutCount uint32         `idl:"name:pcColumnOut" json:"column_out_count"`
	// pctbColumnInfo: A pointer to a CERTTRANSBLOB structure. Upon return, the pb member
	// of this structure points to an array of the marshaled CERTTRANSDBCOLUMN structures
	// as described in section 2.2.1.7.
	//
	// The EnumViewColumn method returns information about the columns that are associated
	// with the Request table to the client. The processing rules for this method are the
	// same as for the EnumViewColumnTable method with the iTable parameter set to 0x00000000.
	ColumnInfo *csra.CertTransportBlob `idl:"name:pctbColumnInfo;pointer:ref" json:"column_info"`
	// Return: The EnumViewColumn return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumViewColumnResponse structure represents the EnumViewColumn operation response

func (*EnumViewColumnResponse) MarshalNDR

func (o *EnumViewColumnResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EnumViewColumnResponse) UnmarshalNDR

func (o *EnumViewColumnResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type EnumViewRequest

type EnumViewRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the definition of the pwszAuthority parameter in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// ielt: An unsigned integer value that specifies the identifier of the first row to
	// return from the resultant set of rows.
	ID uint32 `idl:"name:ielt" json:"id"`
	// celt: An unsigned integer value that specifies the requested count of the row data
	// to be returned from the resultant set of rows.
	Count uint32 `idl:"name:celt" json:"count"`
}

EnumViewRequest structure represents the EnumView operation request

func (*EnumViewRequest) MarshalNDR

func (o *EnumViewRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EnumViewRequest) UnmarshalNDR

func (o *EnumViewRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type EnumViewResponse

type EnumViewResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pceltFetched: A pointer to an unsigned integer value that receives the actual count
	// of row data that is returned by the server in the pctbResultRows parameter.
	Fetched uint32 `idl:"name:pceltFetched" json:"fetched"`
	// pctbResultRows: A pointer to a CERTTRANSBLOB structure. The pb byte array of the
	// CERTTRANSBLOB structure MUST contain (on successful return) an array of n marshaled
	// CERTTRANSDBRESULTROW structures (section 2.2.3), where n is the value returned in
	// pceltFetched. Each CERTTRANSDBRESULTROW contains one or more CERTTRANSDBRESULTCOLUMN
	// structures (section 2.2.1.10). In addition, an extra CERTTRANSDBRESULTROW structure
	// is included in the array when the server encounters the end of the enumeration, as
	// described in the following rules.
	ResultRows *csra.CertTransportBlob `idl:"name:pctbResultRows;pointer:ref" json:"result_rows"`
	// Return: The EnumView return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumViewResponse structure represents the EnumView operation response

func (*EnumViewResponse) MarshalNDR

func (o *EnumViewResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EnumViewResponse) UnmarshalNDR

func (o *EnumViewResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetCRLRequest

type GetCRLRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

GetCRLRequest structure represents the GetCRL operation request

func (*GetCRLRequest) MarshalNDR

func (o *GetCRLRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetCRLRequest) UnmarshalNDR

func (o *GetCRLRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetCRLResponse

type GetCRLResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pctbCRL: If the function succeeds, this method MUST return a CERTTRANSBLOB structure
	// that contains the ASN.1 DER (as specified in [X660] and [X690]) encoded CRL (CRLRawCRL)
	// for the CA server's current signing certificate.
	//
	// The GetCRL method instructs the CA to return the recent base CRL, which is signed
	// with the current CA key to the caller. If a CRL cannot be found, the CA MUST return
	// ERROR_FILE_NOT_FOUND, as specified in [MS-ERREF].<35>
	CRL *csra.CertTransportBlob `idl:"name:pctbCRL;pointer:ref" json:"crl"`
	// Return: The GetCRL return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetCRLResponse structure represents the GetCRL operation response

func (*GetCRLResponse) MarshalNDR

func (o *GetCRLResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetCRLResponse) UnmarshalNDR

func (o *GetCRLResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetServerStateRequest

type GetServerStateRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

GetServerStateRequest structure represents the GetServerState operation request

func (*GetServerStateRequest) MarshalNDR

func (o *GetServerStateRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetServerStateRequest) UnmarshalNDR

func (o *GetServerStateRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetServerStateResponse

type GetServerStateResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwState: A pointer to an unsigned integer value that specifies whether the caller
	// has permission to read from the CA database.
	//
	// The CA MUST return 1 for pdwState if the caller has permission to read from the CA
	// database. Otherwise, the CA MUST return 0.
	State uint32 `idl:"name:pdwState" json:"state"`
	// Return: The GetServerState return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetServerStateResponse structure represents the GetServerState operation response

func (*GetServerStateResponse) MarshalNDR

func (o *GetServerStateResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetServerStateResponse) UnmarshalNDR

func (o *GetServerStateResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetViewDefaultColumnSetRequest

type GetViewDefaultColumnSetRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the definition of the pwszAuthority parameter in ICertAdminD::SetExtension
	// (section 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// iColumnSetDefault: An unsigned integer value that specifies the requested default
	// column set to get. The value MUST be one of the values in the following table. If
	// a value other than one of the listed values is used, the error E_INVALIDARG is returned.
	//
	//	+------------+----------------------------------------------------------------------------------+
	//	|            |                                                                                  |
	//	|   VALUE    |                                     MEANING                                      |
	//	|            |                                                                                  |
	//	+------------+----------------------------------------------------------------------------------+
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFF | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing pending requests.                                                    |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFE | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing issued certificates.                                                 |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFD | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing failed requests.                                                     |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFC | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing extensions.                                                          |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFB | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing attributes.                                                          |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFFA | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing CRLs.                                                                |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0xFFFFFFF9 | The caller attempts to retrieve the list of column identifiers that are useful   |
	//	|            | for viewing revoked certificates.                                                |
	//	+------------+----------------------------------------------------------------------------------+
	ColumnSetDefault uint32 `idl:"name:iColumnSetDefault" json:"column_set_default"`
}

GetViewDefaultColumnSetRequest structure represents the GetViewDefaultColumnSet operation request

func (*GetViewDefaultColumnSetRequest) MarshalNDR

func (*GetViewDefaultColumnSetRequest) UnmarshalNDR

type GetViewDefaultColumnSetResponse

type GetViewDefaultColumnSetResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That           *dcom.ORPCThat `idl:"name:That" json:"that"`
	ColumnOutCount uint32         `idl:"name:pcColumnOut" json:"column_out_count"`
	// pctbColumnInfo: A pointer to a CERTTRANSBLOB structure. Its cb member MUST contain
	// the length, in bytes, of the array that is referenced by the pb member. The pb member
	// MUST point to an array of DWORDs, where each DWORD value represents the identifier
	// for a column. Each DWORD in the array is marshaled by using little-endian format.
	ColumnInfo *csra.CertTransportBlob `idl:"name:pctbColumnInfo;pointer:ref" json:"column_info"`
	// Return: The GetViewDefaultColumnSet return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetViewDefaultColumnSetResponse structure represents the GetViewDefaultColumnSet operation response

func (*GetViewDefaultColumnSetResponse) MarshalNDR

func (*GetViewDefaultColumnSetResponse) UnmarshalNDR

type ImportCertificateRequest

type ImportCertificateRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// pctbCertificate: A CERTTRANSBLOB that contains an ASN.1 DER–encoded (as specified
	// in [X660] and [X690]) certificate that is inserted into the CA database.
	Certificate *csra.CertTransportBlob `idl:"name:pctbCertificate;pointer:ref" json:"certificate"`
	// dwFlags: A LONG value that MUST take one of the following values.
	//
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	|                                      |                                                                                  |
	//	|                VALUE                 |                                     MEANING                                      |
	//	|                                      |                                                                                  |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	|                                    0 | If this value is set, the CA server does not allow certificates that are not     |
	//	|                                      | issued by it to be imported into its database.                                   |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| FLAG_ALLOW_IMPORT_FOREIGN 0x00010000 | A request to the CA server to allow certificates that are not issued by it to be |
	//	|                                      | imported into its database.                                                      |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| ICF_EXISTINGROW 0x00020000           | A request to the CA to associate the imported certificates with an existing      |
	//	|                                      | request row.                                                                     |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	Flags int32 `idl:"name:dwFlags" json:"flags"`
}

ImportCertificateRequest structure represents the ImportCertificate operation request

func (*ImportCertificateRequest) MarshalNDR

func (o *ImportCertificateRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ImportCertificateRequest) UnmarshalNDR

func (o *ImportCertificateRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ImportCertificateResponse

type ImportCertificateResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwRequestId: Returns the request ID for the imported certificate. This is used to
	// refer to the certificate after it is imported into the database.
	//
	// ImportCertificate imports a certificate into the CA database Request table.
	RequestID int32 `idl:"name:pdwRequestId" json:"request_id"`
	// Return: The ImportCertificate return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ImportCertificateResponse structure represents the ImportCertificate operation response

func (*ImportCertificateResponse) MarshalNDR

func (o *ImportCertificateResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ImportCertificateResponse) UnmarshalNDR

func (o *ImportCertificateResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type IsValidCertificateRequest

type IsValidCertificateRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// pSerialNumber: A null-terminated Unicode string specifying a serial number that identifies
	// the certificate to be reviewed. The string MUST specify the serial number as an even
	// number of hexadecimal digits. If necessary, a zero can be prefixed to the number
	// to produce an even number of digits. The string MUST NOT contain more than one leading
	// zero. Information about the serial number is as specified in [RFC3280] section 4.1.2.2.
	SerialNumber string `idl:"name:pSerialNumber;string;pointer:unique" json:"serial_number"`
}

IsValidCertificateRequest structure represents the IsValidCertificate operation request

func (*IsValidCertificateRequest) MarshalNDR

func (o *IsValidCertificateRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*IsValidCertificateRequest) UnmarshalNDR

func (o *IsValidCertificateRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type IsValidCertificateResponse

type IsValidCertificateResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pRevocationReason: A pointer to a LONG value that receives the revocation reason
	// code. The revocation reason code MUST be one of the following values that are defined
	// for CRLReason, as specified in [RFC3280] section 5.3.1.
	//
	//	+-------+----------------------+
	//	|       |                      |
	//	| VALUE |       MEANING        |
	//	|       |                      |
	//	+-------+----------------------+
	//	+-------+----------------------+
	//	|     0 | unspecified          |
	//	+-------+----------------------+
	//	|     1 | keyCompromise        |
	//	+-------+----------------------+
	//	|     2 | cACompromise         |
	//	+-------+----------------------+
	//	|     3 | affiliationChanged   |
	//	+-------+----------------------+
	//	|     4 | superseded           |
	//	+-------+----------------------+
	//	|     5 | cessationOfOperation |
	//	+-------+----------------------+
	//	|     6 | certificateHold      |
	//	+-------+----------------------+
	RevocationReason int32 `idl:"name:pRevocationReason" json:"revocation_reason"`
	// pDisposition: A pointer to a LONG that receives the disposition status of the request.
	// This parameter MUST be one of the following values.
	//
	//	+------------+-----------------------------------+
	//	|            |                                   |
	//	|   VALUE    |              MEANING              |
	//	|            |                                   |
	//	+------------+-----------------------------------+
	//	+------------+-----------------------------------+
	//	| 0x00000002 | The certificate has been revoked. |
	//	+------------+-----------------------------------+
	//	| 0x00000003 | The certificate is still valid.   |
	//	+------------+-----------------------------------+
	//	| 0x00000004 | The certificate was never issued. |
	//	+------------+-----------------------------------+
	Disposition int32 `idl:"name:pDisposition" json:"disposition"`
	// Return: The IsValidCertificate return value.
	Return int32 `idl:"name:Return" json:"return"`
}

IsValidCertificateResponse structure represents the IsValidCertificate operation response

func (*IsValidCertificateResponse) MarshalNDR

func (o *IsValidCertificateResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*IsValidCertificateResponse) UnmarshalNDR

func (o *IsValidCertificateResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type OpenViewRequest

type OpenViewRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the definition of the pwszAuthority parameter in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// ccvr: An unsigned integer value that specifies the count of a CERTVIEWRESTRICTION
	// structure array that is pointed to by the acvr parameter.
	CertViewRestrictionCount uint32 `idl:"name:ccvr" json:"cert_view_restriction_count"`
	// acvr: A pointer to an array of CERTVIEWRESTRICTION structures. For more information,
	// see section 2.2.1.3.
	CertViewRestrictions []*csra.CertViewRestriction `idl:"name:acvr;size_is:(ccvr)" json:"cert_view_restrictions"`
	// ccolOut: An unsigned integer value that specifies the count of a DWORD array that
	// is pointed to by the acolOut parameter.
	ColumnsCountOut uint32 `idl:"name:ccolOut" json:"columns_count_out"`
	// acolOut: A pointer to an array of DWORDs. Each DWORD value specifies the column identifier
	// for the resultant set of rows.
	ColumnsOut []uint32 `idl:"name:acolOut;size_is:(ccolOut)" json:"columns_out"`
	// ielt: An unsigned integer value that specifies the identifier of the first row to
	// return from the resultant set of rows.
	ID uint32 `idl:"name:ielt" json:"id"`
	// celt: An unsigned integer value that specifies the requested count of the row data
	// to be returned from the resultant set of rows.
	Count uint32 `idl:"name:celt" json:"count"`
}

OpenViewRequest structure represents the OpenView operation request

func (*OpenViewRequest) MarshalNDR

func (o *OpenViewRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*OpenViewRequest) UnmarshalNDR

func (o *OpenViewRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type OpenViewResponse

type OpenViewResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pceltFetched: A pointer to an unsigned integer value that receives the actual count
	// of row data that is returned by the server in the pctbResultRows parameter.
	Fetched uint32 `idl:"name:pceltFetched" json:"fetched"`
	// pctbResultRows: A pointer to a CERTTRANSBLOB structure. The pb byte array of the
	// CERTTRANSBLOB structure MUST contain (on successful return) an array of n marshaled
	// CERTTRANSDBRESULTROW structures (section 2.2.3), where n is the value returned in
	// pceltFetched. Each CERTTRANSDBRESULTROW contains one or more CERTTRANSDBRESULTCOLUMN
	// structures (section 2.2.1.10).
	//
	// The OpenView method opens a view into the database and returns a set of resultant
	// row data.
	ResultRows *csra.CertTransportBlob `idl:"name:pctbResultRows;pointer:ref" json:"result_rows"`
	// Return: The OpenView return value.
	Return int32 `idl:"name:Return" json:"return"`
}

OpenViewResponse structure represents the OpenView operation response

func (*OpenViewResponse) MarshalNDR

func (o *OpenViewResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*OpenViewResponse) UnmarshalNDR

func (o *OpenViewResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type PingRequest

type PingRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the pwszAuthority definition in section 3.1.4.1.1.
	//
	// Windows formats return values per the definition of HRESULT as specified in [MS-ERREF].
	// Negative values indicate errors, positive values indicate success. Specific values
	// are as specified in [MS-ERREF].
	//
	// The ICertAdminD::Ping method is as specified in [MS-WCCE] section 3.2.1.4.2.3.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

PingRequest structure represents the Ping operation request

func (*PingRequest) MarshalNDR

func (o *PingRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PingRequest) UnmarshalNDR

func (o *PingRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type PingResponse

type PingResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The Ping return value.
	Return int32 `idl:"name:Return" json:"return"`
}

PingResponse structure represents the Ping operation response

func (*PingResponse) MarshalNDR

func (o *PingResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PingResponse) UnmarshalNDR

func (o *PingResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type PublishCRLRequest

type PublishCRLRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// FileTime: Contains a 64-bit value that represents the number of 100-nanosecond intervals
	// since January 1, 1601, according to Coordinated Universal Time (UTC). This is used
	// to calculate the nextUpdate value of the CRL as specified in [RFC3280] section 5
	// in UTC-Greenwich Mean Time.
	FileTime *dtyp.Filetime `idl:"name:FileTime" json:"file_time"`
}

PublishCRLRequest structure represents the PublishCRL operation request

func (*PublishCRLRequest) MarshalNDR

func (o *PublishCRLRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PublishCRLRequest) UnmarshalNDR

func (o *PublishCRLRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type PublishCRLResponse

type PublishCRLResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The PublishCRL return value.
	Return int32 `idl:"name:Return" json:"return"`
}

PublishCRLResponse structure represents the PublishCRL operation response

func (*PublishCRLResponse) MarshalNDR

func (o *PublishCRLResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PublishCRLResponse) UnmarshalNDR

func (o *PublishCRLResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RestoreGetDatabaseLocationsRequest

type RestoreGetDatabaseLocationsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

RestoreGetDatabaseLocationsRequest structure represents the RestoreGetDatabaseLocations operation request

func (*RestoreGetDatabaseLocationsRequest) MarshalNDR

func (*RestoreGetDatabaseLocationsRequest) UnmarshalNDR

type RestoreGetDatabaseLocationsResponse

type RestoreGetDatabaseLocationsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppwszzDatabaseLocations: A pointer to a WCHAR pointer that will receive the list
	// of null-terminated database location names and the log directory name. Detailed information
	// about database file name structure formatting is specified in section 2.2.4.
	DatabaseLocations []string `idl:"name:ppwszzDatabaseLocations;size_is:(, pcwcPaths)" json:"database_locations"`
	// pcwcPaths: A pointer to the LONG value that specifies the number of characters in
	// ppwszzDatabaseLocations.
	PathsLength int32 `idl:"name:pcwcPaths" json:"paths_length"`
	// Return: The RestoreGetDatabaseLocations return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RestoreGetDatabaseLocationsResponse structure represents the RestoreGetDatabaseLocations operation response

func (*RestoreGetDatabaseLocationsResponse) MarshalNDR

func (*RestoreGetDatabaseLocationsResponse) UnmarshalNDR

type ResubmitRequestRequest

type ResubmitRequestRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// dwRequestId: A 32-bit nonzero unsigned integer value that specifies the ID of the
	// certificate request.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
}

ResubmitRequestRequest structure represents the ResubmitRequest operation request

func (*ResubmitRequestRequest) MarshalNDR

func (o *ResubmitRequestRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ResubmitRequestRequest) UnmarshalNDR

func (o *ResubmitRequestRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ResubmitRequestResponse

type ResubmitRequestResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwDisposition: A pointer to an unsigned integer value that receives the disposition
	// status of the certificate (upon resubmission).
	//
	// This method instructs the CA to try again to process a previously submitted certificate
	// request, which is in a pending or denied state.
	Disposition uint32 `idl:"name:pdwDisposition" json:"disposition"`
	// Return: The ResubmitRequest return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ResubmitRequestResponse structure represents the ResubmitRequest operation response

func (*ResubmitRequestResponse) MarshalNDR

func (o *ResubmitRequestResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ResubmitRequestResponse) UnmarshalNDR

func (o *ResubmitRequestResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RevokeCertificateRequest

type RevokeCertificateRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// pwszSerialNumber: A null-terminated Unicode string that specifies a serial number
	// that identifies the certificate to be revoked. The string MUST specify the serial
	// number as plain hexadecimal digits (no leading 0x) as specified in [RFC3280] section
	// 4.1.2.2.<36>
	SerialNumber string `idl:"name:pwszSerialNumber;string;pointer:unique" json:"serial_number"`
	// Reason: An unsigned integer value that specifies the revocation reason code. The
	// revocation reason code MUST be either one of the values listed in the following table
	// (and specified in [RFC3280] section 5.3.1), or one of the following values: 0xfffffffd,
	// 0xfffffffe, or 0xffffffff.
	//
	//	+------------+--------------------------------------------------------------------+
	//	|            |                                                                    |
	//	|   VALUE    |                              MEANING                               |
	//	|            |                                                                    |
	//	+------------+--------------------------------------------------------------------+
	//	+------------+--------------------------------------------------------------------+
	//	|          0 | unspecified                                                        |
	//	+------------+--------------------------------------------------------------------+
	//	|          1 | keyCompromise                                                      |
	//	+------------+--------------------------------------------------------------------+
	//	|          2 | cACompromise                                                       |
	//	+------------+--------------------------------------------------------------------+
	//	|          3 | affiliationChanged                                                 |
	//	+------------+--------------------------------------------------------------------+
	//	|          4 | superseded                                                         |
	//	+------------+--------------------------------------------------------------------+
	//	|          5 | cessationOfOperation                                               |
	//	+------------+--------------------------------------------------------------------+
	//	|          6 | certificateHold                                                    |
	//	+------------+--------------------------------------------------------------------+
	//	|          8 | removeFromCRL                                                      |
	//	+------------+--------------------------------------------------------------------+
	//	| 0xfffffffd | See processing rules, beginning with rule 2.                       |
	//	+------------+--------------------------------------------------------------------+
	//	| 0xfffffffe | See processing rules, beginning with rule 3.                       |
	//	+------------+--------------------------------------------------------------------+
	//	| 0xffffffff | Released from hold. (See processing rules, beginning with rule 4.) |
	//	+------------+--------------------------------------------------------------------+
	Reason uint32 `idl:"name:Reason" json:"reason"`
	// FileTime: Contains a 64-bit value that represents the number of 100-nanosecond intervals
	// since January 1, 1601 (UTC). This value specifies the date, according to Greenwich
	// Mean Time, when the certificate became invalid. The FileTime corresponds to the Request_Revocation_Date
	// that is defined in section 3.1.1.1.
	FileTime *dtyp.Filetime `idl:"name:FileTime" json:"file_time"`
}

RevokeCertificateRequest structure represents the RevokeCertificate operation request

func (*RevokeCertificateRequest) MarshalNDR

func (o *RevokeCertificateRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RevokeCertificateRequest) UnmarshalNDR

func (o *RevokeCertificateRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RevokeCertificateResponse

type RevokeCertificateResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The RevokeCertificate return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RevokeCertificateResponse structure represents the RevokeCertificate operation response

func (*RevokeCertificateResponse) MarshalNDR

func (o *RevokeCertificateResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RevokeCertificateResponse) UnmarshalNDR

func (o *RevokeCertificateResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ServerControlRequest

type ServerControlRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority:  See the pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// dwControlFlags: An unsigned integer value that specifies the control to be sent to
	// the certificate server. It MUST take one of the following values.
	//
	//	+-------------+--------------------------------------------------------------------+
	//	|             |                                                                    |
	//	|    VALUE    |                              MEANING                               |
	//	|             |                                                                    |
	//	+-------------+--------------------------------------------------------------------+
	//	+-------------+--------------------------------------------------------------------+
	//	| 0x000000001 | Request unregister for DCOM interfaces for the certificate server. |
	//	+-------------+--------------------------------------------------------------------+
	//	| 0x000000002 | Not currently used.                                                |
	//	+-------------+--------------------------------------------------------------------+
	//	| 0x000000003 | Not currently used.                                                |
	//	+-------------+--------------------------------------------------------------------+
	ControlFlags uint32 `idl:"name:dwControlFlags" json:"control_flags"`
}

ServerControlRequest structure represents the ServerControl operation request

func (*ServerControlRequest) MarshalNDR

func (o *ServerControlRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ServerControlRequest) UnmarshalNDR

func (o *ServerControlRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ServerControlResponse

type ServerControlResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pctbOut: All fields of this parameter MUST be set to 0 on return.
	Out *csra.CertTransportBlob `idl:"name:pctbOut;pointer:ref" json:"out"`
	// Return: The ServerControl return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ServerControlResponse structure represents the ServerControl operation response

func (*ServerControlResponse) MarshalNDR

func (o *ServerControlResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ServerControlResponse) UnmarshalNDR

func (o *ServerControlResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SetAttributesRequest

type SetAttributesRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: See the pwszAuthority definition in ICertAdminD::SetExtension (section
	// 3.1.4.1.1).
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// dwRequestId: A 32-bit nonzero unsigned integer value that specifies the ID of the
	// certificate request.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
	// pwszAttributes: A null-terminated Unicode string. The value of the string MUST have
	// the same format as specified in [MS-WCCE] section 3.2.1.4.2.1.2.
	//
	// This method instructs the CA to add or modify a name-value pair that is associated
	// with a previously submitted certificate request that is in a pending state. Information
	// about a pending certificate request is specified in section 3.1.1.1.1.
	Attributes string `idl:"name:pwszAttributes;string;pointer:unique" json:"attributes"`
}

SetAttributesRequest structure represents the SetAttributes operation request

func (*SetAttributesRequest) MarshalNDR

func (o *SetAttributesRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SetAttributesRequest) UnmarshalNDR

func (o *SetAttributesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SetAttributesResponse

type SetAttributesResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The SetAttributes return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetAttributesResponse structure represents the SetAttributes operation response

func (*SetAttributesResponse) MarshalNDR

func (o *SetAttributesResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SetAttributesResponse) UnmarshalNDR

func (o *SetAttributesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SetExtensionRequest

type SetExtensionRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pwszAuthority: A null-terminated Unicode string that contains the name of the certificate
	// server. The pwszAuthority is a Unicode string in the form of a distinguished name
	// (DN) value, such as "CAName", where CAName MUST be the full common name (CN) or sanitized
	// name of the CA, as specified in [MS-WCCE] section 3.1.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// dwRequestId: A 32-bit nonzero unsigned integer value that specifies the ID of the
	// certificate request.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
	// pwszExtensionName: A null-terminated Unicode string that specifies the OID (1) for
	// the extension to set, as specified in [X680]. The string MUST be 31 or fewer characters
	// in length and the characters MUST NOT be NULL.
	ExtensionName string `idl:"name:pwszExtensionName;string;pointer:unique" json:"extension_name"`
	// dwType: An unsigned integer value that specifies the type of extension being set.
	// The dwType parameter MUST agree with the data type of the pb member of the pctbValue
	// parameter. This parameter can be one of the following values.
	//
	//	+------------+--------------------+
	//	|            |                    |
	//	|   VALUE    |      MEANING       |
	//	|            |                    |
	//	+------------+--------------------+
	//	+------------+--------------------+
	//	| 0x00000001 | Unsigned long data |
	//	+------------+--------------------+
	//	| 0x00000002 | Date/time          |
	//	+------------+--------------------+
	//	| 0x00000003 | Binary data        |
	//	+------------+--------------------+
	//	| 0x00000004 | Unicode            |
	//	+------------+--------------------+
	Type uint32 `idl:"name:dwType" json:"type"`
	// dwFlags: An unsigned integer value that specifies the flags for the extension being
	// set. This parameter can be one of the following values.
	//
	//	+-------+--------------------------------------------------------+
	//	|       |                                                        |
	//	| VALUE |                        MEANING                         |
	//	|       |                                                        |
	//	+-------+--------------------------------------------------------+
	//	+-------+--------------------------------------------------------+
	//	|     1 | This is a critical extension.                          |
	//	+-------+--------------------------------------------------------+
	//	|     2 | The extension MUST NOT be used on issued certificates. |
	//	+-------+--------------------------------------------------------+
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// pctbValue: A pointer to a CERTTRANSBLOB structure. The pb member MUST point to the
	// binary data for the extension and the cb member MUST contain the length, in bytes,
	// of the value. Depending on the value of the dwType parameter, the format of the binary
	// data that is pointed to by the pb member is shown in the following table.
	//
	//	+-----------------+----------------------------------------------------------------------------------+
	//	|    VALUE OF     |                                                                                  |
	//	|     DWTYPE      |                                     MEANING                                      |
	//	|                 |                                                                                  |
	//	+-----------------+----------------------------------------------------------------------------------+
	//	+-----------------+----------------------------------------------------------------------------------+
	//	| 0x00000001      | The CERTTRANSBLOB structure pb member MUST point to an unsigned long data value  |
	//	|                 | in little-endian format.                                                         |
	//	+-----------------+----------------------------------------------------------------------------------+
	//	| 0x00000002      | The CERTTRANSBLOB structure pb member MUST point to data using little-endian     |
	//	|                 | encoding format.                                                                 |
	//	+-----------------+----------------------------------------------------------------------------------+
	//	| 0x00000003      | The CERTTRANSBLOB structure pb member MUST point to an array of bytes that are   |
	//	|                 | not in need of endian forcing.                                                   |
	//	+-----------------+----------------------------------------------------------------------------------+
	//	| 0x00000004      | The CERTTRANSBLOB structure pb member MUST point to a null-terminated Unicode    |
	//	|                 | string in little-endian format.                                                  |
	//	+-----------------+----------------------------------------------------------------------------------+
	//
	// This method instructs the CA to add, modify, or disable an extension that is associated
	// with a previously submitted certificate request that is in a pending state, as specified
	// in [MS-WCCE] section 3.2.1.4.2.1.3. If the certificate request does not contain an
	// extension with the name specified in pwszExtensionName, then the extension is added
	// to the certificate request. If the request already contains an extension of that
	// name, then the extension specified in the SetExtension call will replace the old
	// one, hence modifying the contents. To disable an extension, a value of 2 can be specified
	// in dwFlags parameter, described above, when calling SetExtension.
	Value *csra.CertTransportBlob `idl:"name:pctbValue;pointer:ref" json:"value"`
}

SetExtensionRequest structure represents the SetExtension operation request

func (*SetExtensionRequest) MarshalNDR

func (o *SetExtensionRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SetExtensionRequest) UnmarshalNDR

func (o *SetExtensionRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SetExtensionResponse

type SetExtensionResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The SetExtension return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetExtensionResponse structure represents the SetExtension operation response

func (*SetExtensionResponse) MarshalNDR

func (o *SetExtensionResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SetExtensionResponse) UnmarshalNDR

func (o *SetExtensionResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL