imsadminbasew

package
v1.2.3 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// IMSAdminBaseW interface identifier 70b51430-b6ca-11d0-b9b9-00a0c922e750
	IMSAdminBaseWIID = &dcom.IID{Data1: 0x70b51430, Data2: 0xb6ca, Data3: 0x11d0, Data4: []byte{0xb9, 0xb9, 0x00, 0xa0, 0xc9, 0x22, 0xe7, 0x50}}
	// Syntax UUID
	IMSAdminBaseWSyntaxUUID = &uuid.UUID{TimeLow: 0x70b51430, TimeMid: 0xb6ca, TimeHiAndVersion: 0x11d0, ClockSeqHiAndReserved: 0xb9, ClockSeqLow: 0xb9, Node: [6]uint8{0x0, 0xa0, 0xc9, 0x22, 0xe7, 0x50}}
	// Syntax ID
	IMSAdminBaseWSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: IMSAdminBaseWSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/imsa"
)

Functions

func IMSAdminBaseWServerHandle

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

func NewIMSAdminBaseWServerHandle

func NewIMSAdminBaseWServerHandle(o IMSAdminBaseWServer) dcerpc.ServerHandle

func RegisterIMSAdminBaseWServer

func RegisterIMSAdminBaseWServer(conn dcerpc.Conn, o IMSAdminBaseWServer, opts ...dcerpc.Option)

Types

type AddKeyRequest

type AddKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the node in the metabase where the new key is to be added.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the new node's path, relative
	// to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
}

AddKeyRequest structure represents the AddKey operation request

func (*AddKeyRequest) MarshalNDR

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

func (*AddKeyRequest) UnmarshalNDR

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

type AddKeyResponse

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

AddKeyResponse structure represents the AddKey operation response

func (*AddKeyResponse) MarshalNDR

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

func (*AddKeyResponse) UnmarshalNDR

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

type BackupRequest

type BackupRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pszMDBackupName: A string of up to 100 Unicode characters that names the backup.
	BackupName string `idl:"name:pszMDBackupName;string;pointer:unique" json:"backup_name"`
	// dwMDVersion: An integer value specifying the version number to be used for the backup.
	//
	//	+--------------------------------------+-------------------------------------------------------------------------------+
	//	|                                      |                                                                               |
	//	|                VALUE                 |                                    MEANING                                    |
	//	|                                      |                                                                               |
	//	+--------------------------------------+-------------------------------------------------------------------------------+
	//	+--------------------------------------+-------------------------------------------------------------------------------+
	//	| MD_BACKUP_HIGHEST_VERSION 0xFFFFFFFE | Overwrite the highest existing backup version with the specified backup name. |
	//	+--------------------------------------+-------------------------------------------------------------------------------+
	//	| MD_BACKUP_NEXT_VERSION 0xFFFFFFFF    | Use the next backup version number available with the specified backup name.  |
	//	+--------------------------------------+-------------------------------------------------------------------------------+
	Version uint32 `idl:"name:dwMDVersion" json:"version"`
	// dwMDFlags: An integer value containing the bit flags describing the type of backup
	// operation to be performed. The flags can be one or more of the following values.
	//
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	|                                   |                                                                                  |
	//	|               VALUE               |                                     MEANING                                      |
	//	|                                   |                                                                                  |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| MD_BACKUP_FORCE_BACKUP 0x00000004 | Force the backup even if the SaveData operation specified by                     |
	//	|                                   | MD_BACKUP_SAVE_FIRST fails.                                                      |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| MD_BACKUP_OVERWRITE 0x00000001    | Back up even if a backup of the same name and version exists, overwriting it if  |
	//	|                                   | necessary.                                                                       |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| MD_BACKUP_SAVE_FIRST 0x00000002   | Perform a SaveData operation before the backup.                                  |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:dwMDFlags" json:"flags"`
}

BackupRequest structure represents the Backup operation request

func (*BackupRequest) MarshalNDR

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

func (*BackupRequest) UnmarshalNDR

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

type BackupResponse

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

BackupResponse structure represents the Backup operation response

func (*BackupResponse) MarshalNDR

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

func (*BackupResponse) UnmarshalNDR

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

type ChangePermissionsRequest

type ChangePermissionsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing the handle to change the permissions
	// for, as returned by the OpenKey method.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// dwMDTimeOut: An integer value specifying the time, in milliseconds, for the method
	// to wait on a successful permission change operation.
	Timeout uint32 `idl:"name:dwMDTimeOut" json:"timeout"`
	// dwMDAccessRequested: A set of bit flags specifying the requested permissions for
	// the handle. This parameter MUST be set to at least one of the following values.
	//
	//	+--------------------------------------+----------------------------+
	//	|                                      |                            |
	//	|                VALUE                 |          MEANING           |
	//	|                                      |                            |
	//	+--------------------------------------+----------------------------+
	//	+--------------------------------------+----------------------------+
	//	| METADATA_PERMISSION_READ 0x00000001  | Open the node for reading. |
	//	+--------------------------------------+----------------------------+
	//	| METADATA_PERMISSION_WRITE 0x00000002 | Open the node for writing. |
	//	+--------------------------------------+----------------------------+
	AccessRequested uint32 `idl:"name:dwMDAccessRequested" json:"access_requested"`
}

ChangePermissionsRequest structure represents the ChangePermissions operation request

func (*ChangePermissionsRequest) MarshalNDR

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

func (*ChangePermissionsRequest) UnmarshalNDR

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

type ChangePermissionsResponse

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

ChangePermissionsResponse structure represents the ChangePermissions operation response

func (*ChangePermissionsResponse) MarshalNDR

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

func (*ChangePermissionsResponse) UnmarshalNDR

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

type CloseKeyRequest

type CloseKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing the handle to close, as returned
	// by the OpenKey method.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
}

CloseKeyRequest structure represents the CloseKey operation request

func (*CloseKeyRequest) MarshalNDR

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

func (*CloseKeyRequest) UnmarshalNDR

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

type CloseKeyResponse

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

CloseKeyResponse structure represents the CloseKey operation response

func (*CloseKeyResponse) MarshalNDR

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

func (*CloseKeyResponse) UnmarshalNDR

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

type CopyDataRequest

type CopyDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDSourceHandle: An unsigned 32-bit integer value containing an open metabase handle
	// specifying the source node from which the data is to be copied or moved.
	SourceHandle uint32 `idl:"name:hMDSourceHandle" json:"source_handle"`
	// pszMDSourcePath: A pointer to a Unicode string that contains the path of the node
	// with which the source data is associated, relative to the path of the hMDSourceHandle
	// parameter.
	SourcePath string `idl:"name:pszMDSourcePath;string;pointer:unique" json:"source_path"`
	// hMDDestHandle: An unsigned 32-bit integer value containing an open metabase handle
	// specifying the destination node to which the data is to be copied or moved.
	DestinationHandle uint32 `idl:"name:hMDDestHandle" json:"destination_handle"`
	// pszMDDestPath: A pointer to a Unicode string that contains the path of the node for
	// data to be copied to or moved to, relative to the path of the hMDDestHandle parameter.
	DestinationPath string `idl:"name:pszMDDestPath;string;pointer:unique" json:"destination_path"`
	// dwMDAttributes: Flags used to filter the data, as specified in the METADATA_RECORD
	// structure.
	Attributes uint32 `idl:"name:dwMDAttributes" json:"attributes"`
	// dwMDUserType: An integer value specifying the data to copy based on the user type.
	//
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	|                             |                                                                                 |
	//	|            VALUE            |                                     MEANING                                     |
	//	|                             |                                                                                 |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000     | Specifies all data, regardless of user type.                                    |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| ASP_MD_UT_APP 0x00000065    | Specifies data specific to ASP application configuration.                       |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_FILE 0x00000002   | Specifies data specific to a file, such as access permissions or logon methods. |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_SERVER 0x00000001 | Specifies data specific to the server, such as ports in use and IP addresses.   |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_WAM 0x00000064    | Specifies data specific to WAM.                                                 |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	UserType uint32 `idl:"name:dwMDUserType" json:"user_type"`
	// dwMDDataType: An integer value specifying a data type. If this parameter is not set
	// to ALL_METADATA, the data item will be copied only if its data type matches the specified
	// type.
	//
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	|                              |                                                                                  |
	//	|            VALUE             |                                     MEANING                                      |
	//	|                              |                                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000      | Specifies all data, regardless of type.                                          |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| BINARY_METADATA 0x00000003   | Specifies binary data in any form.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| DWORD_METADATA 0x00000001    | Specifies all DWORD (unsigned 32-bit integer) data.                              |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| EXPANDSZ_METADATA 0x00000004 | Specifies all data consisting of a string that includes the terminating null     |
	//	|                              | character, which contains unexpanded environment variables.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| MULTISZ_METADATA 0x00000005  | Specifies all data represented as an array of strings, where each string         |
	//	|                              | contains two occurrences of the terminating null character.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| STRING_METADATA 0x00000002   | Specifies all data consisting of an ASCII string that includes the terminating   |
	//	|                              | null character.                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	DataType uint32 `idl:"name:dwMDDataType" json:"data_type"`
	// bMDCopyFlag: A Boolean value that specifies whether to copy or move the data. If
	// this parameter is set to TRUE, the data is copied. If it is FALSE, the data is moved.
	CopyFlag bool `idl:"name:bMDCopyFlag" json:"copy_flag"`
}

CopyDataRequest structure represents the CopyData operation request

func (*CopyDataRequest) MarshalNDR

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

func (*CopyDataRequest) UnmarshalNDR

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

type CopyDataResponse

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

CopyDataResponse structure represents the CopyData operation response

func (*CopyDataResponse) MarshalNDR

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

func (*CopyDataResponse) UnmarshalNDR

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

type CopyKeyRequest

type CopyKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDSourceHandle: An unsigned 32-bit integer value containing an open metabase handle
	// specifying the source node to be copied or moved.
	SourceHandle uint32 `idl:"name:hMDSourceHandle" json:"source_handle"`
	// pszMDSourcePath: A pointer to a Unicode string that contains the path of the node
	// to be copied or moved relative to the path of the hMDSourceHandle parameter.
	SourcePath string `idl:"name:pszMDSourcePath;string;pointer:unique" json:"source_path"`
	// hMDDestHandle: An unsigned 32-bit integer value containing an open metabase handle
	// specifying the destination node of the moved or copied metabase key.
	DestinationHandle uint32 `idl:"name:hMDDestHandle" json:"destination_handle"`
	// pszMDDestPath: A pointer to a string that contains the path of the new or moved node,
	// relative to the hMDDestHandle parameter.
	DestinationPath string `idl:"name:pszMDDestPath;string;pointer:unique" json:"destination_path"`
	// bMDOverwriteFlag: A Boolean value that determine the behavior if a node with the
	// same name as source is already a child of destination node. If TRUE, the existing
	// node and all its data and children are deleted prior to copying or moving the source.
	// If FALSE, the existing node, data, and children remain, and the source is merged
	// with that data. In cases of data conflicts, the source data overwrites the destination
	// data.
	OverwriteFlag bool `idl:"name:bMDOverwriteFlag" json:"overwrite_flag"`
	// bMDCopyFlag: A Boolean value that specifies whether to copy or move the specified
	// node. If TRUE, the node is copied. If FALSE, the node is moved, and the source node
	// is deleted from its original location.
	CopyFlag bool `idl:"name:bMDCopyFlag" json:"copy_flag"`
}

CopyKeyRequest structure represents the CopyKey operation request

func (*CopyKeyRequest) MarshalNDR

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

func (*CopyKeyRequest) UnmarshalNDR

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

type CopyKeyResponse

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

CopyKeyResponse structure represents the CopyKey operation response

func (*CopyKeyResponse) MarshalNDR

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

func (*CopyKeyResponse) UnmarshalNDR

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

type DeleteAllDataRequest

type DeleteAllDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the node in the metabase where the key data is to be deleted.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node with
	// which the data to be deleted is associated, relative to the path of the hMDHandle
	// parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDUserType: An integer value specifying the data to delete based on user type.
	//
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	|                             |                                                                                 |
	//	|            VALUE            |                                     MEANING                                     |
	//	|                             |                                                                                 |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000     | Specifies all data, regardless of type.                                         |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| ASP_MD_UT_APP 0x00000065    | Specifies data specific to ASP application configuration.                       |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_FILE 0x00000002   | Specifies data specific to a file, such as access permissions or logon methods. |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_SERVER 0x00000001 | Specifies data specific to the server, such as ports in use and IP addresses.   |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	//	| IIS_MD_UT_WAM 0x00000064    | Specifies data specific to WAM.                                                 |
	//	+-----------------------------+---------------------------------------------------------------------------------+
	UserType uint32 `idl:"name:dwMDUserType" json:"user_type"`
	// dwMDDataType: An integer value specifying a data type. If this parameter is not set
	// to ALL_METADATA, the data item will be removed only if its data type matches the
	// specified type.
	//
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	|                              |                                                                                  |
	//	|            VALUE             |                                     MEANING                                      |
	//	|                              |                                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000      | Specifies all data, regardless of type.                                          |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| BINARY_METADATA 0x00000003   | Specifies binary data in any form.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| DWORD_METADATA 0x00000001    | Specifies all DWORD (unsigned 32-bit integer) data.                              |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| EXPANDSZ_METADATA 0x00000004 | Specifies all data consisting of a string that includes the terminating null     |
	//	|                              | character, which contains unexpanded environment variables.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| MULTISZ_METADATA 0x00000005  | Specifies all data represented as an array of strings, where each string         |
	//	|                              | contains two occurrences of the terminating null character.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| STRING_METADATA 0x00000002   | Specifies all data consisting of an ASCII string that includes the terminating   |
	//	|                              | null character.                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	DataType uint32 `idl:"name:dwMDDataType" json:"data_type"`
}

DeleteAllDataRequest structure represents the DeleteAllData operation request

func (*DeleteAllDataRequest) MarshalNDR

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

func (*DeleteAllDataRequest) UnmarshalNDR

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

type DeleteAllDataResponse

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

DeleteAllDataResponse structure represents the DeleteAllData operation response

func (*DeleteAllDataResponse) MarshalNDR

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

func (*DeleteAllDataResponse) UnmarshalNDR

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

type DeleteBackupRequest

type DeleteBackupRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pszMDBackupName: A string of up to 100 Unicode characters that names the backup.
	BackupName string `idl:"name:pszMDBackupName;string;pointer:unique" json:"backup_name"`
	// dwMDVersion: Either an integer value specifying the version number of the backup
	// to be deleted or the following constant.
	//
	//	+--------------------------------------+-------------------------------------------------------------+
	//	|                                      |                                                             |
	//	|                VALUE                 |                           MEANING                           |
	//	|                                      |                                                             |
	//	+--------------------------------------+-------------------------------------------------------------+
	//	+--------------------------------------+-------------------------------------------------------------+
	//	| MD_BACKUP_HIGHEST_VERSION 0xFFFFFFFE | Delete the existing backup with the highest version number. |
	//	+--------------------------------------+-------------------------------------------------------------+
	Version uint32 `idl:"name:dwMDVersion" json:"version"`
}

DeleteBackupRequest structure represents the DeleteBackup operation request

func (*DeleteBackupRequest) MarshalNDR

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

func (*DeleteBackupRequest) UnmarshalNDR

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

type DeleteBackupResponse

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

DeleteBackupResponse structure represents the DeleteBackup operation response

func (*DeleteBackupResponse) MarshalNDR

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

func (*DeleteBackupResponse) UnmarshalNDR

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

type DeleteChildKeysRequest

type DeleteChildKeysRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the node in the metabase where the child key is to be deleted.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node whose
	// subnodes are to be deleted, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
}

DeleteChildKeysRequest structure represents the DeleteChildKeys operation request

func (*DeleteChildKeysRequest) MarshalNDR

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

func (*DeleteChildKeysRequest) UnmarshalNDR

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

type DeleteChildKeysResponse

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

DeleteChildKeysResponse structure represents the DeleteChildKeys operation response

func (*DeleteChildKeysResponse) MarshalNDR

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

func (*DeleteChildKeysResponse) UnmarshalNDR

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

type DeleteDataRequest

type DeleteDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the node in the metabase where the key data is to be deleted.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node whose
	// data is to be deleted, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDIdentifier: An integer value specifying the data identifier.
	ID uint32 `idl:"name:dwMDIdentifier" json:"id"`
	// dwMDDataType: An integer value specifying a data type. If this parameter is not set
	// to ALL_METADATA, the data item will be removed only if its data type matches the
	// specified type.
	//
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	|                              |                                                                                  |
	//	|            VALUE             |                                     MEANING                                      |
	//	|                              |                                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000      | Specifies all data, regardless of type.                                          |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| BINARY_METADATA 0x00000003   | Specifies binary data in any form.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| DWORD_METADATA 0x00000001    | Specifies all DWORD (unsigned 32-bit integer) data.                              |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| EXPANDSZ_METADATA 0x00000004 | Specifies all data consisting of a string that includes the terminating null     |
	//	|                              | character, which contains unexpanded environment variables.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| MULTISZ_METADATA 0x00000005  | Specifies all data represented as an array of strings, where each string         |
	//	|                              | contains two occurrences of the terminating null character.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| STRING_METADATA 0x00000002   | Specifies all data consisting of an ASCII string that includes the terminating   |
	//	|                              | null character.                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	DataType uint32 `idl:"name:dwMDDataType" json:"data_type"`
}

DeleteDataRequest structure represents the DeleteData operation request

func (*DeleteDataRequest) MarshalNDR

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

func (*DeleteDataRequest) UnmarshalNDR

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

type DeleteDataResponse

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

DeleteDataResponse structure represents the DeleteData operation response

func (*DeleteDataResponse) MarshalNDR

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

func (*DeleteDataResponse) UnmarshalNDR

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

type DeleteKeyRequest

type DeleteKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// a node in the metabase where the key is to be deleted.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to be
	// deleted, relative to the path of the hMDHandle parameter. This parameter MUST NOT
	// be NULL.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
}

DeleteKeyRequest structure represents the DeleteKey operation request

func (*DeleteKeyRequest) MarshalNDR

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

func (*DeleteKeyRequest) UnmarshalNDR

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

type DeleteKeyResponse

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

DeleteKeyResponse structure represents the DeleteKey operation response

func (*DeleteKeyResponse) MarshalNDR

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

func (*DeleteKeyResponse) UnmarshalNDR

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

type EnumBackupsRequest

type EnumBackupsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pszMDBackupName: A buffer of size MD_BACKUP_MAX_LEN. On input, the buffer can contain
	// either a string of Unicode characters that names the backup set to be enumerated
	// or an empty string.
	BackupName string `idl:"name:pszMDBackupName;size_is:(100)" json:"backup_name"`
	// dwMDEnumIndex: An integer value specifying the index number of the backup to be enumerated.
	EnumIndex uint32 `idl:"name:dwMDEnumIndex" json:"enum_index"`
}

EnumBackupsRequest structure represents the EnumBackups operation request

func (*EnumBackupsRequest) MarshalNDR

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

func (*EnumBackupsRequest) UnmarshalNDR

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

type EnumBackupsResponse

type EnumBackupsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pszMDBackupName: A buffer of size MD_BACKUP_MAX_LEN. On input, the buffer can contain
	// either a string of Unicode characters that names the backup set to be enumerated
	// or an empty string.
	BackupName string `idl:"name:pszMDBackupName;size_is:(100)" json:"backup_name"`
	// pdwMDVersion: An integer value containing the version number of the backup.
	Version uint32 `idl:"name:pdwMDVersion" json:"version"`
	// pftMDBackupTime: A FILETIME structure containing the Coordinated Universal Time (UTC)
	// date and time when this backup was created.
	BackupTime *dtyp.Filetime `idl:"name:pftMDBackupTime" json:"backup_time"`
	// Return: The EnumBackups return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumBackupsResponse structure represents the EnumBackups operation response

func (*EnumBackupsResponse) MarshalNDR

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

func (*EnumBackupsResponse) UnmarshalNDR

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

type EnumDataRequest

type EnumDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be enumerated.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to be
	// enumerated, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// pmdrMDData: A pointer to a METADATA_RECORD structure that specifies the retrieved
	// data.
	Data *imsa.MetadataRecord `idl:"name:pmdrMDData" json:"data"`
	// dwMDEnumDataIndex: An integer value specifying the index of the entry retrieved.
	EnumDataIndex uint32 `idl:"name:dwMDEnumDataIndex" json:"enum_data_index"`
}

EnumDataRequest structure represents the R_EnumData operation request

func (*EnumDataRequest) MarshalNDR

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

