persistentstorage/sql/SRC/Server/SqlSrvDbSysSettings.cpp
branchRCL_3
changeset 15 fcc16690f446
parent 11 211563e4b919
child 23 26645d81f48d
equal deleted inserted replaced
14:04ec7606545c 15:fcc16690f446
   242 			case KDefaultObjType:
   242 			case KDefaultObjType:
   243 				if(defaultPolicySet)
   243 				if(defaultPolicySet)
   244 					{
   244 					{
   245 					__SQLLEAVE(KErrGeneral);//two "default policy" records in the table
   245 					__SQLLEAVE(KErrGeneral);//two "default policy" records in the table
   246 					}
   246 					}
   247 				StoreDefaultSecurityPolicyL(aSecurityPolicyCon, policy, dbPolicySetFlag);
   247 				StoreDefaultSecurityPolicy(aSecurityPolicyCon, policy, dbPolicySetFlag);
   248 				defaultPolicySet = ETrue;
   248 				defaultPolicySet = ETrue;
   249 				break;
   249 				break;
   250 			case KDbObjType:
   250 			case KDbObjType:
   251 				StoreDbSecurityPolicyL(aSecurityPolicyCon, policyType, policy, dbPolicySetFlag);
   251 				StoreDbSecurityPolicyL(aSecurityPolicyCon, policyType, policy, dbPolicySetFlag);
   252 				break;
   252 				break;
   889 
   889 
   890 @param aSecurityPolicyCon Security policies container.
   890 @param aSecurityPolicyCon Security policies container.
   891 @param aPolicy Default security policy object
   891 @param aPolicy Default security policy object
   892 @param aDbPolicySetFlag Bit flag. Keeps information which database security policies are set and which aren't.
   892 @param aDbPolicySetFlag Bit flag. Keeps information which database security policies are set and which aren't.
   893 
   893 
   894 @leave See CSqlSecurityPolicy::SetDbPolicy() return values.
       
   895 @see CSqlSecurityPolicy::SetDbPolicy()
   894 @see CSqlSecurityPolicy::SetDbPolicy()
   896 */
   895 */
   897 void TSqlDbSysSettings::StoreDefaultSecurityPolicyL(CSqlSecurityPolicy& aSecurityPolicyCon, 
   896 void TSqlDbSysSettings::StoreDefaultSecurityPolicy(CSqlSecurityPolicy& aSecurityPolicyCon, 
   898 													const TSecurityPolicy& aPolicy, TInt aDbPolicySetFlag)
   897 												   const TSecurityPolicy& aPolicy, TInt aDbPolicySetFlag)
   899 	{
   898 	{
   900 	aSecurityPolicyCon.SetDefaultPolicy(aPolicy);
   899 	aSecurityPolicyCon.SetDefaultPolicy(aPolicy);
   901 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::ESchemaPolicy)))
   900 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::ESchemaPolicy)))
   902 		{
   901 		{
   903 		__SQLLEAVE_IF_ERROR(aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::ESchemaPolicy, aPolicy));
   902 		aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::ESchemaPolicy, aPolicy);
   904 		}
   903 		}
   905 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::EReadPolicy)))
   904 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::EReadPolicy)))
   906 		{
   905 		{
   907 		__SQLLEAVE_IF_ERROR(aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::EReadPolicy, aPolicy));
   906 		aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::EReadPolicy, aPolicy);
   908 		}
   907 		}
   909 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::EWritePolicy)))
   908 	if(!(aDbPolicySetFlag & (1 << RSqlSecurityPolicy::EWritePolicy)))
   910 		{
   909 		{
   911 		__SQLLEAVE_IF_ERROR(aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::EWritePolicy, aPolicy));
   910 		aSecurityPolicyCon.SetDbPolicy(RSqlSecurityPolicy::EWritePolicy, aPolicy);
   912 		}
   911 		}
   913 	}
   912 	}
   914 
   913 
   915 /**
   914 /**
   916 Stores a database security policy into aSecurityPolicyCon container.
   915 Stores a database security policy into aSecurityPolicyCon container.
   934 		}
   933 		}
   935 	if(aDbPolicySetFlag & (1 << aPolicyType))
   934 	if(aDbPolicySetFlag & (1 << aPolicyType))
   936 		{
   935 		{
   937 		__SQLLEAVE(KErrGeneral);
   936 		__SQLLEAVE(KErrGeneral);
   938 		}
   937 		}
   939 	__SQLLEAVE_IF_ERROR(aSecurityPolicyCon.SetDbPolicy(static_cast <RSqlSecurityPolicy::TPolicyType> (aPolicyType), aPolicy));
   938 	aSecurityPolicyCon.SetDbPolicy(static_cast <RSqlSecurityPolicy::TPolicyType> (aPolicyType), aPolicy);
   940 	aDbPolicySetFlag |= (1 << aPolicyType);
   939 	aDbPolicySetFlag |= (1 << aPolicyType);
   941 	}
   940 	}
   942 
   941 
   943 /**
   942 /**
   944 Stores a database object security policy into aSecurityPolicyCon container.
   943 Stores a database object security policy into aSecurityPolicyCon container.