RawBuffer CKMService::processControl(MessageBuffer &buffer) {
int command = 0;
- uid_t user = 0;
+ ClientID clientID;
ControlCommand cc;
Password newPass, oldPass;
Label smackLabel;
switch(cc) {
case ControlCommand::UNLOCK_USER_KEY:
- buffer.Deserialize(user, newPass);
- return m_logic->unlockUserKey(user, newPass);
+ buffer.Deserialize(clientID, newPass);
+ return m_logic->unlockUserKey(clientID, newPass);
case ControlCommand::LOCK_USER_KEY:
- buffer.Deserialize(user);
- return m_logic->lockUserKey(user);
+ buffer.Deserialize(clientID);
+ return m_logic->lockUserKey(clientID);
case ControlCommand::REMOVE_USER_DATA:
- buffer.Deserialize(user);
- return m_logic->removeUserData(user);
+ buffer.Deserialize(clientID);
+ return m_logic->removeUserData(clientID);
case ControlCommand::CHANGE_USER_PASSWORD:
- buffer.Deserialize(user, oldPass, newPass);
- return m_logic->changeUserPassword(user, oldPass, newPass);
+ buffer.Deserialize(clientID, oldPass, newPass);
+ return m_logic->changeUserPassword(clientID, oldPass, newPass);
case ControlCommand::RESET_USER_PASSWORD:
- buffer.Deserialize(user, newPass);
- return m_logic->resetUserPassword(user, newPass);
+ buffer.Deserialize(clientID, newPass);
+ return m_logic->resetUserPassword(clientID, newPass);
case ControlCommand::REMOVE_APP_DATA:
- buffer.Deserialize(smackLabel);
- return m_logic->removeApplicationData(smackLabel);
- case ControlCommand::UPDATE_CC_MODE:
- return m_logic->updateCCMode();
+ {
+ std::string zone;
+ buffer.Deserialize(zone, smackLabel);
+ return m_logic->removeApplicationData(zone, smackLabel);
+ }
case ControlCommand::SET_PERMISSION:
{
Name name;
Label accessorLabel;
PermissionMask permissionMask = 0;
- buffer.Deserialize(user, name, label, accessorLabel, permissionMask);
- Credentials cred = { user, label };
+ buffer.Deserialize(clientID, name, label, accessorLabel, permissionMask);
+ Credentials cred = { clientID, label };
return m_logic->setPermission(
cred,
command,
accessorLabel,
permissionMask);
}
+ case ControlCommand::UPDATE_CC_MODE:
+ return m_logic->updateCCMode();
default:
Throw(Exception::BrokenProtocol);
}
int tmpDataType = 0;
Name name;
Label label, accessorLabel;
- std::string user;
buffer.Deserialize(command);
buffer.Deserialize(msgID);
// So, to unlock user data when lock type is None, key-manager always try to unlock user data with null password.
// Even if the result is fail, it will be ignored.
Password nullPassword("");
- m_logic->unlockUserKey(cred.uid, nullPassword, false);
+ m_logic->unlockUserKey(cred.clientID, nullPassword, false);
LogDebug("Process storage. Command: " << command);