func (*EnumDataRequest) UnmarshalNDR

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

type EnumDataResponse

type EnumDataResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pmdrMDData: A pointer to a METADATA_RECORD structure that specifies the retrieved
	// data.
	Data *imsa.MetadataRecord `idl:"name:pmdrMDData" json:"data"`
	// pdwMDRequiredDataLen: Pointer to a DWORD that receives the required buffer size if
	// the method returns ERROR_INSUFFICIENT_BUFFER as specified in [MS-ERREF].
	RequiredDataLength uint32 `idl:"name:pdwMDRequiredDataLen" json:"required_data_length"`
	// ppDataBlob: An IIS_CRYPTO_BLOB structure containing the data value as encrypted opaque
	// data.
	DataBlob *imsa.IISCryptoBlob `idl:"name:ppDataBlob" json:"data_blob"`
	// Return: The R_EnumData return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumDataResponse structure represents the R_EnumData operation response

func (*EnumDataResponse) MarshalNDR

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

func (*EnumDataResponse) UnmarshalNDR

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

type EnumKeysRequest

type EnumKeysRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be enumerated.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node whose
	// subnodes are to be enumerated, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDEnumObjectIndex: An integer value specifying the index of the subnode to be retrieved.
	EnumObjectIndex uint32 `idl:"name:dwMDEnumObjectIndex" json:"enum_object_index"`
}

EnumKeysRequest structure represents the EnumKeys operation request

func (*EnumKeysRequest) MarshalNDR

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

func (*EnumKeysRequest) UnmarshalNDR

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

type EnumKeysResponse

type EnumKeysResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pszMDName: A pointer to a string buffer that receives the names of the enumerated
	// metabase subnodes.
	Name string `idl:"name:pszMDName;size_is:(256)" json:"name"`
	// Return: The EnumKeys return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumKeysResponse structure represents the EnumKeys operation response

func (*EnumKeysResponse) MarshalNDR

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

func (*EnumKeysResponse) UnmarshalNDR

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

type GetAllDataRequest

type GetAllDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be queried.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node with
	// which the data to be returned is associated, relative to the path of the hMDHandle
	// parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDAttributes: Flags used to specify the data, as listed in the METADATA_RECORD
	// structure.
	Attributes uint32 `idl:"name:dwMDAttributes" json:"attributes"`
	// dwMDUserType: An integer value specifying the data to return based on user type.
	//
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	|                             |                                                                               |
	//	|            VALUE            |                                    MEANING                                    |
	//	|                             |                                                                               |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000     | Returns all data, regardless of user type.                                    |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	| ASP_MD_UT_APP 0x00000065    | Returns data specific to ASP application configuration.                       |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	| IIS_MD_UT_FILE 0x00000002   | Returns data specific to a file, such as access permissions or logon methods. |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	| IIS_MD_UT_SERVER 0x00000001 | Returns data specific to the server, such as ports in use and IP addresses.   |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	//	| IIS_MD_UT_WAM 0x00000064    | Returns data specific to WAM.                                                 |
	//	+-----------------------------+-------------------------------------------------------------------------------+
	UserType uint32 `idl:"name:dwMDUserType" json:"user_type"`
	// dwMDDataType: An integer value specifying a data type. If this parameter is not set
	// to ALL_METADATA, the data item will be returned only if its data type matches the
	// specified type.
	//
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	|                              |                                                                                  |
	//	|            VALUE             |                                     MEANING                                      |
	//	|                              |                                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000      | Specifies all data, regardless of type.                                          |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| BINARY_METADATA 0x00000003   | Specifies binary data in any form.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| DWORD_METADATA 0x00000001    | Specifies all DWORD (unsigned 32-bit integer) data.                              |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| EXPANDSZ_METADATA 0x00000004 | Specifies all data that consists of a null-terminated string containing          |
	//	|                              | environment variables that are not expanded.                                     |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| MULTISZ_METADATA 0x00000005  | Specifies all data represented as an array of null-terminated strings,           |
	//	|                              | terminated by two null characters.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| STRING_METADATA 0x00000002   | Specifies all data consisting of a null-terminated ASCII string.                 |
	//	+------------------------------+----------------------------------------------------------------------------------+
	DataType uint32 `idl:"name:dwMDDataType" json:"data_type"`
	// dwMDBufferSize: An integer value specifying the size, in bytes, required to hold
	// the decrypted data returned by the ppDataBlob parameter.
	BufferSize uint32 `idl:"name:dwMDBufferSize" json:"buffer_size"`
}

GetAllDataRequest structure represents the R_GetAllData operation request

func (*GetAllDataRequest) MarshalNDR

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

func (*GetAllDataRequest) UnmarshalNDR

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

type GetAllDataResponse

type GetAllDataResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwMDNumDataEntries: A pointer to an integer value that contains the number of entries
	// in the array of METADATA_GETALL_RECORD structures returned in the ppDataBlob parameter.
	DataEntriesLength uint32 `idl:"name:pdwMDNumDataEntries" json:"data_entries_length"`
	// pdwMDDataSetNumber: A pointer to an integer value used to identify the dataset number
	// for the metabase node whose data is being retrieved. The dataset number is obtained
	// by the GetDataSetNumber (section 3.1.4.18) method.
	DataSetNumber uint32 `idl:"name:pdwMDDataSetNumber" json:"data_set_number"`
	// pdwMDRequiredBufferSize: A pointer to an integer value that contains the buffer length
	// required, in bytes, to contain the decrypted data referenced by the ppDataBlob parameter.
	RequiredBufferSize uint32 `idl:"name:pdwMDRequiredBufferSize" json:"required_buffer_size"`
	// ppDataBlob: An IIS_CRYPTO_BLOB structure containing the requested values as encrypted
	// opaque data. The encrypted data returned in IIS_CRYPTO_BLOB is a contiguous buffer
	// containing an array of METADATA_GETALL_RECORD structures followed by the data referenced
	// by the METADATA_GETALL_RECORD structures.
	DataBlob *imsa.IISCryptoBlob `idl:"name:ppDataBlob" json:"data_blob"`
	// Return: The R_GetAllData return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetAllDataResponse structure represents the R_GetAllData operation response

func (*GetAllDataResponse) MarshalNDR

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

func (*GetAllDataResponse) UnmarshalNDR

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

type GetDataPathsRequest

type GetDataPathsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be queried.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to be
	// queried, relative to the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDIdentifier: An integer value identifying the data to be queried.
	ID uint32 `idl:"name:dwMDIdentifier" json:"id"`
	// dwMDDataType: An integer value specifying a data type. If this parameter is not set
	// to ALL_METADATA, the data item will be returned only if its data type matches the
	// specified type.
	//
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	|                              |                                                                                  |
	//	|            VALUE             |                                     MEANING                                      |
	//	|                              |                                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| ALL_METADATA 0x00000000      | Specifies all data, regardless of type.                                          |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| BINARY_METADATA 0x00000003   | Specifies binary data in any form.                                               |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| DWORD_METADATA 0x00000001    | Specifies all DWORD (unsigned 32-bit integer) data.                              |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| EXPANDSZ_METADATA 0x00000004 | Specifies all data consisting of a string that includes the terminating null     |
	//	|                              | character, which contains unexpanded environment variables.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| MULTISZ_METADATA 0x00000005  | Specifies all data represented as an array of strings, where each string         |
	//	|                              | contains two occurrences of the terminating null character.                      |
	//	+------------------------------+----------------------------------------------------------------------------------+
	//	| STRING_METADATA 0x00000002   | Specifies all data consisting of an ASCII string that includes the terminating   |
	//	|                              | null character.                                                                  |
	//	+------------------------------+----------------------------------------------------------------------------------+
	DataType uint32 `idl:"name:dwMDDataType" json:"data_type"`
	// dwMDBufferSize: An integer value specifying the size, in WCHARs, of the pszBuffer
	// parameter.
	BufferSize uint32 `idl:"name:dwMDBufferSize" json:"buffer_size"`
}

GetDataPathsRequest structure represents the GetDataPaths operation request

func (*GetDataPathsRequest) MarshalNDR

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

func (*GetDataPathsRequest) UnmarshalNDR

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

type GetDataPathsResponse

type GetDataPathsResponse struct {
	// XXX: dwMDBufferSize is an implicit input depedency for output parameters
	BufferSize uint32 `idl:"name:dwMDBufferSize" json:"buffer_size"`

	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pszBuffer: A pointer to a buffer that contains the retrieved data. If the method
	// call is successful, the buffer will contain a contiguous sequence of null-terminated
	// strings in "multi-string" format. Each string in the sequence is a metabase path
	// at which data matching the dwMDIdentifier and dwMDDataType fields were found.
	Buffer string `idl:"name:pszBuffer;size_is:(dwMDBufferSize)" json:"buffer"`
	// pdwMDRequiredBufferSize: A pointer to an integer value that contains the buffer length
	// required, in WCHARs.
	RequiredBufferSize uint32 `idl:"name:pdwMDRequiredBufferSize" json:"required_buffer_size"`
	// Return: The GetDataPaths return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetDataPathsResponse structure represents the GetDataPaths operation response

func (*GetDataPathsResponse) MarshalNDR

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

func (*GetDataPathsResponse) UnmarshalNDR

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

type GetDataRequest

type GetDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be queried.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node containing
	// the data, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// pmdrMDData: A pointer to a METADATA_RECORD structure that describes the requested
	// data.
	Data *imsa.MetadataRecord `idl:"name:pmdrMDData" json:"data"`
}

GetDataRequest structure represents the R_GetData operation request

func (*GetDataRequest) MarshalNDR

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

func (*GetDataRequest) UnmarshalNDR

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

type GetDataResponse

type GetDataResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pmdrMDData: A pointer to a METADATA_RECORD structure that describes the requested
	// data.
	Data *imsa.MetadataRecord `idl:"name:pmdrMDData" json:"data"`
	// pdwMDRequiredDataLen: A pointer to an integer value that contains the buffer length
	// required, in bytes, to contain the decrypted data referenced by the ppDataBlob parameter.
	RequiredDataLength uint32 `idl:"name:pdwMDRequiredDataLen" json:"required_data_length"`
	// ppDataBlob: An IIS_CRYPTO_BLOB structure containing the requested data value as encrypted
	// opaque data.
	DataBlob *imsa.IISCryptoBlob `idl:"name:ppDataBlob" json:"data_blob"`
	// Return: The R_GetData return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetDataResponse structure represents the R_GetData operation response

func (*GetDataResponse) MarshalNDR

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

func (*GetDataResponse) UnmarshalNDR

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

type GetDataSetNumberRequest

type GetDataSetNumberRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be queried.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to have
	// its dataset number retrieved, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
}

GetDataSetNumberRequest structure represents the GetDataSetNumber operation request

func (*GetDataSetNumberRequest) MarshalNDR

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

func (*GetDataSetNumberRequest) UnmarshalNDR

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

type GetDataSetNumberResponse

type GetDataSetNumberResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwMDDataSetNumber: A pointer to an integer value that returns the number associated
	// with this dataset. This value can be used to identify datasets common to multiple
	// nodes.
	DataSetNumber uint32 `idl:"name:pdwMDDataSetNumber" json:"data_set_number"`
	// Return: The GetDataSetNumber return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetDataSetNumberResponse structure represents the GetDataSetNumber operation response

func (*GetDataSetNumberResponse) MarshalNDR

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

func (*GetDataSetNumberResponse) UnmarshalNDR

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

type GetHandleInfoRequest

type GetHandleInfoRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing a handle to a node in the
	// metabase as returned by the OpenKey method.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
}

GetHandleInfoRequest structure represents the GetHandleInfo operation request

func (*GetHandleInfoRequest) MarshalNDR

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

func (*GetHandleInfoRequest) UnmarshalNDR

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

type GetHandleInfoResponse

type GetHandleInfoResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pmdhiInfo: A pointer to a METADATA_HANDLE_INFO structure containing information about
	// the specified handle.
	Info *imsa.MetadataHandleInfo `idl:"name:pmdhiInfo" json:"info"`
	// Return: The GetHandleInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetHandleInfoResponse structure represents the GetHandleInfo operation response

func (*GetHandleInfoResponse) MarshalNDR

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

func (*GetHandleInfoResponse) UnmarshalNDR

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

type GetLastChangeTimeRequest

type GetLastChangeTimeRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be queried.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string containing the path of the node to be queried,
	// relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// bLocalTime: A Boolean value indicating whether the time value returned in the pftMDLastChangeTime
	// parameter is specified as local time (TRUE) or UTC time (FALSE).
	LocalTime bool `idl:"name:bLocalTime" json:"local_time"`
}

GetLastChangeTimeRequest structure represents the GetLastChangeTime operation request

func (*GetLastChangeTimeRequest) MarshalNDR

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

func (*GetLastChangeTimeRequest) UnmarshalNDR

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

type GetLastChangeTimeResponse

type GetLastChangeTimeResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pftMDLastChangeTime: A pointer to a FILETIME structure that returns the last change
	// time for the node.
	LastChangeTime *dtyp.Filetime `idl:"name:pftMDLastChangeTime" json:"last_change_time"`
	// Return: The GetLastChangeTime return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetLastChangeTimeResponse structure represents the GetLastChangeTime operation response

func (*GetLastChangeTimeResponse) MarshalNDR

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

func (*GetLastChangeTimeResponse) UnmarshalNDR

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

type GetServerGUIDRequest

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

GetServerGUIDRequest structure represents the R_GetServerGuid operation request

func (*GetServerGUIDRequest) MarshalNDR

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

func (*GetServerGUIDRequest) UnmarshalNDR

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

type GetServerGUIDResponse

type GetServerGUIDResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pServerGuid: A GUID uniquely identifying this DCOM object.
	ServerGUID *dtyp.GUID `idl:"name:pServerGuid" json:"server_guid"`
	// Return: The R_GetServerGuid return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetServerGUIDResponse structure represents the R_GetServerGuid operation response

func (*GetServerGUIDResponse) MarshalNDR

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

func (*GetServerGUIDResponse) UnmarshalNDR

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

type GetSystemChangeNumberRequest

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

GetSystemChangeNumberRequest structure represents the GetSystemChangeNumber operation request

func (*GetSystemChangeNumberRequest) MarshalNDR

func (*GetSystemChangeNumberRequest) UnmarshalNDR

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

type GetSystemChangeNumberResponse

type GetSystemChangeNumberResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// pdwSystemChangeNumber: A pointer to an unsigned 32-bit integer value containing the
	// system change number. This number is increased each time the metabase is updated.
	SystemChangeNumber uint32 `idl:"name:pdwSystemChangeNumber" json:"system_change_number"`
	// Return: The GetSystemChangeNumber return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetSystemChangeNumberResponse structure represents the GetSystemChangeNumber operation response

func (*GetSystemChangeNumberResponse) MarshalNDR

func (*GetSystemChangeNumberResponse) UnmarshalNDR

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

type IMSAdminBaseWClient

