Commit 4a73973f authored by Patrik Stridvall's avatar Patrik Stridvall Committed by Alexandre Julliard

Fixed/moved/added missing/wrong function prototypes.

parent 6adfcff5
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
#include "winbase.h" #include "winbase.h"
#include "windef.h" #include "windef.h"
#include "winreg.h"
#include "winerror.h" #include "winerror.h"
#include "heap.h" #include "heap.h"
......
...@@ -5,10 +5,10 @@ ...@@ -5,10 +5,10 @@
#include <string.h> #include <string.h>
#include "windef.h" #include "windef.h"
#include "winreg.h"
#include "winerror.h" #include "winerror.h"
#include "heap.h" #include "heap.h"
#include "ntddk.h" #include "ntddk.h"
#include "ntsecapi.h"
#include "debugtools.h" #include "debugtools.h"
DECLARE_DEBUG_CHANNEL(advapi) DECLARE_DEBUG_CHANNEL(advapi)
...@@ -22,20 +22,6 @@ DECLARE_DEBUG_CHANNEL(security) ...@@ -22,20 +22,6 @@ DECLARE_DEBUG_CHANNEL(security)
return TRUE; \ return TRUE; \
} }
/* FIXME: move it to a header */
BOOL WINAPI IsValidSid (PSID pSid);
BOOL WINAPI EqualSid (PSID pSid1, PSID pSid2);
BOOL WINAPI EqualPrefixSid (PSID pSid1, PSID pSid2);
DWORD WINAPI GetSidLengthRequired (BYTE nSubAuthorityCount);
BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount, DWORD nSubAuthority0, DWORD nSubAuthority1, DWORD nSubAuthority2, DWORD nSubAuthority3, DWORD nSubAuthority4, DWORD nSubAuthority5, DWORD nSubAuthority6, DWORD nSubAuthority7, PSID *pSid);
VOID* WINAPI FreeSid(PSID pSid);
BOOL WINAPI InitializeSid (PSID pSid, PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount);
PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID pSid);
DWORD* WINAPI GetSidSubAuthority(PSID pSid, DWORD nSubAuthority);
BYTE* WINAPI GetSidSubAuthorityCount(PSID pSid);
DWORD WINAPI GetLengthSid(PSID pSid);
BOOL WINAPI CopySid(DWORD nDestinationSidLength, PSID pDestinationSid, PSID pSourceSid);
/* ############################## /* ##############################
###### TOKEN FUNCTIONS ###### ###### TOKEN FUNCTIONS ######
############################## ##############################
...@@ -177,7 +163,7 @@ AllocateAndInitializeSid( PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, ...@@ -177,7 +163,7 @@ AllocateAndInitializeSid( PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
* PARAMS * PARAMS
* pSid [] * pSid []
*/ */
VOID* WINAPI PVOID WINAPI
FreeSid( PSID pSid ) FreeSid( PSID pSid )
{ {
HeapFree( GetProcessHeap(), 0, pSid ); HeapFree( GetProcessHeap(), 0, pSid );
...@@ -316,7 +302,7 @@ GetSidIdentifierAuthority( PSID pSid ) ...@@ -316,7 +302,7 @@ GetSidIdentifierAuthority( PSID pSid )
* pSid [] * pSid []
* nSubAuthority [] * nSubAuthority []
*/ */
DWORD * WINAPI PDWORD WINAPI
GetSidSubAuthority( PSID pSid, DWORD nSubAuthority ) GetSidSubAuthority( PSID pSid, DWORD nSubAuthority )
{ {
return &pSid->SubAuthority[nSubAuthority]; return &pSid->SubAuthority[nSubAuthority];
...@@ -328,7 +314,7 @@ GetSidSubAuthority( PSID pSid, DWORD nSubAuthority ) ...@@ -328,7 +314,7 @@ GetSidSubAuthority( PSID pSid, DWORD nSubAuthority )
* PARAMS * PARAMS
* pSid [] * pSid []
*/ */
BYTE * WINAPI PUCHAR WINAPI
GetSidSubAuthorityCount (PSID pSid) GetSidSubAuthorityCount (PSID pSid)
{ {
return &pSid->SubAuthorityCount; return &pSid->SubAuthorityCount;
...@@ -391,7 +377,7 @@ GetSecurityDescriptorOwner( SECURITY_DESCRIPTOR *pDescr, PSID *pOwner, ...@@ -391,7 +377,7 @@ GetSecurityDescriptorOwner( SECURITY_DESCRIPTOR *pDescr, PSID *pOwner,
* *
* PARAMS * PARAMS
*/ */
BOOL SetSecurityDescriptorOwner( PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL WINAPI SetSecurityDescriptorOwner( PSECURITY_DESCRIPTOR pSecurityDescriptor,
PSID pOwner, BOOL bOwnerDefaulted) PSID pOwner, BOOL bOwnerDefaulted)
{ {
CallWin32ToNt (RtlSetOwnerSecurityDescriptor(pSecurityDescriptor, pOwner, bOwnerDefaulted)); CallWin32ToNt (RtlSetOwnerSecurityDescriptor(pSecurityDescriptor, pOwner, bOwnerDefaulted));
...@@ -496,8 +482,8 @@ MakeSelfRelativeSD( PSECURITY_DESCRIPTOR lpabssecdesc, ...@@ -496,8 +482,8 @@ MakeSelfRelativeSD( PSECURITY_DESCRIPTOR lpabssecdesc,
* GetSecurityDescriptorControl32 [ADVAPI32] * GetSecurityDescriptorControl32 [ADVAPI32]
*/ */
BOOL GetSecurityDescriptorControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL WINAPI GetSecurityDescriptorControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor,
/* fixme: PSECURITY_DESCRIPTOR_CONTROL*/ LPVOID pControl, LPDWORD lpdwRevision) PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision)
{ FIXME_(advapi)("(%p,%p,%p),stub!\n",pSecurityDescriptor,pControl,lpdwRevision); { FIXME_(advapi)("(%p,%p,%p),stub!\n",pSecurityDescriptor,pControl,lpdwRevision);
return 1; return 1;
} }
...@@ -691,10 +677,15 @@ SynchronizeWindows31FilesAndWindowsNTRegistry( DWORD x1, DWORD x2, DWORD x3, ...@@ -691,10 +677,15 @@ SynchronizeWindows31FilesAndWindowsNTRegistry( DWORD x1, DWORD x2, DWORD x3,
* x3 [] * x3 []
* x4 [] * x4 []
*/ */
BOOL WINAPI NTSTATUS WINAPI
LsaOpenPolicy( DWORD x1, DWORD x2, DWORD x3, DWORD x4 ) LsaOpenPolicy(PLSA_UNICODE_STRING SystemName,
PLSA_OBJECT_ATTRIBUTES ObjectAttributes,
ACCESS_MASK DesiredAccess,
PLSA_HANDLE PolicyHandle)
{ {
FIXME_(advapi)("(0x%08lx,0x%08lx,0x%08lx,0x%08lx):stub\n",x1,x2,x3,x4); FIXME_(advapi)("(%p,%p,0x%08lx,%p):stub\n",
SystemName, ObjectAttributes,
DesiredAccess, PolicyHandle);
return 0xc0000000; /* generic error */ return 0xc0000000; /* generic error */
} }
...@@ -728,9 +719,9 @@ RevertToSelf( void ) ...@@ -728,9 +719,9 @@ RevertToSelf( void )
* ImpersonateSelf [ADVAPI32.71] * ImpersonateSelf [ADVAPI32.71]
*/ */
BOOL WINAPI BOOL WINAPI
ImpersonateSelf(DWORD/*SECURITY_IMPERSONATION_LEVEL*/ ImpersonationLevel) ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL ImpersonationLevel)
{ {
FIXME_(advapi)("(%08lx), stub\n", ImpersonationLevel); FIXME_(advapi)("(%08x), stub\n", ImpersonationLevel);
return TRUE; return TRUE;
} }
...@@ -738,9 +729,13 @@ ImpersonateSelf(DWORD/*SECURITY_IMPERSONATION_LEVEL*/ ImpersonationLevel) ...@@ -738,9 +729,13 @@ ImpersonateSelf(DWORD/*SECURITY_IMPERSONATION_LEVEL*/ ImpersonationLevel)
* AccessCheck32 [ADVAPI32.71] * AccessCheck32 [ADVAPI32.71]
*/ */
BOOL WINAPI BOOL WINAPI
AccessCheck(PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, LPVOID/*LPGENERIC_MAPPING*/ GenericMapping, LPVOID/*LPPRIVILEGE_SET*/ PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus) AccessCheck(PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken,
DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet,
LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus)
{ {
FIXME_(advapi)("(%p, %04x, %08lx, %p, %p, %p, %p, %p), stub\n", pSecurityDescriptor, ClientToken, DesiredAccess, GenericMapping, PrivilegeSet, PrivilegeSetLength, GrantedAccess, AccessStatus); FIXME_(advapi)("(%p, %04x, %08lx, %p, %p, %p, %p, %p), stub\n",
pSecurityDescriptor, ClientToken, DesiredAccess, GenericMapping,
PrivilegeSet, PrivilegeSetLength, GrantedAccess, AccessStatus);
*AccessStatus = TRUE; *AccessStatus = TRUE;
return TRUE; return TRUE;
} }
...@@ -5,25 +5,21 @@ ...@@ -5,25 +5,21 @@
*/ */
#include <time.h> #include <time.h>
#include "windef.h" #include "windef.h"
#include "winreg.h" #include "winsvc.h"
#include "winerror.h" #include "winerror.h"
#include "heap.h" #include "heap.h"
#include "debugtools.h" #include "debugtools.h"
DEFAULT_DEBUG_CHANNEL(advapi) DEFAULT_DEBUG_CHANNEL(advapi)
/* FIXME: Where do these belong? */
typedef DWORD SERVICE_STATUS_HANDLE;
typedef VOID (WINAPI *LPHANDLER_FUNCTION)( DWORD dwControl);
/****************************************************************************** /******************************************************************************
* EnumServicesStatus32A [ADVAPI32.38] * EnumServicesStatus32A [ADVAPI32.38]
*/ */
BOOL WINAPI BOOL WINAPI
EnumServicesStatusA( HANDLE hSCManager, DWORD dwServiceType, EnumServicesStatusA( SC_HANDLE hSCManager, DWORD dwServiceType,
DWORD dwServiceState, LPVOID lpServices, DWORD dwServiceState, LPENUM_SERVICE_STATUSA lpServices,
DWORD cbBufSize, LPDWORD pcbBytesNeeded, DWORD cbBufSize, LPDWORD pcbBytesNeeded,
LPDWORD lpServicesReturned, LPDWORD lpResumeHandle ) LPDWORD lpServicesReturned, LPDWORD lpResumeHandle )
{ FIXME("%x type=%lx state=%lx %p %lx %p %p %p\n", hSCManager, { FIXME("%x type=%lx state=%lx %p %lx %p %p %p\n", hSCManager,
...@@ -71,7 +67,7 @@ StartServiceCtrlDispatcherW( LPSERVICE_TABLE_ENTRYW servent ) ...@@ -71,7 +67,7 @@ StartServiceCtrlDispatcherW( LPSERVICE_TABLE_ENTRYW servent )
* RegisterServiceCtrlHandlerA [ADVAPI32.176] * RegisterServiceCtrlHandlerA [ADVAPI32.176]
*/ */
SERVICE_STATUS_HANDLE WINAPI SERVICE_STATUS_HANDLE WINAPI
RegisterServiceCtrlHandlerA( LPSTR lpServiceName, RegisterServiceCtrlHandlerA( LPCSTR lpServiceName,
LPHANDLER_FUNCTION lpfHandler ) LPHANDLER_FUNCTION lpfHandler )
{ FIXME("%s %p\n", lpServiceName, lpfHandler); { FIXME("%s %p\n", lpServiceName, lpfHandler);
return 0xcacacafe; return 0xcacacafe;
...@@ -85,7 +81,7 @@ RegisterServiceCtrlHandlerA( LPSTR lpServiceName, ...@@ -85,7 +81,7 @@ RegisterServiceCtrlHandlerA( LPSTR lpServiceName,
* lpfHandler [] * lpfHandler []
*/ */
SERVICE_STATUS_HANDLE WINAPI SERVICE_STATUS_HANDLE WINAPI
RegisterServiceCtrlHandlerW( LPWSTR lpServiceName, RegisterServiceCtrlHandlerW( LPCWSTR lpServiceName,
LPHANDLER_FUNCTION lpfHandler ) LPHANDLER_FUNCTION lpfHandler )
{ FIXME("%s %p\n", debugstr_w(lpServiceName), lpfHandler); { FIXME("%s %p\n", debugstr_w(lpServiceName), lpfHandler);
return 0xcacacafe; return 0xcacacafe;
...@@ -114,7 +110,7 @@ SetServiceStatus( SERVICE_STATUS_HANDLE hService, LPSERVICE_STATUS lpStatus ) ...@@ -114,7 +110,7 @@ SetServiceStatus( SERVICE_STATUS_HANDLE hService, LPSERVICE_STATUS lpStatus )
/****************************************************************************** /******************************************************************************
* OpenSCManager32A [ADVAPI32.110] * OpenSCManager32A [ADVAPI32.110]
*/ */
HANDLE WINAPI SC_HANDLE WINAPI
OpenSCManagerA( LPCSTR lpMachineName, LPCSTR lpDatabaseName, OpenSCManagerA( LPCSTR lpMachineName, LPCSTR lpDatabaseName,
DWORD dwDesiredAccess ) DWORD dwDesiredAccess )
{ {
...@@ -143,7 +139,7 @@ OpenSCManagerA( LPCSTR lpMachineName, LPCSTR lpDatabaseName, ...@@ -143,7 +139,7 @@ OpenSCManagerA( LPCSTR lpMachineName, LPCSTR lpDatabaseName,
* Success: Handle to service control manager database * Success: Handle to service control manager database
* Failure: NULL * Failure: NULL
*/ */
HANDLE WINAPI SC_HANDLE WINAPI
OpenSCManagerW( LPCWSTR lpMachineName, LPCWSTR lpDatabaseName, OpenSCManagerW( LPCWSTR lpMachineName, LPCWSTR lpDatabaseName,
DWORD dwDesiredAccess ) DWORD dwDesiredAccess )
{ {
...@@ -177,13 +173,10 @@ AllocateLocallyUniqueId( PLUID lpluid ) ...@@ -177,13 +173,10 @@ AllocateLocallyUniqueId( PLUID lpluid )
* dwControl [] * dwControl []
* lpServiceStatus [] * lpServiceStatus []
* *
* NOTES
* hService should be SC_HANDLE
*
* RETURNS STD * RETURNS STD
*/ */
BOOL WINAPI BOOL WINAPI
ControlService( HANDLE hService, DWORD dwControl, ControlService( SC_HANDLE hService, DWORD dwControl,
LPSERVICE_STATUS lpServiceStatus ) LPSERVICE_STATUS lpServiceStatus )
{ {
FIXME("(%d,%ld,%p): stub\n",hService,dwControl,lpServiceStatus); FIXME("(%d,%ld,%p): stub\n",hService,dwControl,lpServiceStatus);
...@@ -198,13 +191,10 @@ ControlService( HANDLE hService, DWORD dwControl, ...@@ -198,13 +191,10 @@ ControlService( HANDLE hService, DWORD dwControl,
* PARAMS * PARAMS
* hSCObject [I] Handle to service or service control manager database * hSCObject [I] Handle to service or service control manager database
* *
* NOTES
* hSCObject should be SC_HANDLE
*
* RETURNS STD * RETURNS STD
*/ */
BOOL WINAPI BOOL WINAPI
CloseServiceHandle( HANDLE hSCObject ) CloseServiceHandle( SC_HANDLE hSCObject )
{ {
FIXME("(%d): stub\n", hSCObject); FIXME("(%d): stub\n", hSCObject);
return TRUE; return TRUE;
...@@ -214,8 +204,8 @@ CloseServiceHandle( HANDLE hSCObject ) ...@@ -214,8 +204,8 @@ CloseServiceHandle( HANDLE hSCObject )
/****************************************************************************** /******************************************************************************
* OpenService32A [ADVAPI32.112] * OpenService32A [ADVAPI32.112]
*/ */
HANDLE WINAPI SC_HANDLE WINAPI
OpenServiceA( HANDLE hSCManager, LPCSTR lpServiceName, OpenServiceA( SC_HANDLE hSCManager, LPCSTR lpServiceName,
DWORD dwDesiredAccess ) DWORD dwDesiredAccess )
{ {
LPWSTR lpServiceNameW = HEAP_strdupAtoW(GetProcessHeap(),0,lpServiceName); LPWSTR lpServiceNameW = HEAP_strdupAtoW(GetProcessHeap(),0,lpServiceName);
...@@ -234,16 +224,12 @@ OpenServiceA( HANDLE hSCManager, LPCSTR lpServiceName, ...@@ -234,16 +224,12 @@ OpenServiceA( HANDLE hSCManager, LPCSTR lpServiceName,
* lpServiceName [] * lpServiceName []
* dwDesiredAccess [] * dwDesiredAccess []
* *
* NOTES
* The return value should be SC_HANDLE
* hSCManager should be SC_HANDLE
*
* RETURNS * RETURNS
* Success: Handle to the service * Success: Handle to the service
* Failure: NULL * Failure: NULL
*/ */
HANDLE WINAPI SC_HANDLE WINAPI
OpenServiceW(HANDLE hSCManager, LPCWSTR lpServiceName, OpenServiceW(SC_HANDLE hSCManager, LPCWSTR lpServiceName,
DWORD dwDesiredAccess) DWORD dwDesiredAccess)
{ {
FIXME("(%d,%p,%ld): stub\n",hSCManager, lpServiceName, FIXME("(%d,%p,%ld): stub\n",hSCManager, lpServiceName,
...@@ -255,7 +241,7 @@ OpenServiceW(HANDLE hSCManager, LPCWSTR lpServiceName, ...@@ -255,7 +241,7 @@ OpenServiceW(HANDLE hSCManager, LPCWSTR lpServiceName,
/****************************************************************************** /******************************************************************************
* CreateService32A [ADVAPI32.29] * CreateService32A [ADVAPI32.29]
*/ */
DWORD WINAPI SC_HANDLE WINAPI
CreateServiceA( DWORD hSCManager, LPCSTR lpServiceName, CreateServiceA( DWORD hSCManager, LPCSTR lpServiceName,
LPCSTR lpDisplayName, DWORD dwDesiredAccess, LPCSTR lpDisplayName, DWORD dwDesiredAccess,
DWORD dwServiceType, DWORD dwStartType, DWORD dwServiceType, DWORD dwStartType,
...@@ -278,11 +264,9 @@ CreateServiceA( DWORD hSCManager, LPCSTR lpServiceName, ...@@ -278,11 +264,9 @@ CreateServiceA( DWORD hSCManager, LPCSTR lpServiceName,
* *
* RETURNS STD * RETURNS STD
* *
* NOTES
* hService should be SC_HANDLE
*/ */
BOOL WINAPI BOOL WINAPI
DeleteService( HANDLE hService ) DeleteService( SC_HANDLE hService )
{ {
FIXME("(%d): stub\n",hService); FIXME("(%d): stub\n",hService);
return TRUE; return TRUE;
...@@ -296,7 +280,7 @@ DeleteService( HANDLE hService ) ...@@ -296,7 +280,7 @@ DeleteService( HANDLE hService )
* How do we convert lpServiceArgVectors to use the 32W version? * How do we convert lpServiceArgVectors to use the 32W version?
*/ */
BOOL WINAPI BOOL WINAPI
StartServiceA( HANDLE hService, DWORD dwNumServiceArgs, StartServiceA( SC_HANDLE hService, DWORD dwNumServiceArgs,
LPCSTR *lpServiceArgVectors ) LPCSTR *lpServiceArgVectors )
{ {
FIXME("(%d,%ld,%p): stub\n",hService,dwNumServiceArgs,lpServiceArgVectors); FIXME("(%d,%ld,%p): stub\n",hService,dwNumServiceArgs,lpServiceArgVectors);
...@@ -315,11 +299,9 @@ StartServiceA( HANDLE hService, DWORD dwNumServiceArgs, ...@@ -315,11 +299,9 @@ StartServiceA( HANDLE hService, DWORD dwNumServiceArgs,
* *
* RETURNS STD * RETURNS STD
* *
* NOTES
* hService should be SC_HANDLE
*/ */
BOOL WINAPI BOOL WINAPI
StartServiceW( HANDLE hService, DWORD dwNumServiceArgs, StartServiceW( SC_HANDLE hService, DWORD dwNumServiceArgs,
LPCWSTR *lpServiceArgVectors ) LPCWSTR *lpServiceArgVectors )
{ {
FIXME("(%d,%ld,%p): stub\n",hService,dwNumServiceArgs, FIXME("(%d,%ld,%p): stub\n",hService,dwNumServiceArgs,
...@@ -334,12 +316,9 @@ StartServiceW( HANDLE hService, DWORD dwNumServiceArgs, ...@@ -334,12 +316,9 @@ StartServiceW( HANDLE hService, DWORD dwNumServiceArgs,
* hService [] * hService []
* lpservicestatus [] * lpservicestatus []
* *
* FIXME
* hService should be SC_HANDLE
* lpservicestatus should be LPSERVICE_STATUS
*/ */
BOOL WINAPI BOOL WINAPI
QueryServiceStatus( HANDLE hService, LPVOID lpservicestatus ) QueryServiceStatus( SC_HANDLE hService, LPSERVICE_STATUS lpservicestatus )
{ {
FIXME("(%d,%p),stub!\n",hService,lpservicestatus); FIXME("(%d,%p),stub!\n",hService,lpservicestatus);
return TRUE; return TRUE;
......
...@@ -572,7 +572,7 @@ BOOLEAN WINAPI RtlFreeHeap( ...@@ -572,7 +572,7 @@ BOOLEAN WINAPI RtlFreeHeap(
/* /*
* misc * misc
*/ */
void __cdecl DbgPrint(LPCSTR fmt,LPVOID args); void WINAPIV DbgPrint(LPCSTR fmt, ...);
DWORD WINAPI NtRaiseException(PEXCEPTION_RECORD,PCONTEXT,BOOL); DWORD WINAPI NtRaiseException(PEXCEPTION_RECORD,PCONTEXT,BOOL);
void WINAPI RtlRaiseException(PEXCEPTION_RECORD); void WINAPI RtlRaiseException(PEXCEPTION_RECORD);
void WINAPI RtlRaiseStatus(NTSTATUS); void WINAPI RtlRaiseStatus(NTSTATUS);
......
#ifndef __WINE_NTSECAPI_H
#define __WINE_NTSECAPI_H
#include "ntdef.h"
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
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;
NTSTATUS WINAPI LsaOpenPolicy(PLSA_UNICODE_STRING,PLSA_OBJECT_ATTRIBUTES,ACCESS_MASK,PLSA_HANDLE);
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* !defined(__WINE_NTSECAPI_H) */
...@@ -146,8 +146,6 @@ typedef LONG LRESULT; ...@@ -146,8 +146,6 @@ typedef LONG LRESULT;
typedef WORD ATOM; typedef WORD ATOM;
typedef WORD CATCHBUF[9]; typedef WORD CATCHBUF[9];
typedef WORD *LPCATCHBUF; typedef WORD *LPCATCHBUF;
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK REGSAM;
typedef HANDLE HHOOK; typedef HANDLE HHOOK;
typedef HANDLE HMONITOR; typedef HANDLE HMONITOR;
typedef DWORD LCID; typedef DWORD LCID;
......
...@@ -560,16 +560,31 @@ typedef enum _TOKEN_INFORMATION_CLASS { ...@@ -560,16 +560,31 @@ typedef enum _TOKEN_INFORMATION_CLASS {
#include "pshpack1.h" #include "pshpack1.h"
typedef DWORD ACCESS_MASK, *PACCESS_MASK;
typedef struct _GENERIC_MAPPING {
ACCESS_MASK GenericRead;
ACCESS_MASK GenericWrite;
ACCESS_MASK GenericExecute;
ACCESS_MASK GenericAll;
} GENERIC_MAPPING, *PGENERIC_MAPPING;
#ifndef SID_IDENTIFIER_AUTHORITY_DEFINED
#define SID_IDENTIFIER_AUTHORITY_DEFINED
typedef struct { typedef struct {
BYTE Value[6]; BYTE Value[6];
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY; } SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY;
#endif /* !defined(SID_IDENTIFIER_AUTHORITY_DEFINED) */
#ifndef SID_DEFINED
#define SID_DEFINED
typedef struct _SID { typedef struct _SID {
BYTE Revision; BYTE Revision;
BYTE SubAuthorityCount; BYTE SubAuthorityCount;
SID_IDENTIFIER_AUTHORITY IdentifierAuthority; SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
DWORD SubAuthority[1]; DWORD SubAuthority[1];
} SID,*PSID; } SID,*PSID;
#endif /* !defined(SID_DEFINED) */
#define SID_REVISION (1) /* Current revision */ #define SID_REVISION (1) /* Current revision */
#define SID_MAX_SUB_AUTHORITIES (15) /* current max subauths */ #define SID_MAX_SUB_AUTHORITIES (15) /* current max subauths */
...@@ -601,8 +616,8 @@ typedef struct _ACL { ...@@ -601,8 +616,8 @@ typedef struct _ACL {
#define SE_SACL_DEFAULTED 0x0020 #define SE_SACL_DEFAULTED 0x0020
#define SE_SELF_RELATIVE 0x8000 #define SE_SELF_RELATIVE 0x8000
typedef DWORD SECURITY_INFORMATION; typedef DWORD SECURITY_INFORMATION, *PSECURITY_INFORMATION;
typedef WORD SECURITY_DESCRIPTOR_CONTROL; typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;
/* The security descriptor structure */ /* The security descriptor structure */
typedef struct { typedef struct {
...@@ -677,6 +692,16 @@ typedef struct _LUID_AND_ATTRIBUTES { ...@@ -677,6 +692,16 @@ typedef struct _LUID_AND_ATTRIBUTES {
} LUID_AND_ATTRIBUTES; } LUID_AND_ATTRIBUTES;
/* /*
* PRIVILEGE_SET
*/
typedef struct _PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
} PRIVILEGE_SET, *PPRIVILEGE_SET;
/*
* TOKEN_PRIVILEGES * TOKEN_PRIVILEGES
*/ */
...@@ -737,7 +762,7 @@ typedef enum _SECURITY_IMPERSONATION_LEVEL { ...@@ -737,7 +762,7 @@ typedef enum _SECURITY_IMPERSONATION_LEVEL {
SecurityIdentification, SecurityIdentification,
SecurityImpersonation, SecurityImpersonation,
SecurityDelegation SecurityDelegation
} SECURITY_IMPERSONATION_LEVEL; } SECURITY_IMPERSONATION_LEVEL, *PSECURITY_IMPERSONATION_LEVEL;
typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE, typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,
......
...@@ -101,30 +101,8 @@ typedef struct value_entW { ...@@ -101,30 +101,8 @@ typedef struct value_entW {
DWORD ve_type; DWORD ve_type;
} VALENTW, *PVALENTW; } VALENTW, *PVALENTW;
typedef ACCESS_MASK REGSAM;
/* Used by: ControlService */
typedef struct _SERVICE_STATUS {
DWORD dwServiceType;
DWORD dwCurrentState;
DWORD dwControlsAccepted;
DWORD dwWin32ExitCode;
DWORD dwServiceSpecificExitCode;
DWORD dwCheckPoint;
DWORD dwWaitHint;
} SERVICE_STATUS, *LPSERVICE_STATUS;
HANDLE WINAPI OpenSCManagerA(LPCSTR,LPCSTR,DWORD);
HANDLE WINAPI OpenSCManagerW(LPCWSTR,LPCWSTR,DWORD);
#define OpenSCManager WINELIB_NAME_AW(OpenSCManager)
HANDLE WINAPI OpenServiceA(HANDLE,LPCSTR,DWORD);
HANDLE WINAPI OpenServiceW(HANDLE,LPCWSTR,DWORD);
#define OpenService WINELIB_NAME_AW(OpenService)
BOOL WINAPI LookupPrivilegeValueA(LPCSTR,LPCSTR,LPVOID);
BOOL WINAPI LookupPrivilegeValueW(LPCWSTR,LPCWSTR,LPVOID);
#define LookupPrivilegeValue WINELIB_NAME_AW(LookupPrivilegeValue)
HANDLE WINAPI RegisterEventSourceA(LPCSTR,LPCSTR);
HANDLE WINAPI RegisterEventSourceW(LPCWSTR,LPCWSTR);
#define RegisterEventSource WINELIB_NAME_AW(RegisterEventSource)
DWORD WINAPI RegCreateKeyExA(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM, DWORD WINAPI RegCreateKeyExA(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM,
LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD); LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD);
DWORD WINAPI RegCreateKeyExW(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM, DWORD WINAPI RegCreateKeyExW(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,
...@@ -134,17 +112,6 @@ LONG WINAPI RegSaveKeyA(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES); ...@@ -134,17 +112,6 @@ LONG WINAPI RegSaveKeyA(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES);
LONG WINAPI RegSaveKeyW(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES); LONG WINAPI RegSaveKeyW(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES);
#define RegSaveKey WINELIB_NAME_AW(RegSaveKey) #define RegSaveKey WINELIB_NAME_AW(RegSaveKey)
LONG WINAPI RegSetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); LONG WINAPI RegSetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
BOOL WINAPI CloseServiceHandle(HANDLE);
BOOL WINAPI ControlService(HANDLE,DWORD,LPSERVICE_STATUS);
BOOL WINAPI DeleteService(HANDLE);
BOOL WINAPI DeregisterEventSource(HANDLE);
BOOL WINAPI GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD);
BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD);
#define GetFileSecurity WINELIB_NAME_AW(GetFileSecurity)
BOOL WINAPI GetUserNameA(LPSTR,LPDWORD);
BOOL WINAPI GetUserNameW(LPWSTR,LPDWORD);
#define GetUserName WINELIB_NAME_AW(GetUserName)
BOOL WINAPI OpenProcessToken(HANDLE,DWORD,HANDLE*);
LONG WINAPI RegConnectRegistryA(LPCSTR,HKEY,LPHKEY); LONG WINAPI RegConnectRegistryA(LPCSTR,HKEY,LPHKEY);
LONG WINAPI RegConnectRegistryW(LPCWSTR,HKEY,LPHKEY); LONG WINAPI RegConnectRegistryW(LPCWSTR,HKEY,LPHKEY);
#define RegConnectRegistry WINELIB_NAME_AW(RegConnectRegistry) #define RegConnectRegistry WINELIB_NAME_AW(RegConnectRegistry)
...@@ -177,12 +144,6 @@ LONG WINAPI RegRestoreKeyW(HKEY,LPCWSTR,DWORD); ...@@ -177,12 +144,6 @@ LONG WINAPI RegRestoreKeyW(HKEY,LPCWSTR,DWORD);
LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR); LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR);
LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR); LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR);
#define RegUnLoadKey WINELIB_NAME_AW(RegUnLoadKey) #define RegUnLoadKey WINELIB_NAME_AW(RegUnLoadKey)
BOOL WINAPI SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
#define SetFileSecurity WINELIB_NAME_AW(SetFileSecurity)
BOOL WINAPI StartServiceA(HANDLE,DWORD,LPCSTR*);
BOOL WINAPI StartServiceW(HANDLE,DWORD,LPCWSTR*);
#define StartService WINELIB_NAME_AW(StartService)
/* Declarations for functions that are the same in Win16 and Win32 */ /* Declarations for functions that are the same in Win16 and Win32 */
......
#ifndef __WINE_WINSVC_H
#define __WINE_WINSVC_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
#include "windef.h"
/* Handle types */
typedef HANDLE SC_HANDLE, *LPSC_HANDLE;
typedef DWORD SERVICE_STATUS_HANDLE;
/* Service status structure */
typedef struct _SERVICE_STATUS {
DWORD dwServiceType;
DWORD dwCurrentState;
DWORD dwControlsAccepted;
DWORD dwWin32ExitCode;
DWORD dwServiceSpecificExitCode;
DWORD dwCheckPoint;
DWORD dwWaitHint;
} SERVICE_STATUS, *LPSERVICE_STATUS;
/* Service main function prototype */
typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTIONA)(DWORD,LPSTR);
typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTIONW)(DWORD,LPWSTR);
DECL_WINELIB_TYPE_AW(LPSERVICE_MAIN_FUNCTION)
/* Service start table */
typedef struct _SERVICE_TABLE_ENTRYA {
LPSTR lpServiceName;
LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
} SERVICE_TABLE_ENTRYA, *LPSERVICE_TABLE_ENTRYA;
typedef struct _SERVICE_TABLE_ENTRYW {
LPWSTR lpServiceName;
LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
} SERVICE_TABLE_ENTRYW, *LPSERVICE_TABLE_ENTRYW;
DECL_WINELIB_TYPE_AW(SERVICE_TABLE_ENTRY)
DECL_WINELIB_TYPE_AW(LPSERVICE_TABLE_ENTRY)
/* Service status enumeration structure */
typedef struct _ENUM_SERVICE_STATUSA {
LPSTR lpServiceName;
LPSTR lpDisplayName;
SERVICE_STATUS ServiceStatus;
} ENUM_SERVICE_STATUSA, *LPENUM_SERVICE_STATUSA;
typedef struct _ENUM_SERVICE_STATUSW {
LPWSTR lpServiceName;
LPWSTR lpDisplayName;
SERVICE_STATUS ServiceStatus;
} ENUM_SERVICE_STATUSW, *LPENUM_SERVICE_STATUSW;
DECL_WINELIB_TYPE_AW(ENUM_SERVICE_STATUS)
DECL_WINELIB_TYPE_AW(LPENUM_SERVICE_STATUS)
/* Service control handler function prototype */
typedef VOID (WINAPI *LPHANDLER_FUNCTION)(DWORD);
/* API function prototypes */
BOOL WINAPI CloseServiceHandle(SC_HANDLE);
BOOL WINAPI ControlService(SC_HANDLE,DWORD,LPSERVICE_STATUS);
SC_HANDLE WINAPI CreateServiceA(DWORD,LPCSTR,LPCSTR,DWORD,DWORD,DWORD,DWORD,LPCSTR,
LPCSTR,LPDWORD,LPCSTR,LPCSTR,LPCSTR);
SC_HANDLE WINAPI CreateServiceW(DWORD,LPCWSTR,LPCWSTR,DWORD,DWORD,DWORD,DWORD,LPCWSTR,
LPCWSTR,LPDWORD,LPCWSTR,LPCWSTR,LPCWSTR);
#define CreateService WINELIB_NAME_AW(CreateService)
BOOL WINAPI DeleteService(SC_HANDLE);
BOOL WINAPI EnumServicesStatusA(SC_HANDLE,DWORD,DWORD,LPENUM_SERVICE_STATUSA,
DWORD,LPDWORD,LPDWORD,LPDWORD);
BOOL WINAPI EnumServicesStatusW(SC_HANDLE,DWORD,DWORD,LPENUM_SERVICE_STATUSW,
DWORD,LPDWORD,LPDWORD,LPDWORD);
#define EnumServicesStatus WINELIB_NAME_AW(EnumServicesStatus)
SC_HANDLE WINAPI OpenSCManagerA(LPCSTR,LPCSTR,DWORD);
SC_HANDLE WINAPI OpenSCManagerW(LPCWSTR,LPCWSTR,DWORD);
#define OpenSCManager WINELIB_NAME_AW(OpenSCManager)
SC_HANDLE WINAPI OpenServiceA(SC_HANDLE,LPCSTR,DWORD);
SC_HANDLE WINAPI OpenServiceW(SC_HANDLE,LPCWSTR,DWORD);
#define OpenService WINELIB_NAME_AW(OpenService)
SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerA(LPCSTR,LPHANDLER_FUNCTION);
SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerW(LPCWSTR,LPHANDLER_FUNCTION);
#define RegisterServiceCtrlHandler WINELIB_NAME_AW(RegisterServiceCtrlHandler)
BOOL WINAPI SetServiceStatus(SERVICE_STATUS_HANDLE,LPSERVICE_STATUS);
BOOL WINAPI StartServiceA(SC_HANDLE,DWORD,LPCSTR*);
BOOL WINAPI StartServiceW(SC_HANDLE,DWORD,LPCWSTR*);
#define StartService WINELIB_NAME_AW(StartService)
BOOL WINAPI StartServiceCtrlDispatcherA(LPSERVICE_TABLE_ENTRYA);
BOOL WINAPI StartServiceCtrlDispatcherW(LPSERVICE_TABLE_ENTRYW);
#define StartServiceCtrlDispatcher WINELIB_NAME_AW(StartServiceCtrlDispatcher)
BOOL WINAPI QueryServiceStatus(SC_HANDLE,LPSERVICE_STATUS);
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* !defined(__WINE_WINSVC_H) */
...@@ -218,7 +218,10 @@ typedef struct _ACL { ...@@ -218,7 +218,10 @@ typedef struct _ACL {
} ACL, *PACL; } ACL, *PACL;
typedef DWORD SECURITY_INFORMATION; typedef DWORD SECURITY_INFORMATION;
typedef WORD SECURITY_DESCRIPTOR_CONTROL; typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;
typedef DWORD ACCESS_MASK, *PACCESS_MASK;
typedef PVOID PGENERIC_MAPPING;
/* The security descriptor structure */ /* The security descriptor structure */
typedef struct { typedef struct {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment