Documentation ¶
Index ¶
- Variables
- func NewNspiServerHandle(o NspiServer) dcerpc.ServerHandle
- func NspiServerHandle(ctx context.Context, o NspiServer, opNum int, r ndr.Reader) (dcerpc.Operation, error)
- func RegisterNspiServer(conn dcerpc.Conn, o NspiServer, opts ...dcerpc.Option)
- type AndRestriction
- type Binary
- type BinaryArray
- type BindRequest
- type BindResponse
- type BitMaskRestriction
- type CharStringArray
- type CharStringsArray
- type CompareMIDsRequest
- type CompareMIDsResponse
- type ComparePropertiesRestriction
- type ContentRestriction
- type DNToMIDRequest
- type DNToMIDResponse
- type DateTimeArray
- type ExistRestriction
- type FlatUID
- type FlatUIDArray
- type GetIDsFromNamesRequest
- type GetIDsFromNamesResponse
- type GetMatchesRequest
- type GetMatchesResponse
- type GetNamesFromIDsRequest
- type GetNamesFromIDsResponse
- type GetPropertiesRequest
- type GetPropertiesResponse
- type GetPropertyListRequest
- type GetPropertyListResponse
- type GetSpecialTableRequest
- type GetSpecialTableResponse
- type GetTemplateInfoRequest
- type GetTemplateInfoResponse
- type Handle
- type LongArray
- type ModifyLinkAttributeRequest
- type ModifyLinkAttributeResponse
- type ModifyPropertiesRequest
- type ModifyPropertiesResponse
- type NotRestriction
- type NspiClient
- type NspiServer
- type OrRestriction
- type PropertyName
- type PropertyNameSet
- type PropertyRestriction
- type PropertyRow
- type PropertyRowSet
- type PropertyTagArray
- type PropertyValue
- type PropertyValueUnion
- type PropertyValueUnion_Binary
- type PropertyValueUnion_BinaryArray
- type PropertyValueUnion_Bool
- type PropertyValueUnion_CharString
- type PropertyValueUnion_CharStringArray
- type PropertyValueUnion_DateTime
- type PropertyValueUnion_DateTimeArray
- type PropertyValueUnion_Error
- type PropertyValueUnion_GUID
- type PropertyValueUnion_GUIDArray
- type PropertyValueUnion_Int16
- type PropertyValueUnion_Int16Array
- type PropertyValueUnion_Int32
- type PropertyValueUnion_Int32Array
- type PropertyValueUnion_Reserved
- type PropertyValueUnion_String
- type PropertyValueUnion_StringArray
- type QueryColumnsRequest
- type QueryColumnsResponse
- type QueryRowsRequest
- type QueryRowsResponse
- type ResolveNamesRequest
- type ResolveNamesResponse
- type ResolveNamesWRequest
- type ResolveNamesWResponse
- type ResortRestrictionRequest
- type ResortRestrictionResponse
- type Restriction
- type RestrictionUnion
- type RestrictionUnion_And
- type RestrictionUnion_BitMask
- type RestrictionUnion_CompareProperties
- type RestrictionUnion_Content
- type RestrictionUnion_Exist
- type RestrictionUnion_Not
- type RestrictionUnion_Or
- type RestrictionUnion_Property
- type RestrictionUnion_Size
- type RestrictionUnion_SubRestriction
- type SeekEntriesRequest
- type SeekEntriesResponse
- type ShortArray
- type SizeRestriction
- type Stat
- type StringArray
- type StringsArray
- type SubRestriction
- type UnbindRequest
- type UnbindResponse
- type UpdateStatRequest
- type UpdateStatResponse
Constants ¶
This section is empty.
Variables ¶
var ( // Syntax UUID NspiSyntaxUUID = &uuid.UUID{TimeLow: 0xf5cc5a18, TimeMid: 0x4264, TimeHiAndVersion: 0x101a, ClockSeqHiAndReserved: 0x8c, ClockSeqLow: 0x59, Node: [6]uint8{0x8, 0x0, 0x2b, 0x2f, 0x84, 0x26}} // Syntax ID NspiSyntaxV56_0 = &dcerpc.SyntaxID{IfUUID: NspiSyntaxUUID, IfVersionMajor: 56, IfVersionMinor: 0} )
var (
// import guard
GoPackage = "nspi"
)
Functions ¶
func NewNspiServerHandle ¶
func NewNspiServerHandle(o NspiServer) dcerpc.ServerHandle
func NspiServerHandle ¶
func RegisterNspiServer ¶
func RegisterNspiServer(conn dcerpc.Conn, o NspiServer, opts ...dcerpc.Option)
Types ¶
type AndRestriction ¶
type AndRestriction struct { // cRes: Encodes the RestrictCount field of the AndRestriction and OrRestriction data // structures. This value MUST NOT exceed 100,000. RestrictionCount uint32 `idl:"name:cRes" json:"restriction_count"` // lpRes: Encodes the Restricts field of the AndRestriction and OrRestriction data // structures. Restriction []*Restriction `idl:"name:lpRes;size_is:(cRes)" json:"restriction"` }
AndRestriction structure represents AndRestriction_r RPC structure.
The AndRestriction_r, OrRestriction_r restriction types share a single RPC encoding. The AndOrRestriction_r structure is an encoding of the both the AndRestriction data structure and the OrRestriction data structure defined in [MS-OXCDATA]. These two data structures share the same data layout, so a single encoding is included in the NSPI Protocol. The sense of the data structure's use is derived from the context of its inclusion in the RestrictionUnion_r data structure defined in this specification.
The permissible number of Restriction structures in the AndRestriction_r and OrRestriction_r data structures exceeds that of the AndRestriction and OrRestriction structures. The semantic meaning is otherwise unchanged from the AndRestriction and OrRestriction data structures, as context dictates.
func (*AndRestriction) MarshalNDR ¶
func (*AndRestriction) UnmarshalNDR ¶
type Binary ¶
type Binary struct { // cb: The number of uninterpreted bytes represented in this structure. This value // MUST NOT exceed 2,097,152. Length uint32 `idl:"name:cb" json:"length"` // lpb: The uninterpreted bytes. Value []byte `idl:"name:lpb;size_is:(cb)" json:"value"` }
Binary structure represents Binary_r RPC structure.
The Binary_r structure encodes an array of uninterpreted bytes.
type BinaryArray ¶
type BinaryArray struct { // cValues: The number of Binary_r data structures represented in the BinaryArray_r // structure. This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpbin: The Binary_r data structures. Values []*Binary `idl:"name:lpbin;size_is:(cValues)" json:"values"` }
BinaryArray structure represents BinaryArray_r RPC structure.
The BinaryArray_r structure is an array of Binary_r data structures.
func (*BinaryArray) MarshalNDR ¶
func (*BinaryArray) UnmarshalNDR ¶
type BindRequest ¶
type BindRequest struct { // dwFlags: A DWORD value containing a set of bit flags. The server MUST ignore values // other than the bit flag fAnonymousLogin. Flags uint32 `idl:"name:dwFlags" json:"flags"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to specify both input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // pServerGuid: The value NULL or a pointer to a GUID value associated with the specific // NSPI server. ServerGUID *FlatUID `idl:"name:pServerGuid;pointer:unique" json:"server_guid"` }
BindRequest structure represents the NspiBind operation request
func (*BindRequest) MarshalNDR ¶
func (*BindRequest) UnmarshalNDR ¶
type BindResponse ¶
type BindResponse struct { // pServerGuid: The value NULL or a pointer to a GUID value associated with the specific // NSPI server. ServerGUID *FlatUID `idl:"name:pServerGuid;pointer:unique" json:"server_guid"` // contextHandle: An RPC context handle as specified in section 2.3.9. ContextHandle *Handle `idl:"name:contextHandle;pointer:ref" json:"context_handle"` // Return: The NspiBind return value. Return int32 `idl:"name:Return" json:"return"` }
BindResponse structure represents the NspiBind operation response
func (*BindResponse) MarshalNDR ¶
func (*BindResponse) UnmarshalNDR ¶
type BitMaskRestriction ¶
type BitMaskRestriction struct { // relBMR: Encodes the BitmapRelOp field of the BitMaskRestriction data structure. BitMaskRestriction uint32 `idl:"name:relBMR" json:"bit_mask_restriction"` // ulPropTag: Encodes the PropTag field of the BitMaskRestriction data structure. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // ulMask: Encodes the Mask field of the BitMaskRestriction data structure. Mask uint32 `idl:"name:ulMask" json:"mask"` }
BitMaskRestriction structure represents BitMaskRestriction_r RPC structure.
The BitMaskRestriction_r structure is an encoding of the BitMaskRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the BitMaskRestriction data structure.
func (*BitMaskRestriction) MarshalNDR ¶
func (*BitMaskRestriction) UnmarshalNDR ¶
type CharStringArray ¶
type CharStringArray struct { // cValues: The number of 8-bit character strings references represented in the StringArray_r // structure. This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lppszA: The 8-bit character string references. The strings referred to are NULL-terminated. Values []string `idl:"name:lppszA;size_is:(cValues);string" json:"values"` }
CharStringArray structure represents StringArray_r RPC structure.
The StringArray_r structure encodes an array of references to 8-bit character strings.
func (*CharStringArray) MarshalNDR ¶
func (*CharStringArray) UnmarshalNDR ¶
type CharStringsArray ¶
type CharStringsArray struct { // Count: The number of character string structures in this aggregation. The value // MUST NOT exceed 100,000. Count uint32 `idl:"name:Count" json:"count"` // Strings: The list of character type strings in this aggregation. The strings in // this list are NULL-terminated. Strings string `idl:"name:Strings;size_is:(Count);string" json:"strings"` }
CharStringsArray structure represents StringsArray_r RPC structure.
The StringsArray_r structure is used to aggregate a number of character type strings into a single data structure.
func (*CharStringsArray) MarshalNDR ¶
func (*CharStringsArray) UnmarshalNDR ¶
type CompareMIDsRequest ¶
type CompareMIDsRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: pStat: A reference to a STAT block describing a logical position in a specific // address book container. Stat *Stat `idl:"name:pStat" json:"stat"` // MId1: A DWORD value containing a MId. MID1 uint32 `idl:"name:MId1" json:"m_id1"` // MId2: A DWORD value containing a MId. MID2 uint32 `idl:"name:MId2" json:"m_id2"` }
CompareMIDsRequest structure represents the NspiCompareMIds operation request
func (*CompareMIDsRequest) MarshalNDR ¶
func (*CompareMIDsRequest) UnmarshalNDR ¶
type CompareMIDsResponse ¶
type CompareMIDsResponse struct { // plResult: A DWORD value. On return, it contains the result of the comparison. Result int32 `idl:"name:plResult" json:"result"` // Return: The NspiCompareMIds return value. Return int32 `idl:"name:Return" json:"return"` }
CompareMIDsResponse structure represents the NspiCompareMIds operation response
func (*CompareMIDsResponse) MarshalNDR ¶
func (*CompareMIDsResponse) UnmarshalNDR ¶
type ComparePropertiesRestriction ¶
type ComparePropertiesRestriction struct { // relop: Encodes the RelOp field of the ComparePropsRestriction data structure. Op uint32 `idl:"name:relop" json:"op"` // ulPropTag1: Encodes the PropTag1 field of the ComparePropsRestriction data structure. PropertyTag1 uint32 `idl:"name:ulPropTag1" json:"property_tag1"` // ulPropTag2: Encodes the PropTag2 field of the ComparePropsRestriction data structure. PropertyTag2 uint32 `idl:"name:ulPropTag2" json:"property_tag2"` }
ComparePropertiesRestriction structure represents ComparePropsRestriction_r RPC structure.
The ComparePropsRestriction_r structure is an encoding of the ComparePropsRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the ComparePropsRestriction data structure.
func (*ComparePropertiesRestriction) MarshalNDR ¶
func (*ComparePropertiesRestriction) UnmarshalNDR ¶
type ContentRestriction ¶
type ContentRestriction struct { FuzzyLevel uint32 `idl:"name:ulFuzzyLevel" json:"fuzzy_level"` PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` Property *PropertyValue `idl:"name:lpProp" json:"property"` }
ContentRestriction structure represents ContentRestriction_r RPC structure.
func (*ContentRestriction) MarshalNDR ¶
func (*ContentRestriction) UnmarshalNDR ¶
type DNToMIDRequest ¶
type DNToMIDRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pNames: A StringsArray_r value. It holds a list of strings containing DNs, according // to [MS-OXOABK]. Names *CharStringsArray `idl:"name:pNames" json:"names"` }
DNToMIDRequest structure represents the NspiDNToMId operation request
func (*DNToMIDRequest) MarshalNDR ¶
func (*DNToMIDRequest) UnmarshalNDR ¶
type DNToMIDResponse ¶
type DNToMIDResponse struct { // ppOutMIds: A PropertyTagArray_r value. On return, it holds a list of MIds. OutMIDs *PropertyTagArray `idl:"name:ppOutMIds" json:"out_m_ids"` // Return: The NspiDNToMId return value. Return int32 `idl:"name:Return" json:"return"` }
DNToMIDResponse structure represents the NspiDNToMId operation response
func (*DNToMIDResponse) MarshalNDR ¶
func (*DNToMIDResponse) UnmarshalNDR ¶
type DateTimeArray ¶
type DateTimeArray struct { // cValues: The number of FILETIME data structures represented in the DateTimeArray_r // structure. This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpft: The FILETIME data structures. Values []*dtyp.Filetime `idl:"name:lpft;size_is:(cValues)" json:"values"` }
DateTimeArray structure represents DateTimeArray_r RPC structure.
The DateTimeArray_r structure encodes an array of FILETIME structures.
func (*DateTimeArray) MarshalNDR ¶
func (*DateTimeArray) UnmarshalNDR ¶
type ExistRestriction ¶
type ExistRestriction struct { // ulPropTag: Encodes the PropTag field of the ExistRestriction data structure. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // contains filtered or unexported fields }
ExistRestriction structure represents ExistRestriction_r RPC structure.
The ExistRestriction_r structure is an encoding of the ExistRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the ExistRestriction data structure.
func (*ExistRestriction) MarshalNDR ¶
func (*ExistRestriction) UnmarshalNDR ¶
type FlatUID ¶
type FlatUID struct { // ab: Encodes the ordered bytes of the FlatUID data structure. Value []byte `idl:"name:ab" json:"value"` }
FlatUID structure represents FlatUID_r RPC structure.
The FlatUID_r structure is an encoding of the FlatUID data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the FlatUID data structure.
type FlatUIDArray ¶
type FlatUIDArray struct { // cValues: The number of FlatUID_r structures represented in the FlatUIDArray_r structure. // This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpguid: The FlatUID_r data structures. GUID []*FlatUID `idl:"name:lpguid;size_is:(cValues)" json:"guid"` }
FlatUIDArray structure represents FlatUIDArray_r RPC structure.
The FlatUIDArray_r structure encodes an array of FlatUID_r data structures.
func (*FlatUIDArray) MarshalNDR ¶
func (*FlatUIDArray) UnmarshalNDR ¶
type GetIDsFromNamesRequest ¶
type GetIDsFromNamesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value. All clients MUST set this value to either 0 or the flag NspiVerifyNames. Flags uint32 `idl:"name:dwFlags" json:"flags"` // cPropNames: A DWORD value containing the number property names supplied by the client. // The value is limited to 100,000. PropertyNamesCount uint32 `idl:"name:cPropNames" json:"property_names_count"` // pNames: A reference to a PropertyName_r value. Contains a list of property names // supplied by the client. Names []*PropertyName `idl:"name:pNames;size_is:(cPropNames)" json:"names"` }
GetIDsFromNamesRequest structure represents the NspiGetIDsFromNames operation request
func (*GetIDsFromNamesRequest) MarshalNDR ¶
func (*GetIDsFromNamesRequest) UnmarshalNDR ¶
type GetIDsFromNamesResponse ¶
type GetIDsFromNamesResponse struct { // ppPropTags: A reference to a PropertyTagArray_r value. On successful return to the // client, contains a list of proptags. PropertyTags *PropertyTagArray `idl:"name:ppPropTags" json:"property_tags"` // Return: The NspiGetIDsFromNames return value. Return int32 `idl:"name:Return" json:"return"` }
GetIDsFromNamesResponse structure represents the NspiGetIDsFromNames operation response
func (*GetIDsFromNamesResponse) MarshalNDR ¶
func (*GetIDsFromNamesResponse) UnmarshalNDR ¶
type GetMatchesRequest ¶
type GetMatchesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // Filter: The value NULL or a Restriction_r value. Holds a logical restriction to apply // to the rows in the address book container specified in the pStat parameter. Filter *Restriction `idl:"name:Filter;pointer:unique" json:"filter"` // lpPropName: The value NULL or a PropertyName_r value. Holds the property to be opened // as a restricted address book container. PropertyName *PropertyName `idl:"name:lpPropName;pointer:unique" json:"property_name"` // ulRequested: A DWORD value. Contains the maximum number of rows to return in a restricted // address book container. Requested uint32 `idl:"name:ulRequested" json:"requested"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r value. Contains // list of the proptags of the columns that client wants to be returned for each row // returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` }
GetMatchesRequest structure represents the NspiGetMatches operation request
func (*GetMatchesRequest) MarshalNDR ¶
func (*GetMatchesRequest) UnmarshalNDR ¶
type GetMatchesResponse ¶
type GetMatchesResponse struct { // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // ppOutMIds: A PropertyTagArray_r value. On return, it holds a list of MId that comprise // a restricted address book container. OutMIDs *PropertyTagArray `idl:"name:ppOutMIds" json:"out_m_ids"` // ppRows: A reference to a PropertyRowSet_r value. Contains the address book container // rows the server returns in response to the request. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiGetMatches return value. Return int32 `idl:"name:Return" json:"return"` }
GetMatchesResponse structure represents the NspiGetMatches operation response
func (*GetMatchesResponse) MarshalNDR ¶
func (*GetMatchesResponse) UnmarshalNDR ¶
type GetNamesFromIDsRequest ¶
type GetNamesFromIDsRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // lpguid: The value NULL or a FlatUID_r value. Specifies the property set about which // the client is requesting information. GUID *FlatUID `idl:"name:lpguid;pointer:unique" json:"guid"` // pPropTags: The value NULL or a PropertyTagArray_r value. Specifies the specific Property // IDs about which the client is requesting information. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` }
GetNamesFromIDsRequest structure represents the NspiGetNamesFromIDs operation request
func (*GetNamesFromIDsRequest) MarshalNDR ¶
func (*GetNamesFromIDsRequest) UnmarshalNDR ¶
type GetNamesFromIDsResponse ¶
type GetNamesFromIDsResponse struct { // ppReturnedPropTags: Contains an SPropTagArray. On return, it contains a list of all // the proptags in the property set specified in the input parameter lpguid. If lpguid // is NULL, this value MUST be NULL. ReturnedPropertyTags *PropertyTagArray `idl:"name:ppReturnedPropTags" json:"returned_property_tags"` // ppNames: A PropertyNameSet_r value. On return, it contains a list of property names // satisfying the client's request. Names *PropertyNameSet `idl:"name:ppNames" json:"names"` // Return: The NspiGetNamesFromIDs return value. Return int32 `idl:"name:Return" json:"return"` }
GetNamesFromIDsResponse structure represents the NspiGetNamesFromIDs operation response
func (*GetNamesFromIDsResponse) MarshalNDR ¶
func (*GetNamesFromIDsResponse) UnmarshalNDR ¶
type GetPropertiesRequest ¶
type GetPropertiesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value, containing a set of bit flags. The server MUST ignore values // other than the bit flags fEphID and fSkipObjects. Flags uint32 `idl:"name:dwFlags" json:"flags"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to both specify input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r value. Contains // list of the proptags of the properties that the client wants to be returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` }
GetPropertiesRequest structure represents the NspiGetProps operation request
func (*GetPropertiesRequest) MarshalNDR ¶
func (*GetPropertiesRequest) UnmarshalNDR ¶
type GetPropertiesResponse ¶
type GetPropertiesResponse struct { // ppRows: A reference to a PropertyRow_r value. Contains the address book container // row the server returns in response to the request. Rows *PropertyRow `idl:"name:ppRows" json:"rows"` // Return: The NspiGetProps return value. Return int32 `idl:"name:Return" json:"return"` }
GetPropertiesResponse structure represents the NspiGetProps operation response
func (*GetPropertiesResponse) MarshalNDR ¶
func (*GetPropertiesResponse) UnmarshalNDR ¶
type GetPropertyListRequest ¶
type GetPropertyListRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value, containing a set of bit flags. The server MUST ignore values // other than the bit flag fSkipObjects. Flags uint32 `idl:"name:dwFlags" json:"flags"` // dwMId: A DWORD value, containing a MId. MID uint32 `idl:"name:dwMId" json:"m_id"` // CodePage: The codepage in which the client wishes the server to express string values // properties. CodePage uint32 `idl:"name:CodePage" json:"code_page"` }
GetPropertyListRequest structure represents the NspiGetPropList operation request
func (*GetPropertyListRequest) MarshalNDR ¶
func (*GetPropertyListRequest) UnmarshalNDR ¶
type GetPropertyListResponse ¶
type GetPropertyListResponse struct { // ppPropTags: A PropertyTagArray_r value. On return, it holds a list of properties. PropertyTags *PropertyTagArray `idl:"name:ppPropTags" json:"property_tags"` // Return: The NspiGetPropList return value. Return int32 `idl:"name:Return" json:"return"` }
GetPropertyListResponse structure represents the NspiGetPropList operation response
func (*GetPropertyListResponse) MarshalNDR ¶
func (*GetPropertyListResponse) UnmarshalNDR ¶
type GetSpecialTableRequest ¶
type GetSpecialTableRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value containing a set of bit flags. The server MUST ignore values // other than the bit flags NspiAddressCreationTemplates and NspiUnicodeStrings. Flags uint32 `idl:"name:dwFlags" json:"flags"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to both specify input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // lpVersion: A reference to a DWORD. On input, holds the value of the version number // of the address book hierarchy table that the client has. Version uint32 `idl:"name:lpVersion" json:"version"` }
GetSpecialTableRequest structure represents the NspiGetSpecialTable operation request
func (*GetSpecialTableRequest) MarshalNDR ¶
func (*GetSpecialTableRequest) UnmarshalNDR ¶
type GetSpecialTableResponse ¶
type GetSpecialTableResponse struct { // lpVersion: A reference to a DWORD. On input, holds the value of the version number // of the address book hierarchy table that the client has. Version uint32 `idl:"name:lpVersion" json:"version"` // ppRows: An PropertyRowSet_r. On return, holds the rows for the table that the client // is requesting. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiGetSpecialTable return value. Return int32 `idl:"name:Return" json:"return"` }
GetSpecialTableResponse structure represents the NspiGetSpecialTable operation response
func (*GetSpecialTableResponse) MarshalNDR ¶
func (*GetSpecialTableResponse) UnmarshalNDR ¶
type GetTemplateInfoRequest ¶
type GetTemplateInfoRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value containing a set of bit flags. The server MUST ignore values // other than the bit flags TI_HELPFILE_NAME, TI_HELPFILE_CONTENTS, TI_SCRIPT, TI_TEMPLATE, // and TI_EMT. Flags uint32 `idl:"name:dwFlags" json:"flags"` // ulType: A DWORD value. Specifies the display type of the template for which information // is requested. Type uint32 `idl:"name:ulType" json:"type"` // pDN: The value NULL or the DN of the template requested. The value is NULL-terminated. DN string `idl:"name:pDN;string;pointer:unique" json:"dn"` // dwCodePage: A DWORD value. Specifies the codepage of the template for which information // is requested. CodePage uint32 `idl:"name:dwCodePage" json:"code_page"` // dwLocaleID: A DWORD value. Specifies the LCID of the template for which information // is requested. LocaleID uint32 `idl:"name:dwLocaleID" json:"locale_id"` }
GetTemplateInfoRequest structure represents the NspiGetTemplateInfo operation request
func (*GetTemplateInfoRequest) MarshalNDR ¶
func (*GetTemplateInfoRequest) UnmarshalNDR ¶
type GetTemplateInfoResponse ¶
type GetTemplateInfoResponse struct { // ppData: A reference to a PropertyRow_r value. On return, it contains the information // requested. Data *PropertyRow `idl:"name:ppData" json:"data"` // Return: The NspiGetTemplateInfo return value. Return int32 `idl:"name:Return" json:"return"` }
GetTemplateInfoResponse structure represents the NspiGetTemplateInfo operation response
func (*GetTemplateInfoResponse) MarshalNDR ¶
func (*GetTemplateInfoResponse) UnmarshalNDR ¶
type Handle ¶
type Handle dcetypes.ContextHandle
Handle structure represents NSPI_HANDLE RPC structure.
func (*Handle) ContextHandle ¶
func (o *Handle) ContextHandle() *dcetypes.ContextHandle
type LongArray ¶
type LongArray struct { // cValues: The number of 32-bit integers represented in this structure. This value // MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpl: The 32-bit integer values. Values []int32 `idl:"name:lpl;size_is:(cValues)" json:"values"` }
LongArray structure represents LongArray_r RPC structure.
The LongArray_r structure encodes an array of 32-bit integers.
func (*LongArray) MarshalNDR ¶
type ModifyLinkAttributeRequest ¶
type ModifyLinkAttributeRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value containing a set of bit flags. The server MUST ignore values // other than the bit flag fDelete. Flags uint32 `idl:"name:dwFlags" json:"flags"` // ulPropTag: A DWORD value. Contains the proptag of the property that the client wishes // to modify. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // dwMId: A DWORD value containing the MId of the address book row that the client // wishes to modify. MID uint32 `idl:"name:dwMId" json:"m_id"` // lpEntryIds: A BinaryArray value. Contains a list of Entry IDs to be used to modify // the requested property on the requested address book row. These Entry IDs can be // either Ephemeral Entry IDs or Permanent Entry IDs or both. EntryIDs *BinaryArray `idl:"name:lpEntryIds" json:"entry_ids"` }
ModifyLinkAttributeRequest structure represents the NspiModLinkAtt operation request
func (*ModifyLinkAttributeRequest) MarshalNDR ¶
func (*ModifyLinkAttributeRequest) UnmarshalNDR ¶
type ModifyLinkAttributeResponse ¶
type ModifyLinkAttributeResponse struct { // Return: The NspiModLinkAtt return value. Return int32 `idl:"name:Return" json:"return"` }
ModifyLinkAttributeResponse structure represents the NspiModLinkAtt operation response
func (*ModifyLinkAttributeResponse) MarshalNDR ¶
func (*ModifyLinkAttributeResponse) UnmarshalNDR ¶
type ModifyPropertiesRequest ¶
type ModifyPropertiesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A reference to a STAT block describing a logical position in a specific // address book container. Stat *Stat `idl:"name:pStat" json:"stat"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r. Contains list of // the proptags of the columns that client requests all values to be removed from. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` // pRow: A PropertyRow_r value. Contains an address book row. Row *PropertyRow `idl:"name:pRow" json:"row"` }
ModifyPropertiesRequest structure represents the NspiModProps operation request
func (*ModifyPropertiesRequest) MarshalNDR ¶
func (*ModifyPropertiesRequest) UnmarshalNDR ¶
type ModifyPropertiesResponse ¶
type ModifyPropertiesResponse struct { // Return: The NspiModProps return value. Return int32 `idl:"name:Return" json:"return"` }
ModifyPropertiesResponse structure represents the NspiModProps operation response
func (*ModifyPropertiesResponse) MarshalNDR ¶
func (*ModifyPropertiesResponse) UnmarshalNDR ¶
type NotRestriction ¶
type NotRestriction struct { // lpRes: Encodes the Restriction field of the NotRestriction data structure. Restriction *Restriction `idl:"name:lpRes" json:"restriction"` }
NotRestriction structure represents NotRestriction_r RPC structure.
The NotRestriction_r structure is an encoding of the NotRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the NotRestriction data structure.
func (*NotRestriction) MarshalNDR ¶
func (*NotRestriction) UnmarshalNDR ¶
type NspiClient ¶
type NspiClient interface { // The NspiBind method initiates a session between a client and the NSPI server. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. Bind(context.Context, *BindRequest, ...dcerpc.CallOption) (*BindResponse, error) // The NspiUnbind method destroys the context handle. No other action is taken. // // Return Values: The server returns a DWORD value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. Unbind(context.Context, *UnbindRequest, ...dcerpc.CallOption) (*UnbindResponse, error) // The NspiUpdateStat method updates the STAT block representing position in a table // to reflect positioning changes requested by the client. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. UpdateStat(context.Context, *UpdateStatRequest, ...dcerpc.CallOption) (*UpdateStatResponse, error) // The NspiQueryRows method returns to the client a number of rows from a specified // table. The server MUST return no more rows than the number specified in the input // parameter Count. Although the protocol places no further boundary or requirements // on the minimum number of rows the server returns, implementations SHOULD return as // many rows as possible subject to this maximum limit to improve usability of the NSPI // server for clients. // // Return Values: The server returns a long value specifying the return status of // the method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. QueryRows(context.Context, *QueryRowsRequest, ...dcerpc.CallOption) (*QueryRowsResponse, error) // The NspiSeekEntries method searches for and sets the logical position in a specific // table to the first entry greater than or equal to a specified value. Optionally, // it might also return information about rows in the table. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. SeekEntries(context.Context, *SeekEntriesRequest, ...dcerpc.CallOption) (*SeekEntriesResponse, error) // The NspiGetMatches method returns an Explicit Table. The rows in the table are chosen // based on a two possible criteria: a restriction applied to an address book container // or the values of a property on a single object that hold references to other objects. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetMatches(context.Context, *GetMatchesRequest, ...dcerpc.CallOption) (*GetMatchesResponse, error) // The NspiResortRestriction method applies a sort order to the objects in a restricted // address book container. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResortRestriction(context.Context, *ResortRestrictionRequest, ...dcerpc.CallOption) (*ResortRestrictionResponse, error) // The NspiDNToMId method maps a set of DN to a set of MId. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. DNToMID(context.Context, *DNToMIDRequest, ...dcerpc.CallOption) (*DNToMIDResponse, error) // The NspiGetPropList method returns a list of all the properties that have values // on a specified object. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetPropertyList(context.Context, *GetPropertyListRequest, ...dcerpc.CallOption) (*GetPropertyListResponse, error) // The NspiGetProps method returns an address book row containing a set of the properties // and values that exist on an object. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetProperties(context.Context, *GetPropertiesRequest, ...dcerpc.CallOption) (*GetPropertiesResponse, error) // The NspiCompareMIds method compares the position in an address book container of // two objects identified by MId and returns the value of the comparison. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. CompareMIDs(context.Context, *CompareMIDsRequest, ...dcerpc.CallOption) (*CompareMIDsResponse, error) // The NspiModProps method is used to modify the properties of an object in the address // book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ModifyProperties(context.Context, *ModifyPropertiesRequest, ...dcerpc.CallOption) (*ModifyPropertiesResponse, error) // The NspiGetSpecialTable method returns the rows of a special table to the client. // The special table can be an Address Book Hierarchy Table or an Address Creation Table. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetSpecialTable(context.Context, *GetSpecialTableRequest, ...dcerpc.CallOption) (*GetSpecialTableResponse, error) // The NspiGetTemplateInfo method returns information about template objects in the // address book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetTemplateInfo(context.Context, *GetTemplateInfoRequest, ...dcerpc.CallOption) (*GetTemplateInfoResponse, error) // The NspiModLinkAtt method modifies the values of a specific property of a specific // row in the address book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ModifyLinkAttribute(context.Context, *ModifyLinkAttributeRequest, ...dcerpc.CallOption) (*ModifyLinkAttributeResponse, error) // The NspiQueryColumns method returns a list of all the properties the NSPI server // is aware of. It returns this list as an array of proptags. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. QueryColumns(context.Context, *QueryColumnsRequest, ...dcerpc.CallOption) (*QueryColumnsResponse, error) // The NspiGetNamesFromIDs method returns a list of property names for a set of proptags. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetNamesFromIDs(context.Context, *GetNamesFromIDsRequest, ...dcerpc.CallOption) (*GetNamesFromIDsResponse, error) // The NspiGetIDsFromNames method returns a list of proptags for a set of property names. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetIDsFromNames(context.Context, *GetIDsFromNamesRequest, ...dcerpc.CallOption) (*GetIDsFromNamesResponse, error) // The NspiResolveNames method takes a set of string values in an 8-bit character set // and performs ANR (as specified in 3.1.1.6) on those strings. The server reports the // MId that are the result of the ANR process. Certain property values are returned // for any valid MIds identified by the ANR process. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResolveNames(context.Context, *ResolveNamesRequest, ...dcerpc.CallOption) (*ResolveNamesResponse, error) // The NspiResolveNamesW method takes a set of string values in the Unicode character // set and performs ANR (as specified in 3.1.1.6) on those strings. The server reports // the MId that are the result of the ANR process. Certain property values are returned // for any valid MIds identified by the ANR process. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResolveNamesW(context.Context, *ResolveNamesWRequest, ...dcerpc.CallOption) (*ResolveNamesWResponse, error) // AlterContext alters the client context. AlterContext(context.Context, ...dcerpc.Option) error }
nspi interface.
func NewNspiClient ¶
type NspiServer ¶
type NspiServer interface { // The NspiBind method initiates a session between a client and the NSPI server. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. Bind(context.Context, *BindRequest) (*BindResponse, error) // The NspiUnbind method destroys the context handle. No other action is taken. // // Return Values: The server returns a DWORD value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. Unbind(context.Context, *UnbindRequest) (*UnbindResponse, error) // The NspiUpdateStat method updates the STAT block representing position in a table // to reflect positioning changes requested by the client. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. UpdateStat(context.Context, *UpdateStatRequest) (*UpdateStatResponse, error) // The NspiQueryRows method returns to the client a number of rows from a specified // table. The server MUST return no more rows than the number specified in the input // parameter Count. Although the protocol places no further boundary or requirements // on the minimum number of rows the server returns, implementations SHOULD return as // many rows as possible subject to this maximum limit to improve usability of the NSPI // server for clients. // // Return Values: The server returns a long value specifying the return status of // the method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. QueryRows(context.Context, *QueryRowsRequest) (*QueryRowsResponse, error) // The NspiSeekEntries method searches for and sets the logical position in a specific // table to the first entry greater than or equal to a specified value. Optionally, // it might also return information about rows in the table. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. SeekEntries(context.Context, *SeekEntriesRequest) (*SeekEntriesResponse, error) // The NspiGetMatches method returns an Explicit Table. The rows in the table are chosen // based on a two possible criteria: a restriction applied to an address book container // or the values of a property on a single object that hold references to other objects. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetMatches(context.Context, *GetMatchesRequest) (*GetMatchesResponse, error) // The NspiResortRestriction method applies a sort order to the objects in a restricted // address book container. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResortRestriction(context.Context, *ResortRestrictionRequest) (*ResortRestrictionResponse, error) // The NspiDNToMId method maps a set of DN to a set of MId. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. DNToMID(context.Context, *DNToMIDRequest) (*DNToMIDResponse, error) // The NspiGetPropList method returns a list of all the properties that have values // on a specified object. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetPropertyList(context.Context, *GetPropertyListRequest) (*GetPropertyListResponse, error) // The NspiGetProps method returns an address book row containing a set of the properties // and values that exist on an object. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetProperties(context.Context, *GetPropertiesRequest) (*GetPropertiesResponse, error) // The NspiCompareMIds method compares the position in an address book container of // two objects identified by MId and returns the value of the comparison. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. CompareMIDs(context.Context, *CompareMIDsRequest) (*CompareMIDsResponse, error) // The NspiModProps method is used to modify the properties of an object in the address // book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ModifyProperties(context.Context, *ModifyPropertiesRequest) (*ModifyPropertiesResponse, error) // The NspiGetSpecialTable method returns the rows of a special table to the client. // The special table can be an Address Book Hierarchy Table or an Address Creation Table. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetSpecialTable(context.Context, *GetSpecialTableRequest) (*GetSpecialTableResponse, error) // The NspiGetTemplateInfo method returns information about template objects in the // address book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetTemplateInfo(context.Context, *GetTemplateInfoRequest) (*GetTemplateInfoResponse, error) // The NspiModLinkAtt method modifies the values of a specific property of a specific // row in the address book. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ModifyLinkAttribute(context.Context, *ModifyLinkAttributeRequest) (*ModifyLinkAttributeResponse, error) // The NspiQueryColumns method returns a list of all the properties the NSPI server // is aware of. It returns this list as an array of proptags. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. QueryColumns(context.Context, *QueryColumnsRequest) (*QueryColumnsResponse, error) // The NspiGetNamesFromIDs method returns a list of property names for a set of proptags. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetNamesFromIDs(context.Context, *GetNamesFromIDsRequest) (*GetNamesFromIDsResponse, error) // The NspiGetIDsFromNames method returns a list of proptags for a set of property names. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. GetIDsFromNames(context.Context, *GetIDsFromNamesRequest) (*GetIDsFromNamesResponse, error) // The NspiResolveNames method takes a set of string values in an 8-bit character set // and performs ANR (as specified in 3.1.1.6) on those strings. The server reports the // MId that are the result of the ANR process. Certain property values are returned // for any valid MIds identified by the ANR process. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResolveNames(context.Context, *ResolveNamesRequest) (*ResolveNamesResponse, error) // The NspiResolveNamesW method takes a set of string values in the Unicode character // set and performs ANR (as specified in 3.1.1.6) on those strings. The server reports // the MId that are the result of the ANR process. Certain property values are returned // for any valid MIds identified by the ANR process. // // Return Values: The server returns a long value specifying the return status of the // method. // // # Exceptions Thrown // // No exceptions are thrown beyond those thrown by the underlying RPC protocol, as specified // in [MS-RPCE]. ResolveNamesW(context.Context, *ResolveNamesWRequest) (*ResolveNamesWResponse, error) }
nspi server interface.
type OrRestriction ¶
type OrRestriction struct { RestrictionCount uint32 `idl:"name:cRes" json:"restriction_count"` Restriction []*Restriction `idl:"name:lpRes;size_is:(cRes)" json:"restriction"` }
OrRestriction structure represents OrRestriction_r RPC structure.
func (*OrRestriction) MarshalNDR ¶
func (*OrRestriction) UnmarshalNDR ¶
type PropertyName ¶
type PropertyName struct { // lpguid: Encodes the GUID field of the PropertyName data structure. This field is // encoded as a FlatUID_r data structure. GUID *FlatUID `idl:"name:lpguid" json:"guid"` // lID: Encodes the lID field of the PropertyName data structure. In addition to the // definition of the LID field, this field is always present in the PropertyName_r data // structure; it is not optional. ID int32 `idl:"name:lID" json:"id"` // contains filtered or unexported fields }
PropertyName structure represents PropertyName_r RPC structure.
The PropertyName_r structure is an encoding of the PropertyName data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the PropertyName data structure.
func (*PropertyName) MarshalNDR ¶
func (*PropertyName) UnmarshalNDR ¶
type PropertyNameSet ¶
type PropertyNameSet struct { // cNames: The number of PropertyName_r structures in this aggregation. The value MUST // NOT exceed 100,000. NamesCount uint32 `idl:"name:cNames" json:"names_count"` // aNames: The list of PropertyName_r structures in this aggregation. Names []*PropertyName `idl:"name:aNames;size_is:(cNames)" json:"names"` }
PropertyNameSet structure represents PropertyNameSet_r RPC structure.
The PropertyNameSet_r structure is used to aggregate a number of PropertyName_r structures into a single data structure.
func (*PropertyNameSet) MarshalNDR ¶
func (*PropertyNameSet) NDRSizeInfo ¶
func (o *PropertyNameSet) NDRSizeInfo() []uint64
func (*PropertyNameSet) UnmarshalNDR ¶
type PropertyRestriction ¶
type PropertyRestriction struct { // relop: Encodes the RelOp field of the PropertyRestriction data structure. Op uint32 `idl:"name:relop" json:"op"` // ulPropTag: Encodes the PropTag field of the PropertyRestriction data structure. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // lpProp: Encodes the TaggedValue field of the PropertyRestriction data structure. Property *PropertyValue `idl:"name:lpProp" json:"property"` }
PropertyRestriction structure represents PropertyRestriction_r RPC structure.
The PropertyRestriction_r structure is an encoding of the PropertyRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the PropertyRestriction data structure.
func (*PropertyRestriction) MarshalNDR ¶
func (*PropertyRestriction) UnmarshalNDR ¶
type PropertyRow ¶
type PropertyRow struct { // cValues: The number of PropertyValue_r structures represented in the PropertyRow_r // structure. This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpProps: Encodes the ValueArray field of the StandardPropertyRow data structure. Properties []*PropertyValue `idl:"name:lpProps;size_is:(cValues)" json:"properties"` // contains filtered or unexported fields }
PropertyRow structure represents PropertyRow_r RPC structure.
The PropertyRow_r structure is an encoding of the StandardPropertyRow data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the StandardPropertyRow data structure.
func (*PropertyRow) MarshalNDR ¶
func (*PropertyRow) UnmarshalNDR ¶
type PropertyRowSet ¶
type PropertyRowSet struct { // cRows: Encodes the RowCount field of the PropertyRowSet data structures. This value // MUST NOT exceed 100,000. RowsCount uint32 `idl:"name:cRows" json:"rows_count"` // aRow: Encodes the Rows field of the PropertyRowSet data structure. Row []*PropertyRow `idl:"name:aRow;size_is:(cRows)" json:"row"` }
PropertyRowSet structure represents PropertyRowSet_r RPC structure.
The PropertyRowSet_r structure is an encoding of the PropertyRowSet data structure defined in [MS-OXCDATA] section 2.19.2, PropertyRowSet.
The permissible number of PropertyRows in the PropertyRowSet_r data structure exceeds that of the PropertyRowSet data structure. The semantic meaning is otherwise unchanged from the PropertyRowSet data structure.
func (*PropertyRowSet) MarshalNDR ¶
func (*PropertyRowSet) NDRSizeInfo ¶
func (o *PropertyRowSet) NDRSizeInfo() []uint64
func (*PropertyRowSet) UnmarshalNDR ¶
type PropertyTagArray ¶
type PropertyTagArray struct { // cValues: Encodes the Count field of PropTagArray. This field MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // aulPropTag: Encodes the PropertyTags field of PropTagArray. PropertyTag []uint32 `idl:"name:aulPropTag;size_is:((cValues+1));length_is:(cValues)" json:"property_tag"` }
PropertyTagArray structure represents PropertyTagArray_r RPC structure.
The PropertyTagArray_r structure is an encoding of the PropTagArray data structure defined in [MS-OXCDATA]. The permissible number of proptag values in the PropertyTagArray_r structure exceeds that of the PropTagArray data structure. The semantic meaning is otherwise unchanged from the PropTagArray data structure.
func (*PropertyTagArray) MarshalNDR ¶
func (*PropertyTagArray) NDRSizeInfo ¶
func (o *PropertyTagArray) NDRSizeInfo() []uint64
func (*PropertyTagArray) UnmarshalNDR ¶
type PropertyValue ¶
type PropertyValue struct { // ulPropTag: Encodes the proptag of the property whose value is represented by the // PropertyValue_r data structure. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // Value: Encodes the actual value of the property represented by the PropertyValue_r // data structure. The type value held is specified by the Property Type of the proptag // in the field ulPropTag. Value *PropertyValueUnion `idl:"name:Value;switch_is:(ulPropTag 65535 &)" json:"value"` // contains filtered or unexported fields }
PropertyValue structure represents PropertyValue_r RPC structure.
The PropertyValue_r structure is an encoding of the PropertyValue data structure defined in [MS-OXCDATA].
For property values with uninterpreted byte values, the permissible number of bytes in the PropertyValue_r structure exceeds that of the PropertyValue data structure. For property values with multiple values, the permissible number of values in the PropertyValue_r structure exceeds that of the PropertyValue data structure. The semantic meaning is otherwise unchanged from the PropertyValue data structure.
func (*PropertyValue) MarshalNDR ¶
func (*PropertyValue) UnmarshalNDR ¶
type PropertyValueUnion ¶
type PropertyValueUnion struct { // Types that are assignable to Value // // *PropertyValueUnion_Int16 // *PropertyValueUnion_Int32 // *PropertyValueUnion_Bool // *PropertyValueUnion_CharString // *PropertyValueUnion_Binary // *PropertyValueUnion_String // *PropertyValueUnion_GUID // *PropertyValueUnion_DateTime // *PropertyValueUnion_Error // *PropertyValueUnion_Int16Array // *PropertyValueUnion_Int32Array // *PropertyValueUnion_CharStringArray // *PropertyValueUnion_BinaryArray // *PropertyValueUnion_GUIDArray // *PropertyValueUnion_StringArray // *PropertyValueUnion_DateTimeArray // *PropertyValueUnion_Reserved Value is_PropertyValueUnion `json:"value"` }
PropertyValueUnion structure represents PROP_VAL_UNION RPC union.
The PROP_VAL_UNION structure encodes a single instance of any type of property value. It is an aggregation data structure, allowing a single parameter to an NSPI method to contain any type of property value.
func (*PropertyValueUnion) GetValue ¶
func (o *PropertyValueUnion) GetValue() any
func (*PropertyValueUnion) MarshalUnionNDR ¶
func (*PropertyValueUnion) NDRSwitchValue ¶
func (o *PropertyValueUnion) NDRSwitchValue(sw int32) int32
func (*PropertyValueUnion) UnmarshalUnionNDR ¶
type PropertyValueUnion_Binary ¶
type PropertyValueUnion_Binary struct { // bin: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single binary data value. The number of bytes that can be encoded in this structure // is 2,097,152. Binary *Binary `idl:"name:bin" json:"binary"` }
PropertyValueUnion_Binary structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 258
func (*PropertyValueUnion_Binary) MarshalNDR ¶
func (*PropertyValueUnion_Binary) UnmarshalNDR ¶
type PropertyValueUnion_BinaryArray ¶
type PropertyValueUnion_BinaryArray struct { // MVbin: PROP_VAL_UNION contains an encoding of the values of a property that can // contain multiple binary data values. The number of bytes that can be encoded in each // value of this structure is 2,097,152. The number of values that can be encoded in // this structure is 100,000. BinaryArray *BinaryArray `idl:"name:MVbin" json:"binary_array"` }
PropertyValueUnion_BinaryArray structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4354
func (*PropertyValueUnion_BinaryArray) MarshalNDR ¶
func (*PropertyValueUnion_BinaryArray) UnmarshalNDR ¶
type PropertyValueUnion_Bool ¶
type PropertyValueUnion_Bool struct { // b: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single Boolean value. The client and server MUST NOT set this to values other than // 1 or 0. Bool uint16 `idl:"name:b" json:"bool"` }
PropertyValueUnion_Bool structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 11
func (*PropertyValueUnion_Bool) MarshalNDR ¶
func (*PropertyValueUnion_Bool) UnmarshalNDR ¶
type PropertyValueUnion_CharString ¶
type PropertyValueUnion_CharString struct { // lpszA: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single 8-bit character string value. This value is NULL-terminated. CharString string `idl:"name:lpszA;string" json:"char_string"` }
PropertyValueUnion_CharString structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 30
func (*PropertyValueUnion_CharString) MarshalNDR ¶
func (*PropertyValueUnion_CharString) UnmarshalNDR ¶
type PropertyValueUnion_CharStringArray ¶
type PropertyValueUnion_CharStringArray struct { // MVszA: PROP_VAL_UNION contains an encoding of the values of a property that can // contain multiple 8-bit character string values. These string values are NULL-terminated. // The number of values that can be encoded in this structure is 100,000. CharStringArray *CharStringArray `idl:"name:MVszA" json:"char_string_array"` }
PropertyValueUnion_CharStringArray structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4126
func (*PropertyValueUnion_CharStringArray) MarshalNDR ¶
func (*PropertyValueUnion_CharStringArray) UnmarshalNDR ¶
type PropertyValueUnion_DateTime ¶
type PropertyValueUnion_DateTime struct { // ft: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single 64-bit integer value. The value is encoded as a FILETIME structure. DateTime *dtyp.Filetime `idl:"name:ft" json:"date_time"` }
PropertyValueUnion_DateTime structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 64
func (*PropertyValueUnion_DateTime) MarshalNDR ¶
func (*PropertyValueUnion_DateTime) UnmarshalNDR ¶
type PropertyValueUnion_DateTimeArray ¶
type PropertyValueUnion_DateTimeArray struct { // MVft: PROP_VAL_UNION contains an encoding of the value of a property that can contain // multiple 64-bit integer values. The values are encoded as FILETIME structures. The // number of values that can be encoded in this structure is 100,000. DateTimeArray *DateTimeArray `idl:"name:MVft" json:"date_time_array"` }
PropertyValueUnion_DateTimeArray structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4160
func (*PropertyValueUnion_DateTimeArray) MarshalNDR ¶
func (*PropertyValueUnion_DateTimeArray) UnmarshalNDR ¶
type PropertyValueUnion_Error ¶
type PropertyValueUnion_Error struct { // err: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single PtypErrorCode value. Error int32 `idl:"name:err" json:"error"` }
PropertyValueUnion_Error structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 10
func (*PropertyValueUnion_Error) MarshalNDR ¶
func (*PropertyValueUnion_Error) UnmarshalNDR ¶
type PropertyValueUnion_GUID ¶
type PropertyValueUnion_GUID struct { // lpguid: PROP_VAL_UNION contains an encoding of the value of a property that can // contain a single GUID value. The value is encoded as a FlatUID_r data structure. GUID *FlatUID `idl:"name:lpguid" json:"guid"` }
PropertyValueUnion_GUID structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 72
func (*PropertyValueUnion_GUID) MarshalNDR ¶
func (*PropertyValueUnion_GUID) UnmarshalNDR ¶
type PropertyValueUnion_GUIDArray ¶
type PropertyValueUnion_GUIDArray struct { // MVguid: PROP_VAL_UNION contains an encoding of the values of a property that can // contain multiple GUID values. The values are encoded as FlatUID_r data structures. // The number of values that can be encoded in this structure is 100,000. GUIDArray *FlatUIDArray `idl:"name:MVguid" json:"guid_array"` }
PropertyValueUnion_GUIDArray structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4168
func (*PropertyValueUnion_GUIDArray) MarshalNDR ¶
func (*PropertyValueUnion_GUIDArray) UnmarshalNDR ¶
type PropertyValueUnion_Int16 ¶
type PropertyValueUnion_Int16 struct { // i: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single 16-bit integer value. Int16 int16 `idl:"name:i" json:"int16"` }
PropertyValueUnion_Int16 structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 2
func (*PropertyValueUnion_Int16) MarshalNDR ¶
func (*PropertyValueUnion_Int16) UnmarshalNDR ¶
type PropertyValueUnion_Int16Array ¶
type PropertyValueUnion_Int16Array struct { // MVi: PROP_VAL_UNION contains an encoding of the values of a property that can contain // multiple 16-bit integer values. The number of values that can be encoded in this // structure is 100,000. Int16Array *ShortArray `idl:"name:MVi" json:"int16_array"` }
PropertyValueUnion_Int16Array structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4098
func (*PropertyValueUnion_Int16Array) MarshalNDR ¶
func (*PropertyValueUnion_Int16Array) UnmarshalNDR ¶
type PropertyValueUnion_Int32 ¶
type PropertyValueUnion_Int32 struct { // l: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single 32-bit integer value. Int32 int32 `idl:"name:l" json:"int32"` }
PropertyValueUnion_Int32 structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 3
func (*PropertyValueUnion_Int32) MarshalNDR ¶
func (*PropertyValueUnion_Int32) UnmarshalNDR ¶
type PropertyValueUnion_Int32Array ¶
type PropertyValueUnion_Int32Array struct { // MVl: PROP_VAL_UNION contains an encoding of the values of a property that can contain // multiple 32-bit integer values. The number of values that can be encoded in this // structure is 100,000. Int32Array *LongArray `idl:"name:MVl" json:"int32_array"` }
PropertyValueUnion_Int32Array structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4099
func (*PropertyValueUnion_Int32Array) MarshalNDR ¶
func (*PropertyValueUnion_Int32Array) UnmarshalNDR ¶
type PropertyValueUnion_Reserved ¶
type PropertyValueUnion_Reserved struct {
// contains filtered or unexported fields
}
PropertyValueUnion_Reserved structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 1, 13
func (*PropertyValueUnion_Reserved) MarshalNDR ¶
func (*PropertyValueUnion_Reserved) UnmarshalNDR ¶
type PropertyValueUnion_String ¶
type PropertyValueUnion_String struct { // lpszW: PROP_VAL_UNION contains an encoding of the value of a property that can contain // a single Unicode string value. This value is NULL-terminated. String string `idl:"name:lpszW;string" json:"string"` }
PropertyValueUnion_String structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 31
func (*PropertyValueUnion_String) MarshalNDR ¶
func (*PropertyValueUnion_String) UnmarshalNDR ¶
type PropertyValueUnion_StringArray ¶
type PropertyValueUnion_StringArray struct { // MVszW: PROP_VAL_UNION contains an encoding of the values of a property that can // contain multiple Unicode string values. These string values are NULL-terminated. // The number of values that can be encoded in this structure is 100,000. StringArray *StringArray `idl:"name:MVszW" json:"string_array"` }
PropertyValueUnion_StringArray structure represents PROP_VAL_UNION RPC union arm.
It has following labels: 4127
func (*PropertyValueUnion_StringArray) MarshalNDR ¶
func (*PropertyValueUnion_StringArray) UnmarshalNDR ¶
type QueryColumnsRequest ¶
type QueryColumnsRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value containing a set of bit flags. The server MUST ignore values // other than the bit flag NspiUnicodeProptypes. Flags uint32 `idl:"name:dwFlags" json:"flags"` }
QueryColumnsRequest structure represents the NspiQueryColumns operation request
func (*QueryColumnsRequest) MarshalNDR ¶
func (*QueryColumnsRequest) UnmarshalNDR ¶
type QueryColumnsResponse ¶
type QueryColumnsResponse struct { // ppColumns: A reference to a PropertyTagArray_r structure. On return, contains a list // of proptags. Columns *PropertyTagArray `idl:"name:ppColumns" json:"columns"` // Return: The NspiQueryColumns return value. Return int32 `idl:"name:Return" json:"return"` }
QueryColumnsResponse structure represents the NspiQueryColumns operation response
func (*QueryColumnsResponse) MarshalNDR ¶
func (*QueryColumnsResponse) UnmarshalNDR ¶
type QueryRowsRequest ¶
type QueryRowsRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // dwFlags: A DWORD value, containing a set of bit flags. The server MUST ignore values // other than the bit flags fEphID and fSkipObjects. Flags uint32 `idl:"name:dwFlags" json:"flags"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to specify both input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // dwETableCount: A DWORD value containing the number values in the input parameter // lpETable. This value is limited to 100,000. ETableCount uint32 `idl:"name:dwETableCount" json:"e_table_count"` // lpETable: An array of DWORD values, representing an Explicit Table (see Explicit // Tables (section 3.1.1.3.2)). ETable []uint32 `idl:"name:lpETable;size_is:(dwETableCount);pointer:unique" json:"e_table"` // Count: A DWORD value containing the number of rows the client is requesting. Count uint32 `idl:"name:Count" json:"count"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r value, containing // a list of the proptags of the properties that client requires to be returned for // each row returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` }
QueryRowsRequest structure represents the NspiQueryRows operation request
func (*QueryRowsRequest) MarshalNDR ¶
func (*QueryRowsRequest) UnmarshalNDR ¶
type QueryRowsResponse ¶
type QueryRowsResponse struct { // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to specify both input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // ppRows: A reference to a PropertyRowSet_r value. Contains the address book container // rows the server returns in response to the request. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiQueryRows return value. Return int32 `idl:"name:Return" json:"return"` }
QueryRowsResponse structure represents the NspiQueryRows operation response
func (*QueryRowsResponse) MarshalNDR ¶
func (*QueryRowsResponse) UnmarshalNDR ¶
type ResolveNamesRequest ¶
type ResolveNamesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r value containing // a list of the proptags of the columns that the client requests to be returned for // each row returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` // paStr: A StringsArray_r value. Specifies the values the client is requesting the // server to do ANR on. The server MUST apply any necessary character set conversion // as specified in String Handling (section 3.1.1.2). Strings *CharStringsArray `idl:"name:paStr" json:"strings"` }
ResolveNamesRequest structure represents the NspiResolveNames operation request
func (*ResolveNamesRequest) MarshalNDR ¶
func (*ResolveNamesRequest) UnmarshalNDR ¶
type ResolveNamesResponse ¶
type ResolveNamesResponse struct { // ppMIds: A PropertyTagArray_r value. On return, contains a list of MIds matching the // array of strings, as specified in the input parameter paStr. MIDs *PropertyTagArray `idl:"name:ppMIds" json:"m_ids"` // ppRows: A reference to a PropertyRowSet_r value. Contains the address book container // rows that the server returns in response to the request. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiResolveNames return value. Return int32 `idl:"name:Return" json:"return"` }
ResolveNamesResponse structure represents the NspiResolveNames operation response
func (*ResolveNamesResponse) MarshalNDR ¶
func (*ResolveNamesResponse) UnmarshalNDR ¶
type ResolveNamesWRequest ¶
type ResolveNamesWRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r containing a list // of the proptags of the columns that the client requests to be returned for each row // returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` // paWStr: A WStringsArray_r value. Specifies the values on which the client is requesting // that the server perform ANR. The server MUST apply any necessary character set conversion // as specified in String Handling (section 3.1.1.2). Strings *StringsArray `idl:"name:paWStr" json:"strings"` }
ResolveNamesWRequest structure represents the NspiResolveNamesW operation request
func (*ResolveNamesWRequest) MarshalNDR ¶
func (*ResolveNamesWRequest) UnmarshalNDR ¶
type ResolveNamesWResponse ¶
type ResolveNamesWResponse struct { // ppMIds: A PropertyTagArray_r value. On return, contains a list of MIds matching the // array of strings, as specified in the input parameter paWStr MIDs *PropertyTagArray `idl:"name:ppMIds" json:"m_ids"` // ppRows: A reference to a PropertyRowSet_r. Contains the address book container rows // that the server returns in response to the request. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiResolveNamesW return value. Return int32 `idl:"name:Return" json:"return"` }
ResolveNamesWResponse structure represents the NspiResolveNamesW operation response
func (*ResolveNamesWResponse) MarshalNDR ¶
func (*ResolveNamesWResponse) UnmarshalNDR ¶
type ResortRestrictionRequest ¶
type ResortRestrictionRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // pInMIds: A PropertyTagArray_r value. It holds a list of MIds that comprise a restricted // address book container. InMIDs *PropertyTagArray `idl:"name:pInMIds" json:"in_m_ids"` // ppOutMIds: A PropertyTagArray_r value. On return, it holds a list of MIds that comprise // a restricted address book container. OutMIDs *PropertyTagArray `idl:"name:ppOutMIds" json:"out_m_ids"` }
ResortRestrictionRequest structure represents the NspiResortRestriction operation request
func (*ResortRestrictionRequest) MarshalNDR ¶
func (*ResortRestrictionRequest) UnmarshalNDR ¶
type ResortRestrictionResponse ¶
type ResortRestrictionResponse struct { // pStat: A reference to a STAT block describing a logical position in a specific address // book container. Stat *Stat `idl:"name:pStat" json:"stat"` // ppOutMIds: A PropertyTagArray_r value. On return, it holds a list of MIds that comprise // a restricted address book container. OutMIDs *PropertyTagArray `idl:"name:ppOutMIds" json:"out_m_ids"` // Return: The NspiResortRestriction return value. Return int32 `idl:"name:Return" json:"return"` }
ResortRestrictionResponse structure represents the NspiResortRestriction operation response
func (*ResortRestrictionResponse) MarshalNDR ¶
func (*ResortRestrictionResponse) UnmarshalNDR ¶
type Restriction ¶
type Restriction struct { // rt: Encodes the RestrictType field common to all restriction structures. RestrictionType uint32 `idl:"name:rt" json:"restriction_type"` // res: Encodes the actual restriction specified by the type in the rt field. Restriction *RestrictionUnion `idl:"name:res;switch_is:rt" json:"restriction"` }
Restriction structure represents Restriction_r RPC structure.
The Restriction_r structure is an encoding of the Restriction filters defined in [MS-OXCDATA].
The permissible number of Restriction structures encoded in AndRestriction_r and OrRestriction_r data structures recursively included in the Restriction_r data type exceeds that of the AndRestriction_r and OrRestriction_r data structures recursively included in the Restriction filters. The semantic meaning is otherwise unchanged from the Restriction filters.
func (*Restriction) MarshalNDR ¶
func (*Restriction) UnmarshalNDR ¶
type RestrictionUnion ¶
type RestrictionUnion struct { // Types that are assignable to Value // // *RestrictionUnion_And // *RestrictionUnion_Or // *RestrictionUnion_Not // *RestrictionUnion_Content // *RestrictionUnion_Property // *RestrictionUnion_CompareProperties // *RestrictionUnion_BitMask // *RestrictionUnion_Size // *RestrictionUnion_Exist // *RestrictionUnion_SubRestriction Value is_RestrictionUnion `json:"value"` }
RestrictionUnion structure represents RestrictionUnion_r RPC union.
The RestrictionUnion_r structure encodes a single instance of any type of restriction. It is an aggregation data structure, allowing a single parameter to a Name Service Provider Interface (NSPI) method to contain any type of restriction data structure.
func (*RestrictionUnion) GetValue ¶
func (o *RestrictionUnion) GetValue() any
func (*RestrictionUnion) MarshalUnionNDR ¶
func (*RestrictionUnion) NDRSwitchValue ¶
func (o *RestrictionUnion) NDRSwitchValue(sw int32) int32
func (*RestrictionUnion) UnmarshalUnionNDR ¶
type RestrictionUnion_And ¶
type RestrictionUnion_And struct { // resAnd: RestrictionUnion_r contains an encoding of an AndRestriction. And *AndRestriction `idl:"name:resAnd" json:"and"` }
RestrictionUnion_And structure represents RestrictionUnion_r RPC union arm.
It has following labels: 0
func (*RestrictionUnion_And) MarshalNDR ¶
func (*RestrictionUnion_And) UnmarshalNDR ¶
type RestrictionUnion_BitMask ¶
type RestrictionUnion_BitMask struct { // resBitMask: RestrictionUnion_r contains an encoding of a BitMaskRestriction. BitMask *BitMaskRestriction `idl:"name:resBitMask" json:"bit_mask"` }
RestrictionUnion_BitMask structure represents RestrictionUnion_r RPC union arm.
It has following labels: 6
func (*RestrictionUnion_BitMask) MarshalNDR ¶
func (*RestrictionUnion_BitMask) UnmarshalNDR ¶
type RestrictionUnion_CompareProperties ¶
type RestrictionUnion_CompareProperties struct { // resCompareProps: RestrictionUnion_r contains an encoding of a CompareRestriction. CompareProperties *ComparePropertiesRestriction `idl:"name:resCompareProps" json:"compare_properties"` }
RestrictionUnion_CompareProperties structure represents RestrictionUnion_r RPC union arm.
It has following labels: 5
func (*RestrictionUnion_CompareProperties) MarshalNDR ¶
func (*RestrictionUnion_CompareProperties) UnmarshalNDR ¶
type RestrictionUnion_Content ¶
type RestrictionUnion_Content struct { // resContent: RestrictionUnion_r contains an encoding of a ContentRestriction. Content *ContentRestriction `idl:"name:resContent" json:"content"` }
RestrictionUnion_Content structure represents RestrictionUnion_r RPC union arm.
It has following labels: 3
func (*RestrictionUnion_Content) MarshalNDR ¶
func (*RestrictionUnion_Content) UnmarshalNDR ¶
type RestrictionUnion_Exist ¶
type RestrictionUnion_Exist struct { // resExist: RestrictionUnion_r contains an encoding of an ExistRestriction. Exist *ExistRestriction `idl:"name:resExist" json:"exist"` }
RestrictionUnion_Exist structure represents RestrictionUnion_r RPC union arm.
It has following labels: 8
func (*RestrictionUnion_Exist) MarshalNDR ¶
func (*RestrictionUnion_Exist) UnmarshalNDR ¶
type RestrictionUnion_Not ¶
type RestrictionUnion_Not struct { // resNot: RestrictionUnion_r contains an encoding of a NotRestriction. Not *NotRestriction `idl:"name:resNot" json:"not"` }
RestrictionUnion_Not structure represents RestrictionUnion_r RPC union arm.
It has following labels: 2
func (*RestrictionUnion_Not) MarshalNDR ¶
func (*RestrictionUnion_Not) UnmarshalNDR ¶
type RestrictionUnion_Or ¶
type RestrictionUnion_Or struct { // resOr: RestrictionUnion_r contains an encoding of an OrRestriction. Or *OrRestriction `idl:"name:resOr" json:"or"` }
RestrictionUnion_Or structure represents RestrictionUnion_r RPC union arm.
It has following labels: 1
func (*RestrictionUnion_Or) MarshalNDR ¶
func (*RestrictionUnion_Or) UnmarshalNDR ¶
type RestrictionUnion_Property ¶
type RestrictionUnion_Property struct { // resProperty: RestrictionUnion_r contains an encoding of a PropertyRestriction. Property *PropertyRestriction `idl:"name:resProperty" json:"property"` }
RestrictionUnion_Property structure represents RestrictionUnion_r RPC union arm.
It has following labels: 4
func (*RestrictionUnion_Property) MarshalNDR ¶
func (*RestrictionUnion_Property) UnmarshalNDR ¶
type RestrictionUnion_Size ¶
type RestrictionUnion_Size struct { // resSize: RestrictionUnion_r contains an encoding of a SizeRestriction. Size *SizeRestriction `idl:"name:resSize" json:"size"` }
RestrictionUnion_Size structure represents RestrictionUnion_r RPC union arm.
It has following labels: 7
func (*RestrictionUnion_Size) MarshalNDR ¶
func (*RestrictionUnion_Size) UnmarshalNDR ¶
type RestrictionUnion_SubRestriction ¶
type RestrictionUnion_SubRestriction struct { // resSubRestriction: RestrictionUnion_r contains an encoding of a SubRestriction. SubRestriction *SubRestriction `idl:"name:resSubRestriction" json:"sub_restriction"` }
RestrictionUnion_SubRestriction structure represents RestrictionUnion_r RPC union arm.
It has following labels: 9
func (*RestrictionUnion_SubRestriction) MarshalNDR ¶
func (*RestrictionUnion_SubRestriction) UnmarshalNDR ¶
type SeekEntriesRequest ¶
type SeekEntriesRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to both specify input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // pTarget: A PropertyValue_r value holding the value that is being sought. Target *PropertyValue `idl:"name:pTarget" json:"target"` // lpETable: The value NULL or a PropertyTagArray_r value. It holds a list of Mids that // comprises a restricted address book container. ETable *PropertyTagArray `idl:"name:lpETable;pointer:unique" json:"e_table"` // pPropTags: The value NULL or a reference to a PropertyTagArray_r value. Contains // list of the proptags of the columns that client wants to be returned for each row // returned. PropertyTags *PropertyTagArray `idl:"name:pPropTags;pointer:unique" json:"property_tags"` }
SeekEntriesRequest structure represents the NspiSeekEntries operation request
func (*SeekEntriesRequest) MarshalNDR ¶
func (*SeekEntriesRequest) UnmarshalNDR ¶
type SeekEntriesResponse ¶
type SeekEntriesResponse struct { // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to both specify input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // ppRows: A reference to a PropertyRowSet_r value. Contains the address book container // rows the server returns in response to the request. Rows *PropertyRowSet `idl:"name:ppRows" json:"rows"` // Return: The NspiSeekEntries return value. Return int32 `idl:"name:Return" json:"return"` }
SeekEntriesResponse structure represents the NspiSeekEntries operation response
func (*SeekEntriesResponse) MarshalNDR ¶
func (*SeekEntriesResponse) UnmarshalNDR ¶
type ShortArray ¶
type ShortArray struct { // cValues: The number of 16-bit integer values represented in the ShortArray_r structure. // This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lpi: The 16-bit integer values. Values []int16 `idl:"name:lpi;size_is:(cValues)" json:"values"` }
ShortArray structure represents ShortArray_r RPC structure.
The ShortArray_r structure encodes an array of 16-bit integers.
func (*ShortArray) MarshalNDR ¶
func (*ShortArray) UnmarshalNDR ¶
type SizeRestriction ¶
type SizeRestriction struct { // relop: Encodes the RelOp field of the SizeRestriction data structure. Op uint32 `idl:"name:relop" json:"op"` // ulPropTag: Encodes the PropTag field of the SizeRestriction data structure. PropertyTag uint32 `idl:"name:ulPropTag" json:"property_tag"` // cb: Encodes the Size field of the SizeRestriction data structure. Length uint32 `idl:"name:cb" json:"length"` }
SizeRestriction structure represents SizeRestriction_r RPC structure.
The SizeRestriction_r structure is an encoding of the SizeRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the SizeRestriction data structure.
func (*SizeRestriction) MarshalNDR ¶
func (*SizeRestriction) UnmarshalNDR ¶
type Stat ¶
type Stat struct { // SortType: This field contains a DWORD representing a sort order. The client sets // this field to specify the sort type of this table. Possible values are specified // in Table Sort Orders (section 2.2.10). The server MUST NOT modify this field. SortType uint32 `idl:"name:SortType" json:"sort_type"` // ContainerID: This field contains a MId. The client sets this field to specify the // MId of the address book container that this STAT represents. The client obtains these // MIds from the server's address book hierarchy table. The server MUST NOT modify this // field in any NSPI method except NspiGetMatches. ContainerID uint32 `idl:"name:ContainerID" json:"container_id"` // CurrentRec: This field contains a MId. The client sets this field to specify a beginning // position in the table for the start of an NSPI method. The server sets this field // to report the end position in the table after processing an NSPI method. CurrentRecord uint32 `idl:"name:CurrentRec" json:"current_record"` // Delta: This field contains a long value. The client sets this field to specify an // offset from the beginning position in the table for the start of an NSPI method. // If the NSPI method returns a success value, the server MUST set this field to 0. Delta int32 `idl:"name:Delta" json:"delta"` // NumPos: This field contains a DWORD value specifying a position in the table. The // client sets this field to specify a fractional position for the beginning position // in the table for the start of an NSPI method (section 3.1.1.4.2). The server sets // this field to specify the approximate fractional position at the end of an NSPI method. // This value is a zero index; the first element in a table has the numeric position // 0. Although the protocol places no boundary or requirements on the accuracy of the // approximation the server reports, it is recommended that implementations maximize // the accuracy of the approximation to improve usability of the NSPI server for clients. PosLength uint32 `idl:"name:NumPos" json:"pos_length"` // TotalRecs: This field contains a DWORD specifying the number of rows in the table. // The client sets this field to specify a fractional position for the beginning position // in the table for the start of an NSPI method (section 3.1.1.4.2). The server sets // this field to specify the total number of rows in the table. Unlike the NumPos field, // the server MUST report this number accurately; an approximation is insufficient. TotalRecords uint32 `idl:"name:TotalRecs" json:"total_records"` // CodePage: This field contains a DWORD value representing a codepage. The client // sets this field to specify the codepage the client uses for non-Unicode strings. // The server MUST use this value during string handling (section 3.1.1.2). The server // MUST NOT modify this field. CodePage uint32 `idl:"name:CodePage" json:"code_page"` // TemplateLocale: This field contains a DWORD value representing a language code identifier // (LCID). The client sets this field to specify the LCID associated with the template // the client wishes the server to return. The server MUST NOT modify this field. TemplateLocale uint32 `idl:"name:TemplateLocale" json:"template_locale"` // SortLocale: This field contains a DWORD value representing an LCID. The client sets // this field to specify the LCID that it wishes the server to use when sorting any // strings. The server MUST use this value during sorting (section 3.1.1.2). The server // MUST NOT modify this field. SortLocale uint32 `idl:"name:SortLocale" json:"sort_locale"` }
Stat structure represents STAT RPC structure.
The STAT structure is used to specify the state of a table and location information that applies to that table. It appears as both an input parameter and an output parameter in many Name Service Provider Interface (NSPI) methods.
type StringArray ¶
type StringArray struct { // cValues: The number of Unicode character strings references represented in the WStringArray_r // structure. This value MUST NOT exceed 100,000. ValuesCount uint32 `idl:"name:cValues" json:"values_count"` // lppszW: The Unicode character string references. The strings referred to are NULL-terminated. Values []string `idl:"name:lppszW;size_is:(cValues);string" json:"values"` }
StringArray structure represents WStringArray_r RPC structure.
The WStringArray_r structure encodes an array of references to Unicode strings.
func (*StringArray) MarshalNDR ¶
func (*StringArray) UnmarshalNDR ¶
type StringsArray ¶
type StringsArray struct { // Count: The number of character strings structures in this aggregation. The value // MUST NOT exceed 100,000. Count uint32 `idl:"name:Count" json:"count"` // Strings: The list of wchar_t type strings in this aggregation. The strings in this // list are NULL-terminated. Strings string `idl:"name:Strings;size_is:(Count);string" json:"strings"` }
StringsArray structure represents WStringsArray_r RPC structure.
The WStringsArray_r structure is used to aggregate a number of wchar_t type strings into a single data structure.
func (*StringsArray) MarshalNDR ¶
func (*StringsArray) UnmarshalNDR ¶
type SubRestriction ¶
type SubRestriction struct { // ulSubObject: Encodes the SubObject field of the SubObjectRestriction data structure. SubObject uint32 `idl:"name:ulSubObject" json:"sub_object"` // lpRes: Encodes the Restriction field of the SubObjectRestriction data structure. Restriction *Restriction `idl:"name:lpRes" json:"restriction"` }
SubRestriction structure represents SubRestriction_r RPC structure.
The SubRestriction_r structure is an encoding of the SubObjectRestriction data structure defined in [MS-OXCDATA]. The semantic meaning is unchanged from the SubObjectRestriction data structure.
func (*SubRestriction) MarshalNDR ¶
func (*SubRestriction) UnmarshalNDR ¶
type UnbindRequest ¶
type UnbindRequest struct { // contextHandle: An RPC context handle as specified in section 2.3.9. ContextHandle *Handle `idl:"name:contextHandle" json:"context_handle"` }
UnbindRequest structure represents the NspiUnbind operation request
func (*UnbindRequest) MarshalNDR ¶
func (*UnbindRequest) UnmarshalNDR ¶
type UnbindResponse ¶
type UnbindResponse struct { // contextHandle: An RPC context handle as specified in section 2.3.9. ContextHandle *Handle `idl:"name:contextHandle" json:"context_handle"` // Return: The NspiUnbind return value. Return uint32 `idl:"name:Return" json:"return"` }
UnbindResponse structure represents the NspiUnbind operation response
func (*UnbindResponse) MarshalNDR ¶
func (*UnbindResponse) UnmarshalNDR ¶
type UpdateStatRequest ¶
type UpdateStatRequest struct { // hRpc: An RPC context handle as specified in section 2.3.9. Handle *Handle `idl:"name:hRpc" json:"handle"` // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to specify both input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // plDelta: The value NULL or a pointer to a long value indicating movement within the // address book container specified by the input parameter pStat. Delta int32 `idl:"name:plDelta;pointer:unique" json:"delta"` }
UpdateStatRequest structure represents the NspiUpdateStat operation request
func (*UpdateStatRequest) MarshalNDR ¶
func (*UpdateStatRequest) UnmarshalNDR ¶
type UpdateStatResponse ¶
type UpdateStatResponse struct { // pStat: A pointer to a STAT block describing a logical position in a specific address // book container. This parameter is used to specify both input parameters from the // client and return values from the NSPI server. Stat *Stat `idl:"name:pStat" json:"stat"` // plDelta: The value NULL or a pointer to a long value indicating movement within the // address book container specified by the input parameter pStat. Delta int32 `idl:"name:plDelta;pointer:unique" json:"delta"` // Return: The NspiUpdateStat return value. Return int32 `idl:"name:Return" json:"return"` }
UpdateStatResponse structure represents the NspiUpdateStat operation response