type IMSAdminBaseWClient interface {

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

	// The AddKey method creates a node and adds it to the metabase as a subnode of an existing
	// node at the specified path.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------------------+
	//	|             RETURN              |                                                        |
	//	|           VALUE/CODE            |                      DESCRIPTION                       |
	//	|                                 |                                                        |
	//	+---------------------------------+--------------------------------------------------------+
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                               |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.                           |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                                 |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.                     |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x800700B7 ERROR_ALREADY_EXISTS | Cannot create a file because that file already exists. |
	//	+---------------------------------+--------------------------------------------------------+
	//
	// The opnum field value for this method is 3.
	AddKey(context.Context, *AddKeyRequest, ...dcerpc.CallOption) (*AddKeyResponse, error)

	// The DeleteKey method deletes a node and all its data from the metabase. All of the
	// subnodes are recursively deleted.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 4.
	DeleteKey(context.Context, *DeleteKeyRequest, ...dcerpc.CallOption) (*DeleteKeyResponse, error)

	// The DeleteChildKeys method deletes all subnodes of the specified node and any data
	// they contain. It also recursively deletes all nodes below the subnodes.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 5.
	DeleteChildKeys(context.Context, *DeleteChildKeysRequest, ...dcerpc.CallOption) (*DeleteChildKeysResponse, error)

	// The EnumKeys method enumerates the subnodes of the specified node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS  | No more data is available.                 |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 6.
	//
	// A subnode can be enumerated once per call. Subnodes are numbered from zero to (NumKeys
	// - 1), with NumKeys equal to the number of subnodes below the node.
	EnumKeys(context.Context, *EnumKeysRequest, ...dcerpc.CallOption) (*EnumKeysResponse, error)

	// The CopyKey method copies or moves a node, including its subnodes and data, to a
	// specified destination. The copied or moved node becomes a subnode of the destination
	// node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 7.
	CopyKey(context.Context, *CopyKeyRequest, ...dcerpc.CallOption) (*CopyKeyResponse, error)

	// The RenameKey method renames a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+----------------------------------------------------+
	//	|             RETURN              |                                                    |
	//	|           VALUE/CODE            |                    DESCRIPTION                     |
	//	|                                 |                                                    |
	//	+---------------------------------+----------------------------------------------------+
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                           |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified.         |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.                       |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                             |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | An invalid parameter value was specified.          |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x800700B7 ERROR_ALREADY_EXISTS | A key of that name already exists in the database. |
	//	+---------------------------------+----------------------------------------------------+
	//
	// The opnum field value for this method is 8.
	RenameKey(context.Context, *RenameKeyRequest, ...dcerpc.CallOption) (*RenameKeyResponse, error)

	// The R_SetData method sets a data item for a particular node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16 27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	|                       RETURN                       |                                                                                  |
	//	|                     VALUE/CODE                     |                                   DESCRIPTION                                    |
	//	|                                                    |                                                                                  |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK                                    | The call was successful.                                                         |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND                    | The system cannot find the path specified.                                       |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED                          | General access denied error.                                                     |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG                            | An invalid parameter value was specified.                                        |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x800CC808 MD_ERROR_CANNOT_REMOVE_SECURE_ATTRIBUTE | The METADATA_SECURE attribute cannot be removed from a data item via the         |
	//	|                                                    | R_GetData method. Use the DeleteData method to remove the secure data.           |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY                 | There is not enough memory to complete the operation.                            |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//
	// The opnum field value for this method is 9.
	SetData(context.Context, *SetDataRequest, ...dcerpc.CallOption) (*SetDataResponse, error)

	// The R_GetData method returns a data entry from a particular node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | An invalid parameter value was specified.           |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x800CC801 MD_ERROR_DATA_NOT_FOUND   | The specified metadata was not found.               |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 10.
	//
	// The client describes the data it is requesting by initializing the METADATA_RECORD
	// passed in the pmdrMDData parameter.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDDataLen field of the pmdrMDData parameter.
	//
	// The pbMDData field of the pmdrMDData parameter is not used to transfer the actual
	// data value. The client MUST set the pbMDData field of pmdrMDData to NULL. The IIS_CRYPTO_BLOB
	// structure is used to transfer the actual data value returned by the server and can
	// be encrypted when the server sends data marked as secure.
	GetData(context.Context, *GetDataRequest, ...dcerpc.CallOption) (*GetDataResponse, error)

	// The DeleteData method deletes specific data entries from a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+--------------------------------------------+
	//	|               RETURN               |                                            |
	//	|             VALUE/CODE             |                DESCRIPTION                 |
	//	|                                    |                                            |
	//	+------------------------------------+--------------------------------------------+
	//	+------------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                   |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND    | The system cannot find the path specified. |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED          | General access denied error.               |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE    | The handle is invalid.                     |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x800CC801 MD_ERROR_DATA_NOT_FOUND | The specified metadata was not found.      |
	//	+------------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 11.
	DeleteData(context.Context, *DeleteDataRequest, ...dcerpc.CallOption) (*DeleteDataResponse, error)

	// The R_EnumData method enumerates the data entries of a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE      | The handle is invalid.                              |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | One or more arguments are invalid.                  |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS       | No more data is available.                          |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 12.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDDataLen field of the pmdrMDData parameter. If this value
	// is too small to contain the decrypted data value, the server MUST return ERROR_INSUFFICIENT_BUFFER
	// and return the number of bytes required to hold the data in the pdwMDRequiredDataLen
	// parameter.
	EnumData(context.Context, *EnumDataRequest, ...dcerpc.CallOption) (*EnumDataResponse, error)

	// The R_GetAllData method returns all data associated with a node in the metabase,
	// including all values that the node inherits.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	// Note  Invalid dwMDUserType or dwMDDataType parameters result in a E_INVALIDARG return
	// status.
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | An invalid parameter value was specified.           |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 13.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDBufferSize parameter.
	GetAllData(context.Context, *GetAllDataRequest, ...dcerpc.CallOption) (*GetAllDataResponse, error)

	// The DeleteAllData method deletes all or a subset of local data associated with a
	// particular node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+------------------------------+
	//	|             RETURN              |                              |
	//	|           VALUE/CODE            |         DESCRIPTION          |
	//	|                                 |                              |
	//	+---------------------------------+------------------------------+
	//	+---------------------------------+------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.     |
	//	+---------------------------------+------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error. |
	//	+---------------------------------+------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.       |
	//	+---------------------------------+------------------------------+
	//
	// The opnum field value for this method is 14.
	DeleteAllData(context.Context, *DeleteAllDataRequest, ...dcerpc.CallOption) (*DeleteAllDataResponse, error)

	// The CopyData method copies or moves data between nodes.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+-------------------------------------------------------+
	//	|               RETURN               |                                                       |
	//	|             VALUE/CODE             |                      DESCRIPTION                      |
	//	|                                    |                                                       |
	//	+------------------------------------+-------------------------------------------------------+
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                              |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND    | The system cannot find the path specified.            |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED          | General access denied error.                          |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE    | The handle is invalid.                                |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                    |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation. |
	//	+------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 15.
	CopyData(context.Context, *CopyDataRequest, ...dcerpc.CallOption) (*CopyDataResponse, error)

	// The GetDataPaths method returns the paths of all nodes in the subtree relative to
	// a specified starting node that contains the supplied identifier.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE      | The handle is invalid.                              |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | One or more arguments are invalid.                  |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 16.
	GetDataPaths(context.Context, *GetDataPathsRequest, ...dcerpc.CallOption) (*GetDataPathsResponse, error)

	// The OpenKey method opens a node for read access, write access, or both. The returned
	// handle can be used by several of the other methods in the IMSAdminBaseW interface.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+-------------------------------------------------+
	//	|             RETURN              |                                                 |
	//	|           VALUE/CODE            |                   DESCRIPTION                   |
	//	|                                 |                                                 |
	//	+---------------------------------+-------------------------------------------------+
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                        |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified.      |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                          |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY      | The path specified cannot be used at this time. |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.              |
	//	+---------------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 17.
	OpenKey(context.Context, *OpenKeyRequest, ...dcerpc.CallOption) (*OpenKeyResponse, error)

	// The CloseKey method closes a handle to a node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------+
	//	|             RETURN              |                          |
	//	|           VALUE/CODE            |       DESCRIPTION        |
	//	|                                 |                          |
	//	+---------------------------------+--------------------------+
	//	+---------------------------------+--------------------------+
	//	| 0x00000000 S_OK                 | The call was successful. |
	//	+---------------------------------+--------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.   |
	//	+---------------------------------+--------------------------+
	//
	// The opnum field value for this method is 18.
	CloseKey(context.Context, *CloseKeyRequest, ...dcerpc.CallOption) (*CloseKeyResponse, error)

	// The ChangePermissions method changes permissions on an open handle.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+-------------------------------------------------+
	//	|             RETURN              |                                                 |
	//	|           VALUE/CODE            |                   DESCRIPTION                   |
	//	|                                 |                                                 |
	//	+---------------------------------+-------------------------------------------------+
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                        |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                          |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.              |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY      | The path specified cannot be used at this time. |
	//	+---------------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 19.
	ChangePermissions(context.Context, *ChangePermissionsRequest, ...dcerpc.CallOption) (*ChangePermissionsResponse, error)

	// The SaveData method explicitly flushes the metabase data resident in memory to configuration
	// storage.
	//
	// This method has no parameters.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+----------------------------+-------------------------------------------------+
	//	|           RETURN           |                                                 |
	//	|         VALUE/CODE         |                   DESCRIPTION                   |
	//	|                            |                                                 |
	//	+----------------------------+-------------------------------------------------+
	//	+----------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK            | The call was successful.                        |
	//	+----------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY | The path specified cannot be used at this time. |
	//	+----------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 20.
	SaveData(context.Context, *SaveDataRequest, ...dcerpc.CallOption) (*SaveDataResponse, error)

	// The GetHandleInfo method returns information associated with the specified metabase
	// handle.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------+
	//	|             RETURN              |                          |
	//	|           VALUE/CODE            |       DESCRIPTION        |
	//	|                                 |                          |
	//	+---------------------------------+--------------------------+
	//	+---------------------------------+--------------------------+
	//	| 0x00000000 S_OK                 | The call was successful. |
	//	+---------------------------------+--------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.   |
	//	+---------------------------------+--------------------------+
	//
	// The opnum field value for this method is 21.
	GetHandleInfo(context.Context, *GetHandleInfoRequest, ...dcerpc.CallOption) (*GetHandleInfoResponse, error)

	// The GetSystemChangeNumber method returns the number of changes made to data since
	// the metabase was created.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 22.
	GetSystemChangeNumber(context.Context, *GetSystemChangeNumberRequest, ...dcerpc.CallOption) (*GetSystemChangeNumberResponse, error)

	// The GetDataSetNumber method returns the dataset number associated with a node in
	// the metabase. A dataset number is a unique number identifying the data items at that
	// node, including inherited data items. Nodes with the same dataset number have identical
	// data.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------------+------------------------------------+
	//	|         RETURN          |                                    |
	//	|       VALUE/CODE        |            DESCRIPTION             |
	//	|                         |                                    |
	//	+-------------------------+------------------------------------+
	//	+-------------------------+------------------------------------+
	//	| 0x00000000 S_OK         | The call was successful.           |
	//	+-------------------------+------------------------------------+
	//	| 0x80070057 E_INVALIDARG | One or more arguments are invalid. |
	//	+-------------------------+------------------------------------+
	//
	// The opnum field value for this method is 23.
	GetDataSetNumber(context.Context, *GetDataSetNumberRequest, ...dcerpc.CallOption) (*GetDataSetNumberResponse, error)

	// The SetLastChangeTime method sets the last change time associated with a node in
	// the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 24.
	SetLastChangeTime(context.Context, *SetLastChangeTimeRequest, ...dcerpc.CallOption) (*SetLastChangeTimeResponse, error)

	// The GetLastChangeTime method returns the last change time associated with a node
	// in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 25.
	GetLastChangeTime(context.Context, *GetLastChangeTimeRequest, ...dcerpc.CallOption) (*GetLastChangeTimeResponse, error)

	// The R_KeyExchangePhase1 method receives a pair of encrypted client keys and returns
	// server encryption and session keys.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 26.
	KeyExchangePhase1(context.Context, *KeyExchangePhase1Request, ...dcerpc.CallOption) (*KeyExchangePhase1Response, error)

	// The R_KeyExchangePhase2 method receives the encrypted client session and hash keys
	// in response to the R_KeyExchangePhase1 method and returns the encrypted server hash
	// keys.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 27.
	KeyExchangePhase2(context.Context, *KeyExchangePhase2Request, ...dcerpc.CallOption) (*KeyExchangePhase2Response, error)

	// The Backup method backs up the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	|               RETURN               |                                                                                  |
	//	|             VALUE/CODE             |                                   DESCRIPTION                                    |
	//	|                                    |                                                                                  |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                                                         |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                                               |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x000CC809 MD_WARNING_SAVE FAILED  | The metadata save prior to backup failed. The previous version of the data was   |
	//	|                                    | backed up.                                                                       |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation.                            |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//
	// The opnum field value for this method is 28.
	//
	// The location string can be up to 100 Unicode characters in length. Multiple metabase
	// backups can be stored with the same name.
	Backup(context.Context, *BackupRequest, ...dcerpc.CallOption) (*BackupResponse, error)

	// The Restore method restores the metabase from a backup.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------------------------+-------------------------------------------------------+
	//	|               RETURN                |                                                       |
	//	|             VALUE/CODE              |                      DESCRIPTION                      |
	//	|                                     |                                                       |
	//	+-------------------------------------+-------------------------------------------------------+
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                     | The call was successful.                              |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG             | One or more arguments are invalid.                    |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070013 ERROR_INVALID_DATA       | The data is invalid.                                  |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x800CC802 MD_ERROR_INVALID_VERSION | The version specified by dwMDVersion is invalid.      |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x000CC805L MD_WARNING_INVALID_DATA | Invalid metabase data.                                |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY  | There is not enough memory to complete the operation. |
	//	+-------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 29.
	Restore(context.Context, *RestoreRequest, ...dcerpc.CallOption) (*RestoreResponse, error)

	// The EnumBackups method enumerates metabase backups with a specified backup name or
	// all backups.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------+----------------------------------------+
	//	|             RETURN             |                                        |
	//	|           VALUE/CODE           |              DESCRIPTION               |
	//	|                                |                                        |
	//	+--------------------------------+----------------------------------------+
	//	+--------------------------------+----------------------------------------+
	//	| 0x00000000 S_OK                | The call was successful.               |
	//	+--------------------------------+----------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS | No more data is available.             |
	//	+--------------------------------+----------------------------------------+
	//	| 0x80070057 E_INVALIDARG        | The pszMDBackupName parameter is NULL. |
	//	+--------------------------------+----------------------------------------+
	//
	// The opnum field value for this method is 30.
	EnumBackups(context.Context, *EnumBackupsRequest, ...dcerpc.CallOption) (*EnumBackupsResponse, error)

	// The DeleteBackup method deletes a metabase backup.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+-------------------------------------------------------+
	//	|               RETURN               |                                                       |
	//	|             VALUE/CODE             |                      DESCRIPTION                      |
	//	|                                    |                                                       |
	//	+------------------------------------+-------------------------------------------------------+
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                              |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                    |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070002 ERROR_FILE_NOT_FOUND    | The system cannot find the file specified.            |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation. |
	//	+------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 31.
	DeleteBackup(context.Context, *DeleteBackupRequest, ...dcerpc.CallOption) (*DeleteBackupResponse, error)

	// The UnmarshalInterface method returns a pointer to the IMSAdminBaseW interface.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 32.
	UnmarshalInterface(context.Context, *UnmarshalInterfaceRequest, ...dcerpc.CallOption) (*UnmarshalInterfaceResponse, error)

	// The R_GetServerGuid method returns a GUID for this DCOM object.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 33.
	GetServerGUID(context.Context, *GetServerGUIDRequest, ...dcerpc.CallOption) (*GetServerGUIDResponse, error)

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

	// Conn returns the client connection (unsafe)
	Conn() dcerpc.Conn

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

IMSAdminBaseW interface.

func NewIMSAdminBaseWClient

func NewIMSAdminBaseWClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (IMSAdminBaseWClient, error)

type IMSAdminBaseWServer

type IMSAdminBaseWServer interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// The AddKey method creates a node and adds it to the metabase as a subnode of an existing
	// node at the specified path.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------------------+
	//	|             RETURN              |                                                        |
	//	|           VALUE/CODE            |                      DESCRIPTION                       |
	//	|                                 |                                                        |
	//	+---------------------------------+--------------------------------------------------------+
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                               |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.                           |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                                 |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.                     |
	//	+---------------------------------+--------------------------------------------------------+
	//	| 0x800700B7 ERROR_ALREADY_EXISTS | Cannot create a file because that file already exists. |
	//	+---------------------------------+--------------------------------------------------------+
	//
	// The opnum field value for this method is 3.
	AddKey(context.Context, *AddKeyRequest) (*AddKeyResponse, error)

	// The DeleteKey method deletes a node and all its data from the metabase. All of the
	// subnodes are recursively deleted.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 4.
	DeleteKey(context.Context, *DeleteKeyRequest) (*DeleteKeyResponse, error)

	// The DeleteChildKeys method deletes all subnodes of the specified node and any data
	// they contain. It also recursively deletes all nodes below the subnodes.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 5.
	DeleteChildKeys(context.Context, *DeleteChildKeysRequest) (*DeleteChildKeysResponse, error)

	// The EnumKeys method enumerates the subnodes of the specified node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS  | No more data is available.                 |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 6.
	//
	// A subnode can be enumerated once per call. Subnodes are numbered from zero to (NumKeys
	// - 1), with NumKeys equal to the number of subnodes below the node.
	EnumKeys(context.Context, *EnumKeysRequest) (*EnumKeysResponse, error)

	// The CopyKey method copies or moves a node, including its subnodes and data, to a
	// specified destination. The copied or moved node becomes a subnode of the destination
	// node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                     |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 7.
	CopyKey(context.Context, *CopyKeyRequest) (*CopyKeyResponse, error)

	// The RenameKey method renames a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+----------------------------------------------------+
	//	|             RETURN              |                                                    |
	//	|           VALUE/CODE            |                    DESCRIPTION                     |
	//	|                                 |                                                    |
	//	+---------------------------------+----------------------------------------------------+
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                           |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified.         |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.                       |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                             |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | An invalid parameter value was specified.          |
	//	+---------------------------------+----------------------------------------------------+
	//	| 0x800700B7 ERROR_ALREADY_EXISTS | A key of that name already exists in the database. |
	//	+---------------------------------+----------------------------------------------------+
	//
	// The opnum field value for this method is 8.
	RenameKey(context.Context, *RenameKeyRequest) (*RenameKeyResponse, error)

	// The R_SetData method sets a data item for a particular node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16 27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	|                       RETURN                       |                                                                                  |
	//	|                     VALUE/CODE                     |                                   DESCRIPTION                                    |
	//	|                                                    |                                                                                  |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK                                    | The call was successful.                                                         |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND                    | The system cannot find the path specified.                                       |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED                          | General access denied error.                                                     |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG                            | An invalid parameter value was specified.                                        |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x800CC808 MD_ERROR_CANNOT_REMOVE_SECURE_ATTRIBUTE | The METADATA_SECURE attribute cannot be removed from a data item via the         |
	//	|                                                    | R_GetData method. Use the DeleteData method to remove the secure data.           |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY                 | There is not enough memory to complete the operation.                            |
	//	+----------------------------------------------------+----------------------------------------------------------------------------------+
	//
	// The opnum field value for this method is 9.
	SetData(context.Context, *SetDataRequest) (*SetDataResponse, error)

	// The R_GetData method returns a data entry from a particular node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | An invalid parameter value was specified.           |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x800CC801 MD_ERROR_DATA_NOT_FOUND   | The specified metadata was not found.               |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 10.
	//
	// The client describes the data it is requesting by initializing the METADATA_RECORD
	// passed in the pmdrMDData parameter.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDDataLen field of the pmdrMDData parameter.
	//
	// The pbMDData field of the pmdrMDData parameter is not used to transfer the actual
	// data value. The client MUST set the pbMDData field of pmdrMDData to NULL. The IIS_CRYPTO_BLOB
	// structure is used to transfer the actual data value returned by the server and can
	// be encrypted when the server sends data marked as secure.
	GetData(context.Context, *GetDataRequest) (*GetDataResponse, error)

	// The DeleteData method deletes specific data entries from a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+--------------------------------------------+
	//	|               RETURN               |                                            |
	//	|             VALUE/CODE             |                DESCRIPTION                 |
	//	|                                    |                                            |
	//	+------------------------------------+--------------------------------------------+
	//	+------------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                   |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND    | The system cannot find the path specified. |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED          | General access denied error.               |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE    | The handle is invalid.                     |
	//	+------------------------------------+--------------------------------------------+
	//	| 0x800CC801 MD_ERROR_DATA_NOT_FOUND | The specified metadata was not found.      |
	//	+------------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 11.
	DeleteData(context.Context, *DeleteDataRequest) (*DeleteDataResponse, error)

	// The R_EnumData method enumerates the data entries of a node in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE      | The handle is invalid.                              |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | One or more arguments are invalid.                  |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS       | No more data is available.                          |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 12.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDDataLen field of the pmdrMDData parameter. If this value
	// is too small to contain the decrypted data value, the server MUST return ERROR_INSUFFICIENT_BUFFER
	// and return the number of bytes required to hold the data in the pdwMDRequiredDataLen
	// parameter.
	EnumData(context.Context, *EnumDataRequest) (*EnumDataResponse, error)

	// The R_GetAllData method returns all data associated with a node in the metabase,
	// including all values that the node inherits.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	// Note  Invalid dwMDUserType or dwMDDataType parameters result in a E_INVALIDARG return
	// status.
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED            | General access denied error.                        |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | An invalid parameter value was specified.           |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 13.
	//
	// The client indicates how much decrypted data it is ready to receive by passing the
	// number of bytes in the dwMDBufferSize parameter.
	GetAllData(context.Context, *GetAllDataRequest) (*GetAllDataResponse, error)

	// The DeleteAllData method deletes all or a subset of local data associated with a
	// particular node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+------------------------------+
	//	|             RETURN              |                              |
	//	|           VALUE/CODE            |         DESCRIPTION          |
	//	|                                 |                              |
	//	+---------------------------------+------------------------------+
	//	+---------------------------------+------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.     |
	//	+---------------------------------+------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error. |
	//	+---------------------------------+------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.       |
	//	+---------------------------------+------------------------------+
	//
	// The opnum field value for this method is 14.
	DeleteAllData(context.Context, *DeleteAllDataRequest) (*DeleteAllDataResponse, error)

	// The CopyData method copies or moves data between nodes.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+-------------------------------------------------------+
	//	|               RETURN               |                                                       |
	//	|             VALUE/CODE             |                      DESCRIPTION                      |
	//	|                                    |                                                       |
	//	+------------------------------------+-------------------------------------------------------+
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                              |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND    | The system cannot find the path specified.            |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED          | General access denied error.                          |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE    | The handle is invalid.                                |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                    |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation. |
	//	+------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 15.
	CopyData(context.Context, *CopyDataRequest) (*CopyDataResponse, error)

	// The GetDataPaths method returns the paths of all nodes in the subtree relative to
	// a specified starting node that contains the supplied identifier.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------------+-----------------------------------------------------+
	//	|                RETURN                |                                                     |
	//	|              VALUE/CODE              |                     DESCRIPTION                     |
	//	|                                      |                                                     |
	//	+--------------------------------------+-----------------------------------------------------+
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x00000000 S_OK                      | The call was successful.                            |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND      | The system cannot find the path specified.          |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE      | The handle is invalid.                              |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG              | One or more arguments are invalid.                  |
	//	+--------------------------------------+-----------------------------------------------------+
	//	| 0x8007007A ERROR_INSUFFICIENT_BUFFER | The data area passed to a system call is too small. |
	//	+--------------------------------------+-----------------------------------------------------+
	//
	// The opnum field value for this method is 16.
	GetDataPaths(context.Context, *GetDataPathsRequest) (*GetDataPathsResponse, error)

	// The OpenKey method opens a node for read access, write access, or both. The returned
	// handle can be used by several of the other methods in the IMSAdminBaseW interface.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+-------------------------------------------------+
	//	|             RETURN              |                                                 |
	//	|           VALUE/CODE            |                   DESCRIPTION                   |
	//	|                                 |                                                 |
	//	+---------------------------------+-------------------------------------------------+
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                        |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified.      |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                          |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY      | The path specified cannot be used at this time. |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.              |
	//	+---------------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 17.
	OpenKey(context.Context, *OpenKeyRequest) (*OpenKeyResponse, error)

	// The CloseKey method closes a handle to a node.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------+
	//	|             RETURN              |                          |
	//	|           VALUE/CODE            |       DESCRIPTION        |
	//	|                                 |                          |
	//	+---------------------------------+--------------------------+
	//	+---------------------------------+--------------------------+
	//	| 0x00000000 S_OK                 | The call was successful. |
	//	+---------------------------------+--------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.   |
	//	+---------------------------------+--------------------------+
	//
	// The opnum field value for this method is 18.
	CloseKey(context.Context, *CloseKeyRequest) (*CloseKeyResponse, error)

	// The ChangePermissions method changes permissions on an open handle.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+-------------------------------------------------+
	//	|             RETURN              |                                                 |
	//	|           VALUE/CODE            |                   DESCRIPTION                   |
	//	|                                 |                                                 |
	//	+---------------------------------+-------------------------------------------------+
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                        |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.                          |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.              |
	//	+---------------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY      | The path specified cannot be used at this time. |
	//	+---------------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 19.
	ChangePermissions(context.Context, *ChangePermissionsRequest) (*ChangePermissionsResponse, error)

	// The SaveData method explicitly flushes the metabase data resident in memory to configuration
	// storage.
	//
	// This method has no parameters.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+----------------------------+-------------------------------------------------+
	//	|           RETURN           |                                                 |
	//	|         VALUE/CODE         |                   DESCRIPTION                   |
	//	|                            |                                                 |
	//	+----------------------------+-------------------------------------------------+
	//	+----------------------------+-------------------------------------------------+
	//	| 0x00000000 S_OK            | The call was successful.                        |
	//	+----------------------------+-------------------------------------------------+
	//	| 0x80070094 ERROR_PATH_BUSY | The path specified cannot be used at this time. |
	//	+----------------------------+-------------------------------------------------+
	//
	// The opnum field value for this method is 20.
	SaveData(context.Context, *SaveDataRequest) (*SaveDataResponse, error)

	// The GetHandleInfo method returns information associated with the specified metabase
	// handle.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------+
	//	|             RETURN              |                          |
	//	|           VALUE/CODE            |       DESCRIPTION        |
	//	|                                 |                          |
	//	+---------------------------------+--------------------------+
	//	+---------------------------------+--------------------------+
	//	| 0x00000000 S_OK                 | The call was successful. |
	//	+---------------------------------+--------------------------+
	//	| 0x80070006 ERROR_INVALID_HANDLE | The handle is invalid.   |
	//	+---------------------------------+--------------------------+
	//
	// The opnum field value for this method is 21.
	GetHandleInfo(context.Context, *GetHandleInfoRequest) (*GetHandleInfoResponse, error)

	// The GetSystemChangeNumber method returns the number of changes made to data since
	// the metabase was created.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 22.
	GetSystemChangeNumber(context.Context, *GetSystemChangeNumberRequest) (*GetSystemChangeNumberResponse, error)

	// The GetDataSetNumber method returns the dataset number associated with a node in
	// the metabase. A dataset number is a unique number identifying the data items at that
	// node, including inherited data items. Nodes with the same dataset number have identical
	// data.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------------+------------------------------------+
	//	|         RETURN          |                                    |
	//	|       VALUE/CODE        |            DESCRIPTION             |
	//	|                         |                                    |
	//	+-------------------------+------------------------------------+
	//	+-------------------------+------------------------------------+
	//	| 0x00000000 S_OK         | The call was successful.           |
	//	+-------------------------+------------------------------------+
	//	| 0x80070057 E_INVALIDARG | One or more arguments are invalid. |
	//	+-------------------------+------------------------------------+
	//
	// The opnum field value for this method is 23.
	GetDataSetNumber(context.Context, *GetDataSetNumberRequest) (*GetDataSetNumberResponse, error)

	// The SetLastChangeTime method sets the last change time associated with a node in
	// the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070005 E_ACCESSDENIED       | General access denied error.               |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 24.
	SetLastChangeTime(context.Context, *SetLastChangeTimeRequest) (*SetLastChangeTimeResponse, error)

	// The GetLastChangeTime method returns the last change time associated with a node
	// in the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+---------------------------------+--------------------------------------------+
	//	|             RETURN              |                                            |
	//	|           VALUE/CODE            |                DESCRIPTION                 |
	//	|                                 |                                            |
	//	+---------------------------------+--------------------------------------------+
	//	+---------------------------------+--------------------------------------------+
	//	| 0x00000000 S_OK                 | The call was successful.                   |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070003 ERROR_PATH_NOT_FOUND | The system cannot find the path specified. |
	//	+---------------------------------+--------------------------------------------+
	//	| 0x80070057 E_INVALIDARG         | One or more arguments are invalid.         |
	//	+---------------------------------+--------------------------------------------+
	//
	// The opnum field value for this method is 25.
	GetLastChangeTime(context.Context, *GetLastChangeTimeRequest) (*GetLastChangeTimeResponse, error)

	// The R_KeyExchangePhase1 method receives a pair of encrypted client keys and returns
	// server encryption and session keys.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 26.
	KeyExchangePhase1(context.Context, *KeyExchangePhase1Request) (*KeyExchangePhase1Response, error)

	// The R_KeyExchangePhase2 method receives the encrypted client session and hash keys
	// in response to the R_KeyExchangePhase1 method and returns the encrypted server hash
	// keys.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 27.
	KeyExchangePhase2(context.Context, *KeyExchangePhase2Request) (*KeyExchangePhase2Response, error)

	// The Backup method backs up the metabase.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	|               RETURN               |                                                                                  |
	//	|             VALUE/CODE             |                                   DESCRIPTION                                    |
	//	|                                    |                                                                                  |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                                                         |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                                               |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x000CC809 MD_WARNING_SAVE FAILED  | The metadata save prior to backup failed. The previous version of the data was   |
	//	|                                    | backed up.                                                                       |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation.                            |
	//	+------------------------------------+----------------------------------------------------------------------------------+
	//
	// The opnum field value for this method is 28.
	//
	// The location string can be up to 100 Unicode characters in length. Multiple metabase
	// backups can be stored with the same name.
	Backup(context.Context, *BackupRequest) (*BackupResponse, error)

	// The Restore method restores the metabase from a backup.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------------------------+-------------------------------------------------------+
	//	|               RETURN                |                                                       |
	//	|             VALUE/CODE              |                      DESCRIPTION                      |
	//	|                                     |                                                       |
	//	+-------------------------------------+-------------------------------------------------------+
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                     | The call was successful.                              |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG             | One or more arguments are invalid.                    |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070013 ERROR_INVALID_DATA       | The data is invalid.                                  |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x800CC802 MD_ERROR_INVALID_VERSION | The version specified by dwMDVersion is invalid.      |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x000CC805L MD_WARNING_INVALID_DATA | Invalid metabase data.                                |
	//	+-------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY  | There is not enough memory to complete the operation. |
	//	+-------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 29.
	Restore(context.Context, *RestoreRequest) (*RestoreResponse, error)

	// The EnumBackups method enumerates metabase backups with a specified backup name or
	// all backups.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+--------------------------------+----------------------------------------+
	//	|             RETURN             |                                        |
	//	|           VALUE/CODE           |              DESCRIPTION               |
	//	|                                |                                        |
	//	+--------------------------------+----------------------------------------+
	//	+--------------------------------+----------------------------------------+
	//	| 0x00000000 S_OK                | The call was successful.               |
	//	+--------------------------------+----------------------------------------+
	//	| 0x80070103 ERROR_NO_MORE_ITEMS | No more data is available.             |
	//	+--------------------------------+----------------------------------------+
	//	| 0x80070057 E_INVALIDARG        | The pszMDBackupName parameter is NULL. |
	//	+--------------------------------+----------------------------------------+
	//
	// The opnum field value for this method is 30.
	EnumBackups(context.Context, *EnumBackupsRequest) (*EnumBackupsResponse, error)

	// The DeleteBackup method deletes a metabase backup.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+------------------------------------+-------------------------------------------------------+
	//	|               RETURN               |                                                       |
	//	|             VALUE/CODE             |                      DESCRIPTION                      |
	//	|                                    |                                                       |
	//	+------------------------------------+-------------------------------------------------------+
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x00000000 S_OK                    | The call was successful.                              |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070057 E_INVALIDARG            | One or more arguments are invalid.                    |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070002 ERROR_FILE_NOT_FOUND    | The system cannot find the file specified.            |
	//	+------------------------------------+-------------------------------------------------------+
	//	| 0x80070008 ERROR_NOT_ENOUGH_MEMORY | There is not enough memory to complete the operation. |
	//	+------------------------------------+-------------------------------------------------------+
	//
	// The opnum field value for this method is 31.
	DeleteBackup(context.Context, *DeleteBackupRequest) (*DeleteBackupResponse, error)

	// The UnmarshalInterface method returns a pointer to the IMSAdminBaseW interface.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 32.
	UnmarshalInterface(context.Context, *UnmarshalInterfaceRequest) (*UnmarshalInterfaceResponse, error)

	// The R_GetServerGuid method returns a GUID for this DCOM object.
	//
	// Return Values: A signed 32-bit value that indicates return status. If the method
	// returns a negative value, it failed. If the 12-bit facility code (bits 16–27) is
	// set to 0x007, the value contains a Win32 error code in the lower 16 bits. Zero or
	// positive values indicate success, with the lower 16 bits in positive nonzero values
	// containing warnings or flags defined in the method implementation. For more information
	// about Win32 error codes and HRESULT values, see [MS-ERREF].
	//
	//	+-------------------+--------------------------+
	//	|      RETURN       |                          |
	//	|    VALUE/CODE     |       DESCRIPTION        |
	//	|                   |                          |
	//	+-------------------+--------------------------+
	//	+-------------------+--------------------------+
	//	| 0x00000000 S_OK   | The call was successful. |
	//	+-------------------+--------------------------+
	//
	// The opnum field value for this method is 33.
	GetServerGUID(context.Context, *GetServerGUIDRequest) (*GetServerGUIDResponse, error)
}

