persistentstorage/sql/SRC/Security/SqlSecurityImpl.cpp
branchRCL_3
changeset 15 fcc16690f446
parent 0 08ec8eefde2f
child 23 26645d81f48d
equal deleted inserted replaced
14:04ec7606545c 15:fcc16690f446
   177 /**
   177 /**
   178 @param aPolicyType Database security policy type: RSqlSecurityPolicy::ESchemaPolicy, 
   178 @param aPolicyType Database security policy type: RSqlSecurityPolicy::ESchemaPolicy, 
   179 				   RSqlSecurityPolicy::EReadPolicy, RSqlSecurityPolicy::EWritePolicy.
   179 				   RSqlSecurityPolicy::EReadPolicy, RSqlSecurityPolicy::EWritePolicy.
   180 @param aPolicy Security policy data used for setting the related database security policy.
   180 @param aPolicy Security policy data used for setting the related database security policy.
   181 
   181 
   182 @return KErrNone
       
   183 
       
   184 @panic SqlDb 4 In _DEBUG mode. Invalid policy type.
   182 @panic SqlDb 4 In _DEBUG mode. Invalid policy type.
   185 */
   183 */
   186 TInt CSqlSecurityPolicy::SetDbPolicy(RSqlSecurityPolicy::TPolicyType aPolicyType, const TSecurityPolicy& aPolicy)
   184 void CSqlSecurityPolicy::SetDbPolicy(RSqlSecurityPolicy::TPolicyType aPolicyType, const TSecurityPolicy& aPolicy)
   187 	{
   185 	{
   188 	const TInt KPolicyIndex = CSqlSecurityPolicy::PolicyType2Index(aPolicyType);
   186 	const TInt KPolicyIndex = CSqlSecurityPolicy::PolicyType2Index(aPolicyType);
   189 	__SQLASSERT((TUint)KPolicyIndex < EPolicyTypeCount, ESqlPanicBadArgument);
   187 	__SQLASSERT((TUint)KPolicyIndex < EPolicyTypeCount, ESqlPanicBadArgument);
   190 	RSqlBufFlat::TCell* begin = iBufFlat.Header();
   188 	RSqlBufFlat::TCell* begin = iBufFlat.Header();
   191 	__SQLASSERT(begin != NULL, ESqlPanicInternalError);
   189 	__SQLASSERT(begin != NULL, ESqlPanicInternalError);
   192 	CSqlSecurityPolicy::TPolicyItem* item = CSqlSecurityPolicy::PolicyItemPtr(begin, begin + CSqlSecurityPolicy::EDbPolicyIdx);
   190 	CSqlSecurityPolicy::TPolicyItem* item = CSqlSecurityPolicy::PolicyItemPtr(begin, begin + CSqlSecurityPolicy::EDbPolicyIdx);
   193 	__SQLASSERT(item != NULL, ESqlPanicInternalError);
   191 	__SQLASSERT(item != NULL, ESqlPanicInternalError);
   194 	//KPolicyIndex value is tested at the beginning of the function
   192 	//KPolicyIndex value is tested at the beginning of the function
   195 	//coverity[overrun-local]
   193 	//coverity[overrun-local]
   196 	item->iPolicy[KPolicyIndex] = aPolicy;
   194 	item->iPolicy[KPolicyIndex] = aPolicy;
   197 	return KErrNone;
       
   198 	}
   195 	}
   199 
   196 
   200 /**
   197 /**
   201 If there is no entry in the container for the object with aObjectName name, a new entry for this object will be 
   198 If there is no entry in the container for the object with aObjectName name, a new entry for this object will be 
   202 created and all object security policies will be initialized with the default security policy. aPolicyType object 
   199 created and all object security policies will be initialized with the default security policy. aPolicyType object