vold2: Don't allow containers < 1mb, and clean up some logging
Signed-off-by: San Mehat <san@google.com>
diff --git a/Devmapper.cpp b/Devmapper.cpp
index 800ee69..02f7d98 100644
--- a/Devmapper.cpp
+++ b/Devmapper.cpp
@@ -71,7 +71,6 @@
unsigned minor = (io->dev & 0xff) | ((io->dev >> 12) & 0xfff00);
free(buffer);
- LOGD("Newly created devmapper instance minor = %d\n", minor);
snprintf(ubuffer, len, "/dev/block/dm-%u", minor);
return 0;
}
@@ -128,7 +127,6 @@
}
unsigned minor = (io->dev & 0xff) | ((io->dev >> 12) & 0xfff00);
- LOGD("Newly created devmapper instance minor = %d\n", minor);
snprintf(ubuffer, len, "/dev/block/dm-%u", minor);
// Load the table
diff --git a/Loop.cpp b/Loop.cpp
index a54d73e..5e11ee2 100644
--- a/Loop.cpp
+++ b/Loop.cpp
@@ -184,7 +184,7 @@
int Loop::createImageFile(const char *file, unsigned int numSectors) {
int fd;
- LOGD("Creating ASEC image file %s (%u sectors)", file, numSectors);
+ LOGD("Creating image file %s (%u sectors)", file, numSectors);
if ((fd = creat(file, 0600)) < 0) {
LOGE("Error creating imagefile (%s)", strerror(errno));
diff --git a/VolumeManager.cpp b/VolumeManager.cpp
index b21a36e..251e11c 100644
--- a/VolumeManager.cpp
+++ b/VolumeManager.cpp
@@ -171,6 +171,12 @@
int VolumeManager::createAsec(const char *id, unsigned int numSectors,
const char *fstype, const char *key, int ownerUid) {
+ if (numSectors < ((1024*1024)/512)) {
+ LOGE("Invalid container size specified (%d sectors)", numSectors);
+ errno = EINVAL;
+ return -1;
+ }
+
mkdir("/sdcard/android_secure", 0777);
if (lookupVolume(id)) {