IMSAdminBaseW server interface.

type KeyExchangePhase1Request

type KeyExchangePhase1Request struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pClientKeyExchangeKeyBlob: A pointer to an IIS_CRYPTO_BLOB structure containing the
	// encrypted client key used to decrypt client data.
	ClientKeyExchangeKeyBlob *imsa.IISCryptoBlob `idl:"name:pClientKeyExchangeKeyBlob;pointer:unique" json:"client_key_exchange_key_blob"`
	// pClientSignatureKeyBlob: A pointer to an IIS_CRYPTO_BLOB structure containing the
	// encrypted client signature key used for data verification.
	ClientSignatureKeyBlob *imsa.IISCryptoBlob `idl:"name:pClientSignatureKeyBlob;pointer:unique" json:"client_signature_key_blob"`
}

KeyExchangePhase1Request structure represents the R_KeyExchangePhase1 operation request

func (*KeyExchangePhase1Request) MarshalNDR

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

func (*KeyExchangePhase1Request) UnmarshalNDR

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

type KeyExchangePhase1Response

type KeyExchangePhase1Response struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppServerKeyExchangeKeyBlob: A pointer to a set of IIS_CRYPTO_BLOB structures containing
	// encrypted server keys used by the client to decrypt server data.
	ServerKeyExchangeKeyBlob *imsa.IISCryptoBlob `idl:"name:ppServerKeyExchangeKeyBlob" json:"server_key_exchange_key_blob"`
	// ppServerSignatureKeyBlob: A pointer to a set of IIS_CRYPTO_BLOB structures containing
	// encrypted server signature keys used for data verification.
	ServerSignatureKeyBlob *imsa.IISCryptoBlob `idl:"name:ppServerSignatureKeyBlob" json:"server_signature_key_blob"`
	// ppServerSessionKeyBlob: A pointer to a set of IIS_CRYPTO_BLOB structures containing
	// encrypted server session keys.
	ServerSessionKeyBlob *imsa.IISCryptoBlob `idl:"name:ppServerSessionKeyBlob" json:"server_session_key_blob"`
	// Return: The R_KeyExchangePhase1 return value.
	Return int32 `idl:"name:Return" json:"return"`
}

