icertadmind2

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: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ICertAdminD2 interface identifier 7fe0d935-dda6-443f-85d0-1cfb58fe41dd
	CertAdminD2IID = &dcom.IID{Data1: 0x7fe0d935, Data2: 0xdda6, Data3: 0x443f, Data4: []byte{0x85, 0xd0, 0x1c, 0xfb, 0x58, 0xfe, 0x41, 0xdd}}
	// Syntax UUID
	CertAdminD2SyntaxUUID = &uuid.UUID{TimeLow: 0x7fe0d935, TimeMid: 0xdda6, TimeHiAndVersion: 0x443f, ClockSeqHiAndReserved: 0x85, ClockSeqLow: 0xd0, Node: [6]uint8{0x1c, 0xfb, 0x58, 0xfe, 0x41, 0xdd}}
	// Syntax ID
	CertAdminD2SyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: CertAdminD2SyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/csra"
)

Functions

func CertAdminD2ServerHandle

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

func NewCertAdminD2ServerHandle

func NewCertAdminD2ServerHandle(o CertAdminD2Server) dcerpc.ServerHandle

func RegisterCertAdminD2Server

func RegisterCertAdminD2Server(conn dcerpc.Conn, o CertAdminD2Server, opts ...dcerpc.Option)

Types

type CertAdminD2Client

type CertAdminD2Client interface {

	// ICertAdminD retrieval method.
	CertAdminD() icertadmind.CertAdminDClient

	// The PublishCRLs method instructs a CA to publish CRLs and delta CRLs. This call can
	// either cause the republishing of the current CRLs or cause the CA to create and publish
	// new CRLs.
	PublishCRLs(context.Context, *PublishCRLsRequest, ...dcerpc.CallOption) (*PublishCRLsResponse, error)

	// The GetCAProperty method is used to retrieve the value of a specific property from
	// the CA.
	GetCAProperty(context.Context, *GetCAPropertyRequest, ...dcerpc.CallOption) (*GetCAPropertyResponse, error)

	// The SetCAProperty method is used to set CA properties.
	SetCAProperty(context.Context, *SetCAPropertyRequest, ...dcerpc.CallOption) (*SetCAPropertyResponse, error)

	// The GetCAPropertyInfo method is used to retrieve information about a property on
	// the CA, such as its type and length.
	GetCAPropertyInfo(context.Context, *GetCAPropertyInfoRequest, ...dcerpc.CallOption) (*GetCAPropertyInfoResponse, error)

	// The EnumViewColumnTable method retrieves information about one or more columns from
	// the specified CA database table.
	EnumViewColumnTable(context.Context, *EnumViewColumnTableRequest, ...dcerpc.CallOption) (*EnumViewColumnTableResponse, error)

	// The GetCASecurity method is used to retrieve CA security, as defined in Abstract
	// Data Model (section 3.1.1).
	GetCASecurity(context.Context, *GetCASecurityRequest, ...dcerpc.CallOption) (*GetCASecurityResponse, error)

	// The SetCASecurity method is used to set the CA security, as defined in the Abstract
	// Data Model (section 3.1.1).
	SetCASecurity(context.Context, *SetCASecurityRequest, ...dcerpc.CallOption) (*SetCASecurityResponse, error)

	// The Ping2 method is used to determine if the CA service is started and responding.
	Ping2(context.Context, *Ping2Request, ...dcerpc.CallOption) (*Ping2Response, error)

	// The GetArchivedKey method is used to retrieve an archived private key and the associated
	// certificate.
	GetArchivedKey(context.Context, *GetArchivedKeyRequest, ...dcerpc.CallOption) (*GetArchivedKeyResponse, error)

	// The GetAuditFilter method retrieves the list of events for which the CA server is
	// currently set to create security audit events, as specified in [CIMC-PP].
	GetAuditFilter(context.Context, *GetAuditFilterRequest, ...dcerpc.CallOption) (*GetAuditFilterResponse, error)

	// The SetAuditFilter method sets the list of events for which the CA server MUST create
	// security audit events, as specified in [CIMC-PP].
	SetAuditFilter(context.Context, *SetAuditFilterRequest, ...dcerpc.CallOption) (*SetAuditFilterResponse, error)

	// The GetOfficerRights method is used to retrieve the Officer rights, as specified
	// in [CIMC-PP].
	GetOfficerRights(context.Context, *GetOfficerRightsRequest, ...dcerpc.CallOption) (*GetOfficerRightsResponse, error)

	// The SetOfficerRights method is used to set Officer rights or Enrollment Agent rights.
	// Information on role separation is specified in [CIMC-PP].
	SetOfficerRights(context.Context, *SetOfficerRightsRequest, ...dcerpc.CallOption) (*SetOfficerRightsResponse, error)

	// The GetConfigEntry method retrieves the CAs that persisted the configuration data
	// listed in section 3.1.1.10. Configuration data is represented as a hierarchical data
	// structure with the following format: [\pwszAuthority][\pwszNodePath][\pwszEntry].
	GetConfigEntry(context.Context, *GetConfigEntryRequest, ...dcerpc.CallOption) (*GetConfigEntryResponse, error)

	// The SetConfigEntry method is used to set the CA's persisted configuration data that
	// is listed in section 3.1.1.10.
	SetConfigEntry(context.Context, *SetConfigEntryRequest, ...dcerpc.CallOption) (*SetConfigEntryResponse, error)

	// The ImportKey method adds an encrypted key set to an item in the CA database.
	ImportKey(context.Context, *ImportKeyRequest, ...dcerpc.CallOption) (*ImportKeyResponse, error)

	// The GetMyRoles method retrieves the CA roles, as specified in [CIMC-PP], assigned
	// to the user who calls the method.
	GetMyRoles(context.Context, *GetMyRolesRequest, ...dcerpc.CallOption) (*GetMyRolesResponse, error)

	// The DeleteRow method deletes a row or set of rows from a database table.
	DeleteRow(context.Context, *DeleteRowRequest, ...dcerpc.CallOption) (*DeleteRowResponse, error)

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

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

ICertAdminD2 interface.

func NewCertAdminD2Client

func NewCertAdminD2Client(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (CertAdminD2Client, error)

type CertAdminD2Server

type CertAdminD2Server interface {

	// ICertAdminD base class.
	icertadmind.CertAdminDServer

	// The PublishCRLs method instructs a CA to publish CRLs and delta CRLs. This call can
	// either cause the republishing of the current CRLs or cause the CA to create and publish
	// new CRLs.
	PublishCRLs(context.Context, *PublishCRLsRequest) (*PublishCRLsResponse, error)

	// The GetCAProperty method is used to retrieve the value of a specific property from
	// the CA.
	GetCAProperty(context.Context, *GetCAPropertyRequest) (*GetCAPropertyResponse, error)

	// The SetCAProperty method is used to set CA properties.
	SetCAProperty(context.Context, *SetCAPropertyRequest) (*SetCAPropertyResponse, error)

	// The GetCAPropertyInfo method is used to retrieve information about a property on
	// the CA, such as its type and length.
	GetCAPropertyInfo(context.Context, *GetCAPropertyInfoRequest) (*GetCAPropertyInfoResponse, error)

	// The EnumViewColumnTable method retrieves information about one or more columns from
	// the specified CA database table.
	EnumViewColumnTable(context.Context, *EnumViewColumnTableRequest) (*EnumViewColumnTableResponse, error)

	// The GetCASecurity method is used to retrieve CA security, as defined in Abstract
	// Data Model (section 3.1.1).
	GetCASecurity(context.Context, *GetCASecurityRequest) (*GetCASecurityResponse, error)

	// The SetCASecurity method is used to set the CA security, as defined in the Abstract
	// Data Model (section 3.1.1).
	SetCASecurity(context.Context, *SetCASecurityRequest) (*SetCASecurityResponse, error)

	// The Ping2 method is used to determine if the CA service is started and responding.
	Ping2(context.Context, *Ping2Request) (*Ping2Response, error)

	// The GetArchivedKey method is used to retrieve an archived private key and the associated
	// certificate.
	GetArchivedKey(context.Context, *GetArchivedKeyRequest) (*GetArchivedKeyResponse, error)

	// The GetAuditFilter method retrieves the list of events for which the CA server is
	// currently set to create security audit events, as specified in [CIMC-PP].
	GetAuditFilter(context.Context, *GetAuditFilterRequest) (*GetAuditFilterResponse, error)

	// The SetAuditFilter method sets the list of events for which the CA server MUST create
	// security audit events, as specified in [CIMC-PP].
	SetAuditFilter(context.Context, *SetAuditFilterRequest) (*SetAuditFilterResponse, error)

	// The GetOfficerRights method is used to retrieve the Officer rights, as specified
	// in [CIMC-PP].
	GetOfficerRights(context.Context, *GetOfficerRightsRequest) (*GetOfficerRightsResponse, error)

	// The SetOfficerRights method is used to set Officer rights or Enrollment Agent rights.
	// Information on role separation is specified in [CIMC-PP].
	SetOfficerRights(context.Context, *SetOfficerRightsRequest) (*SetOfficerRightsResponse, error)

	// The GetConfigEntry method retrieves the CAs that persisted the configuration data
	// listed in section 3.1.1.10. Configuration data is represented as a hierarchical data
	// structure with the following format: [\pwszAuthority][\pwszNodePath][\pwszEntry].
	GetConfigEntry(context.Context, *GetConfigEntryRequest) (*GetConfigEntryResponse, error)

	// The SetConfigEntry method is used to set the CA's persisted configuration data that
	// is listed in section 3.1.1.10.
	SetConfigEntry(context.Context, *SetConfigEntryRequest) (*SetConfigEntryResponse, error)

	// The ImportKey method adds an encrypted key set to an item in the CA database.
	ImportKey(context.Context, *ImportKeyRequest) (*ImportKeyResponse, error)

	// The GetMyRoles method retrieves the CA roles, as specified in [CIMC-PP], assigned
	// to the user who calls the method.
	GetMyRoles(context.Context, *GetMyRolesRequest) (*GetMyRolesResponse, error)

	// The DeleteRow method deletes a row or set of rows from a database table.
	DeleteRow(context.Context, *DeleteRowRequest) (*DeleteRowResponse, error)
}

ICertAdminD2 server interface.

type DeleteRowRequest

type DeleteRowRequest 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"`
	// dwFlags: An unsigned integer value that specifies the type of rows to be deleted.
	// This parameter can be one of the following values.
	//
	//	+------------+----------------------------------------------------------+
	//	|            |                                                          |
	//	|   VALUE    |                         MEANING                          |
	//	|            |                                                          |
	//	+------------+----------------------------------------------------------+
	//	+------------+----------------------------------------------------------+
	//	| 0x00000000 | Delete the individual row.                               |
	//	+------------+----------------------------------------------------------+
	//	| 0x00000001 | Delete the rows that contain expired certificates.       |
	//	+------------+----------------------------------------------------------+
	//	| 0x00000002 | Delete the rows that contain pending or failed requests. |
	//	+------------+----------------------------------------------------------+
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// FileTime:  Contains a 64-bit value that represents the number of 100-nanosecond
	// intervals since January 1, 1601 (UTC). The value is used to query for multiple rows
	// to be deleted. It MUST contain all zeros if the dwRowId parameter is nonzero.
	FileTime *dtyp.Filetime `idl:"name:FileTime" json:"file_time"`
	// dwTable: An unsigned integer value that specifies the table in which to delete rows.
	// This parameter can be one of the following values.
	//
	//	+------------+----------------------------------+
	//	|            |                                  |
	//	|   VALUE    |             MEANING              |
	//	|            |                                  |
	//	+------------+----------------------------------+
	//	+------------+----------------------------------+
	//	| 0x00000000 | Delete the Request table rows.   |
	//	+------------+----------------------------------+
	//	| 0x00003000 | Delete the Extension table rows. |
	//	+------------+----------------------------------+
	//	| 0x00004000 | Delete the Attribute table rows. |
	//	+------------+----------------------------------+
	//	| 0x00005000 | Delete the CRL table rows.       |
	//	+------------+----------------------------------+
	Table uint32 `idl:"name:dwTable" json:"table"`
	// dwRowId: An unsigned integer value that represents the row identifier in the CA data
	// table. MUST be set to 0 if FileTime is nonzero.
	RowID uint32 `idl:"name:dwRowId" json:"row_id"`
}

DeleteRowRequest structure represents the DeleteRow operation request

func (*DeleteRowRequest) MarshalNDR

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

func (*DeleteRowRequest) UnmarshalNDR

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

type DeleteRowResponse

type DeleteRowResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pcDeleted:  Returns the count of successfully deleted table rows.
	//
	// The DeleteRow method is used to instruct the CA to delete rows from the specified
	// table.
	DeletedCount int32 `idl:"name:pcDeleted" json:"deleted_count"`
	// Return: The DeleteRow return value.
	Return int32 `idl:"name:Return" json:"return"`
}

