Commit graph

79 commits

Author SHA1 Message Date
Jean-Baptiste Queru
09f774b7d3 Merge changes Ic8e18e61,I62c78eb8
* changes:
  vold: fix an offset one bug that makes partition 4 unusable
  vold: set state back to idle on formatting error
2010-11-17 18:24:33 -08:00
Chih-Wei Huang
def8f31683 vold: fix an offset one bug that makes partition 4 unusable
Change-Id: Ic8e18e6191ad7ee33162e36060b57a6802cf0883
2010-11-17 18:53:09 +08:00
Chih-Wei Huang
64382de1f9 vold: set state back to idle on formatting error
On formatting error due to some reasons, the state is left at
Formatting, therefore the user is unable to mount the sdcard
again. The patch sets the state to Idle no matter formatting
error or not.

Change-Id: I62c78eb8299cc397ee5cc442890f8b3dbf09425c
2010-11-16 13:27:36 +08:00
Ethan
75a3e1a95a VOLD - make volume daemon to handle state change from shared to no_media
When volume state changed from shared to no_media,
    volume is not properly unshared.

Change-Id: I0117d67da95440d982275746a166ef6f4ac1c0e2
Signed-off-by: Ethan <ethan.too@gmail.com>
2010-08-30 09:07:59 -07:00
Jean-Baptiste Queru
826bec79ea Merge "vold: remove unnecessary code from VolumeManager::unshareVolume()" 2010-07-29 11:21:44 -07:00
Seth Forshee
b2b3d2cd34 vold: remove unnecessary code from VolumeManager::unshareVolume()
Signed-off-by: Seth Forshee <seth.forshee@garmin.com>
2010-07-23 03:31:57 -05:00
Bruce Beare
d766090b7a Avoid array overrun. We can now mount the /sdcard partition on our boot sdcards
Change-Id: I6e9db8c55db49b4aa61dd40cd59495f55e5b3368
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
2010-07-22 13:30:11 -07:00
San Mehat
1a06edaf4d vold: Ensure we cleanup secure containers on card removal.
Fixes bug: http://b/issue?id=2567572

Note: The framework will still likely restart since the system_server
is holding references to assets on the card which are mmaped, but
at least now storage will be available when a new card is re-inserted.

Change-Id: I4e195c0c666426b93da47198fa826a6f58d855a9
Signed-off-by: San Mehat <san@google.com>
2010-04-15 12:59:15 -07:00
San Mehat
97ac40e4e6 vold: Switch from LOG -> SLOG
Change-Id: I48ee8bd90b47f5845f069cdf4d1b8ba6ecdb1b39
Signed-off-by: San Mehat <san@google.com>
2010-03-25 08:02:28 -07:00
Kenny Root
da62e7c002 Revert "Prevent null pointer deref in DirectVolume"
This reverts commit a9f423dd7e.
2010-03-24 20:18:00 -07:00
Kenny Root
a9f423dd7e Prevent null pointer deref in DirectVolume
There's a possibility that if something were messed up a call to
NetlinkEvent::findParam could return a NULL. Passing NULL as the
argument into atoi() would cause a null pointer dereference.

Change-Id: Ib071afbbe2adc341108c245ffa596cc8730bd8fd
2010-03-24 15:39:08 -07:00
San Mehat
88ac2c0653 vold: asec path cmd now returns OpFailedStorageNotFound if id doesn't exist
Change-Id: Icbe3de7c28505f7496c8f8edea126c7b616de475
Signed-off-by: San Mehat <san@google.com>
2010-03-23 11:15:58 -07:00
San Mehat
96597e8b84 vold: Add mounted filesystems to dump cmd
Change-Id: If025e7ee10a79ff089920a6d0c1a52358b2d2c22
Signed-off-by: San Mehat <san@google.com>
2010-03-17 09:50:54 -07:00
Kenny Root
7b18a7b36f vold: Convert to use OpenSSL MD5 API
Change-Id: I9b84370fa9a98464c211ebe8983be8dbe9dd7ccd
2010-03-15 14:39:40 -07:00
San Mehat
befd59c152 vold: remove some dead code
Change-Id: Iaeb5d3334ec22ed31da9734bb8d7cd17e6a40eaf
Signed-off-by: San Mehat <san@google.com>
2010-03-15 10:28:21 -07:00
San Mehat
cb4dac8a52 vold: Remove autorun.inf at mount/unmount time if it exists
Change-Id: Ia57da8ee177453a601a23d965c2b4f16b6de46e5
Signed-off-by: San Mehat <san@google.com>
2010-03-14 13:41:54 -07:00
San Mehat
57df7bf339 vold: Fix argument validation for volume commands
Change-Id: I74aa63ff9f9bc32bd871e6c53ab50b6baf79e650
Signed-off-by: San Mehat <san@google.com>
2010-03-14 13:41:27 -07:00
San Mehat
d9a4e35861 vold: Bugfixes & cleanups
- Fix issue where container-names > 64 bytes were getting truncated in the
    kernel. lo_name is only 64 bytes in length, so we now hash the container
    id via md5
  - Add 'dump' command to dump loop and devicemapper status
  - Add 'debug' command to enable more detailed logging at runtime
  - Log vold IPC arguments (minus encryption keys)
  - Fix premature return from Loop::lookupActive() and friends