KeyExchangePhase1Response structure represents the R_KeyExchangePhase1 operation response

func (*KeyExchangePhase1Response) MarshalNDR

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

func (*KeyExchangePhase1Response) UnmarshalNDR

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

type KeyExchangePhase2Request

type KeyExchangePhase2Request struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pClientSessionKeyBlob: A pointer to an IIS_CRYPTO_BLOB structure containing the encrypted
	// client session key.
	ClientSessionKeyBlob *imsa.IISCryptoBlob `idl:"name:pClientSessionKeyBlob;pointer:unique" json:"client_session_key_blob"`
	// pClientHashBlob: A pointer to an IIS_CRYPTO_BLOB structure containing the encrypted
	// client hash key.
	ClientHashBlob *imsa.IISCryptoBlob `idl:"name:pClientHashBlob;pointer:unique" json:"client_hash_blob"`
}

KeyExchangePhase2Request structure represents the R_KeyExchangePhase2 operation request

func (*KeyExchangePhase2Request) MarshalNDR

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

func (*KeyExchangePhase2Request) UnmarshalNDR

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

type KeyExchangePhase2Response

type KeyExchangePhase2Response struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppServerHashBlob: A pointer to a set of IIS_CRYPTO_BLOB structures containing the
	// encrypted session hash keys.
	ServerHashBlob *imsa.IISCryptoBlob `idl:"name:ppServerHashBlob" json:"server_hash_blob"`
	// Return: The R_KeyExchangePhase2 return value.
	Return int32 `idl:"name:Return" json:"return"`
}