DeleteRowResponse structure represents the DeleteRow operation response

func (*DeleteRowResponse) MarshalNDR

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

func (*DeleteRowResponse) UnmarshalNDR

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

type EnumViewColumnTableRequest

type EnumViewColumnTableRequest 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"`
	// iTable: An unsigned integer that specifies the database table to be used for the
	// enumeration. This MUST be set from the following values.
	//
	//	+------------+-----------------+
	//	|            |                 |
	//	|   VALUE    |     MEANING     |
	//	|            |                 |
	//	+------------+-----------------+
	//	+------------+-----------------+
	//	| 0x00000000 | Request table   |
	//	+------------+-----------------+
	//	| 0x00003000 | Extension table |
	//	+------------+-----------------+
	//	| 0x00004000 | Attribute table |
	//	+------------+-----------------+
	//	| 0x00005000 | CRL table       |
	//	+------------+-----------------+
	Table uint32 `idl:"name:iTable" json:"table"`
	// iColumn: An unsigned integer that specifies the column number with which to begin
	// the enumeration. Valid values are from 0 to one less than the maximum number of columns
	// for the 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"`
}

EnumViewColumnTableRequest structure represents the EnumViewColumnTable operation request

func (*EnumViewColumnTableRequest) MarshalNDR

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

func (*EnumViewColumnTableRequest) UnmarshalNDR

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

type EnumViewColumnTableResponse

type EnumViewColumnTableResponse 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.
	// The format and marshaling for the value of pctbColumnInfo MUST be as specified in
	// section 2.2.1.7.
	//
	// The EnumViewColumnTable method returns information to the client about columns that
	// are associated with a specific table. The CA server MUST enforce the following processing
	// rules:
	//
	// * The CA server MUST enforce that the iTable parameter has a value as specified in
	// the previous table; otherwise, it MUST fail with the error ERROR_INVALID_PARAMETER.
	//
	// * The CA server MUST enforce that iColumn is less than the number of columns associated
	// with the table; otherwise, it MUST fail with the error ERROR_ARITHMETIC_OVERFLOW.
	//
	// * The CA server MUST enforce that cColumn is greater than 0; otherwise, it MUST fail
	// with the error ERROR_INVALID_PARAMETER. <71> ( 5f06c74c-1a29-4fdf-b8dd-ae3300d1b90d#Appendix_A_71
	// )
	//
	// * The CA server MUST use the value of *iColumn* to identify the column identifier
	// that is associated with the table (identified by the value of the iTable parameter).
	//
	// * The number of column information returned MUST be a minimum of the *cColumn* value
	// and the remaining number of columns in the table (starting from *iColumn* ). The
	// value of *pcColumn MUST be set to the number of the column information returned.
	ColumnInfo *csra.CertTransportBlob `idl:"name:pctbColumnInfo;pointer:ref" json:"column_info"`
	// Return: The EnumViewColumnTable return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumViewColumnTableResponse structure represents the EnumViewColumnTable operation response

func (*EnumViewColumnTableResponse) MarshalNDR

func (*EnumViewColumnTableResponse) UnmarshalNDR

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

type GetArchivedKeyRequest

type GetArchivedKeyRequest 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"`
	// dwRequestId: An unsigned integer value that specifies the RequestId of the certificate
	// request for which the archived private key and associated certificate are being requested.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
}

GetArchivedKeyRequest structure represents the GetArchivedKey operation request

func (*GetArchivedKeyRequest) MarshalNDR

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

func (*GetArchivedKeyRequest) UnmarshalNDR

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

type GetArchivedKeyResponse

type GetArchivedKeyResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pctbArchivedKey: A pointer to a CERTTRANSBLOB structure that MUST contain, on successful
	// response, the archived private key and associated certificate.
	//
	// ArchivedKey Property Value Processing and Format
	ArchivedKey *csra.CertTransportBlob `idl:"name:pctbArchivedKey;pointer:ref" json:"archived_key"`
	// Return: The GetArchivedKey return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetArchivedKeyResponse structure represents the GetArchivedKey operation response

func (*GetArchivedKeyResponse) MarshalNDR

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

func (*GetArchivedKeyResponse) UnmarshalNDR

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

type GetAuditFilterRequest

type GetAuditFilterRequest 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 pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

GetAuditFilterRequest structure represents the GetAuditFilter operation request

func (*GetAuditFilterRequest) MarshalNDR

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

func (*GetAuditFilterRequest) UnmarshalNDR

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

type GetAuditFilterResponse

type GetAuditFilterResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwFilter: An unsigned integer that specifies the current audit settings. This is
	// a bitwise-OR combination of zero or more of the following values.
	//
	//	+------------+----------------------------------------------------------------------------------+
	//	|            |                                                                                  |
	//	|   VALUE    |                                     MEANING                                      |
	//	|            |                                                                                  |
	//	+------------+----------------------------------------------------------------------------------+
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000001 | Audit CA server for the following events: ServerControl Registration of the      |
	//	|            | ICertAdminD interface. Unregistration of the ICertAdminD interface.              |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000002 | Audit CA server for the following method calls: BackupPrepare BackupEnd          |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000004 | Audit CA server for the following method calls: ICertRequestD::Request           |
	//	|            | ResubmitRequest DenyRequest SetAttributes SetExtensions ImportCertificate        |
	//	|            | DeleteRow                                                                        |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000008 | Audit CA server for the following method calls: RevokeCertificate PublishCRL     |
	//	|            | PublishCRLs                                                                      |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000010 | Audit CA server for the following method calls: SetCASecurity SetOfficerRights   |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000020 | Audit CA server for the following method calls: GetArchivedKey ImportKey         |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000040 | Audit CA server for the following method calls: SetCAProperty SetConfigEntry     |
	//	+------------+----------------------------------------------------------------------------------+
	//
	// The GetAuditFilter method is used to retrieve the audit filter currently in use (initialize
	// to 0 during the registration of the interfaces and can be modified by a call to the
	// SetAuditFilter method).
	Filter uint32 `idl:"name:pdwFilter" json:"filter"`
	// Return: The GetAuditFilter return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetAuditFilterResponse structure represents the GetAuditFilter operation response

func (*GetAuditFilterResponse) MarshalNDR

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

func (*GetAuditFilterResponse) UnmarshalNDR

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

type GetCAPropertyInfoRequest

type GetCAPropertyInfoRequest 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.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

GetCAPropertyInfoRequest structure represents the GetCAPropertyInfo operation request

func (*GetCAPropertyInfoRequest) MarshalNDR

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

func (*GetCAPropertyInfoRequest) UnmarshalNDR

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

type GetCAPropertyInfoResponse

type GetCAPropertyInfoResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pcProperty: An integer value containing the number of property structures returned.
	PropertyCount int32 `idl:"name:pcProperty" json:"property_count"`
	// pctbPropInfo: A CERTTRANSBLOB structure containing zero or more CATRANSPROP structures.
	// For more information on CERTTRANSBLOB and CATRANSPROP structures, see section 2.2.1.
	//
	// The processing of the ICertAdminD2::GetCAPropertyInfo method is the same as that
	// specified in [MS-WCCE] section 3.2.1.4.3.3.
	PropertyInfo *csra.CertTransportBlob `idl:"name:pctbPropInfo;pointer:ref" json:"property_info"`
	// Return: The GetCAPropertyInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetCAPropertyInfoResponse structure represents the GetCAPropertyInfo operation response

func (*GetCAPropertyInfoResponse) MarshalNDR

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

func (*GetCAPropertyInfoResponse) UnmarshalNDR

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

type GetCAPropertyRequest

type GetCAPropertyRequest 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"`
	// PropId: An integer value specifying the property to be returned. The PropID value
	// MUST be one of the values in the table labeled PropId in [MS-WCCE] section 3.2.1.4.3.2.
	// If a value other than one of the listed values is used, the error E_INVALIDARG is
	// returned.
	PropertyID int32 `idl:"name:PropId" json:"property_id"`
	// PropIndex: Some of these properties (the ones labeled "indexed" in the table in [MS-WCCE]
	// section 3.2.1.4.3.2) have arrays of values. This parameter MUST be used as the index
	// into such an array. For properties that are not arrays, this parameter MUST be ignored.
	PropertyIndex int32 `idl:"name:PropIndex" json:"property_index"`
	// PropType: An integer value that specifies the property data type.
	//
	//	+----------------------------+-------------------------------------------------------------+
	//	|                            |                                                             |
	//	|           VALUE            |                           MEANING                           |
	//	|                            |                                                             |
	//	+----------------------------+-------------------------------------------------------------+
	//	+----------------------------+-------------------------------------------------------------+
	//	| PROPTYPE_LONG 0x00000001   | The property type is a signed long integer or a byte array. |
	//	+----------------------------+-------------------------------------------------------------+
	//	| PROPTYPE_BINARY 0x00000003 | The property type is binary data.                           |
	//	+----------------------------+-------------------------------------------------------------+
	//	| PROPTYPE_STRING 0x00000004 | The property type is a Unicode string.                      |
	//	+----------------------------+-------------------------------------------------------------+
	PropertyType int32 `idl:"name:PropType" json:"property_type"`
}

GetCAPropertyRequest structure represents the GetCAProperty operation request

func (*GetCAPropertyRequest) MarshalNDR

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

func (*GetCAPropertyRequest) UnmarshalNDR

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

type GetCAPropertyResponse

type GetCAPropertyResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pctbPropertyValue:  If the function succeeds, this method MUST return a CERTTRANSBLOB
	// structure that contains the property value. If the function fails, the contents are
	// undefined.
	//
	// Note  The numeric values for the constants listed in this topic are defined in the
	// table for the PropID parameter.
	//
	// * If PROPTYPE_STRING is specified in the PropType parameter, pctbPropertyValue MUST
	// be a pointer to a CERTTRANSBLOB structure. The *pb* member of the structure points
	// to the little-endian ( c6451297-197d-4b4b-b786-3f3187b67b8f#gt_079478cb-f4c5-4ce5-b72b-2144da5d2ce7
	// ) encoded Unicode string. The length, in bytes, of the string MUST be contained in
	// the *cb* member.
	//
	// * If PROPTYPE_LONG is specified in the PropType parameter, there are two possible
	// return types depending on the PropID. The first type is the return of a CAINFO structure
	// (as specified in [MS-WCCE] section 2.2.2.4 ( ../ms-wcce/4fa5241c-d10e-4011-87e0-c74753d725a3
	// ) ) and the second type is for the return of a BYTE array:
	//
	// * If the value passed in PropId maps to one of the following properties, pctbPropertyValue
	// is a pointer to a CERTTRANSBLOB structure, and the *pb* member of that structure
	// MUST contain a pointer to a CAINFO structure that contains the values of the properties
	// listed as follows. The marshaling rules for a CAINFO structure in a CERTTRANSBLOB
	// are specified in [MS-WCCE] section 2.2.2.2.5 ( ../ms-wcce/cd9656c0-6be3-4887-84b0-aacedc017b0b
	// ) :
	//
	// * CR_PROP_CATYPE
	//
	// * CR_PROP_CASIGCERTCOUNT
	//
	// * CR_PROP_CAXCHGCERTCOUNT
	//
	// * CR_PROP_EXITCOUNT
	//
	// * CR_PROP_CAPROPIDMAX
	//
	// * CR_PROP_KRACERTUSEDCOUNT
	//
	// * CR_PROP_ROLESEPARATIONENABLED
	//
	// * CR_PROP_KRACERTCOUNT
	//
	// * CR_PROP_ADVANCEDSERVER
	//
	// * If the value passed in PropId maps to one of the following properties, pctbPropertyValue
	// is a pointer to a CERTTRANSBLOB structure, and the *pb* member of the structure points
	// to a byte array containing the value for the requested property. The marshaling rules
	// for each property are specified in the subsection of [MS-WCCE] section 3.2.1.4.3.2
	// that corresponds to the property name. The *cb* member contains the length of the
	// byte array:
	//
	// * CR_PROP_CACERTSTATE
	//
	// * CR_PROP_CRLSTATE
	//
	// * CR_PROP_KRACERTSTATE
	//
	// * CR_PROP_BASECRLPUBLISHSTATE
	//
	// * CR_PROP_DELTACRLPUBLISHSTATE
	//
	// * CR_PROP_CACERTSTATUSCODE
	//
	// * CR_PROP_CAFORWARDCROSSCERTSTATE
	//
	// * CR_PROP_CABACKWARDCROSSCERTSTATE
	//
	// * If PROPTYPE_BINARY is specified in the PropType parameter, pctbPropertyValue MUST
	// be a pointer to a CERTTRANSBLOB structure. The *pb* member of the structure points
	// to the requested binary large object (BLOB).
	//
	// Based on the property identifier passed in PropId , the binary data pointed to by
	// the *pb* member MUST be populated as follows:
	//
	// * CR_PROP_CASIGCERT: MUST be an X.509 certificate ( c6451297-197d-4b4b-b786-3f3187b67b8f#gt_7a0f4b71-23ba-434f-b781-28053ed64879
	// ) encoded using DER, as specified in [X660] ( https://go.microsoft.com/fwlink/?LinkId=90592
	// ).
	//
	// * CR_PROP_BASECRL: MUST be a X.509 CRL ( c6451297-197d-4b4b-b786-3f3187b67b8f#gt_4f22841f-249b-42fb-a31a-5049c00be939
	// ) encoded using DER, as specified in [X660].
	//
	// * CR_PROP_CAFORWARDCROSSCERT: MUST be a X.509 certificate encoded using DER, as specified
	// in [X660].
	//
	// * CR_PROP_CABACKWARDCROSSCERT: MUST be a X.509 certificate encoded using DER, as
	// specified in [X660].
	//
	// * CR_PROP_CAXCHGCERT: MUST be a X.509 certificate encoded using DER, as specified
	// in [X660].
	//
	// The CA MUST execute the processing rules specified in [MS-WCCE] section 3.2.1.4.3.2.15
	// ( ../ms-wcce/585d9359-4bc5-471f-bba7-2d9a336debdc ) , "PropID = 0x0000000F (CR_PROP_CAXCHGCERT)
	// "CA Exchange Certificate"".
	//
	// * CR_PROP_CAXCHGCERTCHAIN: MUST be a CMS message, as specified in [RFC2797] ( https://go.microsoft.com/fwlink/?LinkId=90382
	// ) encoded using DER, as specified in [X660].
	//
	// The CA MUST execute the processing rules specified in [MS-WCCE] section 3.2.1.4.3.2.16
	// ( ../ms-wcce/d38e7259-d0d6-4adb-b111-2bac47c64bed ) , "PropID = 0x00000010 (CR_PROP_CAXCHGCERTCHAIN)
	// "CA Exchange Certificate Chain"".
	//
	// * CR_PROP_CASIGCERTCHAIN: MUST be a CMS message [RFC2797] encoded using DER. [X660].
	//
	// * CR_PROP_CASIGCERTCRLCHAIN: MUST be a CMS message, as specified in [RFC2797], encoded
	// using DER, as specified in [X660].
	//
	// * CR_PROP_CASIGCERTCRLCHAIN: MUST be a CMS message, as specified in [RFC2797], encoded
	// using DER, as specified in [X660].
	//
	// * CR_PROP_CAXCHGCERTCRLCHAIN: CR_PROP_CASIGCERTCRLCHAIN: MUST be a CMS message, as
	// specified in [RFC2797], encoded using DER, as specified in [X660].
	//
	// The CA MUST execute the processing rules specified in [MS-WCCE] section 3.2.1.4.3.2.33
	// ( ../ms-wcce/5dbf4c4f-3ac1-426a-9425-ff96968a1b6a ) , "PropID = 0x00000021 (CR_PROP_CAXCHGCERTCRLCHAIN)
	// "CA Exchange Certificate Chain and CRL"".
	//
	// * CR_PROP_DELTACRL: MUST be a X.509 CRL encoded using DER [X660].
	//
	// * CR_PROP_KRACERT: MUST be a X.509 CRL encoded using DER, as specified in [X660].
	//
	// The marshaling rules for each of the preceding properties into a CERTTRANSBLOB are
	// specified in [MS-WCCE] sections 2.2.2.2.2 (for X.509 certificate), 2.2.2.2.3 (X.509
	// CRL), and 2.2.2.2.4 (CMS message).
	PropertyValue *csra.CertTransportBlob `idl:"name:pctbPropertyValue;pointer:ref" json:"property_value"`
	// Return: The GetCAProperty return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetCAPropertyResponse structure represents the GetCAProperty operation response

func (*GetCAPropertyResponse) MarshalNDR

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

func (*GetCAPropertyResponse) UnmarshalNDR

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

type GetCASecurityRequest

type GetCASecurityRequest 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"`
}

GetCASecurityRequest structure represents the GetCASecurity operation request

func (*GetCASecurityRequest) MarshalNDR

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

func (*GetCASecurityRequest) UnmarshalNDR

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

type GetCASecurityResponse

type GetCASecurityResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pctbSD: A pointer to a CERTTRANSBLOB data structure that contains the CA's security
	// descriptor. Security descriptors are specified in [MS-DTYP] section 2.4.6.
	SD *csra.CertTransportBlob `idl:"name:pctbSD;pointer:ref" json:"sd"`
	// Return: The GetCASecurity return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetCASecurityResponse structure represents the GetCASecurity operation response

