summaryrefslogtreecommitdiff
path: root/src/server/service/service.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/service/service.cpp')
-rw-r--r--src/server/service/service.cpp38
1 files changed, 18 insertions, 20 deletions
diff --git a/src/server/service/service.cpp b/src/server/service/service.cpp
index 7d4255c9..8fe311e5 100644
--- a/src/server/service/service.cpp
+++ b/src/server/service/service.cpp
@@ -144,9 +144,6 @@ bool Service::processOne(const ConnectionID &conn, MessageBuffer &buffer,
case SecurityModuleCall::PATHS_REGISTER:
processPathsRegister(buffer, send, creds);
break;
- case SecurityModuleCall::LABEL_FOR_PROCESS:
- processLabelForProcess(buffer, send);
- break;
case SecurityModuleCall::SHM_APP_NAME:
processShmAppName(buffer, send, creds);
break;
@@ -174,6 +171,9 @@ bool Service::processOne(const ConnectionID &conn, MessageBuffer &buffer,
LogDebug("call_type: SecurityModuleCall::GET_APP_MANIFEST_POLICY");
processAppGetManifestPolicy(buffer, send, creds);
break;
+ case SecurityModuleCall::GET_APP_INFO:
+ processGetAppInfo(buffer, send);
+ break;
default:
LogError("Invalid call: " << call_type_int);
Throw(ServiceException::InvalidAction);
@@ -425,17 +425,6 @@ void Service::processPathsRegister(MessageBuffer &recv, MessageBuffer &send, con
Serialization::Serialize(send, ret);
}
-void Service::processLabelForProcess(MessageBuffer &buffer, MessageBuffer &send)
-{
- std::string appName;
- Deserialization::Deserialize(buffer, appName);
- std::string label;
- int ret = serviceImpl.labelForProcess(appName, label);
- Serialization::Serialize(send, ret);
- if (ret == SECURITY_MANAGER_SUCCESS)
- Serialization::Serialize(send, label);
-}
-
void Service::processShmAppName(MessageBuffer &recv, MessageBuffer &send, const Credentials &creds)
{
std::string shmName, appName;
@@ -485,16 +474,14 @@ void Service::processGetClientPrivilegeLicense(MessageBuffer &buffer, MessageBuf
void Service::processAppSetupNamespace(MessageBuffer &buffer, MessageBuffer &send, const Credentials &creds)
{
- std::string appName, appProcessLabel;
+ std::string appProcessLabel;
std::vector<std::pair<std::string, bool>> privilegeStatusVector;
- bool enabledSharedRO;
- std::string pkgName;
- Deserialization::Deserialize(buffer, appName, appProcessLabel);
- int ret = serviceImpl.appSetupNamespace(creds, appName, appProcessLabel, privilegeStatusVector, enabledSharedRO, pkgName);
+ Deserialization::Deserialize(buffer, appProcessLabel);
+ int ret = serviceImpl.appSetupNamespace(creds, appProcessLabel, privilegeStatusVector);
Serialization::Serialize(send, ret);
if (ret == SECURITY_MANAGER_SUCCESS)
- Serialization::Serialize(send, privilegeStatusVector, pkgName, static_cast<int>(enabledSharedRO));
+ Serialization::Serialize(send, privilegeStatusVector);
}
void Service::processAppCleanNamespace(MessageBuffer &buffer, MessageBuffer &send, const Credentials &creds)
@@ -507,4 +494,15 @@ void Service::processAppCleanNamespace(MessageBuffer &buffer, MessageBuffer &sen
Serialization::Serialize(send, ret);
}
+void Service::processGetAppInfo(MessageBuffer &buffer, MessageBuffer &send)
+{
+ std::string appName, pkgName, label;
+ bool enabledSharedRO;
+ Deserialization::Deserialize(buffer, appName);
+ int ret = serviceImpl.getAppInfo(appName, label, pkgName, enabledSharedRO);
+ Serialization::Serialize(send, ret);
+ if (ret == SECURITY_MANAGER_SUCCESS)
+ Serialization::Serialize(send, label, pkgName, static_cast<int>(enabledSharedRO));
+}
+
} // namespace SecurityManager