summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h')
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h403
1 files changed, 403 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h
new file mode 100644
index 00000000..03b4e97d
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/ntsecapi.h
@@ -0,0 +1,403 @@
+/*
+ * Copyright (C) 1999 Juergen Schmied
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_NTSECAPI_H
+#define __WINE_NTSECAPI_H
+
+#ifndef GUID_DEFINED
+# include <guiddef.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* defined(__cplusplus) */
+
+/* Policy access rights */
+#define POLICY_VIEW_LOCAL_INFORMATION __MSABI_LONG(0x00000001)
+#define POLICY_VIEW_AUDIT_INFORMATION __MSABI_LONG(0x00000002)
+#define POLICY_GET_PRIVATE_INFORMATION __MSABI_LONG(0x00000004)
+#define POLICY_TRUST_ADMIN __MSABI_LONG(0x00000008)
+#define POLICY_CREATE_ACCOUNT __MSABI_LONG(0x00000010)
+#define POLICY_CREATE_SECRET __MSABI_LONG(0x00000020)
+#define POLICY_CREATE_PRIVILEGE __MSABI_LONG(0x00000040)
+#define POLICY_SET_DEFAULT_QUOTA_LIMITS __MSABI_LONG(0x00000080)
+#define POLICY_SET_AUDIT_REQUIREMENTS __MSABI_LONG(0x00000100)
+#define POLICY_AUDIT_LOG_ADMIN __MSABI_LONG(0x00000200)
+#define POLICY_SERVER_ADMIN __MSABI_LONG(0x00000400)
+#define POLICY_LOOKUP_NAMES __MSABI_LONG(0x00000800)
+#define POLICY_NOTIFICATION __MSABI_LONG(0x00001000)
+
+#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)
+
+
+#define POLICY_READ ( \
+ STANDARD_RIGHTS_READ | \
+ POLICY_VIEW_AUDIT_INFORMATION | \
+ POLICY_GET_PRIVATE_INFORMATION)
+
+#define POLICY_WRITE ( \
+ STANDARD_RIGHTS_WRITE | \
+ 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)
+
+#define POLICY_EXECUTE ( \
+ STANDARD_RIGHTS_EXECUTE | \
+ POLICY_VIEW_LOCAL_INFORMATION | \
+ POLICY_LOOKUP_NAMES)
+
+#define POLICY_AUDIT_EVENT_UNCHANGED __MSABI_LONG(0x00000000)
+#define POLICY_AUDIT_EVENT_SUCCESS __MSABI_LONG(0x00000001)
+#define POLICY_AUDIT_EVENT_FAILURE __MSABI_LONG(0x00000002)
+#define POLICY_AUDIT_EVENT_NONE __MSABI_LONG(0x00000004)
+
+#define POLICY_AUDIT_EVENT_MASK (POLICY_AUDIT_EVENT_SUCCESS | \
+ POLICY_AUDIT_EVENT_FAILURE | \
+ POLICY_AUDIT_EVENT_NONE)
+
+/* logon rights names */
+#define SE_BATCH_LOGON_NAME \
+ TEXT("SeBatchLogonRight")
+#define SE_INTERACTIVE_LOGON_NAME \
+ TEXT("SeInteractiveLogonRight")
+#define SE_NETWORK_LOGON_NAME \
+ TEXT("SeNetworkLogonRight")
+#define SE_REMOTE_INTERACTIVE_LOGON_NAME \
+ TEXT("SeRemoteInteractiveLogonRight")
+#define SE_SERVICE_LOGON_NAME \
+ TEXT("SeServiceLogonRight")
+#define SE_DENY_BATCH_LOGON_NAME \
+ TEXT("SeDenyBatchLogonRight")
+#define SE_DENY_INTERACTIVE_LOGON_NAME \
+ TEXT("SeDenyInteractiveLogonRight")
+#define SE_DENY_NETWORK_LOGON_NAME \
+ TEXT("SeDenyNetworkLogonRight")
+#define SE_DENY_REMOTE_INTERACTIVE_LOGON_NAME \
+ TEXT("SeDenyRemoteInteractiveLogonRight")
+#define SE_DENY_SERVICE_LOGON_NAME \
+ TEXT("SeDenyServiceLogonRight")
+
+#ifndef WINE_NTSTATUS_DECLARED
+#define WINE_NTSTATUS_DECLARED
+typedef LONG NTSTATUS;
+#endif
+#ifndef WINE_PNTSTATUS_DECLARED
+#define WINE_PNTSTATUS_DECLARED
+typedef NTSTATUS *PNTSTATUS;
+#endif
+
+typedef enum _SECURITY_LOGON_TYPE
+{
+ Interactive = 2,
+ Network,
+ Batch,
+ Service,
+ Proxy
+} SECURITY_LOGON_TYPE, *PSECURITY_LOGON_TYPE;
+
+typedef enum _POLICY_AUDIT_EVENT_TYPE
+{
+ AuditCategorySystem,
+ AuditCategoryLogon,
+ AuditCategoryObjectAccess,
+ AuditCategoryPrivilegeUse,
+ AuditCategoryDetailedTracking,
+ AuditCategoryPolicyChange,
+ AuditCategoryAccountManagement
+} POLICY_AUDIT_EVENT_TYPE, *PPOLICY_AUDIT_EVENT_TYPE;
+
+#ifndef __STRING_DEFINED__
+#define __STRING_DEFINED__
+typedef struct _STRING {
+ USHORT Length;
+ USHORT MaximumLength;
+ PCHAR Buffer;
+} STRING, *PSTRING;
+#endif
+
+#ifndef __UNICODE_STRING_DEFINED__
+#define __UNICODE_STRING_DEFINED__
+typedef struct _UNICODE_STRING {
+ USHORT Length; /* bytes */
+ USHORT MaximumLength; /* bytes */
+ PWSTR Buffer;
+} UNICODE_STRING, *PUNICODE_STRING;
+#endif
+
+#ifndef __OBJECT_ATTRIBUTES_DEFINED__
+#define __OBJECT_ATTRIBUTES_DEFINED__
+typedef struct _OBJECT_ATTRIBUTES {
+ ULONG Length;
+ HANDLE RootDirectory;
+ PUNICODE_STRING ObjectName;
+ ULONG Attributes;
+ PVOID SecurityDescriptor; /* type SECURITY_DESCRIPTOR */
+ PVOID SecurityQualityOfService; /* type SECURITY_QUALITY_OF_SERVICE */
+} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES;
+#endif
+
+typedef UNICODE_STRING LSA_UNICODE_STRING, *PLSA_UNICODE_STRING;
+typedef STRING LSA_STRING, *PLSA_STRING;
+typedef OBJECT_ATTRIBUTES LSA_OBJECT_ATTRIBUTES, *PLSA_OBJECT_ATTRIBUTES;
+
+typedef PVOID LSA_HANDLE, *PLSA_HANDLE;
+typedef ULONG LSA_ENUMERATION_HANDLE, *PLSA_ENUMERATION_HANDLE;
+typedef ULONG LSA_OPERATIONAL_MODE, *PLSA_OPERATIONAL_MODE;
+
+typedef enum
+{
+ PolicyAuditLogInformation = 1,
+ PolicyAuditEventsInformation,
+ PolicyPrimaryDomainInformation,
+ PolicyPdAccountInformation,
+ PolicyAccountDomainInformation,
+ PolicyLsaServerRoleInformation,
+ PolicyReplicaSourceInformation,
+ PolicyDefaultQuotaInformation,
+ PolicyModificationInformation,
+ PolicyAuditFullSetInformation,
+ PolicyAuditFullQueryInformation,
+ PolicyDnsDomainInformation
+} POLICY_INFORMATION_CLASS, *PPOLICY_INFORMATION_CLASS;
+
+typedef ULONG POLICY_AUDIT_EVENT_OPTIONS, *PPOLICY_AUDIT_EVENT_OPTIONS;
+
+typedef struct _POLICY_AUDIT_EVENTS_INFO
+{
+ BOOLEAN AuditingMode;
+ PPOLICY_AUDIT_EVENT_OPTIONS EventAuditingOptions;
+ ULONG MaximumAuditEventCount;
+} POLICY_AUDIT_EVENTS_INFO, *PPOLICY_AUDIT_EVENTS_INFO;
+
+typedef struct _POLICY_PRIMARY_DOMAIN_INFO
+{
+ LSA_UNICODE_STRING Name;
+ PSID Sid;
+} POLICY_PRIMARY_DOMAIN_INFO, *PPOLICY_PRIMARY_DOMAIN_INFO;
+
+typedef struct _POLICY_ACCOUNT_DOMAIN_INFO
+{
+ LSA_UNICODE_STRING DomainName;
+ PSID DomainSid;
+} POLICY_ACCOUNT_DOMAIN_INFO, *PPOLICY_ACCOUNT_DOMAIN_INFO;
+
+typedef struct _POLICY_DNS_DOMAIN_INFO
+{
+ LSA_UNICODE_STRING Name;
+ LSA_UNICODE_STRING DnsDomainName;
+ LSA_UNICODE_STRING DnsForestName;
+ GUID DomainGuid;
+ PSID Sid;
+} POLICY_DNS_DOMAIN_INFO, *PPOLICY_DNS_DOMAIN_INFO;
+
+typedef enum _POLICY_LSA_SERVER_ROLE
+{
+ PolicyServerRoleBackup = 2,
+ 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_MODIFICATION_INFO
+{
+ LARGE_INTEGER ModifiedId;
+ LARGE_INTEGER DatabaseCreationTime;
+} POLICY_MODIFICATION_INFO, *PPOLICY_MODIFICATION_INFO;
+
+typedef struct _SECURITY_LOGON_SESSION_DATA {
+ ULONG Size;
+ LUID LogonId;
+ LSA_UNICODE_STRING UserName;
+ LSA_UNICODE_STRING LogonDomain;
+ LSA_UNICODE_STRING AuthenticationPackage;
+ ULONG LogonType;
+ ULONG Session;
+ PSID Sid;
+ LARGE_INTEGER LogonTime;
+ LSA_UNICODE_STRING LogonServer;
+ LSA_UNICODE_STRING DnsDomainName;
+ LSA_UNICODE_STRING Upn;
+} SECURITY_LOGON_SESSION_DATA, *PSECURITY_LOGON_SESSION_DATA;
+
+typedef struct
+{
+ SID_NAME_USE Use;
+ LSA_UNICODE_STRING Name;
+ LONG DomainIndex;
+} LSA_TRANSLATED_NAME, *PLSA_TRANSLATED_NAME;
+
+typedef struct
+{
+ LSA_UNICODE_STRING Name;
+ PSID Sid;
+} LSA_TRUST_INFORMATION, *PLSA_TRUST_INFORMATION;
+
+typedef struct
+{
+ ULONG Entries;
+ PLSA_TRUST_INFORMATION Domains;
+} LSA_REFERENCED_DOMAIN_LIST, *PLSA_REFERENCED_DOMAIN_LIST;
+
+typedef struct _LSA_TRANSLATED_SID
+{
+ SID_NAME_USE Use;
+ ULONG RelativeId;
+ LONG DomainIndex;
+} LSA_TRANSLATED_SID, *PLSA_TRANSLATED_SID;
+
+typedef struct _TRUSTED_DOMAIN_INFORMATION_EX
+{
+ LSA_UNICODE_STRING Name;
+ LSA_UNICODE_STRING FlatName;
+ PSID Sid;
+ ULONG TrustDirection;
+ ULONG TrustType;
+ ULONG TrustAttributes;
+} TRUSTED_DOMAIN_INFORMATION_EX, *PTRUSTED_DOMAIN_INFORMATION_EX;
+
+typedef struct _LSA_AUTH_INFORMATION
+{
+ LARGE_INTEGER LastUpdateTime;
+ ULONG AuthType;
+ ULONG AuthInfoLength;
+ PUCHAR AuthInfo;
+} LSA_AUTH_INFORMATION, *PLSA_AUTH_INFORMATION;
+
+typedef struct _TRUSTED_DOMAIN_AUTH_INFORMATION
+{
+ ULONG IncomingAuthInfos;
+ PLSA_AUTH_INFORMATION IncomingAuthenticationInformation;
+ PLSA_AUTH_INFORMATION IncomingPreviousAuthenticationInformation;
+ ULONG OutgoingAuthInfos;
+ PLSA_AUTH_INFORMATION OutgoingAuthenticationInformation;
+ PLSA_AUTH_INFORMATION OutgoingPreviousAuthenticationInformation;
+} TRUSTED_DOMAIN_AUTH_INFORMATION, *PTRUSTED_DOMAIN_AUTH_INFORMATION;
+
+typedef struct _LSA_TRANSLATED_SID2
+{
+ SID_NAME_USE Use;
+ PSID Sid;
+ LONG DomainIndex;
+ ULONG Flags;
+} LSA_TRANSLATED_SID2, *PLSA_TRANSLATED_SID2;
+
+typedef enum _TRUSTED_INFORMATION_CLASS
+{
+ TrustedDomainNameInformation = 1,
+ TrustedControllersInformation,
+ TrustedPosixOffsetInformation,
+ TrustedPasswordInformation,
+ TrustedDomainInformationBasic,
+ TrustedDomainInformationEx,
+ TrustedDomainAuthInformation,
+ TrustedDomainFullInformation
+} TRUSTED_INFORMATION_CLASS, *PTRUSTED_INFORMATION_CLASS;
+
+typedef enum _POLICY_NOTIFICATION_INFORMATION_CLASS
+{
+ PolicyNotifyAuditEventsInformation = 1,
+ PolicyNotifyAccountDomainInformation,
+ PolicyNotifyServerRoleInformation,
+ PolicyNotifyDnsDomainInformation,
+ PolicyNotifyDomainEfsInformation,
+ PolicyNotifyDomainKerberosTicketInformation,
+ PolicyNotifyMachineAccountPasswordInformation
+} POLICY_NOTIFICATION_INFORMATION_CLASS, *PPOLICY_NOTIFICATION_INFORMATION_CLASS;
+
+#define RtlGenRandom SystemFunction036
+#define RtlEncryptMemory SystemFunction040
+#define RtlDecryptMemory SystemFunction041
+
+BOOLEAN WINAPI RtlGenRandom(PVOID,ULONG);
+NTSTATUS WINAPI RtlEncryptMemory(PVOID,ULONG,ULONG);
+NTSTATUS WINAPI RtlDecryptMemory(PVOID,ULONG,ULONG);
+
+NTSTATUS WINAPI LsaAddAccountRights(LSA_HANDLE,PSID,PLSA_UNICODE_STRING,ULONG);
+NTSTATUS WINAPI LsaCallAuthenticationPackage(HANDLE,ULONG,PVOID,ULONG,PVOID*,PULONG,PNTSTATUS);
+NTSTATUS WINAPI LsaClose(LSA_HANDLE);
+NTSTATUS WINAPI LsaConnectUntrusted(PHANDLE);
+NTSTATUS WINAPI LsaCreateTrustedDomainEx(LSA_HANDLE,PTRUSTED_DOMAIN_INFORMATION_EX,
+ PTRUSTED_DOMAIN_AUTH_INFORMATION,ACCESS_MASK,PLSA_HANDLE);
+NTSTATUS WINAPI LsaDeleteTrustedDomain(LSA_HANDLE,PSID);
+NTSTATUS WINAPI LsaDeregisterLogonProcess(HANDLE);
+NTSTATUS WINAPI LsaEnumerateAccountRights(LSA_HANDLE,PSID,PLSA_UNICODE_STRING*,PULONG);
+NTSTATUS WINAPI LsaEnumerateAccountsWithUserRight(LSA_HANDLE,PLSA_UNICODE_STRING,PVOID*,PULONG);
+NTSTATUS WINAPI LsaEnumerateLogonSessions(PULONG,PLUID*);
+NTSTATUS WINAPI LsaEnumerateTrustedDomains(LSA_HANDLE,PLSA_ENUMERATION_HANDLE,PVOID*,ULONG,PULONG);
+NTSTATUS WINAPI LsaEnumerateTrustedDomainsEx(LSA_HANDLE,PLSA_ENUMERATION_HANDLE,PVOID*,ULONG,PULONG);
+NTSTATUS WINAPI LsaFreeMemory(PVOID);
+NTSTATUS WINAPI LsaFreeReturnBuffer(PVOID);
+NTSTATUS WINAPI LsaGetLogonSessionData(PLUID,PSECURITY_LOGON_SESSION_DATA*);
+NTSTATUS WINAPI LsaLogonUser(HANDLE,PLSA_STRING,SECURITY_LOGON_TYPE,ULONG,PVOID,ULONG,PTOKEN_GROUPS,PTOKEN_SOURCE,PVOID*,PULONG,PLUID,PHANDLE,PQUOTA_LIMITS,PNTSTATUS);
+NTSTATUS WINAPI LsaLookupAuthenticationPackage(HANDLE,PLSA_STRING,PULONG);
+NTSTATUS WINAPI LsaLookupNames(LSA_HANDLE,ULONG,PLSA_UNICODE_STRING,PLSA_REFERENCED_DOMAIN_LIST*,
+ PLSA_TRANSLATED_SID*);
+NTSTATUS WINAPI LsaLookupNames2(LSA_HANDLE,ULONG,ULONG,PLSA_UNICODE_STRING,PLSA_REFERENCED_DOMAIN_LIST*,
+ PLSA_TRANSLATED_SID2*);
+NTSTATUS WINAPI LsaLookupSids(LSA_HANDLE,ULONG,PSID *,PLSA_REFERENCED_DOMAIN_LIST *,PLSA_TRANSLATED_NAME *);
+ULONG WINAPI LsaNtStatusToWinError(NTSTATUS);
+NTSTATUS WINAPI LsaOpenPolicy(PLSA_UNICODE_STRING,PLSA_OBJECT_ATTRIBUTES,ACCESS_MASK,PLSA_HANDLE);
+NTSTATUS WINAPI LsaOpenTrustedDomainByName(LSA_HANDLE,PLSA_UNICODE_STRING,ACCESS_MASK,PLSA_HANDLE);
+NTSTATUS WINAPI LsaQueryInformationPolicy(LSA_HANDLE,POLICY_INFORMATION_CLASS,PVOID*);
+NTSTATUS WINAPI LsaQueryTrustedDomainInfo(LSA_HANDLE,PSID,TRUSTED_INFORMATION_CLASS,PVOID*);
+NTSTATUS WINAPI LsaQueryTrustedDomainInfoByName(LSA_HANDLE,PLSA_UNICODE_STRING,TRUSTED_INFORMATION_CLASS,PVOID*);
+NTSTATUS WINAPI LsaRegisterLogonProcess(PLSA_STRING,PHANDLE,PLSA_OPERATIONAL_MODE);
+NTSTATUS WINAPI LsaRegisterPolicyChangeNotification(POLICY_NOTIFICATION_INFORMATION_CLASS,HANDLE);
+NTSTATUS WINAPI LsaRemoveAccountRights(LSA_HANDLE,PSID,BOOLEAN,PLSA_UNICODE_STRING,ULONG);
+NTSTATUS WINAPI LsaRetrievePrivateData(LSA_HANDLE,PLSA_UNICODE_STRING,PLSA_UNICODE_STRING*);
+NTSTATUS WINAPI LsaSetInformationPolicy(LSA_HANDLE,POLICY_INFORMATION_CLASS,PVOID);
+NTSTATUS WINAPI LsaSetTrustedDomainInfoByName(LSA_HANDLE,PLSA_UNICODE_STRING,TRUSTED_INFORMATION_CLASS,PVOID);
+NTSTATUS WINAPI LsaSetTrustedDomainInformation(LSA_HANDLE,PSID,TRUSTED_INFORMATION_CLASS,PVOID);
+NTSTATUS WINAPI LsaStorePrivateData(LSA_HANDLE,PLSA_UNICODE_STRING,PLSA_UNICODE_STRING);
+NTSTATUS WINAPI LsaUnregisterPolicyChangeNotification(POLICY_NOTIFICATION_INFORMATION_CLASS,HANDLE);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif /* defined(__cplusplus) */
+
+#endif /* !defined(__WINE_NTSECAPI_H) */