func (*GetCASecurityResponse) MarshalNDR

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

func (*GetCASecurityResponse) UnmarshalNDR

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

type GetConfigEntryRequest

type GetConfigEntryRequest 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"`
	// pwszNodePath: A string value that represents the node path for the configuration
	// information. This parameter can be an empty string and MUST NOT be NULL.<72>
	NodePath string `idl:"name:pwszNodePath;string;pointer:unique" json:"node_path"`
	// pwszEntry: A string value that represents the name of the leaf entry whose information
	// is being retrieved. This value can be an EMPTY string and MUST NOT be NULL.<73>
	Entry string `idl:"name:pwszEntry;string;pointer:ref" json:"entry"`
}

GetConfigEntryRequest structure represents the GetConfigEntry operation request

func (*GetConfigEntryRequest) MarshalNDR

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

func (*GetConfigEntryRequest) UnmarshalNDR

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

type GetConfigEntryResponse

type GetConfigEntryResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pVariant: A pointer to a VARIANT that receives the requested information.
	//
	// On Windows, the CA uses these datatypes to set the data that it stores in the registry:
	//
	//	REG_BINARY – The vt member of VARIANT is set to VT_ARRAY|VT_UI1 and the pArray member references a single dimension SAFEARRAY the binary data. The number of elements of the SAFEARRAY reference by pArray is equal to the length of binary data.
	//
	// REG_DWORD – The vt member of VARIANT is set to VT_I4 and the lVal member is the
	// registry value.
	//
	// REG_SZ – The vt member of VARIANT is set to VT_BSTR and the bstrVal member is set
	// to BSTR for Unicode string in the registry value.
	//
	// The GetConfigEntry method retrieves the CA configuration data or configuration data
	// hierarchy information.
	Variant *oaut.Variant `idl:"name:pVariant;pointer:ref" json:"variant"`
	// Return: The GetConfigEntry return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetConfigEntryResponse structure represents the GetConfigEntry operation response

func (*GetConfigEntryResponse) MarshalNDR

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

func (*GetConfigEntryResponse) UnmarshalNDR

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

type GetMyRolesRequest

type GetMyRolesRequest 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"`
}

GetMyRolesRequest structure represents the GetMyRoles operation request

func (*GetMyRolesRequest) MarshalNDR

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

func (*GetMyRolesRequest) UnmarshalNDR

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

type GetMyRolesResponse

type GetMyRolesResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwRoles: A bitwise-OR combination of zero or more CA security values based on the
	// CA implementation. Microsoft CA permissions are defined in section 3.1.1.7.
	//
	// For pdwRoles, the server MUST return a signed integer that represents the CA roles
	// assigned to the caller.
	Roles int32 `idl:"name:pdwRoles" json:"roles"`
	// Return: The GetMyRoles return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetMyRolesResponse structure represents the GetMyRoles operation response

func (*GetMyRolesResponse) MarshalNDR

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

func (*GetMyRolesResponse) UnmarshalNDR

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

type GetOfficerRightsRequest

type GetOfficerRightsRequest 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"`
}

GetOfficerRightsRequest structure represents the GetOfficerRights operation request

func (*GetOfficerRightsRequest) MarshalNDR

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

func (*GetOfficerRightsRequest) UnmarshalNDR

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

type GetOfficerRightsResponse

type GetOfficerRightsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pfEnabled: A pointer to a Boolean value.
	Enabled bool `idl:"name:pfEnabled" json:"enabled"`
	// pctbSD: A pointer to the CERTTRANSBLOB structure that contains the marshaled information
	// specified in section 2.2.1.11.1.
	SD *csra.CertTransportBlob `idl:"name:pctbSD;pointer:ref" json:"sd"`
	// Return: The GetOfficerRights return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetOfficerRightsResponse structure represents the GetOfficerRights operation response

func (*GetOfficerRightsResponse) MarshalNDR

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

func (*GetOfficerRightsResponse) UnmarshalNDR

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

type ImportKeyRequest

type ImportKeyRequest 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"`
	// dwRequestId: An unsigned integer value that represents the certificate request ID
	// in the CA database.
	RequestID uint32 `idl:"name:dwRequestId" json:"request_id"`
	// pwszCertHash: A null-terminated Unicode string value that represents the SHA-1 hash
	// of the ASN.1 DER–encoded certificate data (as specified in [X660]) and that is
	// formatted as a hexadecimal string.
	CertHash string `idl:"name:pwszCertHash;string;pointer:unique" json:"cert_hash"`
	// dwFlags: An unsigned integer that specifies the optional flags for this method.
	//
	//	+------------+--------------------------------------------------+
	//	|            |                                                  |
	//	|   VALUE    |                     MEANING                      |
	//	|            |                                                  |
	//	+------------+--------------------------------------------------+
	//	+------------+--------------------------------------------------+
	//	| 0x00010000 | Overwrite the existing archived key, if present. |
	//	+------------+--------------------------------------------------+
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// pctbKey: A CERTTRANSBLOB structure that contains the ASN.1 DER–encoded (as specified
	// in [X660] and [X690]) PKCS#7 message (as specified in [RFC2315]) that contains the
	// private key to be archived. The content of the enveloped PKCS#7 is as specified in
	// [MS-WCCE] section 3.2.1.4.2.1.4.
	Key *csra.CertTransportBlob `idl:"name:pctbKey;pointer:ref" json:"key"`
}

ImportKeyRequest structure represents the ImportKey operation request

func (*ImportKeyRequest) MarshalNDR

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

func (*ImportKeyRequest) UnmarshalNDR

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

type ImportKeyResponse

type ImportKeyResponse 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 ImportKey return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ImportKeyResponse structure represents the ImportKey operation response

func (*ImportKeyResponse) MarshalNDR

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

func (*ImportKeyResponse) UnmarshalNDR

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

type Ping2Request

type Ping2Request 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.
	//
	// ICertAdminD2::Ping2 is as specified in [MS-WCCE] section 3.2.1.4.3.4.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
}

Ping2Request structure represents the Ping2 operation request

func (*Ping2Request) MarshalNDR

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

