3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS system libraries
5 * FILE: lib/advapi32/sec/sid.c
6 * PURPOSE: Security ID functions
18 AllocateLocallyUniqueId(PLUID Luid)
22 Status = NtAllocateLocallyUniqueId(Luid);
23 if (!NT_SUCCESS(Status))
25 SetLastError(RtlNtStatusToDosError(Status));
36 AllocateAndInitializeSid (
37 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
38 BYTE nSubAuthorityCount,
39 DWORD dwSubAuthority0,
40 DWORD dwSubAuthority1,
41 DWORD dwSubAuthority2,
42 DWORD dwSubAuthority3,
43 DWORD dwSubAuthority4,
44 DWORD dwSubAuthority5,
45 DWORD dwSubAuthority6,
46 DWORD dwSubAuthority7,
52 Status = RtlAllocateAndInitializeSid (pIdentifierAuthority,
63 if (!NT_SUCCESS(Status))
65 SetLastError (RtlNtStatusToDosError (Status));
79 DWORD nDestinationSidLength,
86 Status = RtlCopySid (nDestinationSidLength,
89 if (!NT_SUCCESS(Status))
91 SetLastError (RtlNtStatusToDosError (Status));
109 return RtlEqualPrefixSid (pSid1, pSid2);
122 return RtlEqualSid (pSid1, pSid2);
135 return RtlFreeSid (pSid);
148 return (DWORD)RtlLengthSid (pSid);
155 PSID_IDENTIFIER_AUTHORITY
157 GetSidIdentifierAuthority (
161 return RtlIdentifierAuthoritySid (pSid);
170 GetSidLengthRequired (
171 UCHAR nSubAuthorityCount
174 return (DWORD)RtlLengthRequiredSid (nSubAuthorityCount);
188 return (PDWORD)RtlSubAuthoritySid (pSid, nSubAuthority);
197 GetSidSubAuthorityCount (
201 return RtlSubAuthorityCountSid (pSid);
212 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
213 BYTE nSubAuthorityCount
218 Status = RtlInitializeSid (Sid,
219 pIdentifierAuthority,
221 if (!NT_SUCCESS(Status))
223 SetLastError (RtlNtStatusToDosError (Status));
235 IsValidSid(PSID pSid)
237 return((WINBOOL)RtlValidSid(pSid));
245 LookupAccountNameA(LPCSTR lpSystemName,
246 LPCSTR lpAccountName,
250 LPDWORD cbDomainName,
261 LookupAccountNameW(LPCWSTR lpSystemName,
262 LPCWSTR lpAccountName,
266 LPDWORD cbDomainName,
277 LookupAccountSidA(LPCSTR lpSystemName,
281 LPSTR ReferencedDomainName,
282 LPDWORD cbReferencedDomainName,
293 LookupAccountSidW(LPCWSTR lpSystemName,
297 LPWSTR ReferencedDomainName,
298 LPDWORD cbReferencedDomainName,