Change-Id: I0e833261a445ce9dc1a8187e5501d27daba1ca76
Signed-off-by: San Mehat <san@google.com>
2010-03-13 16:42:19 -08:00
San Mehat
2a5b8ce09b vold: Switch to using libdiskconfig for partition setup.
Also handles an issue where NPARTS=0 on a disk change uevent

Change-Id: I77c56f177dc65df91468bbd7d5fe1889db414d7a
Signed-off-by: San Mehat <san@google.com>
2010-03-10 15:18:41 -08:00
Jean-Baptiste Queru
d071596fd9 Add an empty CleanSpec.mk
Change-Id: Ied5f7eddd18adb38699c8a034a78ff9de4aab8de
2010-03-08 18:05:25 -08:00
San Mehat
fcf24fe62f vold: Add a versioned superblock to secure containers.
Add an un-encrypted superblock to the end of a secure container to
help identify the crypto cipher used. This is required in order to
provide some semblence of versioning, in case we have cause to
change the crypto type on an update - say for example switching
from software to hardware encryption, or from 128 -> a zillion
bit keys.

NOTE: This format is incompatible with previous secure containers.
After this change they will no longer be mountable.

Signed-off-by: San Mehat <san@google.com>
2010-03-03 12:40:34 -08:00
San Mehat
2350c44ff3 vold: Add support for xwarp
Signed-off-by: San Mehat <san@google.com>
2010-03-02 13:17:02 -08:00
San Mehat
f1b07fb5e3 vold: Don't bail out on init failure & bump version number
Signed-off-by: San Mehat <san@google.com>
2010-03-02 13:16:33 -08:00
San Mehat
a1091cb0c4 vold: Allow creation of a container with no filesystem
Signed-off-by: San Mehat <san@google.com>
2010-02-28 20:17:20 -08:00
San Mehat
55013f7131 vold: Fix uninitialized mountpoint bug
Signed-off-by: San Mehat <san@google.com>
2010-02-24 12:12:34 -08:00
San Mehat
12f4b89046 vold: Retry rmdir of asec mount point
Signed-off-by: San Mehat <san@google.com>
2010-02-24 11:43:22 -08:00
San Mehat
96956ed0e2 vold: Prohibit container rename when dst container is mounted
Signed-off-by: San Mehat <san@google.com>
2010-02-24 08:42:51 -08:00
San Mehat
0e382532f3 vold: fix infinite loop when failing to unmount a busy container in unmountVolume()
Signed-off-by: San Mehat <san@google.com>
2010-02-24 08:25:55 -08:00
San Mehat
52c2ccb6d2 vold: Make asec sdcard dir a hidden dir
Signed-off-by: San Mehat <san@google.com>
2010-02-23 18:26:13 -08:00
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
8f2875b297 vold: Clean up asec command response and add support for 'StorageBusy'
Signed-off-by: San Mehat <san@google.com>
2010-02-18 11:48:50 -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
Kenny Root
b3b4318ab8 Check length of filenames before strcat
Just in case someone tries to set up a series of links to trick us, do a
quick sanity check on the total length of the strings we're about to
concatenate.

Change-Id: Iba9617008dbc1e93e1907393052caf1e52fbe312
2010-02-18 09:35:35 -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
Jean-Baptiste Queru
c6fc646af4 am 4468682c: Merge from open-source master
Merge commit '4468682c7035d431c6154ab298c5ce0f9e2350f8'

* commit '4468682c7035d431c6154ab298c5ce0f9e2350f8':
  new project, first commit
2010-02-11 12:20:09 -08:00
Jean-Baptiste Queru
4468682c70 Merge from open-source master 2010-02-11 11:03:05 -08:00
San Mehat
3b9b8e8308 vold: Fix format argument bug
Signed-off-by: San Mehat <san@google.com>
2010-02-08 15:51:50 -08:00
San Mehat
62e5dd245b vold: Reduce logspam and add 250ms delay before first unmount attempt
Signed-off-by: San Mehat <san@google.com>
2010-02-06 09:53:22 -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
2b22552f9a vold: Fix share status argument off by one
Signed-off-by: San Mehat <san@google.com>
2010-02-03 10:26:40 -08:00
San Mehat
fbe33b4a40 vold2: Don't print error on unknown Netlink event
Signed-off-by: San Mehat <san@google.com>
2010-02-03 08:50:19 -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
5817821cf1 vold: Add command to unmount secure containers
Signed-off-by: San Mehat <san@google.com>
2010-01-18 06:19:40 -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