func (*Ping2Request) UnmarshalNDR

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

type Ping2Response

type Ping2Response 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 Ping2 return value.
	Return int32 `idl:"name:Return" json:"return"`
}

Ping2Response structure represents the Ping2 operation response

func (*Ping2Response) MarshalNDR

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

func (*Ping2Response) UnmarshalNDR

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

type PublishCRLsRequest

type PublishCRLsRequest 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"`
	// FileTime: Contains a 64-bit value that represents the number of 100-nanosecond intervals
	// since January 1, 1601 (UTC). Specifies the nextUpdate value of the CRL, as specified
	// in [RFC3280] section 5.1.2.5, in Greenwich Mean Time.
	FileTime *dtyp.Filetime `idl:"name:FileTime" json:"file_time"`
	// Flags: An unsigned integer value that specifies the type of CRL to publish and the
	// publishing parameters. This parameter MUST be set to a combination of the following
	// values. Flags uses B as the least-significant bit. It uses B, D and F as shown in
	// the following table.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| B | D | 0 | 0 | F | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	//
	//	+-------+------------------------------------------------+
	//	|       |                                                |
	//	| VALUE |                  DESCRIPTION                   |
	//	|       |                                                |
	//	+-------+------------------------------------------------+
	//	+-------+------------------------------------------------+
	//	| B     | If 1, the CA MUST publish a base CRL.          |
	//	+-------+------------------------------------------------+
	//	| D     | If 1, the CA MUST publish a delta CRL.         |
	//	+-------+------------------------------------------------+
	//	| F     | If 1, the CA MUST republish the existing CRLs. |
	//	+-------+------------------------------------------------+
	Flags uint32 `idl:"name:Flags" json:"flags"`
}

PublishCRLsRequest structure represents the PublishCRLs operation request

func (*PublishCRLsRequest) MarshalNDR

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

func (*PublishCRLsRequest) UnmarshalNDR

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

type PublishCRLsResponse

type PublishCRLsResponse 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 PublishCRLs return value.
	Return int32 `idl:"name:Return" json:"return"`
}

PublishCRLsResponse structure represents the PublishCRLs operation response

func (*PublishCRLsResponse) MarshalNDR

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

func (*PublishCRLsResponse) UnmarshalNDR

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

type SetAuditFilterRequest

type SetAuditFilterRequest 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"`
	// dwFilter: An unsigned integer that specifies the events to be audited by the CA.
	// For possible values, see section 3.1.4.2.10.
	//
	// The SetAuditFilter method is used to set the audit filter value that is passed in
	// by the client. The audit filter value is used to determine which actions are audited.
	Filter uint32 `idl:"name:dwFilter" json:"filter"`
}

SetAuditFilterRequest structure represents the SetAuditFilter operation request

func (*SetAuditFilterRequest) MarshalNDR

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

func (*SetAuditFilterRequest) UnmarshalNDR

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

type SetAuditFilterResponse

type SetAuditFilterResponse 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 SetAuditFilter return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetAuditFilterResponse structure represents the SetAuditFilter operation response

func (*SetAuditFilterResponse) MarshalNDR

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

func (*SetAuditFilterResponse) UnmarshalNDR

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

type SetCAPropertyRequest

type SetCAPropertyRequest 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 pwszAuthority definition in section 3.1.4.1.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// PropId: A LONG value that specifies one and exactly one of the following property
	// identifiers. The use of PropIds, is as specified in [MS-WCCE] section 3.2.1.4.3.2.
	// If a value other than one of the listed values is used, the error E_INVALIDARG is
	// returned.
	//
	//	+------------+----------------------------------------------------------------------------------+
	//	|            |                                                                                  |
	//	|   VALUE    |                                     MEANING                                      |
	//	|            |                                                                                  |
	//	+------------+----------------------------------------------------------------------------------+
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x0000001a | A binary object that contains the CA's key recovery agent (KRA) certificate to   |
	//	|            | be added at the index specified by PropIndex parameter.                          |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000019 | The maximum number of KRA certificates available on the CA.                      |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x00000018 | The minimum number of KRAs to use when archiving a private key. For more         |
	//	|            | information on KRA usage, see [MSFT-ARCHIVE].                                    |
	//	+------------+----------------------------------------------------------------------------------+
	//	| 0x0000001d | A collection of name and OID (1) pairs that identify the templates supported by  |
	//	|            | a CA.                                                                            |
	//	+------------+----------------------------------------------------------------------------------+
	PropertyID int32 `idl:"name:PropId" json:"property_id"`
	// PropIndex: A LONG value for the index of the KRA certificate to set when the provided
	// PropId is 0x1a. For other PropId values, it MUST be 0.
	PropertyIndex int32 `idl:"name:PropIndex" json:"property_index"`
	// PropType: A LONG value that specifies the type of the property. This parameter MUST
	// be one of the following values.
	//
	//	+----------------------------+---------------------+
	//	|                            |                     |
	//	|           VALUE            |       MEANING       |
	//	|                            |                     |
	//	+----------------------------+---------------------+
	//	+----------------------------+---------------------+
	//	| PROPTYPE_LONG 0x00000001   | Signed LONG data    |
	//	+----------------------------+---------------------+
	//	| PROPTYPE_BINARY 0x00000003 | Binary data         |
	//	+----------------------------+---------------------+
	//	| PROPTYPE_STRING 0x00000004 | Unicode String data |
	//	+----------------------------+---------------------+
	PropertyType int32 `idl:"name:PropType" json:"property_type"`
	// pctbPropertyValue: A pointer to CERTTRANSBLOB that specifies the new property value.
	// The format for the value contained in CERTTRANSBLOB is specific to the PropId defined
	// as follows.
	//
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	|              VALUE OF               |                               FORMAT FOR VALUES IN                               |
	//	|               PROPID                |                                  CERTTRANSBLOB                                   |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| CR_PROP_KRACERTUSEDCOUNT 0x00000018 | The pb member of CERTTRANSBLOB MUST point to an unsigned integer value           |
	//	|                                     | (little-endian format) and the cb member of CERTTRANSBLOB MUST contain the       |
	//	|                                     | length of the bytes containing the value.                                        |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| CR_PROP_KRACERTCOUNT 0x00000019     | The pb member of CERTTRANSBLOB MUST point to an unsigned integer value           |
	//	|                                     | (little-endian format) and the cb member of CERTTRANSBLOB MUST contain the       |
	//	|                                     | length of the bytes containing the value.                                        |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| CR_PROP_KRACERT 0x0000001a          | The pb member of CERTTRANSBLOB MUST point to an ASN.1 DER (as specified in       |
	//	|                                     | [ITUX690]) encoded byte array of Certificate. The cb member of CERTTRANSBLOB     |
	//	|                                     | MUST contain the length of the array.                                            |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| CR_PROP_TEMPLATES 0x0000001d        | As specified in [MS-WCCE] section 3.2.1.4.3.2.29.                                |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//
	// The following  table defines the values that MUST be set for PropIndex and PropType
	// for each one of the property values passed via PropID.
	//
	//	+--------------+-------------------------+------------------+
	//	|    PROPID    |     PROPINDEX MUST      |  PROPTYPE MUST   |
	//	|    VALUE     |           BE            |        BE        |
	//	+--------------+-------------------------+------------------+
	//	+--------------+-------------------------+------------------+
	//	| 0x0000001a   | The minimum index is 0. | 0x00000003       |
	//	+--------------+-------------------------+------------------+
	//	| 0x00000019   | 0x00000000              | 0x00000001       |
	//	+--------------+-------------------------+------------------+
	//	| 0x00000018   | 0x00000000              | 0x00000001       |
	//	+--------------+-------------------------+------------------+
	//	| 0x0000001d   | 0x00000000              | 0x00000004       |
	//	+--------------+-------------------------+------------------+
	PropertyValue *csra.CertTransportBlob `idl:"name:pctbPropertyValue" json:"property_value"`
}

