* include/aclapi.h [_WIN32_WINNT >= 0x0501] (GetInheritanceSource[AW]):

Add functions. Don't know what PFN_OBJECT_MGR_FUNCTS is so use
	void* instead.

	* include/accctrl.h [_WIN32_WINNT >= 0x0501] (INHERITED_FROM[AW],
	PINHERITED_FROM[AW]): Add structures.

	* lib/user32.def (GetInheritanceSource[AW]): Add functions.
This commit is contained in:
Dimitri Papadopoulos 2003-09-26 08:07:39 +00:00
parent 32c9d3a91c
commit 72b0db800a
5 changed files with 40 additions and 9 deletions

View File

@ -1,3 +1,14 @@
2003-09-26 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
* include/aclapi.h [_WIN32_WINNT >= 0x0501] (GetInheritanceSource[AW]):
Add functions. Don't know what PFN_OBJECT_MGR_FUNCTS is so use
void* instead.
* include/accctrl.h [_WIN32_WINNT >= 0x0501] (INHERITED_FROM[AW],
PINHERITED_FROM[AW]): Add structures.
* lib/user32.def (GetInheritanceSource[AW]): Add functions.
2003-09-26 Corinna Vinschen <corinna@vinschen.de> 2003-09-26 Corinna Vinschen <corinna@vinschen.de>
* include/winuser.h (FLASHWINFO, PFLASHWINFO): Define for 98/Me, too. * include/winuser.h (FLASHWINFO, PFLASHWINFO): Define for 98/Me, too.

View File

@ -256,27 +256,36 @@ typedef struct _EXPLICIT_ACCESS_W {
DWORD grfInheritance; DWORD grfInheritance;
TRUSTEE_W Trustee; TRUSTEE_W Trustee;
} EXPLICIT_ACCESS_W, *PEXPLICIT_ACCESS_W, EXPLICIT_ACCESSW, *PEXPLICIT_ACCESSW; } EXPLICIT_ACCESS_W, *PEXPLICIT_ACCESS_W, EXPLICIT_ACCESSW, *PEXPLICIT_ACCESSW;
typedef struct _OBJECTS_AND_SID { typedef struct _OBJECTS_AND_SID {
DWORD ObjectsPresent; DWORD ObjectsPresent;
GUID ObjectTypeGuid; GUID ObjectTypeGuid;
GUID InheritedObjectTypeGuid; GUID InheritedObjectTypeGuid;
SID * pSid; SID * pSid;
} OBJECTS_AND_SID, *POBJECTS_AND_SID; } OBJECTS_AND_SID, *POBJECTS_AND_SID;
typedef struct _OBJECTS_AND_NAME_A { typedef struct _OBJECTS_AND_NAME_A {
DWORD ObjectsPresent; DWORD ObjectsPresent;
SE_OBJECT_TYPE ObjectType; SE_OBJECT_TYPE ObjectType;
LPSTR ObjectTypeName; LPSTR ObjectTypeName;
LPSTR InheritedObjectTypeName; LPSTR InheritedObjectTypeName;
LPSTR ptstrName; LPSTR ptstrName;
} OBJECTS_AND_NAME_A, *POBJECTS_AND_NAME_A; } OBJECTS_AND_NAME_A, *POBJECTS_AND_NAME_A;
typedef struct _OBJECTS_AND_NAME_W { typedef struct _OBJECTS_AND_NAME_W {
DWORD ObjectsPresent; DWORD ObjectsPresent;
SE_OBJECT_TYPE ObjectType; SE_OBJECT_TYPE ObjectType;
LPWSTR ObjectTypeName; LPWSTR ObjectTypeName;
LPWSTR InheritedObjectTypeName; LPWSTR InheritedObjectTypeName;
LPWSTR ptstrName; LPWSTR ptstrName;
} OBJECTS_AND_NAME_W, *POBJECTS_AND_NAME_W; } OBJECTS_AND_NAME_W, *POBJECTS_AND_NAME_W;
#if (_WIN32_WINNT >= 0x0501)
typedef struct {
LONG GenerationGap;
LPSTR AncestorName;
} INHERITED_FROMA, *PINHERITED_FROMA;
typedef struct {
LONG GenerationGap;
LPWSTR AncestorName;
} INHERITED_FROMW, *PINHERITED_FROMW;
#endif /* (_WIN32_WINNT >= 0x0501) */
#ifdef UNICODE #ifdef UNICODE
#define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERW #define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERW
@ -292,6 +301,9 @@ typedef EXPLICIT_ACCESS_W EXPLICIT_ACCESS_, *PEXPLICIT_ACCESS_;
typedef EXPLICIT_ACCESSW EXPLICIT_ACCESS, *PEXPLICIT_ACCESS; typedef EXPLICIT_ACCESSW EXPLICIT_ACCESS, *PEXPLICIT_ACCESS;
typedef TRUSTEE_ACCESSW TRUSTEE_ACCESS, *PTRUSTEE_ACCESS; typedef TRUSTEE_ACCESSW TRUSTEE_ACCESS, *PTRUSTEE_ACCESS;
typedef OBJECTS_AND_NAME_W OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_; typedef OBJECTS_AND_NAME_W OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_;
#if (_WIN32_WINNT >= 0x0501)
typedef INHERITED_FROMW INHERITED_FROM, *PINHERITED_FROM;
#endif
#else #else
#define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERA #define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERA
typedef TRUSTEE_A TRUSTEE_, *PTRUSTEE_; typedef TRUSTEE_A TRUSTEE_, *PTRUSTEE_;
@ -306,10 +318,12 @@ typedef EXPLICIT_ACCESS_A EXPLICIT_ACCESS_, *PEXPLICIT_ACCESS_;
typedef EXPLICIT_ACCESSA EXPLICIT_ACCESS, *PEXPLICIT_ACCESS; typedef EXPLICIT_ACCESSA EXPLICIT_ACCESS, *PEXPLICIT_ACCESS;
typedef TRUSTEE_ACCESSA TRUSTEE_ACCESS, *PTRUSTEE_ACCESS; typedef TRUSTEE_ACCESSA TRUSTEE_ACCESS, *PTRUSTEE_ACCESS;
typedef OBJECTS_AND_NAME_A OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_; typedef OBJECTS_AND_NAME_A OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_;
#if (_WIN32_WINNT >= 0x0501)
typedef INHERITED_FROMA INHERITED_FROM, *PINHERITED_FROM;
#endif #endif
#endif /* UNICODE */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif
#endif /* _ACCCTRL_H */

