icertpassage

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Syntax UUID
	CertPassageSyntaxUUID = &uuid.UUID{TimeLow: 0x91ae6020, TimeMid: 0x9e3c, TimeHiAndVersion: 0x11cf, ClockSeqHiAndReserved: 0x8d, ClockSeqLow: 0x7c, Node: [6]uint8{0x0, 0xaa, 0x0, 0xc0, 0x91, 0xbe}}
	// Syntax ID
	CertPassageSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: CertPassageSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "icpr"
)

Functions

func CertPassageServerHandle

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

func NewCertPassageServerHandle

func NewCertPassageServerHandle(o CertPassageServer) dcerpc.ServerHandle

func RegisterCertPassageServer

func RegisterCertPassageServer(conn dcerpc.Conn, o CertPassageServer, opts ...dcerpc.Option)

Types

type CertPassageClient

type CertPassageClient interface {

	// The CertServerRequest method processes a certificate enrollment request from the
	// client.<6>
	//
	// Return Values: The method MUST return ERROR_SUCCESS (0x00000000) on success. This
	// method's return values MUST have identical syntax and semantics to the return values
	// specified in [MS-WCCE] section 3.2.1.4.2.1.
	//
	// If the ADM element Config.CA.Interface.Flags contains the value IF_NORPCICERTREQUEST,
	// the server SHOULD return an error.<7>
	//
	// If the ADM element Config.CA.Interface.Flags contains the value IF_ENFORCEENCRYPTICERTREQUEST
	// and the RPC_C_AUTHN_LEVEL_PKT_PRIVACY authentication level ([MS-RPCE] section 2.2.1.1.8)
	// is not specified on the RPC connection from the client, the CA MUST refuse to establish
	// a connection with the client by returning E_ACCESSDENIED (0x80000009).
	//
	// Otherwise, the processing rules for the ICertRequestD::Request method ([MS-WCCE]
	// section 3.2.2.6.2.1) apply, except that if the ADM element Config.CA.Interface.Flags
	// contains the value IF_NOREMOTEICERTREQUEST, these values are ignored and the request
	// is processed as though the values were absent.
	CertServerRequest(context.Context, *CertServerRequestRequest, ...dcerpc.CallOption) (*CertServerRequestResponse, error)

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

ICertPassage interface.

func NewCertPassageClient

func NewCertPassageClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (CertPassageClient, error)

type CertPassageServer

type CertPassageServer interface {

	// The CertServerRequest method processes a certificate enrollment request from the
	// client.<6>
	//
	// Return Values: The method MUST return ERROR_SUCCESS (0x00000000) on success. This
	// method's return values MUST have identical syntax and semantics to the return values
	// specified in [MS-WCCE] section 3.2.1.4.2.1.
	//
	// If the ADM element Config.CA.Interface.Flags contains the value IF_NORPCICERTREQUEST,
	// the server SHOULD return an error.<7>
	//
	// If the ADM element Config.CA.Interface.Flags contains the value IF_ENFORCEENCRYPTICERTREQUEST
	// and the RPC_C_AUTHN_LEVEL_PKT_PRIVACY authentication level ([MS-RPCE] section 2.2.1.1.8)
	// is not specified on the RPC connection from the client, the CA MUST refuse to establish
	// a connection with the client by returning E_ACCESSDENIED (0x80000009).
	//
	// Otherwise, the processing rules for the ICertRequestD::Request method ([MS-WCCE]
	// section 3.2.2.6.2.1) apply, except that if the ADM element Config.CA.Interface.Flags
	// contains the value IF_NOREMOTEICERTREQUEST, these values are ignored and the request
	// is processed as though the values were absent.
	CertServerRequest(context.Context, *CertServerRequestRequest) (*CertServerRequestResponse, error)
}

ICertPassage server interface.

type CertServerRequestRequest

type CertServerRequestRequest struct {
	// dwFlags: The dwFlags parameter has identical syntax and semantics to the dwFlags
	// parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// pwszAuthority: The pwszAuthority parameter has identical syntax and semantics to
	// the pwszAuthority parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	Authority string `idl:"name:pwszAuthority;string;pointer:unique" json:"authority"`
	// pdwRequestId: The pdwRequestId parameter has identical syntax and semantics to the
	// pdwRequestId parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	RequestID uint32 `idl:"name:pdwRequestId;pointer:ref" json:"request_id"`
	// pctbAttribs: A pointer to a CERTTRANSBLOB structure, as specified in [MS-WCCE] section
	// 2.2.2.2, where the pb field of this structure points to a Unicode (as specified in
	// [UNICODE4.0]) null-terminated string and the cb field contains the length of the
	// string, including the NULL-terminated character (in bytes). If the value of the cb
	// field does not match the length, in bytes, of the string (including the terminating
	// null character), the CA MUST return the E_INVALIDARG error (0x80070057) to the client.
	// Otherwise, the semantics of the string pointed to by the pb field are identical to
	// the pwszAttributes parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	Attributes *wcce.CertTransportBlob `idl:"name:pctbAttribs;pointer:ref" json:"attributes"`
	// pctbRequest: The pctbRequest parameter has identical syntax and semantics to the
	// pctbRequest parameter, as specified in [MS-WCCE] section 3.2.1.4.2.1.
	Request *wcce.CertTransportBlob `idl:"name:pctbRequest;pointer:ref" json:"request"`
}

CertServerRequestRequest structure represents the CertServerRequest operation request

func (*CertServerRequestRequest) MarshalNDR

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

func (*CertServerRequestRequest) UnmarshalNDR

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

type CertServerRequestResponse

type CertServerRequestResponse struct {
	// pdwRequestId: The pdwRequestId parameter has identical syntax and semantics to the
	// pdwRequestId parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	RequestID uint32 `idl:"name:pdwRequestId;pointer:ref" json:"request_id"`
	// pdwDisposition: The pdwDisposition parameter has identical syntax and semantics to
	// the pdwDisposition parameter specified in [MS-WCCE] section 3.2.1.4.2.1.
	Disposition uint32 `idl:"name:pdwDisposition" json:"disposition"`
	// pctbCert: The pctbCert parameter has identical syntax and semantics to the pctbCertChain
	// parameter, as specified in [MS-WCCE] section 3.2.1.4.2.1.
	Cert *wcce.CertTransportBlob `idl:"name:pctbCert;pointer:ref" json:"cert"`
	// pctbEncodedCert: The pctbEncodedCert parameter has identical syntax and semantics
	// to the pctbEncodedCert parameter, as specified in [MS-WCCE] section 3.2.1.4.2.1.
	EncodedCert *wcce.CertTransportBlob `idl:"name:pctbEncodedCert;pointer:ref" json:"encoded_cert"`
	// pctbDispositionMessage: The pctbDispositionMessage parameter has identical syntax
	// and semantics to the pctbDispositionMessage parameter, as specified in [MS-WCCE]
	// section 3.2.1.4.2.1.
	DispositionMessage *wcce.CertTransportBlob `idl:"name:pctbDispositionMessage;pointer:ref" json:"disposition_message"`
	// Return: The CertServerRequest return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

CertServerRequestResponse structure represents the CertServerRequest operation response

func (*CertServerRequestResponse) MarshalNDR

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

func (*CertServerRequestResponse) UnmarshalNDR

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