tizen 2.4 release
[framework/security/key-manager.git] / src / include / ckm / ckm-control.h
index 67250fe..15dfda9 100644 (file)
@@ -25,6 +25,7 @@
 #include <memory>
 
 #include <ckm/ckm-error.h>
+#include <ckm/ckm-client-info.h>
 #include <ckm/ckm-type.h>
 
 // Central Key Manager namespace
@@ -38,32 +39,32 @@ class KEY_MANAGER_API Control
 {
 public:
     // decrypt user key with password
-    virtual int unlockUserKey(uid_t user, const Password &password) = 0;
+    virtual int unlockUserKey(const ClientInfo &clientInfo, const Password &password) = 0;
 
     // remove user key from memory
-    virtual int lockUserKey(uid_t user) = 0;
+    virtual int lockUserKey(const ClientInfo &clientInfo) = 0;
 
     // remove user data from Store and erase key used for encryption
-    virtual int removeUserData(uid_t user) = 0;
+    virtual int removeUserData(const ClientInfo &clientInfo) = 0;
 
     // change password for user
-    virtual int changeUserPassword(uid_t user, const Password &oldPassword, const Password &newPassword) = 0;
+    virtual int changeUserPassword(const ClientInfo &clientInfo, const Password &oldPassword, const Password &newPassword) = 0;
 
     // This is work around for security-server api - resetPassword that may be called without passing oldPassword.
     // This api should not be supported on tizen 3.0
     // User must be already logged in and his DKEK is already loaded into memory in plain text form.
     // The service will use DKEK in plain text and encrypt it in encrypted form (using new password).
-    virtual int resetUserPassword(uid_t user, const Password &newPassword) = 0;
+    virtual int resetUserPassword(const ClientInfo &clientInfo, const Password &newPassword) = 0;
 
     // Required for tizen 2.3.
     // It will remove all application data owned by application identified
     // by smackLabel. This function will remove application data from unlocked
     // database only. This function may be used during application uninstallation.
-    virtual int removeApplicationData(const std::string &smackLabel) = 0;
+    virtual int removeApplicationData(const std::string &zone, const Label &smackLabel) = 0;
 
     virtual int updateCCMode() = 0;
 
-    virtual int setPermission(uid_t user,
+    virtual int setPermission(const ClientInfo &clientInfo,
                               const Alias &alias,
                               const Label &accessor,
                               PermissionMask permissionMask) = 0;