cryptomgmtlibs/securitycommonutils/inc/securityutils.h
author savpatil@2INL09984
Thu, 08 Oct 2009 14:59:39 +0530
changeset 11 9d767430696e
parent 8 35751d3474b7
child 15 da2ae96f639b
permissions -rw-r--r--
Merged in changes from the tip of RCL_1 branch which includes fixes for Bug 284, Bug 383, Bug 287. These were wiped out from when the S^3 code drop came in.

/*
* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of the License "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: 
* Includes APIs for common security checks
*
*/


/**
 @file
 @internalTechnology
*/

#ifndef SECURITYUTILS_H
#define SECURITYUTILS_H

#include <e32base.h>

namespace SecCommonUtils
{	
	/**
	 Returns a set of capabilities required for doing a file modification. 
	 This function is useful for cases where an FS operation is performed by a higher-trust process on behalf of a lower-trust process, 
	 and the higher-trust process wants to verify whether the operation is legal.
	 Please note that this function returns TCB as required for paths with relative indirections (".."), as well as paths with wild cards.
	 
	 @param aFileName			FileName, for which the client is verified
	 @param aClientSid			SID of the client requesting the file modification
	 @return					Set of capabilities. If a process has any of these, it can have modification access
	 */
	IMPORT_C TCapabilitySet FileModificationRequiredCapabilitiesL(const TDesC& aFileName, TSecureId aClientSid);
}

#endif /* SECURITYUTILS_H*/