Commit graph

27 commits

Author SHA1 Message Date
San Mehat
3bb6020e46 vold: Stage the mounting of media to hide the ASEC imagefile directory
In order to protect the '/android_secure' directory on VFAT removable media
from being mucked with by 3rd party applications on the device, we hide the
directory with a read-only, zero-sized tmpfs mounted on-top. A reference to the
hidden directory is kept by a bind-mount which is mounted at a location which
only root can access.

Staging consists of:
  1. Mount checked media at a secure location (/mnt/secure/staging)
  2. Ensure /android_secure exists on the media, (creating if it doesnt)
  3. Bind-mount /mnt/secure/staging/android_secure -> /mnt/secure/asec
     (where only root can access it)
  4. Mount an RDONLY zero-sized tmpfs over /mnt/secure/staging/android_secure
  5. Atomically move /mnt/secure/staging to the publicly accessable storage
     directory (/mnt/sdcard)

Signed-off-by: San Mehat <san@google.com>
2010-02-19 18:14:36 -08:00
San Mehat
4ba8948dc1 vold: Add 'force' option to anything that can cause an unmount
Signed-off-by: San Mehat <san@google.com>
2010-02-18 11:48:49 -08:00
San Mehat
d31e380bd9 vold2: Don't allow containers < 1mb, and clean up some logging
Signed-off-by: San Mehat <san@google.com>
2010-02-18 11:48:49 -08:00
San Mehat
586536c60b vold: Refactor Processkiller and add command to return users of a mount point
Signed-off-by: San Mehat <san@google.com>
2010-02-16 17:12:00 -08:00
San Mehat
8c940ef7db vold: Fix devmapper/ptmx fd leak, and give asec unmount more time
Signed-off-by: San Mehat <san@google.com>
2010-02-13 18:59:48 -08:00
San Mehat
b9aed74b14 vold: Fix a few bugs
- share command was taking wrong arguments
 - shared command was returning two termination codes
 - Force FAT32 cluster size to 4k when formatting
Signed-off-by: San Mehat <san@google.com>
2010-02-04 15:07:01 -08:00
San Mehat
f5c6198096 vold: Silly rabbit, don't use unlink() when you mean't rmdir()
Signed-off-by: San Mehat <san@google.com>
2010-02-03 11:04:46 -08:00
San Mehat
eba65e9d43 vold: Bloat reduction
Signed-off-by: San Mehat <san@google.com>
2010-02-02 08:03:50 -08:00
San Mehat
048b0801fc vold: Add support for renaming secure containers
Signed-off-by: San Mehat <san@google.com>
2010-01-23 08:17:06 -08:00
San Mehat
68f8ebdb24 vold2: update some debugging
Signed-off-by: San Mehat <san@google.com>
2010-01-23 07:23:59 -08:00
San Mehat
a4dc3b15b7 vold: Don't fail to return path if volume isn't mounted
Signed-off-by: San Mehat <san@google.com>
2010-01-22 14:48:31 -08:00
San Mehat
88705166ab vold: Unmount secure containers when the underlying media is removed.
Signed-off-by: San Mehat <san@google.com>
2010-01-15 09:26:28 -08:00
San Mehat
0586d54053 vold2: Fix issue with destroying / unmounting asec
Signed-off-by: San Mehat <san@google.com>
2010-01-12 15:38:59 -08:00
San Mehat
8b8f71b1d7 vold: Internally use sector counts for asec lengths
Signed-off-by: San Mehat <san@google.com>
2010-01-11 09:17:25 -08:00
San Mehat
b78a32c1d5 vold: Add encrypted ASEC support via devmapper
- Supports up to 4096 containers
- Keys are now implemented - specifying a key of 'none' means no encryption.
  Otherwise, the key must be a string of 32 characters

Signed-off-by: San Mehat <san@google.com>
2010-01-11 08:12:52 -08:00
San Mehat
8da6bcb006 vold: Increase max supported loop devices to 255
Signed-off-by: San Mehat <san@google.com>
2010-01-09 12:24:05 -08:00
San Mehat
23969931fa vold: Use process-killer when unmounting asec containers
Signed-off-by: San Mehat <san@google.com>
2010-01-09 07:08:06 -08:00
San Mehat
cff5ec3d36 vold: Temporarily disable asec mountpoint permissions
Signed-off-by: San Mehat <san@google.com>
2010-01-08 12:31:44 -08:00
San Mehat
eb13a90bb9 vold: Don't freak out if an asec mountpoint already exists
Signed-off-by: San Mehat <san@google.com>
2010-01-07 12:15:00 -08:00
San Mehat
fff0b47998 vold2: Enable support for custom mount perm masks and wire to asec
Signed-off-by: San Mehat <san@google.com>
2010-01-06 19:19:46 -08:00
San Mehat
a19b250bd2 vold2: Initial support for Android Secure External Caches
Signed-off-by: San Mehat <san@google.com>
2010-01-06 10:55:29 -08:00
San Mehat
0cde53ce7b vold2: Manually bootstrap the ums switch since switch kernel uevents are broken
Signed-off-by: San Mehat <san@google.com>
2010-01-01 10:57:33 -08:00
San Mehat
a2677e4ad0 vold2: Get mounting/unmounting/formatting/sharing working
Signed-off-by: San Mehat <san@google.com>
2009-12-19 09:54:42 -08:00
San Mehat
49e2bce5b7 vold2: Wire up more of the mount function
Signed-off-by: San Mehat <san@android.com>
2009-10-12 16:29:01 -07:00
San Mehat
ae10b91044 vold2: Rename DeviceVolume -> DirectVolume
Signed-off-by: San Mehat <san@android.com>
2009-10-12 15:03:15 -07:00
San Mehat
fd7f587512 vold2: Refactor the netlink event handling and better define how partitions/disks are handled
Signed-off-by: San Mehat <san@android.com>
2009-10-12 15:02:58 -07:00
San Mehat
f1b736bc56 system: vold2: Initial skeleton for vold2.
Let there be light.

Signed-off-by: San Mehat <san@android.com>
2009-10-10 17:57:51 -07:00