Blame winpr/libwinpr/security/security.c

Packit 1fb8d4
/**
Packit 1fb8d4
 * WinPR: Windows Portable Runtime
Packit 1fb8d4
 * Base Security Functions
Packit 1fb8d4
 *
Packit 1fb8d4
 * Copyright 2013 Marc-Andre Moreau <marcandre.moreau@gmail.com>
Packit 1fb8d4
 *
Packit 1fb8d4
 * Licensed under the Apache License, Version 2.0 (the "License");
Packit 1fb8d4
 * you may not use this file except in compliance with the License.
Packit 1fb8d4
 * You may obtain a copy of the License at
Packit 1fb8d4
 *
Packit 1fb8d4
 *     http://www.apache.org/licenses/LICENSE-2.0
Packit 1fb8d4
 *
Packit 1fb8d4
 * Unless required by applicable law or agreed to in writing, software
Packit 1fb8d4
 * distributed under the License is distributed on an "AS IS" BASIS,
Packit 1fb8d4
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Packit 1fb8d4
 * See the License for the specific language governing permissions and
Packit 1fb8d4
 * limitations under the License.
Packit 1fb8d4
 */
Packit 1fb8d4
Packit 1fb8d4
#ifdef HAVE_CONFIG_H
Packit 1fb8d4
#include "config.h"
Packit 1fb8d4
#endif
Packit 1fb8d4
Packit 1fb8d4
#include <winpr/crt.h>
Packit 1fb8d4
Packit 1fb8d4
#ifdef HAVE_UNISTD_H
Packit 1fb8d4
#include <unistd.h>
Packit 1fb8d4
#endif
Packit 1fb8d4
Packit 1fb8d4
#include <winpr/security.h>
Packit 1fb8d4
Packit 1fb8d4
/**
Packit 1fb8d4
 * api-ms-win-security-base-l1-2-0.dll:
Packit 1fb8d4
 *
Packit 1fb8d4
 * AccessCheck
Packit 1fb8d4
 * AccessCheckAndAuditAlarmW
Packit 1fb8d4
 * AccessCheckByType
Packit 1fb8d4
 * AccessCheckByTypeAndAuditAlarmW
Packit 1fb8d4
 * AccessCheckByTypeResultList
Packit 1fb8d4
 * AccessCheckByTypeResultListAndAuditAlarmByHandleW
Packit 1fb8d4
 * AccessCheckByTypeResultListAndAuditAlarmW
Packit 1fb8d4
 * AddAccessAllowedAce
Packit 1fb8d4
 * AddAccessAllowedAceEx
Packit 1fb8d4
 * AddAccessAllowedObjectAce
Packit 1fb8d4
 * AddAccessDeniedAce
Packit 1fb8d4
 * AddAccessDeniedAceEx
Packit 1fb8d4
 * AddAccessDeniedObjectAce
Packit 1fb8d4
 * AddAce
Packit 1fb8d4
 * AddAuditAccessAce
Packit 1fb8d4
 * AddAuditAccessAceEx
Packit 1fb8d4
 * AddAuditAccessObjectAce
Packit 1fb8d4
 * AddMandatoryAce
Packit 1fb8d4
 * AddResourceAttributeAce
Packit 1fb8d4
 * AddScopedPolicyIDAce
Packit 1fb8d4
 * AdjustTokenGroups
Packit 1fb8d4
 * AdjustTokenPrivileges
Packit 1fb8d4
 * AllocateAndInitializeSid
Packit 1fb8d4
 * AllocateLocallyUniqueId
Packit 1fb8d4
 * AreAllAccessesGranted
Packit 1fb8d4
 * AreAnyAccessesGranted
Packit 1fb8d4
 * CheckTokenCapability
Packit 1fb8d4
 * CheckTokenMembership
Packit 1fb8d4
 * CheckTokenMembershipEx
Packit 1fb8d4
 * ConvertToAutoInheritPrivateObjectSecurity
Packit 1fb8d4
 * CopySid
Packit 1fb8d4
 * CreatePrivateObjectSecurity
Packit 1fb8d4
 * CreatePrivateObjectSecurityEx
Packit 1fb8d4
 * CreatePrivateObjectSecurityWithMultipleInheritance
Packit 1fb8d4
 * CreateRestrictedToken
Packit 1fb8d4
 * CreateWellKnownSid
Packit 1fb8d4
 * DeleteAce
Packit 1fb8d4
 * DestroyPrivateObjectSecurity
Packit 1fb8d4
 * DuplicateToken
Packit 1fb8d4
 * DuplicateTokenEx
Packit 1fb8d4
 * EqualDomainSid
Packit 1fb8d4
 * EqualPrefixSid
Packit 1fb8d4
 * EqualSid
Packit 1fb8d4
 * FindFirstFreeAce
Packit 1fb8d4
 * FreeSid
Packit 1fb8d4
 * GetAce
Packit 1fb8d4
 * GetAclInformation
Packit 1fb8d4
 * GetAppContainerAce
Packit 1fb8d4
 * GetCachedSigningLevel
Packit 1fb8d4
 * GetFileSecurityW
Packit 1fb8d4
 * GetKernelObjectSecurity
Packit 1fb8d4
 * GetLengthSid
Packit 1fb8d4
 * GetPrivateObjectSecurity
Packit 1fb8d4
 * GetSidIdentifierAuthority
Packit 1fb8d4
 * GetSidLengthRequired
Packit 1fb8d4
 * GetSidSubAuthority
Packit 1fb8d4
 * GetSidSubAuthorityCount
Packit 1fb8d4
 * GetTokenInformation
Packit 1fb8d4
 * GetWindowsAccountDomainSid
Packit 1fb8d4
 * ImpersonateAnonymousToken
Packit 1fb8d4
 * ImpersonateLoggedOnUser
Packit 1fb8d4
 * ImpersonateSelf
Packit 1fb8d4
 * InitializeAcl
Packit 1fb8d4
 * InitializeSid
Packit 1fb8d4
 * IsTokenRestricted
Packit 1fb8d4
 * IsValidAcl
Packit 1fb8d4
 * IsValidSid
Packit 1fb8d4
 * IsWellKnownSid
Packit 1fb8d4
 * MakeAbsoluteSD
Packit 1fb8d4
 * MakeSelfRelativeSD
Packit 1fb8d4
 * MapGenericMask
Packit 1fb8d4
 * ObjectCloseAuditAlarmW
Packit 1fb8d4
 * ObjectDeleteAuditAlarmW
Packit 1fb8d4
 * ObjectOpenAuditAlarmW
Packit 1fb8d4
 * ObjectPrivilegeAuditAlarmW
Packit 1fb8d4
 * PrivilegeCheck
Packit 1fb8d4
 * PrivilegedServiceAuditAlarmW
Packit 1fb8d4
 * QuerySecurityAccessMask
Packit 1fb8d4
 * RevertToSelf
Packit 1fb8d4
 * SetAclInformation
Packit 1fb8d4
 * SetCachedSigningLevel
Packit 1fb8d4
 * SetFileSecurityW
Packit 1fb8d4
 * SetKernelObjectSecurity
Packit 1fb8d4
 * SetPrivateObjectSecurity
Packit 1fb8d4
 * SetPrivateObjectSecurityEx
Packit 1fb8d4
 * SetSecurityAccessMask
Packit 1fb8d4
 * SetTokenInformation
Packit 1fb8d4
 */
