Generated from Manticore v1.1.6 • 388 packages. View on pkg.go.dev

mslsat

import "github.com/TheManticoreProject/Manticore/windows/protocols/ms-lsat"

Index

type LSAPR\_REFERENCED\_DOMAIN\_LIST

LSAPR_REFERENCED_DOMAIN_LIST contains the domains referenced in a translation operation ([MS-LSAT] 2.2.12). Domains is a unique pointer to a conformant array of LSAPR_TRUST_INFORMATION sized by Entries. LSAPR_TRUST_INFORMATION is a type common to the lsarpc interface and canonically defined by the MS-LSAD structures package, so it is referenced across the package boundary here.

type LSAPR_REFERENCED_DOMAIN_LIST struct {
    Entries    ndr.DWORD
    Domains    []mslsad.LSAPR_TRUST_INFORMATION `ndr:"unique,size_is=Entries"`
    MaxEntries ndr.DWORD
}

type LSAPR\_SID\_ENUM\_BUFFER

LSAPR_SID_ENUM_BUFFER is the set of SIDs to translate in a LsarLookupSids request ([MS-LSAT] 2.2.18). SidInfo is a unique pointer to a conformant array of LSAPR_SID_INFORMATION sized by Entries.

type LSAPR_SID_ENUM_BUFFER struct {
    Entries ndr.DWORD
    SidInfo []LSAPR_SID_INFORMATION `ndr:"unique,size_is=Entries"`
}

type LSAPR\_SID\_INFORMATION

LSAPR_SID_INFORMATION wraps a single SID ([MS-LSAT] 2.2.17). Sid is a unique pointer to an RPC_SID (the interfaces that use this type declare pointer_default(unique)). This type is defined by MS-LSAT and reused by other LSA-family protocols (for example, MS-CAPR’s LSAPR_WRAPPED_CAPID_SET).

This package is the single canonical home for the MS-LSAT wire structures (LSAPR_SID_ENUM_BUFFER, the LSAPR_TRANSLATED_* types, LSAPR_REFERENCED_DOMAIN_LIST, and this one); lsarpc’s LsarLookupSids*/LsarLookupNames* methods bind to these definitions.

type LSAPR_SID_INFORMATION struct {
    Sid *msdtyp.RPC_SID `ndr:"unique"`
}

type LSAPR\_TRANSLATED\_NAME

LSAPR_TRANSLATED_NAME is the translation of a SID into an account name and domain index ([MS-LSAT] 2.2.20). Use is an NDR enum (16-bit on the wire); DomainIndex is a signed long.

type LSAPR_TRANSLATED_NAME struct {
    Use         SID_NAME_USE `ndr:"enum"`
    Name        msdtyp.RPC_UNICODE_STRING
    DomainIndex int32
}

type LSAPR\_TRANSLATED\_NAMES

LSAPR_TRANSLATED_NAMES contains the translated names from a LsarLookupSids request ([MS-LSAT] 2.2.21). Names is a unique pointer to a conformant array of LSAPR_TRANSLATED_NAME sized by Entries.

type LSAPR_TRANSLATED_NAMES struct {
    Entries ndr.DWORD
    Names   []LSAPR_TRANSLATED_NAME `ndr:"unique,size_is=Entries"`
}

type LSAPR\_TRANSLATED\_NAMES\_EX

LSAPR_TRANSLATED_NAMES_EX contains the translated names from a LsarLookupSids2/3 request ([MS-LSAT] 2.2.23). Names is a unique pointer to a conformant array of LSAPR_TRANSLATED_NAME_EX sized by Entries.

type LSAPR_TRANSLATED_NAMES_EX struct {
    Entries ndr.DWORD
    Names   []LSAPR_TRANSLATED_NAME_EX `ndr:"unique,size_is=Entries"`
}

type LSAPR\_TRANSLATED\_NAME\_EX

LSAPR_TRANSLATED_NAME_EX extends LSAPR_TRANSLATED_NAME with a Flags field ([MS-LSAT] 2.2.22). Use is an NDR enum (16-bit on the wire); DomainIndex is a signed long.

type LSAPR_TRANSLATED_NAME_EX struct {
    Use         SID_NAME_USE `ndr:"enum"`
    Name        msdtyp.RPC_UNICODE_STRING
    DomainIndex int32
    Flags       ndr.DWORD
}

type LSAPR\_TRANSLATED\_SIDS

LSAPR_TRANSLATED_SIDS contains the translated SIDs from a LsarLookupNames request ([MS-LSAT] 2.2.19). Sids is a unique pointer to a conformant array of LSA_TRANSLATED_SID sized by Entries.

type LSAPR_TRANSLATED_SIDS struct {
    Entries ndr.DWORD
    Sids    []LSA_TRANSLATED_SID `ndr:"unique,size_is=Entries"`
}

type LSAPR\_TRANSLATED\_SIDS\_EX

LSAPR_TRANSLATED_SIDS_EX contains the translated SIDs from a LsarLookupNames2 request ([MS-LSAT] 2.2.25). Sids is a unique pointer to a conformant array of LSAPR_TRANSLATED_SID_EX sized by Entries.

type LSAPR_TRANSLATED_SIDS_EX struct {
    Entries ndr.DWORD
    Sids    []LSAPR_TRANSLATED_SID_EX `ndr:"unique,size_is=Entries"`
}

type LSAPR\_TRANSLATED\_SIDS\_EX2

LSAPR_TRANSLATED_SIDS_EX2 contains the translated SIDs from a LsarLookupNames3/4 request ([MS-LSAT] 2.2.27). Sids is a unique pointer to a conformant array of LSAPR_TRANSLATED_SID_EX2 sized by Entries.

type LSAPR_TRANSLATED_SIDS_EX2 struct {
    Entries ndr.DWORD
    Sids    []LSAPR_TRANSLATED_SID_EX2 `ndr:"unique,size_is=Entries"`
}

type LSAPR\_TRANSLATED\_SID\_EX

LSAPR_TRANSLATED_SID_EX extends LSA_TRANSLATED_SID with a Flags field ([MS-LSAT] 2.2.24). Use is an NDR enum (16-bit on the wire); DomainIndex is a signed long.

type LSAPR_TRANSLATED_SID_EX struct {
    Use         SID_NAME_USE `ndr:"enum"`
    RelativeId  ndr.DWORD
    DomainIndex int32
    Flags       ndr.DWORD
}

type LSAPR\_TRANSLATED\_SID\_EX2

LSAPR_TRANSLATED_SID_EX2 carries the full SID (not just a relative id) of a translation result ([MS-LSAT] 2.2.26). Use is an NDR enum (16-bit on the wire); Sid is a unique pointer to an RPC_SID; DomainIndex is a signed long.

type LSAPR_TRANSLATED_SID_EX2 struct {
    Use         SID_NAME_USE    `ndr:"enum"`
    Sid         *msdtyp.RPC_SID `ndr:"unique"`
    DomainIndex int32
    Flags       ndr.DWORD
}

type LSAP\_LOOKUP\_LEVEL

LSAP_LOOKUP_LEVEL specifies the scope of a SID/name lookup translation request ([MS-LSAT] 2.2.16). As an NDR enum it is transmitted as a 16-bit unsigned value ([C706] section 14.3.6).

type LSAP_LOOKUP_LEVEL uint16
const (
    LsapLookupWksta                LSAP_LOOKUP_LEVEL = 1
    LsapLookupPDC                  LSAP_LOOKUP_LEVEL = 2
    LsapLookupTDL                  LSAP_LOOKUP_LEVEL = 3
    LsapLookupGC                   LSAP_LOOKUP_LEVEL = 4
    LsapLookupXForestReferral      LSAP_LOOKUP_LEVEL = 5
    LsapLookupXForestResolve       LSAP_LOOKUP_LEVEL = 6
    LsapLookupRODCReferralToFullDC LSAP_LOOKUP_LEVEL = 7
)

type LSA\_TRANSLATED\_SID

LSA_TRANSLATED_SID is the translation of a name into a relative id and domain index ([MS-LSAT] 2.2.18). Use is an NDR enum (16-bit on the wire); DomainIndex is a signed long.

type LSA_TRANSLATED_SID struct {
    Use         SID_NAME_USE `ndr:"enum"`
    RelativeId  ndr.DWORD
    DomainIndex int32
}

type SID\_NAME\_USE

SID_NAME_USE enumerates the type of a security principal identified by a SID ([MS-LSAT] 2.2.13). As an NDR enum it is transmitted as a 16-bit unsigned value ([C706] section 14.3.6).

type SID_NAME_USE uint16
const (
    SidTypeUser           SID_NAME_USE = 1
    SidTypeGroup          SID_NAME_USE = 2
    SidTypeDomain         SID_NAME_USE = 3
    SidTypeAlias          SID_NAME_USE = 4
    SidTypeWellKnownGroup SID_NAME_USE = 5
    SidTypeDeletedAccount SID_NAME_USE = 6
    SidTypeInvalid        SID_NAME_USE = 7
    SidTypeUnknown        SID_NAME_USE = 8
    SidTypeComputer       SID_NAME_USE = 9
    SidTypeLabel          SID_NAME_USE = 10
)