SetCAPropertyRequest structure represents the SetCAProperty operation request

func (*SetCAPropertyRequest) MarshalNDR

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

func (*SetCAPropertyRequest) UnmarshalNDR

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

type SetCAPropertyResponse

type SetCAPropertyResponse 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 SetCAProperty return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetCAPropertyResponse structure represents the SetCAProperty operation response

func (*SetCAPropertyResponse) MarshalNDR

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

func (*SetCAPropertyResponse) UnmarshalNDR

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

type SetCASecurityRequest

type SetCASecurityRequest 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"`
	// pctbSD: A pointer to a CERTTRANSBLOB data structure that holds the security descriptor.
	// Security descriptors are specified in [MS-DTYP] section 2.4.6.
	//
	// The CA SHOULD use the permissions set in pctbSD to deny and allow permissions to
	// CA functionality. Microsoft CA permissions are defined in section 3.1.1.7.
	SD *csra.CertTransportBlob `idl:"name:pctbSD;pointer:ref" json:"sd"`
}

SetCASecurityRequest structure represents the SetCASecurity operation request

func (*SetCASecurityRequest) MarshalNDR

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

func (*SetCASecurityRequest) UnmarshalNDR

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

type SetCASecurityResponse

type SetCASecurityResponse 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 SetCASecurity return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetCASecurityResponse structure represents the SetCASecurity operation response

func (*SetCASecurityResponse) MarshalNDR

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

func (*SetCASecurityResponse) UnmarshalNDR

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

type SetConfigEntryRequest

type SetConfigEntryRequest 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"`
	// pwszNodePath: A string value that represents the node path for the configuration
	// information. This parameter can be an EMPTY string and MUST NOT be NULL.
	NodePath string `idl:"name:pwszNodePath;string;pointer:unique" json:"node_path"`
	// pwszEntry: A string value that represents the name of the leaf entry whose information
	// is being set. This value can be an EMPTY string and MUST NOT be NULL.
	Entry string `idl:"name:pwszEntry;string;pointer:ref" json:"entry"`
	// pVariant: A pointer to VARIANT that specifies the information to set. If this value
	// is EMPTY, the indicated entry MUST be deleted.
	Variant *oaut.Variant `idl:"name:pVariant;pointer:ref" json:"variant"`
}

SetConfigEntryRequest structure represents the SetConfigEntry operation request

func (*SetConfigEntryRequest) MarshalNDR

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

func (*SetConfigEntryRequest) UnmarshalNDR

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

type SetConfigEntryResponse

type SetConfigEntryResponse 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 SetConfigEntry return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetConfigEntryResponse structure represents the SetConfigEntry operation response

func (*SetConfigEntryResponse) MarshalNDR

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

func (*SetConfigEntryResponse) UnmarshalNDR

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

type SetOfficerRightsRequest

type SetOfficerRightsRequest 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"`
	// fEnable: A 32-bit BOOL parameter composed of two 16-bit fields. Each of these fields
	// can be set to zero or to a nonzero value as follows.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| F | F | F | F | F | F | F | F | F | F | F | F | F | F | F | F | R | R | R | R | R | R | R | R | R | R | R | R | R | R | R | R |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// F - fRightsEnable: If bits 0 through 15 are 0, then disable access rights (officer
	// or enrollment agent) and ignore the value of pctbSD.
	//
	// R - RightsType: If bits 16 through 31 are 0, then the security descriptor in the
	// pctbSD parameter is for officer rights.
	Enable bool `idl:"name:fEnable" json:"enable"`
	// pctbSD: A pointer to the CERTTRANSBLOB structure that holds the marshaled security
	// descriptor, as specified in [MS-DTYP] section 2.4.6.
	SD *csra.CertTransportBlob `idl:"name:pctbSD;pointer:ref" json:"sd"`
}

SetOfficerRightsRequest structure represents the SetOfficerRights operation request

func (*SetOfficerRightsRequest) MarshalNDR

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

func (*SetOfficerRightsRequest) UnmarshalNDR

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

type SetOfficerRightsResponse

type SetOfficerRightsResponse 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 SetOfficerRights return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetOfficerRightsResponse structure represents the SetOfficerRights operation response

func (*SetOfficerRightsResponse) MarshalNDR

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

func (*SetOfficerRightsResponse) UnmarshalNDR

func (o *SetOfficerRightsResponse) 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