View File

@ -10,6 +10,7 @@
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,DWORD,ACCESS_MODE,DWORD); VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,DWORD,ACCESS_MODE,DWORD);
VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,DWORD,ACCESS_MODE,DWORD); VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,DWORD,ACCESS_MODE,DWORD);
DWORD WINAPI BuildSecurityDescriptorA(PTRUSTEE_A,PTRUSTEE_A ,ULONG,PEXPLICIT_ACCESS_A, DWORD WINAPI BuildSecurityDescriptorA(PTRUSTEE_A,PTRUSTEE_A ,ULONG,PEXPLICIT_ACCESS_A,
@ -32,6 +33,10 @@ DWORD WINAPI GetEffectiveRightsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK);
DWORD WINAPI GetEffectiveRightsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK); DWORD WINAPI GetEffectiveRightsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK);
DWORD WINAPI GetExplicitEntriesFromAclA(PACL,PULONG,PEXPLICIT_ACCESS_A*); DWORD WINAPI GetExplicitEntriesFromAclA(PACL,PULONG,PEXPLICIT_ACCESS_A*);
DWORD WINAPI GetExplicitEntriesFromAclW(PACL,PULONG,PEXPLICIT_ACCESS_W*); DWORD WINAPI GetExplicitEntriesFromAclW(PACL,PULONG,PEXPLICIT_ACCESS_W*);
#if (_WIN32_WINNT >= 0x0501)
DWORD WINAPI GetInheritanceSourceA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,void*,PGENERIC_MAPPING,PINHERITED_FROMA);
DWORD WINAPI GetInheritanceSourceW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,void*,PGENERIC_MAPPING,PINHERITED_FROMW);
#endif
DWORD WINAPI GetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, DWORD WINAPI GetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,
PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*); PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);
DWORD WINAPI GetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, DWORD WINAPI GetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,
@ -104,10 +109,9 @@ MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationW(PTRUSTEE_W);
#define BuildImpersonateTrustee BuildImpersonateTrusteeA #define BuildImpersonateTrustee BuildImpersonateTrusteeA
#define GetMultipleTrustee GetMultipleTrusteeA #define GetMultipleTrustee GetMultipleTrusteeA
#define GetMultipleTrusteeOperation GetMultipleTrusteeOperationA #define GetMultipleTrusteeOperation GetMultipleTrusteeOperationA
#endif /* UNICODE */ #endif /* UNICODE */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif #endif

View File

@ -2834,7 +2834,7 @@ typedef struct {
UINT uCount; UINT uCount;
DWORD dwTimeout; DWORD dwTimeout;
} FLASHWINFO, *PFLASHWINFO; } FLASHWINFO, *PFLASHWINFO;
#endif /* (WINVER >= 0x0500) */ #endif /* (WINVER >= 0x0500 || _WIN32_WINDOWS >= 0x0410) */
#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490) #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
typedef struct tagMOUSEMOVEPOINT { typedef struct tagMOUSEMOVEPOINT {
int x; int x;

View File

@ -193,6 +193,8 @@ GetExplicitEntriesFromAclA@12
GetExplicitEntriesFromAclW@12 GetExplicitEntriesFromAclW@12
GetFileSecurityA@20 GetFileSecurityA@20
GetFileSecurityW@20 GetFileSecurityW@20
GetInheritanceSourceA@40
GetInheritanceSourceW@40
GetKernelObjectSecurity@20 GetKernelObjectSecurity@20
GetLengthSid@4 GetLengthSid@4
GetLocalManagedApplications@12 GetLocalManagedApplications@12