Replace usage of Ask User plugin with Privacy Deny Plugin 79/120879/6
authorRafal Krypa <r.krypa@samsung.com>
Fri, 31 Mar 2017 15:23:31 +0000 (17:23 +0200)
committerRafal Krypa <r.krypa@samsung.com>
Fri, 31 Mar 2017 15:46:32 +0000 (17:46 +0200)
Some legacy application does not support run-time popups correctly.
We need to replace run-time popups (ask about) with toast popup.
Toast popups are supported by Privacy Denied plugin.

Change-Id: I7ae8eebc0c23863d2618ed66238da0e5f395e944

packaging/security-manager.spec
src/common/config.cpp
src/common/cynara.cpp
src/common/include/config.h

index 03af5a7cc7bfebc225977fdd7abe11f8ec0d9e25..9e388adb26ae98e28d50b32e71a1844d0388f49c 100644 (file)
@@ -11,6 +11,7 @@ Source4:    libnss-security-manager.manifest
 Source5:    security-manager-tests.manifest
 Requires: security-manager-policy
 Requires: nether
+Requires: privacy-denied-plugins
 %if "%{build_type}" == "VALGRIND"
 Requires: valgrind
 %endif
@@ -75,6 +76,7 @@ Requires(post): security-manager = %{version}-%{release}
 Requires(post): cyad
 Requires(post): sqlite
 Requires(post): tizen-platform-config-tools
+Requires(post): privacy-denied-plugins
 
 %description policy
 Set of security rules that constitute security policy in the system
index 2f38867c6b40297ebd4f4ed1b61e3e50c1066b64..2a5e77d433f7182c2db28e85fde65a23fc6e29bf 100644 (file)
@@ -41,7 +41,10 @@ const std::string PRIVILEGE_SHM              = "http://tizen.org/privilege/inter
 const std::string APPS_LABELS_FILE = "apps-labels";
 const std::string SKEL_DIR = "/etc/skel";
 
-const std::string PRIVACY_POLICY_DESC = "Ask user";
+const std::string PRIVACY_POLICY_ALLOW = "Allow";
+const std::string PRIVACY_POLICY_DENY = "PRIVACY_DENY";
+const std::string PRIVACY_POLICY_ASK = "ASK_USER_LEGACY";
+
 #ifdef ASKUSER_ENABLED
 const bool IS_ASKUSER_ENABLED = true;
 #else
index 06b7fb21efe20fc94fe842b2460fc3f5959580cf..42742b52a082bf3e8d904f8b9e078998ec7be6d7 100644 (file)
@@ -336,11 +336,11 @@ void CynaraAdmin::updateAppPolicy(
     int askUserPolicy = static_cast<int>(CynaraAdminPolicy::Operation::Allow);
     if (Config::IS_ASKUSER_ENABLED) {
         try {
-            askUserPolicy = convertToPolicyType(Config::PRIVACY_POLICY_DESC);
+            askUserPolicy = convertToPolicyType(Config::PRIVACY_POLICY_ASK);
             askUserEnabled = true;
         } catch (const std::out_of_range&) {
             // Cynara doesn't know "Ask user"
-            LogDebug("Unknown policy level: " << Config::PRIVACY_POLICY_DESC);
+            LogDebug("Unknown policy level: " << Config::PRIVACY_POLICY_ASK);
         }
     }
 
@@ -433,11 +433,11 @@ void CynaraAdmin::userInit(uid_t uid, security_manager_user_type userType)
     bool askUserEnabled = false;
     if (Config::IS_ASKUSER_ENABLED) {
         try{
-            askUserPolicy = convertToPolicyType(Config::PRIVACY_POLICY_DESC);
+            askUserPolicy = convertToPolicyType(Config::PRIVACY_POLICY_ASK);
             askUserEnabled = true;
         } catch (const std::out_of_range&) {
             // Cynara doesn't know "Ask user"
-            LogDebug("Unknown policy level: " << Config::PRIVACY_POLICY_DESC);
+            LogDebug("Unknown policy level: " << Config::PRIVACY_POLICY_ASK);
         }
     }
 
index f8ac57a3d393975b5daa934b1fa330297e4ed5f7..58b1c736b1f7aaf98abc0e8eb7294e9db9e39a9a 100644 (file)
@@ -47,8 +47,14 @@ extern const std::string APPS_LABELS_FILE;
 
 extern const std::string SKEL_DIR;
 
-/* Ask-user policy description */
-extern const std::string PRIVACY_POLICY_DESC;
+/* Allowed privacy policy description */
+extern const std::string PRIVACY_POLICY_ALLOW;
+
+/* Denied privacy policy description */
+extern const std::string PRIVACY_POLICY_DENY;
+
+/* Ask-user privacy policy description */
+extern const std::string PRIVACY_POLICY_ASK;
 
 /* true if privacy-related privileges should result in UI-popup question*/
 extern const bool IS_ASKUSER_ENABLED;