KeyExchangePhase2Response structure represents the R_KeyExchangePhase2 operation response

func (*KeyExchangePhase2Response) MarshalNDR

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

func (*KeyExchangePhase2Response) UnmarshalNDR

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

type OpenKeyRequest

type OpenKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing a handle to a node in the
	// metabase with read permissions as returned by the OpenKey method or the metabase
	// master root handle (0x00000000).
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to be
	// opened, relative to the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// dwMDAccessRequested: A set of bit flags specifying the requested permissions for
	// the handle. This parameter MUST be set to at least one of the following values.
	//
	//	+--------------------------------------+----------------------------+
	//	|                                      |                            |
	//	|                VALUE                 |          MEANING           |
	//	|                                      |                            |
	//	+--------------------------------------+----------------------------+
	//	+--------------------------------------+----------------------------+
	//	| METADATA_PERMISSION_READ 0x00000001  | Open the node for reading. |
	//	+--------------------------------------+----------------------------+
	//	| METADATA_PERMISSION_WRITE 0x00000002 | Open the node for writing. |
	//	+--------------------------------------+----------------------------+
	AccessRequested uint32 `idl:"name:dwMDAccessRequested" json:"access_requested"`
	// dwMDTimeOut: An unsigned 32-bit integer value specifying the time, in milliseconds,
	// for the method to wait on a successful open operation.
	Timeout uint32 `idl:"name:dwMDTimeOut" json:"timeout"`
}

OpenKeyRequest structure represents the OpenKey operation request

func (*OpenKeyRequest) MarshalNDR

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

func (*OpenKeyRequest) UnmarshalNDR

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

type OpenKeyResponse

type OpenKeyResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// phMDNewHandle: A pointer to the newly opened metadata handle (see DWORD).
	MDNewHandle uint32 `idl:"name:phMDNewHandle" json:"md_new_handle"`
	// Return: The OpenKey return value.
	Return int32 `idl:"name:Return" json:"return"`
}

OpenKeyResponse structure represents the OpenKey operation response

func (*OpenKeyResponse) MarshalNDR

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

func (*OpenKeyResponse) UnmarshalNDR

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

type RenameKeyRequest

type RenameKeyRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing an open metabase handle specifying
	// the key to be renamed.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node to be
	// renamed, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// pszMDNewName: A pointer to a string that contains the new name for the node.
	NewName string `idl:"name:pszMDNewName;string;pointer:unique" json:"new_name"`
}

RenameKeyRequest structure represents the RenameKey operation request

func (*RenameKeyRequest) MarshalNDR

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

func (*RenameKeyRequest) UnmarshalNDR

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

type RenameKeyResponse

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

RenameKeyResponse structure represents the RenameKey operation response

func (*RenameKeyResponse) MarshalNDR

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

func (*RenameKeyResponse) UnmarshalNDR

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

type RestoreRequest

type RestoreRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// pszMDBackupName: A string of up to 100 Unicode characters that identifies the backup
	// to be restored.
	BackupName string `idl:"name:pszMDBackupName;string;pointer:unique" json:"backup_name"`
	// dwMDVersion: An integer value specifying either the version number of the backup
	// to be restored or the following constant.
	//
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	|                                      |                                                                                  |
	//	|                VALUE                 |                                     MEANING                                      |
	//	|                                      |                                                                                  |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| MD_BACKUP_HIGHEST_VERSION 0xFFFFFFFE | Restore from the highest existing backup version in the specified backup         |
	//	|                                      | location.                                                                        |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	Version uint32 `idl:"name:dwMDVersion" json:"version"`
	// dwMDFlags: This parameter is reserved and SHOULD always be set to zero.
	Flags uint32 `idl:"name:dwMDFlags" json:"flags"`
}

RestoreRequest structure represents the Restore operation request

func (*RestoreRequest) MarshalNDR

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

func (*RestoreRequest) UnmarshalNDR

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

type RestoreResponse

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

RestoreResponse structure represents the Restore operation response

func (*RestoreResponse) MarshalNDR

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

func (*RestoreResponse) UnmarshalNDR

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

type SaveDataRequest

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

SaveDataRequest structure represents the SaveData operation request

func (*SaveDataRequest) MarshalNDR

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

func (*SaveDataRequest) UnmarshalNDR

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

type SaveDataResponse

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

SaveDataResponse structure represents the SaveData operation response

func (*SaveDataResponse) MarshalNDR

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

func (*SaveDataResponse) UnmarshalNDR

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

type SetDataRequest

type SetDataRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value specifying a handle to a node in the
	// metabase with write permissions as returned by the OpenKey method.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string that contains the path of the node that
	// stores the entry, relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// pmdrMDData: A pointer to a METADATA_RECORD structure that contains the data to set.
	Data *imsa.MetadataRecord `idl:"name:pmdrMDData" json:"data"`
}

SetDataRequest structure represents the R_SetData operation request

func (*SetDataRequest) MarshalNDR

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

func (*SetDataRequest) UnmarshalNDR

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

type SetDataResponse

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

SetDataResponse structure represents the R_SetData operation response

func (*SetDataResponse) MarshalNDR

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

func (*SetDataResponse) UnmarshalNDR

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

type SetLastChangeTimeRequest

type SetLastChangeTimeRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// hMDHandle: An unsigned 32-bit integer value containing a handle to a node in the
	// metabase as returned by the OpenKey method.
	Handle uint32 `idl:"name:hMDHandle" json:"handle"`
	// pszMDPath: A pointer to a Unicode string containing the path of the node to be set,
	// relative to the path of the hMDHandle parameter.
	Path string `idl:"name:pszMDPath;string;pointer:unique" json:"path"`
	// pftMDLastChangeTime: A pointer to a FILETIME structure that contains the last change
	// time to set for the node.
	LastChangeTime *dtyp.Filetime `idl:"name:pftMDLastChangeTime" json:"last_change_time"`
	// bLocalTime: A Boolean value indicating whether the time value specified in the pftMDLastChangeTime
	// parameter is local time (TRUE) or UTC time (FALSE).
	LocalTime bool `idl:"name:bLocalTime" json:"local_time"`
}

SetLastChangeTimeRequest structure represents the SetLastChangeTime operation request

func (*SetLastChangeTimeRequest) MarshalNDR

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

func (*SetLastChangeTimeRequest) UnmarshalNDR

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

type SetLastChangeTimeResponse

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

SetLastChangeTimeResponse structure represents the SetLastChangeTime operation response

func (*SetLastChangeTimeResponse) MarshalNDR

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

func (*SetLastChangeTimeResponse) UnmarshalNDR

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

type UnimplementedIMSAdminBaseWServer added in v1.1.5

type UnimplementedIMSAdminBaseWServer struct {
	iunknown.UnimplementedUnknownServer
}

Unimplemented IMSAdminBaseW

func (UnimplementedIMSAdminBaseWServer) AddKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) Backup added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) ChangePermissions added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) CloseKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) CopyData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) CopyKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) DeleteAllData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) DeleteBackup added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) DeleteChildKeys added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) DeleteData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) DeleteKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) EnumBackups added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) EnumData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) EnumKeys added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetAllData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetDataPaths added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetDataSetNumber added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetHandleInfo added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetLastChangeTime added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetServerGUID added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) GetSystemChangeNumber added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) KeyExchangePhase1 added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) KeyExchangePhase2 added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) OpenKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) RenameKey added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) Restore added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) SaveData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) SetData added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) SetLastChangeTime added in v1.1.5

func (UnimplementedIMSAdminBaseWServer) UnmarshalInterface added in v1.1.5

type UnmarshalInterfaceRequest

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

UnmarshalInterfaceRequest structure represents the UnmarshalInterface operation request

func (*UnmarshalInterfaceRequest) MarshalNDR

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

func (*UnmarshalInterfaceRequest) UnmarshalNDR

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

type UnmarshalInterfaceResponse

type UnmarshalInterfaceResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// piadmbwInterface: The address of the pointer that contains the pointer to IMSAdminBaseW.
	Interface *imsa.IMSAdminBaseW `idl:"name:piadmbwInterface" json:"interface"`
	// Return: The UnmarshalInterface return value.
	Return int32 `idl:"name:Return" json:"return"`
}

UnmarshalInterfaceResponse structure represents the UnmarshalInterface operation response

func (*UnmarshalInterfaceResponse) MarshalNDR

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

func (*UnmarshalInterfaceResponse) UnmarshalNDR

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