Packit 1fb8d4
Packit 1fb8d4
#ifndef _WIN32
Packit 1fb8d4
Packit 1fb8d4
#include "security.h"
Packit 1fb8d4
Packit 1fb8d4
BOOL InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
DWORD GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR pSecurityDescriptor)
Packit 1fb8d4
{
Packit 1fb8d4
	return 0;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR pSecurityDescriptor,
Packit 1fb8d4
		PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR pSecurityDescriptor,
Packit 1fb8d4
		SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL* pDacl, LPBOOL lpbDaclDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bDaclPresent, PACL pDacl, BOOL bDaclDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pGroup, LPBOOL lpbGroupDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pGroup, BOOL bGroupDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pOwner, LPBOOL lpbOwnerDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pOwner, BOOL bOwnerDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
DWORD GetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl)
Packit 1fb8d4
{
Packit 1fb8d4
	return 0;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
DWORD SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl)
Packit 1fb8d4
{
Packit 1fb8d4
	return 0;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL* pSacl, LPBOOL lpbSaclDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
BOOL SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bSaclPresent, PACL pSacl, BOOL bSaclDefaulted)
Packit 1fb8d4
{
Packit 1fb8d4
	return TRUE;
Packit 1fb8d4
}
Packit 1fb8d4
Packit 1fb8d4
#endif
Packit 1fb8d4