Encrypted File Systems Project. Installer modifications.

Started to modify isntaller for data redirection to a secure location.
This commit is contained in:
Oscar Montemayor
2009-11-18 10:14:20 -08:00
parent 579d418db0
commit a8529f6867
13 changed files with 337 additions and 100 deletions

View File

@@ -166,11 +166,17 @@ class Installer {
}
}
public int install(String name, int uid, int gid) {
public int install(String name, boolean useEncryptedFilesystem, int uid, int gid) {
StringBuilder builder = new StringBuilder("install");
builder.append(' ');
builder.append(name);
builder.append(' ');
if (useEncryptedFilesystem) {
builder.append('1');
} else {
builder.append('0');
}
builder.append(' ');
builder.append(uid);
builder.append(' ');
builder.append(gid);
@@ -203,24 +209,42 @@ class Installer {
return execute(builder.toString());
}
public int remove(String name) {
public int remove(String name, boolean useEncryptedFilesystem) {
StringBuilder builder = new StringBuilder("remove");
builder.append(' ');
builder.append(name);
builder.append(' ');
if (useEncryptedFilesystem) {
builder.append('1');
} else {
builder.append('0');
}
return execute(builder.toString());
}
public int deleteCacheFiles(String name) {
public int deleteCacheFiles(String name, boolean useEncryptedFilesystem) {
StringBuilder builder = new StringBuilder("rmcache");
builder.append(' ');
builder.append(name);
builder.append(' ');
if (useEncryptedFilesystem) {
builder.append('1');
} else {
builder.append('0');
}
return execute(builder.toString());
}
public int clearUserData(String name) {
public int clearUserData(String name, boolean useEncryptedFilesystem) {
StringBuilder builder = new StringBuilder("rmuserdata");
builder.append(' ');
builder.append(name);
builder.append(' ');
if (useEncryptedFilesystem) {
builder.append('1');
} else {
builder.append('0');
}
return execute(builder.toString());
}
@@ -249,7 +273,7 @@ class Installer {
}
public int getSizeInfo(String pkgName, String apkPath,
String fwdLockApkPath, PackageStats pStats) {
String fwdLockApkPath, PackageStats pStats, boolean useEncryptedFilesystem) {
StringBuilder builder = new StringBuilder("getsize");
builder.append(' ');
builder.append(pkgName);
@@ -257,6 +281,12 @@ class Installer {
builder.append(apkPath);
builder.append(' ');
builder.append(fwdLockApkPath != null ? fwdLockApkPath : "!");
builder.append(' ');
if (useEncryptedFilesystem) {
builder.append('1');
} else {
builder.append('0');
}
String s = transaction(builder.toString());
String res[] = s.split(" ");