Commit 5817821c authored by San Mehat's avatar San Mehat
Browse files

vold: Add command to unmount secure containers

Signed-off-by: default avatarSan Mehat <san@google.com>
parent 88705166
......@@ -45,6 +45,7 @@ CommandListener::CommandListener() :
registerCmd(new FinalizeAsecCmd());
registerCmd(new DestroyAsecCmd());
registerCmd(new MountAsecCmd());
registerCmd(new UnmountAsecCmd());
registerCmd(new ListAsecCmd());
registerCmd(new AsecPathCmd());
}
......@@ -254,6 +255,26 @@ int CommandListener::MountAsecCmd::runCommand(SocketClient *cli,
return 0;
}
CommandListener::UnmountAsecCmd::UnmountAsecCmd() :
VoldCommand("unmount_asec") {
}
int CommandListener::UnmountAsecCmd::runCommand(SocketClient *cli,
int argc, char **argv) {
if (argc != 2) {
cli->sendMsg(ResponseCode::CommandSyntaxError,
"Usage: unmount_asec <namespace-id>", false);
return 0;
}
if (VolumeManager::Instance()->unmountAsec(argv[1])) {
cli->sendMsg(ResponseCode::OperationFailed, "Unmount failed", true);
} else {
cli->sendMsg(ResponseCode::CommandOkay, "Unmount succeeded", false);
}
return 0;
}
CommandListener::ListAsecCmd::ListAsecCmd() :
VoldCommand("list_asec") {
......
......@@ -111,6 +111,13 @@ private:
int runCommand(SocketClient *c, int argc, char ** argv);
};
class UnmountAsecCmd : public VoldCommand {
public:
UnmountAsecCmd();
virtual ~UnmountAsecCmd() {}
int runCommand(SocketClient *c, int argc, char ** argv);
};
class ListAsecCmd : public VoldCommand {
public:
ListAsecCmd();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment