summaryrefslogtreecommitdiffstats
path: root/minadbd (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-05-08Fix build following adb change.Dan Albert1-5/+1
Change-Id: I2e0fb7e880e205b0bca324ff53ffdb5df9e34baf
2015-05-05Track adb_thread_create API change.Elliott Hughes1-4/+2
Change-Id: Ia3f30f3ba85c0246d4b667fb7723cfcdce299d4a
2015-05-02Fix mips64 minadbd_test build.Elliott Hughes1-1/+1
Looks like the mips64 linker isn't as good as the others at GCing unused stuff, which means it needs libcutils. Change-Id: I5f768e44514350fb81e5360351db3e9cc4201702 (cherry picked from commit dbb20c48633e63c7c244e84f3fea76e083e225d7)
2015-05-02Fix mips64 minadbd_test build.Elliott Hughes1-1/+1
Looks like the mips64 linker isn't as good as the others at GCing unused stuff, which means it needs libcutils. Change-Id: I5f768e44514350fb81e5360351db3e9cc4201702
2015-05-02Move minadb over to new API.Elliott Hughes2-13/+9
Change-Id: I889bcf2222245c7665287513669cae8831e37081 (cherry picked from commit 4039933c62f52dda06e6f355cf42ac9b392d0888)
2015-05-02Fix minadb_test build breakage.Elliott Hughes1-1/+1
Change-Id: I98bb900debb7d7dd57d3f8f84d605163ec192b03 (cherry picked from commit 3e7d82c621240bb80f9882c64377c4f5f3d97c7b)
2015-05-02Fix minadb_test build breakage.Elliott Hughes1-1/+1
Change-Id: I98bb900debb7d7dd57d3f8f84d605163ec192b03
2015-05-02Move minadb over to new API.Elliott Hughes2-14/+10
Change-Id: I889bcf2222245c7665287513669cae8831e37081
2015-04-28Stop using adb_strtok, and check argument validity.Elliott Hughes1-9/+10
(cherry picked from commit ba45ddf37cf4543143af6b2e27fc1214f3dbe892) Change-Id: Iba4f77f7db54ca0184437bd8ea96abfadabc72a3
2015-04-28Stop using adb_strtok, and check argument validity.Elliott Hughes1-9/+10
Change-Id: I323ffda71b82cc939aed446f9c9fb86ca78df153
2015-04-10Switch minadb over to C++.Elliott Hughes5-27/+12
Change-Id: I5afaf70caa590525627c676c88b445d3162de33e
2015-03-14Remove unused libutils references.Dan Albert2-2/+1
Change-Id: I22797643103ce1d4371198433ad9849cc83d3d7c
2015-02-27Add tests for read_block_adb.Dan Albert4-16/+124
These tests aren't completely representative in that they don't run in the recovery image. We might want to look in to adding a self-test option to the recovery UI. Until then, these can be run on a normal device (which is easier to do anyway). Bug: 19522788 Change-Id: Idb20feb55d10c62905c2480ab1b61a2e4b5f60d8
2015-02-26This read accidentally got turned in to a write.Dan Albert1-1/+1
Too many mechanical changes in a row... Bug: 19522788 Change-Id: Ic451792aab2700cdbdbb64529b99ff5f567918ad
2015-02-26Fix readx/writex names.Dan Albert1-4/+6
Change-Id: I9556960b8293ea0e81def8b73f88edadb68841e3
2015-02-25Fix LP64 build for minadbd.Narayan Kamath1-2/+2
services.c:57:12: error: format '%llu' expects argument of type 'long long unsigned int', but argument 2 has type 'uint64_t' [-Werror=format=] Change-Id: Ieba691bf9e7a30c8bb38f4e1f36e86b6ea3f8c80
2015-02-25Remove _(GNU|XOPEN)_SORUCE makefile cruft.Dan Albert1-2/+0
None of the functions needing these are used. Change-Id: Ibe3ca24d993788bf2f1108bac8417a7094ef386b
2015-02-25Fix build from implicit declaration.Dan Albert4-18/+23
Turn the warning on by default and turn on -Werror so this doesn't happen next time. Change-Id: Id65bf0cb63bbf0ff224655b425463ae2f55435df
2015-02-20Kill of most of the remainder of minadbd.Dan Albert6-1573/+7
I think everything left now is here to stay (services.c might get massaged in to libadbd if it gets refactored). Bug: 17626262 Change-Id: I01faf8b277a601a40e3a0f4c3b8206c97f1d2ce6
2015-02-19Move adb_main to its own file.Dan Albert3-30/+42
Change-Id: Ia5150e1ef8be5a8f2d2da0fdca9383e22218f4ac
2015-02-19Remove dead code.Dan Albert1-38/+0
This code doesn't exist in the normal adb, so it just makes it harder to diff the two. Change-Id: Ibb21b49bb9944c4245199536cbe88e8a107cf00d
2015-02-19Use headers from adb.Dan Albert6-660/+3
adb.h has diverged a bit, so that one will be more involved, but these three are all trivial, unimportant changes. Change-Id: Ief8474c1c2927d7e955adf04f887c76ab37077a6
2015-02-19Remove unused code.Dan Albert3-183/+0
Change-Id: Ie37734e75bc4d1e284dcb5dee4c0512021663dbd
2015-02-19Lose USB transport code to libadb.Dan Albert5-1469/+2
Bug: 17626262 Change-Id: If41031ba20a3a75fa510f155c654a482b47e409d
2015-02-18Add extern "C" to all the headers.Dan Albert6-0/+52
Change-Id: Idc249ff1b199b7c455f90092ff2c8a48b539faf4
2015-01-30Add missing includes.Elliott Hughes1-0/+1
Change-Id: I06ea08400efa511e627be37a4fd70fbdfadea2e6
2015-01-26Fix the v2 descriptor handling.Christopher Ferris1-11/+6
There was a misinterpretation of how the v2 header works. The flags in the header indicate what is in the rest of the structure. Bug: 19127803 Change-Id: I83fd93df1df196300a80ddeb3b49ca7851ffcfb8
2015-01-26adbd: Support for new f_fs descriptor formatBadhri Jagan Sridharan1-54/+107
The patch "[RFC] usb: gadget: f_fs: Add flags to descriptors block" marks the current usb_functionfs_descs_head format deprecated and introduces support for sending SuperSpeed descriptors. This CL makes adbd to send Descriptors in the new format. Adbd would fall back to the old format, if kernel is not able to recognize the new format. This is done to prevent adbd from breaking in the older versions of the kernel. Bug: 17394972 (cherry picked from commit b5b43043fa71f9cb620ddd02ec2bc98eced5a6ce) Change-Id: I5af9dc9d4f41ad47d678279054a648f69497b24e
2014-11-25Start losing code to libadb.Dan Albert2-698/+0
Bug: 17626262 Change-Id: I8ce7cff2b7789f39f35a4211d7120d072c05a863
2014-11-13kill HAVE_FORKEXECYabin Cui1-1/+1
Bug: 18317407 Change-Id: Idd4e0effa96752e2c0ca959728f80df4d2d34187
2014-10-28adbd: Support for new f_fs descriptor formatBadhri Jagan Sridharan1-54/+107
The patch "[RFC] usb: gadget: f_fs: Add flags to descriptors block" marks the current usb_functionfs_descs_head format deprecated and introduces support for sending SuperSpeed descriptors. This CL makes adbd to send Descriptors in the new format. Adbd would fall back to the old format, if kernel is not able to recognize the new format. This is done to prevent adbd from breaking in the older versions of the kernel. Bug: 17394972 Change-Id: I1acf684ef8a4dcc612ac20b5abe1e27b43901031 Signed-off-by: Badhri Jagan Sridharan <badhri@google.com>
2014-09-26Revert "Copy epoll(2) changes to minadb."Dan Albert1-4/+21
This reverts commit db8c959049d21fe63e48c270f1fc12b32a0cf0ec.
2014-09-23Copy epoll(2) changes to minadb.Elliott Hughes1-21/+4
Bug: 17588403 Change-Id: Ib3525824ff09330bd9d6f9e96d662e5a55a20ec2
2014-07-10refactor fuse sideloading codeDoug Zongker6-522/+76
Split the adb-specific portions (fetching a block from the adb host and closing the connections) out from the rest of the FUSE filesystem code, so that we can reuse the fuse stuff for installing off sdcards as well. Change-Id: I0ba385fd35999c5f5cad27842bc82024a264dd14
2014-07-02sideload without holding the whole package in RAMDoug Zongker6-48/+557
Implement a new method of sideloading over ADB that does not require the entire package to be held in RAM (useful for low-RAM devices and devices using block OTA where we'd rather have more RAM available for binary patching). We communicate with the host using a new adb service called "sideload-host", which makes the host act as a server, sending us different parts of the package file on request. We create a FUSE filesystem that creates a virtual file "/sideload/package.zip" that is backed by the ADB connection -- users see a normal file, but when they read from the file we're actually fetching the data from the adb host. This file is then passed to the verification and installation systems like any other. To prevent a malicious adb host implementation from serving different data to the verification and installation phases of sideloading, the FUSE filesystem verifies that the contents of the file don't change between reads -- every time we fetch a block from the host we compare its hash to the previous hash for that block (if it was read before) and cause the read to fail if it changes. One necessary change is that the minadbd started by recovery in sideload mode no longer drops its root privileges (they're needed to mount the FUSE filesystem). We rely on SELinux enforcement to restrict the set of things that can be accessed. Change-Id: Ida7dbd3b04c1d4e27a2779d88c1da0c7c81fb114
2014-03-14Recovery 64-bit compile issuesMark Salyzyn3-4/+5
Change-Id: I92d5abd1a628feab3b0246924fab7f97ba3b9d34
2014-02-06recovery: fix building with pointer-to-int errors turned onColin Cross1-2/+2
Use intptr_t/uintptr_t to cast between pointer and int to allow building with -Werror=pointer-to-int-cast and Werror=int-to-pointer-cast turned on. Cast to char* instead of unsigned int for pointer arithmetic. Change-Id: Ia862306fdcca53866b330e8cf726f3d62f2248a0
2014-01-24minadbd: remove dead codeColin Cross2-25/+0
Change-Id: Ia1f34a17ae582575f8cd3514ed7bc015b0a5006e
2014-01-17ADB sideload command not workDa Zhou3-11/+358
In kernel(3.10) USB ADB gadget driver is removed. Using Functionfs for USB adb gadget. Android recovery uses a stripped down version of adb command for sideload only. It's missing the ffs function support, so add the ffs support to allow sideload command to work b/12608946 Change-Id: I4ad024723dfc5bdb544548391f99637c390b171e Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
2013-03-01minadbd: remove unnecessary header files.Nick Kralevich1-2/+0
Change-Id: Iff2b53d9e63b279d0262cd2e9cfb11e0ca4d6b42
2013-01-09exit instead of return if sideload file creation failsEthan Yonker1-1/+1
A return here leaves adb sideload in a permanent loop. An exit is more appropriate for this error. Change-Id: I80fb8abae4f6378833aa75f9eaf7ec1acd44b274 Signed-off-by: Ethan Yonker <ethanayonker@gmail.com>
2012-03-20run minadbd as shell user, remove unused codeDoug Zongker8-1171/+37
Make minadbd drop its root privileges after initializing. We need to make the /tmp directory writable by the shell group so that it can drop the sideloaded file there.
2012-03-20remove unused code from minadbdDoug Zongker6-1157/+9
Change-Id: I2f192c67ef425a53a1dba65d3e0544c1d5a567bd
2012-03-20run minadbd as shell userDoug Zongker4-14/+28
Make minadbd drop its root privileges after initializing. We need to make the /tmp directory writable by the shell group so that it can drop the sideloaded file there. Change-Id: I67b292cf769383f0f67fb934e5a80d408a4c131d
2012-01-18support "sideload over ADB" modeDoug Zongker16-0/+5529
Rather than depending on the existence of some place to store a file that is accessible to users on an an unbootable device (eg, a physical sdcard, external USB drive, etc.), add support for sideloading packages sent to the device with adb. This change adds a "minimal adbd" which supports nothing but receiving a package over adb (with the "adb sideload" command) and storing it to a fixed filename in the /tmp ramdisk, from where it can be verified and sideloaded in the usual way. This should be leave available even on locked user-build devices. The user can select "apply package from ADB" from the recovery menu, which starts minimal-adb mode (shutting down any real adbd that may be running). Once minimal-adb has received a package it exits (restarting real adbd if appropriate) and then verification and installation of the received package proceeds. always initialize usb product, vendor, etc. for adb in recovery Set these values even on non-debuggable builds, so that the mini-adb now in recovery can work.
2012-01-10support "sideload over ADB" modeDoug Zongker16-0/+5529
Rather than depending on the existence of some place to store a file that is accessible to users on an an unbootable device (eg, a physical sdcard, external USB drive, etc.), add support for sideloading packages sent to the device with adb. This change adds a "minimal adbd" which supports nothing but receiving a package over adb (with the "adb sideload" command) and storing it to a fixed filename in the /tmp ramdisk, from where it can be verified and sideloaded in the usual way. This should be leave available even on locked user-build devices. The user can select "apply package from ADB" from the recovery menu, which starts minimal-adb mode (shutting down any real adbd that may be running). Once minimal-adb has received a package it exits (restarting real adbd if appropriate) and then verification and installation of the received package proceeds. Change-Id: I6fe13161ca064a98d06fa32104e1f432826582f5