New granular encryption commands for framework.
We now have separate methods for key creation/destruction and
unlocking/locking. Key unlocking can pass through an opaque token,
but it's left empty for now.
Extend user storage setup to also create system_ce and user_de
paths. Bring over some path generation logic from installd.
Use strong type checking on user arguments.
Bug: 22358539
Change-Id: I00ba15c7b10dd682640b3f082feade4fb7cbbb5d
diff --git a/Utils.h b/Utils.h
index 228727a..c88325a 100644
--- a/Utils.h
+++ b/Utils.h
@@ -18,6 +18,7 @@
#define ANDROID_VOLD_UTILS_H
#include <utils/Errors.h>
+#include <cutils/multiuser.h>
#include <selinux/selinux.h>
#include <vector>
@@ -93,6 +94,12 @@
std::string BuildKeyPath(const std::string& partGuid);
+std::string BuildDataSystemCePath(userid_t userid);
+
+std::string BuildDataPath(const char* volumeUuid);
+std::string BuildDataUserPath(const char* volumeUuid, userid_t userid);
+std::string BuildDataUserDePath(const char* volumeUuid, userid_t userid);
+
dev_t GetDevice(const std::string& path);
std::string DefaultFstabPath();