mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
Added some generated def
This commit is contained in:
@@ -358,3 +358,42 @@
|
||||
#define ADS_RIGHT_DS_DELETE_TREE 0x40
|
||||
#define ADS_RIGHT_DS_LIST_OBJECT 0x80
|
||||
#define ADS_RIGHT_DS_CONTROL_ACCESS 0x100
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
// Local Security Policy Administration API datatypes and defines //
|
||||
// //
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ntlsa.h
|
||||
// Access types for the Policy object
|
||||
//
|
||||
|
||||
#define POLICY_VIEW_LOCAL_INFORMATION 0x00000001L
|
||||
#define POLICY_VIEW_AUDIT_INFORMATION 0x00000002L
|
||||
#define POLICY_GET_PRIVATE_INFORMATION 0x00000004L
|
||||
#define POLICY_TRUST_ADMIN 0x00000008L
|
||||
#define POLICY_CREATE_ACCOUNT 0x00000010L
|
||||
#define POLICY_CREATE_SECRET 0x00000020L
|
||||
#define POLICY_CREATE_PRIVILEGE 0x00000040L
|
||||
#define POLICY_SET_DEFAULT_QUOTA_LIMITS 0x00000080L
|
||||
#define POLICY_SET_AUDIT_REQUIREMENTS 0x00000100L
|
||||
#define POLICY_AUDIT_LOG_ADMIN 0x00000200L
|
||||
#define POLICY_SERVER_ADMIN 0x00000400L
|
||||
#define POLICY_LOOKUP_NAMES 0x00000800L
|
||||
#define POLICY_NOTIFICATION 0x00001000L
|
||||
|
||||
#define POLICY_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
|
||||
POLICY_VIEW_LOCAL_INFORMATION |\
|
||||
POLICY_VIEW_AUDIT_INFORMATION |\
|
||||
POLICY_GET_PRIVATE_INFORMATION |\
|
||||
POLICY_TRUST_ADMIN |\
|
||||
POLICY_CREATE_ACCOUNT |\
|
||||
POLICY_CREATE_SECRET |\
|
||||
POLICY_CREATE_PRIVILEGE |\
|
||||
POLICY_SET_DEFAULT_QUOTA_LIMITS |\
|
||||
POLICY_SET_AUDIT_REQUIREMENTS |\
|
||||
POLICY_AUDIT_LOG_ADMIN |\
|
||||
POLICY_SERVER_ADMIN |\
|
||||
POLICY_LOOKUP_NAMES)
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
NTSTATUS LsaOpenPolicy(
|
||||
PLSA_UNICODE_STRING SystemName,
|
||||
PLSA_OBJECT_ATTRIBUTES ObjectAttributes,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
PLSA_HANDLE PolicyHandle
|
||||
);
|
||||
|
||||
NTSTATUS LsaQueryInformationPolicy(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
POLICY_INFORMATION_CLASS InformationClass,
|
||||
PVOID *Buffer
|
||||
);
|
||||
|
||||
NTSTATUS LsaClose(
|
||||
LSA_HANDLE ObjectHandle
|
||||
);
|
||||
|
||||
ULONG LsaNtStatusToWinError(
|
||||
NTSTATUS Status
|
||||
);
|
||||
|
||||
NTSTATUS LsaLookupNames(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
ULONG Count,
|
||||
PLSA_UNICODE_STRING Names,
|
||||
PLSA_REFERENCED_DOMAIN_LIST *ReferencedDomains,
|
||||
PLSA_TRANSLATED_SID *Sids
|
||||
);
|
||||
|
||||
NTSTATUS LsaLookupNames2(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
ULONG Flags,
|
||||
ULONG Count,
|
||||
PLSA_UNICODE_STRING Names,
|
||||
PLSA_REFERENCED_DOMAIN_LIST *ReferencedDomains,
|
||||
PLSA_TRANSLATED_SID2 *Sids
|
||||
);
|
||||
|
||||
|
||||
NTSTATUS LsaLookupSids(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
ULONG Count,
|
||||
PSID *Sids,
|
||||
PLSA_REFERENCED_DOMAIN_LIST *ReferencedDomains,
|
||||
PLSA_TRANSLATED_NAME *Names
|
||||
);
|
||||
|
||||
NTSTATUS LsaLookupSids2(
|
||||
LSA_HANDLE PolicyHandle,
|
||||
ULONG LookupOptions,
|
||||
ULONG Count,
|
||||
PSID *Sids,
|
||||
PLSA_REFERENCED_DOMAIN_LIST *ReferencedDomains,
|
||||
PLSA_TRANSLATED_NAME *Names
|
||||
);
|
||||
@@ -234,4 +234,77 @@ DWORD GetStringConditionFromBinary(
|
||||
DWORD BinaryAceConditionSize,
|
||||
DWORD Reserved1,
|
||||
LPWSTR *StringAceCondition
|
||||
);
|
||||
|
||||
|
||||
BOOL AddAccessAllowedAce(
|
||||
PACL pAcl,
|
||||
DWORD dwAceRevision,
|
||||
DWORD AccessMask,
|
||||
PSID pSid
|
||||
);
|
||||
|
||||
BOOL SetSecurityDescriptorDacl(
|
||||
PSECURITY_DESCRIPTOR pSecurityDescriptor,
|
||||
BOOL bDaclPresent,
|
||||
PACL pDacl,
|
||||
BOOL bDaclDefaulted
|
||||
);
|
||||
|
||||
|
||||
BOOL InitializeAcl(
|
||||
PACL pAcl,
|
||||
DWORD nAclLength,
|
||||
DWORD dwAclRevision
|
||||
);
|
||||
|
||||
|
||||
BOOL InitializeSecurityDescriptor(
|
||||
PSECURITY_DESCRIPTOR pSecurityDescriptor,
|
||||
DWORD dwRevision
|
||||
);
|
||||
|
||||
|
||||
BOOL SetAclInformation(
|
||||
PACL pAcl,
|
||||
LPVOID pAclInformation,
|
||||
DWORD nAclInformationLength,
|
||||
ACL_INFORMATION_CLASS dwAclInformationClass
|
||||
);
|
||||
|
||||
BOOL AddAccessAllowedAceEx(
|
||||
PACL pAcl,
|
||||
DWORD dwAceRevision,
|
||||
DWORD AceFlags,
|
||||
DWORD AccessMask,
|
||||
PSID pSid
|
||||
);
|
||||
|
||||
|
||||
BOOL AddAccessDeniedAce(
|
||||
PACL pAcl,
|
||||
DWORD dwAceRevision,
|
||||
DWORD AccessMask,
|
||||
PSID pSid
|
||||
);
|
||||
|
||||
BOOL AddAccessDeniedAceEx(
|
||||
PACL pAcl,
|
||||
DWORD dwAceRevision,
|
||||
DWORD AceFlags,
|
||||
DWORD AccessMask,
|
||||
PSID pSid
|
||||
);
|
||||
|
||||
|
||||
DWORD BuildSecurityDescriptorW(
|
||||
PTRUSTEE_W pOwner,
|
||||
PTRUSTEE_W pGroup,
|
||||
ULONG cCountOfAccessEntries,
|
||||
PEXPLICIT_ACCESS_W pListOfAccessEntries,
|
||||
ULONG cCountOfAuditEntries,
|
||||
PEXPLICIT_ACCESS_W pListOfAuditEntries,
|
||||
PSECURITY_DESCRIPTOR pOldSD,
|
||||
PULONG pSizeNewSD,
|
||||
PSECURITY_DESCRIPTOR *pNewSD
|
||||
);
|
||||
@@ -33,6 +33,8 @@ PSTR = LPSTR
|
||||
PCSTR = LPSTR
|
||||
|
||||
va_list = c_char_p
|
||||
LPCH = c_char_p
|
||||
LPWCH = c_wchar
|
||||
BSTR = c_wchar_p
|
||||
OLECHAR = c_wchar
|
||||
POLECHAR = c_wchar_p
|
||||
@@ -131,6 +133,8 @@ HBRUSH = HANDLE
|
||||
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = PULONG
|
||||
EVT_HANDLE = HANDLE
|
||||
EVT_OBJECT_ARRAY_PROPERTY_HANDLE = HANDLE
|
||||
LSA_HANDLE = HANDLE
|
||||
PLSA_HANDLE = POINTER(LSA_HANDLE)
|
||||
// Define type for setup disk space list
|
||||
HDSKSPC = HANDLE
|
||||
// Define type for reference to device information set
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
typedef enum _POLICY_INFORMATION_CLASS {
|
||||
PolicyAuditLogInformation = 1,
|
||||
PolicyAuditEventsInformation,
|
||||
PolicyPrimaryDomainInformation,
|
||||
PolicyPdAccountInformation,
|
||||
PolicyAccountDomainInformation,
|
||||
PolicyLsaServerRoleInformation,
|
||||
PolicyReplicaSourceInformation,
|
||||
PolicyDefaultQuotaInformation,
|
||||
PolicyModificationInformation,
|
||||
PolicyAuditFullSetInformation,
|
||||
PolicyAuditFullQueryInformation,
|
||||
PolicyDnsDomainInformation,
|
||||
PolicyDnsDomainInformationInt,
|
||||
PolicyLocalAccountDomainInformation,
|
||||
PolicyMachineAccountInformation,
|
||||
PolicyLastEntry
|
||||
} POLICY_INFORMATION_CLASS, *PPOLICY_INFORMATION_CLASS;
|
||||
|
||||
// Same as an OBJECT_ATTRIBUTES..
|
||||
typedef struct _LSA_OBJECT_ATTRIBUTES {
|
||||
ULONG Length;
|
||||
HANDLE RootDirectory;
|
||||
PLSA_UNICODE_STRING ObjectName;
|
||||
ULONG Attributes;
|
||||
PVOID SecurityDescriptor;
|
||||
PVOID SecurityQualityOfService;
|
||||
} LSA_OBJECT_ATTRIBUTES, *PLSA_OBJECT_ATTRIBUTES;
|
||||
|
||||
|
||||
typedef struct _POLICY_PRIMARY_DOMAIN_INFO {
|
||||
LSA_UNICODE_STRING Name;
|
||||
PSID Sid;
|
||||
} POLICY_PRIMARY_DOMAIN_INFO, *PPOLICY_PRIMARY_DOMAIN_INFO;
|
||||
|
||||
typedef enum _POLICY_LSA_SERVER_ROLE {
|
||||
PolicyServerRoleBackup,
|
||||
PolicyServerRolePrimary
|
||||
} POLICY_LSA_SERVER_ROLE, *PPOLICY_LSA_SERVER_ROLE;
|
||||
|
||||
typedef struct _POLICY_LSA_SERVER_ROLE_INFO {
|
||||
POLICY_LSA_SERVER_ROLE LsaServerRole;
|
||||
} POLICY_LSA_SERVER_ROLE_INFO, *PPOLICY_LSA_SERVER_ROLE_INFO;
|
||||
|
||||
|
||||
typedef struct _POLICY_ACCOUNT_DOMAIN_INFO {
|
||||
LSA_UNICODE_STRING DomainName;
|
||||
PSID DomainSid;
|
||||
} POLICY_ACCOUNT_DOMAIN_INFO, *PPOLICY_ACCOUNT_DOMAIN_INFO;
|
||||
|
||||
|
||||
typedef struct _POLICY_PRIMARY_DOMAIN_INFO {
|
||||
LSA_UNICODE_STRING Name;
|
||||
PSID Sid;
|
||||
} POLICY_PRIMARY_DOMAIN_INFO, *PPOLICY_PRIMARY_DOMAIN_INFO;
|
||||
|
||||
|
||||
typedef struct _LSA_TRANSLATED_SID {
|
||||
SID_NAME_USE Use;
|
||||
ULONG RelativeId;
|
||||
LONG DomainIndex;
|
||||
} LSA_TRANSLATED_SID, *PLSA_TRANSLATED_SID;
|
||||
|
||||
typedef struct _LSA_TRANSLATED_SID2 {
|
||||
SID_NAME_USE Use;
|
||||
PSID Sid;
|
||||
LONG DomainIndex;
|
||||
ULONG Flags;
|
||||
} LSA_TRANSLATED_SID2, *PLSA_TRANSLATED_SID2;
|
||||
|
||||
|
||||
typedef struct _LSA_TRANSLATED_NAME {
|
||||
SID_NAME_USE Use;
|
||||
LSA_UNICODE_STRING Name;
|
||||
LONG DomainIndex;
|
||||
} LSA_TRANSLATED_NAME, *PLSA_TRANSLATED_NAME;
|
||||
|
||||
|
||||
typedef struct _LSA_TRUST_INFORMATION {
|
||||
LSA_UNICODE_STRING Name;
|
||||
PSID Sid;
|
||||
} LSA_TRUST_INFORMATION, *PLSA_TRUST_INFORMATION;
|
||||
|
||||
typedef struct _LSA_REFERENCED_DOMAIN_LIST {
|
||||
ULONG Entries;
|
||||
PLSA_TRUST_INFORMATION Domains;
|
||||
} LSA_REFERENCED_DOMAIN_LIST, *PLSA_REFERENCED_DOMAIN_LIST;
|
||||
@@ -278,4 +278,102 @@ typedef struct _PRIVILEGE_SET {
|
||||
DWORD PrivilegeCount;
|
||||
DWORD Control;
|
||||
LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
|
||||
} PRIVILEGE_SET, *PPRIVILEGE_SET;
|
||||
} PRIVILEGE_SET, *PPRIVILEGE_SET;
|
||||
|
||||
|
||||
typedef struct _OBJECTS_AND_NAME_A {
|
||||
DWORD ObjectsPresent;
|
||||
SE_OBJECT_TYPE ObjectType;
|
||||
LPSTR ObjectTypeName;
|
||||
LPSTR InheritedObjectTypeName;
|
||||
LPSTR ptstrName;
|
||||
} OBJECTS_AND_NAME_A, *POBJECTS_AND_NAME_A;
|
||||
|
||||
|
||||
typedef enum _MULTIPLE_TRUSTEE_OPERATION {
|
||||
NO_MULTIPLE_TRUSTEE,
|
||||
TRUSTEE_IS_IMPERSONATE
|
||||
} MULTIPLE_TRUSTEE_OPERATION;
|
||||
|
||||
typedef enum _TRUSTEE_FORM {
|
||||
TRUSTEE_IS_SID,
|
||||
TRUSTEE_IS_NAME,
|
||||
TRUSTEE_BAD_FORM,
|
||||
TRUSTEE_IS_OBJECTS_AND_SID,
|
||||
TRUSTEE_IS_OBJECTS_AND_NAME
|
||||
} TRUSTEE_FORM;
|
||||
|
||||
|
||||
typedef enum _TRUSTEE_TYPE {
|
||||
TRUSTEE_IS_UNKNOWN,
|
||||
TRUSTEE_IS_USER,
|
||||
TRUSTEE_IS_GROUP,
|
||||
TRUSTEE_IS_DOMAIN,
|
||||
TRUSTEE_IS_ALIAS,
|
||||
TRUSTEE_IS_WELL_KNOWN_GROUP,
|
||||
TRUSTEE_IS_DELETED,
|
||||
TRUSTEE_IS_INVALID,
|
||||
TRUSTEE_IS_COMPUTER
|
||||
} TRUSTEE_TYPE;
|
||||
|
||||
|
||||
typedef struct _OBJECTS_AND_SID {
|
||||
DWORD ObjectsPresent;
|
||||
GUID ObjectTypeGuid;
|
||||
GUID InheritedObjectTypeGuid;
|
||||
PSID pSid;
|
||||
} OBJECTS_AND_SID, *POBJECTS_AND_SID;
|
||||
|
||||
typedef struct _TRUSTEE_A {
|
||||
struct _TRUSTEE_A *pMultipleTrustee;
|
||||
MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
|
||||
TRUSTEE_FORM TrusteeForm;
|
||||
TRUSTEE_TYPE TrusteeType;
|
||||
union {
|
||||
LPSTR ptstrName;
|
||||
PSID pSid;
|
||||
OBJECTS_AND_SID *pObjectsAndSid;
|
||||
OBJECTS_AND_NAME_A *pObjectsAndName;
|
||||
};
|
||||
LPCH ptstrName;
|
||||
} TRUSTEE_A, *PTRUSTEE_A, TRUSTEEA, *PTRUSTEEA;
|
||||
|
||||
|
||||
typedef struct _OBJECTS_AND_NAME_W {
|
||||
DWORD ObjectsPresent;
|
||||
SE_OBJECT_TYPE ObjectType;
|
||||
LPWSTR ObjectTypeName;
|
||||
LPWSTR InheritedObjectTypeName;
|
||||
LPWSTR ptstrName;
|
||||
} OBJECTS_AND_NAME_W, *POBJECTS_AND_NAME_W;
|
||||
|
||||
typedef struct _TRUSTEE_W {
|
||||
struct _TRUSTEE_W *pMultipleTrustee;
|
||||
MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
|
||||
TRUSTEE_FORM TrusteeForm;
|
||||
TRUSTEE_TYPE TrusteeType;
|
||||
union {
|
||||
LPWSTR ptstrName;
|
||||
PSID pSid;
|
||||
OBJECTS_AND_SID *pObjectsAndSid;
|
||||
OBJECTS_AND_NAME_W *pObjectsAndName;
|
||||
};
|
||||
LPWCH ptstrName;
|
||||
} TRUSTEE_W, *PTRUSTEE_W, TRUSTEEW, *PTRUSTEEW;
|
||||
|
||||
typedef enum _ACCESS_MODE {
|
||||
NOT_USED_ACCESS,
|
||||
GRANT_ACCESS,
|
||||
SET_ACCESS,
|
||||
DENY_ACCESS,
|
||||
REVOKE_ACCESS,
|
||||
SET_AUDIT_SUCCESS,
|
||||
SET_AUDIT_FAILURE
|
||||
} ACCESS_MODE;
|
||||
|
||||
typedef struct _EXPLICIT_ACCESS_W {
|
||||
DWORD grfAccessPermissions;
|
||||
ACCESS_MODE grfAccessMode;
|
||||
DWORD grfInheritance;
|
||||
TRUSTEE_W Trustee;
|
||||
} EXPLICIT_ACCESS_W, *PEXPLICIT_ACCESS_W, EXPLICIT_ACCESSW, *PEXPLICIT_ACCESSW;
|
||||
@@ -360,7 +360,7 @@ class DefineDocGenerator(NoTemplatedGenerator):
|
||||
self.emitline(".. currentmodule:: windows.generated_def")
|
||||
self.emitline("")
|
||||
self.emitline(self.DOCNAME)
|
||||
self.emitline("------")
|
||||
self.emitline("-" * len(self.DOCNAME))
|
||||
|
||||
def generate_for_file(self, file):
|
||||
for define in file.data:
|
||||
|
||||
File diff suppressed because one or more lines are too long
+999
-985
File diff suppressed because it is too large
Load Diff
+1802
-1717
File diff suppressed because it is too large
Load Diff
+3745
-3485
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user