)]}' { "log": [ { "commit": "d7d0f7503456c3d275a49f90be35e03f02c51bbd", "tree": "9f4fb63bfba260f01ad92dc7d5e1aa793498e4a7", "parents": [ "22f5b98ee6852cb1f2698e09f1250b587e5b12f0" ], "author": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Wed Jul 15 14:13:06 2015 -0700" }, "committer": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Thu Jul 16 13:43:46 2015 -0700" }, "message": "Clean up LOG functions.\n\nFor fatal errors, use LOGE to show messages.\n\nBug: 22236461\nChange-Id: Ie2ce7ec769f4502d732fbb53fb7b303c0cf9ed68\n" }, { "commit": "485b63702c312bf47a1fd4821fde7dcade41e09d", "tree": "57d13940b2ca1bef9834f236323079dd1fbad7d5", "parents": [ "e93ab571675e6f71b2681f9a4ef37b59c86d3b56" ], "author": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Tue Jun 23 23:23:33 2015 -0700" }, "committer": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Mon Jul 13 23:25:46 2015 -0700" }, "message": "recovery: Switch applypatch/ and updater/ to cpp.\n\nMostly trivial changes to make cpp compiler happy.\n\nChange-Id: I1b0481465c67c3bbca35a839d0764190d84ff34e\n(cherry picked from commit ba9a42aa7e10686de186636fe9fecbf8c4cc7c19)\n" }, { "commit": "f267dee1cadba106eee373f7b1732bd4be9ebe13", "tree": "861988b9d20d5527ffb1ee7fa002f2f16492c5e4", "parents": [ "ea13fe233e8a95d9e5b69b131fbf840a60d1f04e" ], "author": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Tue Jun 23 12:31:02 2015 -0700" }, "committer": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Tue Jun 23 12:31:02 2015 -0700" }, "message": "Just use fstat in sysMapFile.\n\nAlso turn on -Werror and remove a dead function.\n\nChange-Id: I436f0a91c40e36db985190b3b98b0a4527cf0eeb\n" }, { "commit": "80e46e08de5f65702fa7f7cd3ef83f905d919bbc", "tree": "a49e149d6efdf165c92650ebd6d7f410ee63b4f6", "parents": [ "227069d77f90aa7965d4cd5ab4f4a5302194fc73" ], "author": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Wed Jun 03 10:49:29 2015 -0700" }, "committer": { "name": "Tao Bao", "email": "tbao@google.com", "time": "Wed Jun 03 11:30:03 2015 -0700" }, "message": "recovery: Switch to clang\n\nAnd a few trival fixes to suppress warnings.\n\nChange-Id: I38734b5f4434643e85feab25f4807b46a45d8d65\n" }, { "commit": "7bad7c4646ee8fd8d6e6ed0ffd3ddbb0c1b41a2f", "tree": "e2c357667b0e76e6fa5a43c7a7951c872c373e9c", "parents": [ "8c389e9c769c8632cf16c0794f1e84f49996077c" ], "author": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Tue Apr 28 17:24:24 2015 -0700" }, "committer": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Wed Apr 29 17:46:43 2015 -0700" }, "message": "Check all lseek calls succeed.\n\nAlso add missing TEMP_FAILURE_RETRYs on read, write, and lseek.\n\nBug: http://b/20625546\nChange-Id: I03b198e11c1921b35518ee2dd005a7cfcf4fd94b\n" }, { "commit": "9ad9d66f818fc9a86eacaac988b1ad72c6b27696", "tree": "31fac1003977733a1ca16406ac0515dc445874bd", "parents": [ "ca7bf53189c70ef0f687d54d772e5eaadc0b1c7c" ], "author": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Wed Apr 08 12:08:32 2015 -0700" }, "committer": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Wed Apr 08 12:08:32 2015 -0700" }, "message": "Remove a couple of unused inlines from minzip/Zip.h.\n\nChange-Id: I805883e3863673416898bdef39c5703ca33f18e0\n" }, { "commit": "9c0f5d6b348e37533bdcccf1166d6cbf1ca5c50b", "tree": "06fe7482daa63cd42c06466f5cab8a7c64949700", "parents": [ "670a0c6fe945f20ab00205ce241d4804e45e0150" ], "author": { "name": "Narayan Kamath", "email": "narayan@google.com", "time": "Mon Feb 23 14:09:31 2015 +0000" }, "committer": { "name": "Narayan Kamath", "email": "narayan@google.com", "time": "Fri Feb 27 12:58:16 2015 +0000" }, "message": "Remove more dead code from minzip.\n\nI\u0027ve added explanatory comments to mzExtractRecursive because\nthat function will live on as a utility even after we move the\nzip format related logic to libziparchive.\n\nbug: 19472796\n\n(cherry-picked from commit c9ccdfd7a42de08c47ab771b94dc5b9d1f957b95)\n\nChange-Id: I8b7fb6fa3eafb2e7ac080ef7a7eceb691b252d8a\n" }, { "commit": "6f58e899be728fc2ab3cf3902e52937ebd58e02d", "tree": "3a25aecea25432046d2fd56ebe26741514d4af80", "parents": [ "f9ee77ab52941e6f3be8e97fb0a150480ea8760a", "829d392a75f536861adfddefc21ec635f3460144" ], "author": { "name": "Narayan Kamath", "email": "narayan@google.com", "time": "Tue Feb 24 13:18:14 2015 +0000" }, "committer": { "name": "Android Git Automerger", "email": "android-git-automerger@android.com", "time": "Tue Feb 24 13:18:14 2015 +0000" }, "message": "am 829d392a: Merge \"Delete unused functions from minzip.\"\n\n* commit \u0027829d392a75f536861adfddefc21ec635f3460144\u0027:\n Delete unused functions from minzip.\n" }, { "commit": "3e700cff53c0fdd4de2a0f89ef7916f05a131351", "tree": "d6da1cdcb05a623f988e01fb590a006fbfeb2092", "parents": [ "2d1022250941873f8748e6a159d4e5bf976e511f" ], "author": { "name": "Narayan Kamath", "email": "narayan@google.com", "time": "Mon Feb 23 13:29:16 2015 +0000" }, "committer": { "name": "Narayan Kamath", "email": "narayan@google.com", "time": "Mon Feb 23 13:29:16 2015 +0000" }, "message": "Delete unused functions from minzip.\n\nThis is in preparation of replacing it with libziparchive and\nproviding shim wrappers.\n\nbug: 19472796\nChange-Id: I1f2fb59ee7a41434e794e4ed15b754aa2b74a11d\n" }, { "commit": "ec5c1c1e291062576925b80b532d36df118103f5", "tree": "a329cbb5c46df853065a18d54b5c2f24fdb22e2e", "parents": [ "42b09d255afdb47bc0546183cbc68e86147baaab", "99e084ca8012bc7af52ae2fb9e72ab7180177daf" ], "author": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Sun Feb 08 15:20:50 2015 +0000" }, "committer": { "name": "Android Git Automerger", "email": "android-git-automerger@android.com", "time": "Sun Feb 08 15:20:50 2015 +0000" }, "message": "am 99e084ca: Merge \"Remove dead/unused code and realign some of the comments to make it more cleaner and easier to read\"\n\n* commit \u002799e084ca8012bc7af52ae2fb9e72ab7180177daf\u0027:\n Remove dead/unused code and realign some of the comments to make it more cleaner and easier to read\n" }, { "commit": "4e8e93b6661f4de86c295b76fff82b8815266780", "tree": "e1c8501f94120da11578efef343b80679032a699", "parents": [ "6a0d2fbcaa1740da7bb0e7a0ef8280e8b7b9bb05" ], "author": { "name": "Nanik Tolaram", "email": "nanikjava@gmail.com", "time": "Sun Feb 08 22:31:14 2015 +1100" }, "committer": { "name": "Nanik Tolaram", "email": "nanikjava@gmail.com", "time": "Sun Feb 08 22:31:14 2015 +1100" }, "message": "Remove dead/unused code and realign some of the comments\nto make it more cleaner and easier to read\n\nChange-Id: If536d482c0ed645368084e76d8ec060f05d89137\nSigned-off-by: Nanik Tolaram \u003cnanikjava@gmail.com\u003e\n" }, { "commit": "042c3cd04ec3ef416019fa382cd5b1a942bd79e1", "tree": "8b0544483b3827351f406c5e987e2bf2641d9c68", "parents": [ "5ddf4293df45a051c7900eeb62fb5ec4950b6cb6" ], "author": { "name": "Michael Runge", "email": "mrunge@google.com", "time": "Tue Oct 28 19:49:57 2014 -0700" }, "committer": { "name": "Michael Runge", "email": "mrunge@google.com", "time": "Tue Oct 28 19:49:57 2014 -0700" }, "message": "Force sync files written by minzip.\n\nSome files appear to be missing their sync to disk.\n\nBug: 18145574\nChange-Id: Ic858624a4dd65bbfc54d30f3a13c607078270345\n" }, { "commit": "f5d9f891524862ba560650bd545668dc22622cdb", "tree": "cdb803102468ee0fb4e40317fc672543fd2bae05", "parents": [ "64e7fcd9255734e5b12cd50263563951b4e4664e" ], "author": { "name": "Michael Runge", "email": "mrunge@google.com", "time": "Tue May 06 16:54:42 2014 -0700" }, "committer": { "name": "Michael Runge", "email": "mrunge@google.com", "time": "Fri May 09 18:09:28 2014 +0000" }, "message": "Allow 0-byte files in full OTAs.\n\nCurrently, the writeProcessFunction fails when\nthere are zero bytes to write, potentially returning\nerrno from a previous operation, or hanging\nindefinitely while it waits for a \u003e0 result on a\nwrite of size 0. This happens when the output\nfile is intended to be zero bytes in size.\n\nChange-Id: Ib3cfcaf66d82942bc89e5f5c64697862403b38da\n" }, { "commit": "76b245c24c12feec2381c423de2f7ffe4b78d7f0", "tree": "bf975c860dfe50d1b38682f465a2ac96a5ec8f55", "parents": [ "679baa06b79e0c9100ce05fa0191928fc2a691fb" ], "author": { "name": "Mark Salyzyn", "email": "salyzyn@google.com", "time": "Mon Mar 17 15:35:52 2014 -0700" }, "committer": { "name": "Mark Salyzyn", "email": "salyzyn@google.com", "time": "Mon Mar 17 16:05:12 2014 -0700" }, "message": "minzip: 64 bit build issue\n\nRegression - verification and extraction on memory, not files\n\nBug: 12188746\nChange-Id: Ib6facc4aff6be3a31a7d184ef1c493fdd4012c21\n" }, { "commit": "a9300301ce0bddb6f46e1e1a7499c13b615713c6", "tree": "de91ee750f49aaf54aeb63751cb7cd9ba58804fa", "parents": [ "707d321a8745accf4660bf77e33f6acb9ce6b779" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Feb 10 12:35:19 2014 -0800" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Thu Feb 13 08:30:41 2014 -0800" }, "message": "add mzGetStoredEntry function\n\nmzGetStoredEntry gives you a pointer and address to the data of a zip\nentry, assuming that entry is stored rather than deflated.\n\nChange-Id: Ifb39777c98d1d50475ef7de419cf28935f5f9965\n" }, { "commit": "707d321a8745accf4660bf77e33f6acb9ce6b779", "tree": "a2f4f8069718c1f933e3b4e588bd88b6609de60c", "parents": [ "4068f6aff2f898c55e6f8f3e2c92eefbb9189524", "2739ed9628f72813d213b7a429c4c1b8dcebe5fc" ], "author": { "name": "Colin Cross", "email": "ccross@android.com", "time": "Thu Feb 06 03:07:48 2014 +0000" }, "committer": { "name": "Android Git Automerger", "email": "android-git-automerger@android.com", "time": "Thu Feb 06 03:07:48 2014 +0000" }, "message": "am 2739ed96: am a5d105e2: Merge \"recovery: fix building with pointer-to-int errors turned on\"\n\n* commit \u00272739ed9628f72813d213b7a429c4c1b8dcebe5fc\u0027:\n recovery: fix building with pointer-to-int errors turned on\n" }, { "commit": "92cdf9c37225c6f76b96c8f137896cd9e9015bbd", "tree": "dbf70c82b2e8d48e6d6515689b47cfe327f71b49", "parents": [ "f353207298ed14d0e6943353dd9788421a7537b8" ], "author": { "name": "Colin Cross", "email": "ccross@android.com", "time": "Wed Feb 05 17:30:31 2014 -0800" }, "committer": { "name": "Colin Cross", "email": "ccross@android.com", "time": "Wed Feb 05 17:34:45 2014 -0800" }, "message": "recovery: fix building with pointer-to-int errors turned on\n\nUse intptr_t/uintptr_t to cast between pointer and int to allow\nbuilding with -Werror\u003dpointer-to-int-cast and\nWerror\u003dint-to-pointer-cast turned on.\n\nCast to char* instead of unsigned int for pointer arithmetic.\n\nChange-Id: Ia862306fdcca53866b330e8cf726f3d62f2248a0\n" }, { "commit": "19a8e2463c31a97121c35b4666a8e6879fa7e338", "tree": "5ecf7ebd70ebcb712430f83ae78e9e3d625b271b", "parents": [ "76adfc5309936a07218ce53b5ab284d5746fa84c" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Tue Jan 21 09:25:41 2014 -0800" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Tue Jan 21 09:25:41 2014 -0800" }, "message": "log extra info for debugging\n\nMake recovery log its PID, and when we use a block map file, log how\nmany ranges it contains.\n\nChange-Id: I1b4299f8163af68a770b48c029ae25e6cb45d26b\n" }, { "commit": "99916f0496cfe37891d40f21a9a0e387620a8a60", "tree": "6b457a65cfdf482fec027386fcd7d197586c67b2", "parents": [ "0708239c003a1537c9cbf98dea5a490955d667aa" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Jan 13 14:16:58 2014 -0800" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Thu Jan 16 13:29:28 2014 -0800" }, "message": "do verification and extraction on memory, not files\n\nChanges minzip and recovery\u0027s file signature verification to work on\nmemory regions, rather than files.\n\nFor packages which are regular files, install.cpp now mmap()s them\ninto memory and then passes the mapped memory to the verifier and to\nthe minzip library.\n\nSupport for files which are raw block maps (which will be used when we\nhave packages written to encrypted data partitions) is present but\nlargely untested so far.\n\nBug: 12188746\nChange-Id: I12cc3e809834745a489dd9d4ceb558cbccdc3f71\n" }, { "commit": "2768efdf9fe67d179f6cb733e6541f04b6f2bf46", "tree": "ce08c462dbeb41f1c2b23ad22279e310bf03f780", "parents": [ "f3819c271e34559b123bb6b52210923ef1b8f65a" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Jan 13 10:11:20 2014 -0800" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Jan 13 10:51:13 2014 -0800" }, "message": "remove dead code from minzip\n\nminzip had some features that were used when reading APKs, but APK\nhandling now uses libziparchive instead of minzip. Remove these\nunused functions.\n\nChange-Id: Iead89209a716bfe9e3d339bf85b3e97e33a41f35\n" }, { "commit": "46ab1b6138bf911120280f1095ff9479dceee3df", "tree": "fa6091faa4986f4528859c6c234b4b62a80d4f9e", "parents": [ "1306a7effafab77cf2769091619518c2ab263ee8" ], "author": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Wed Sep 11 11:37:10 2013 -0700" }, "committer": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Tue Sep 17 10:20:45 2013 -0700" }, "message": "updater: Delete dead code\n\nset_perm and set_perm_recursive are no longer used. Delete.\n\n(cherry picked from commit 08ef9a957027183dcf55e432441e8fb0d5299aba)\n\nChange-Id: I1bcc90ae19af9df4f0705496c5876987159f75ac\n" }, { "commit": "08ef9a957027183dcf55e432441e8fb0d5299aba", "tree": "8de1908105a0bd46cd66c53235bbbfb746433f5e", "parents": [ "53e8f3091849e80585044dfff4a7075c26936543" ], "author": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Wed Sep 11 11:37:10 2013 -0700" }, "committer": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Wed Sep 11 11:37:10 2013 -0700" }, "message": "updater: Delete dead code\n\nset_perm and set_perm_recursive are no longer used. Delete.\n\nChange-Id: I3bb40b934b6c093b24b88aa4ed6f3c7de2bb52f0\n" }, { "commit": "3328e3bc81161c2a57ea94d304162276facdd826", "tree": "ecd8762bc38d8db05b1175ec392ae3ed54cbd0a8", "parents": [ "3b5a987cd7fd76c038e9875b430028216d21ace3" ], "author": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Mon Sep 09 10:47:14 2013 -0700" }, "committer": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Mon Sep 09 10:47:14 2013 -0700" }, "message": "Revert \"Update OTA installer to understand SELinux filesystem labels\"\n\nThis reverts commit 627eb30f73c29257acaeb6568f3da38880784f7c.\n\nBug: 10183961\nBug: 10186213\n" }, { "commit": "627eb30f73c29257acaeb6568f3da38880784f7c", "tree": "044a0368547eadfaefa9ee4c9a24672ac5a30dc5", "parents": [ "51c84694b0198a90b8eed635b46a3712c44db7a5" ], "author": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Wed Jul 17 19:01:37 2013 -0700" }, "committer": { "name": "Nick Kralevich", "email": "nnk@google.com", "time": "Thu Jul 18 15:21:12 2013 -0700" }, "message": "Update OTA installer to understand SELinux filesystem labels\n\nModify the OTA installer to understand SELinux filesystem labels.\n\nWe do this by introducing new set_perm2 / set_perm2_recursive\ncalls, which understand SELinux filesystem labels. These filesystem\nlabels are applied at the same time that we apply the\nUID / GID / permission changes.\n\nFor compatibility, we preserve the behavior of the existing\nset_perm / set_perm_recursive calls.\n\nIf the destination kernel doesn\u0027t support security labels, don\u0027t\nfail. SELinux isn\u0027t enabled on all kernels.\n\nBug: 8985290\nChange-Id: I99800499f01784199e4918a82e3e2db1089cf25b\n" }, { "commit": "9da1880118c58e45543d9f3b2356e9f833582c9a", "tree": "0496e3ff94041561e9235f6be08235195cbd836e", "parents": [ "1fca2650edb5ae373a297b6029df5e250c021dd3", "9028fb4d4ceed040c7d3ae9b1ceaa5a7472856ba" ], "author": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Mon Dec 17 12:11:47 2012 -0800" }, "committer": { "name": "Android Git Automerger", "email": "android-git-automerger@android.com", "time": "Mon Dec 17 12:11:47 2012 -0800" }, "message": "am 9028fb4d: Merge \"Pass the correct pointer to munmap on failure.\"\n\n* commit \u00279028fb4d4ceed040c7d3ae9b1ceaa5a7472856ba\u0027:\n Pass the correct pointer to munmap on failure.\n" }, { "commit": "c86f22c131ef72bd3350720d2029766c4f0721f3", "tree": "9795eb33d585e3096242ae09d6735668b488a3de", "parents": [ "27f31606390eeed50d27f2c243dfbfe79e8b5ae2" ], "author": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Mon Dec 17 09:26:50 2012 -0800" }, "committer": { "name": "Elliott Hughes", "email": "enh@google.com", "time": "Mon Dec 17 09:26:50 2012 -0800" }, "message": "Pass the correct pointer to munmap on failure.\n\nThis won\u0027t ever happen, and you\u0027re probably screwed anyway if it\ndoes, but that\u0027s no excuse...\n\nChange-Id: I2c56f607e351e84308a72b41b834d13aaa98fc62\n" }, { "commit": "bf80f49edcec6b22ad7b1219e6ed6eda1e930c8c", "tree": "1f47c641d762aeac482cae331b04f9d4391720fa", "parents": [ "a0d9ddb8f2922088b08219326afeaf532b3af5ac" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Fri Oct 19 12:24:26 2012 -0700" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Fri Oct 19 12:24:26 2012 -0700" }, "message": "reduce some recovery logging\n\nMake minzip log only a count of files when extracting, not individual\nfilenames. Make patching only chatter about free space if there\u0027s not\nenough and compact the other messages.\n\nOnly the last 8k of the recovery log gets uploaded; this makes it more\nlikely that we will get all of it.\n\nChange-Id: I529cb4947fe2185df82b9da5fae450a7480dcecd\n" }, { "commit": "7eb7567aa3faebfb22bd052f3505d485ee23d585", "tree": "0462d8372a28cd14dc5a2389b25500687e7950c9", "parents": [ "bddbb5b370d925d6e5ae62d560f5e7ad09a6ffac" ], "author": { "name": "Kenny Root", "email": "kroot@google.com", "time": "Tue Oct 16 10:47:27 2012 -0700" }, "committer": { "name": "Kenny Root", "email": "kroot@google.com", "time": "Tue Oct 16 12:57:26 2012 -0700" }, "message": "Remove HAVE_SELINUX guards\n\nChange-Id: Ia96201f20f7838d7d9e8926208977d3f8318ced4\n" }, { "commit": "0298ec21d2f895f03fcce2377f64ab4cb88bca8a", "tree": "a1392dd8fd185b004b6c1413a00e57ad6fac2896", "parents": [ "3733d2185bbcedd9ef626907f1f32628986cc0f5" ], "author": { "name": "Edwin Vane", "email": "edwin.vane@intel.com", "time": "Tue May 22 14:16:54 2012 -0400" }, "committer": { "name": "Edwin Vane", "email": "edwin.vane@intel.com", "time": "Tue Aug 21 16:04:21 2012 -0400" }, "message": "Fix multiple defined symbol errors\n\nUse of __inline__ by projects in bootable/* was causing problems with\nclang. Following the BKM and replaced use of __inline__ with\n__attribute((__gnu_inline)).\n\nChange-Id: If4ccfded685bb2c9d9c23c9b92ee052208399ef0\nAuthor: Edwin Vane \u003cedwin.vane@intel.com\u003e\nReviewed-by: Kevin P Schoedel \u003ckevin.p.schoedel@intel.com\u003e\n" }, { "commit": "41dda82d847ae8c261b09c383806b412d680f935", "tree": "98edeec4fa5d9df2d0104624d66b1608cecdaf50", "parents": [ "b2364342a05a689bc302bfcd7d5d15f528eb772c", "0b1fee1b2aa7da86ffdabfe4c577ee8adb93d803" ], "author": { "name": "Kenny Root", "email": "kroot@google.com", "time": "Fri Mar 30 20:48:34 2012 -0700" }, "committer": { "name": "Kenny Root", "email": "kroot@google.com", "time": "Fri Mar 30 21:26:01 2012 -0700" }, "message": "resolved conflicts for merge of 0b1fee1b to master\n\nChange-Id: I2e8298ff5988a96754f56f80a5186c9605ad9928\n" }, { "commit": "779701db515d1a0d363d5a8896252f331bc4e22a", "tree": "46aacb687e7126a5a64949dd7ade2f284ee57c15", "parents": [ "1a114494950d8bce01bb860cd8a7221fdc9593cc" ], "author": { "name": "Stephen Smalley", "email": "sds@tycho.nsa.gov", "time": "Thu Feb 09 14:13:23 2012 -0500" }, "committer": { "name": "Stephen Smalley", "email": "sds@tycho.nsa.gov", "time": "Fri Mar 30 09:32:46 2012 -0400" }, "message": "Extend recovery and updater to support setting file security contexts.\n\nExtend minzip, recovery, and updater to set the security context on\nfiles based on the file_contexts configuration included in the package.\n\nChange-Id: Ied379f266a16c64f2b4dca15dc39b98fcce16f29\n" }, { "commit": "28ce47cfa6919518a8c298088bf08b03bb374c0f", "tree": "0c429bcc8f4a1935f3be97d87ebdc2f4434ee887", "parents": [ "d0181b8fcdac761afec252151a8bfda116916e96" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Fri Oct 28 10:33:05 2011 -0700" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Oct 31 10:24:09 2011 -0700" }, "message": "turn recovery into a C++ binary\n\nChange-Id: I423a23581048d451d53eef46e5f5eac485b77555\n" }, { "commit": "6aece33b3f3af6a161e326af36bc894427fcf5ad", "tree": "b164457ed1f664a0d195f30933b70386687a0887", "parents": [ "aa062531aa3e740b6cf7d3690fd5310e7fdf03f2" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Feb 01 14:40:12 2010 -0800" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Mon Feb 01 14:40:12 2010 -0800" }, "message": "add a one-argument version of package_extract_file\n\nAdd a version of package_extract_file that returns the file data as\nits return value (to be consumed by some other edify function that\nexpects to receive a bunch of binary data as an argument). Lets us\navoid having two copies of a big file in memory (extracting it into\n/tmp, which is a ramdisk, and then having something load it into\nmemory) when doing things like radio updates.\n\nChange-Id: Ie26ece5fbae457eb0ddcd8a13d74d78a769fbc70\n" }, { "commit": "1c4ceae38f3fd7eb1e451d430acb5d99f257b0f9", "tree": "5dbf0392571a64b4afbe0ba73655c889f650eb75", "parents": [ "683c4628039a8cb6dad1a086fae23a7d71438414" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Fri May 08 09:43:28 2009 -0700" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Fri May 08 09:43:28 2009 -0700" }, "message": "undo temporary alignment hack\n\nRemove the memory alignment that mysteriously made OTA installs work,\nin anticipation of a kernel that fixes the actual problem. Handle\nEINTR properly.\n" }, { "commit": "683c4628039a8cb6dad1a086fae23a7d71438414", "tree": "aacd5abd9b128d786f651b2dfb2a5eb5400c5e43", "parents": [ "596271fa71d79e3eec03c7cf6ac76cb026dd8578" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Tue May 05 17:50:21 2009 -0700" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Wed May 06 08:40:28 2009 -0700" }, "message": "align data passed to write() on 32k boundaries\n\nIn donut, OTA installation often encounters the write() system call\ndoing short writes -- which is legal but unexpected -- or failing with\nENOSPC when plenty of space is available. Passing aligned memory\nbuffers to write() appears to prevent (or at least reduce the\nfrequency) of these problems. b/1833052 has been filed to look at the\nunderlying problem, but this change aligns buffers we use with write()\nso we can OTA for now (or see if this problem still occurs).\n" }, { "commit": "596271fa71d79e3eec03c7cf6ac76cb026dd8578", "tree": "3a78f4d9d0b3694d4a75b7dd3d086b0249de8b5e", "parents": [ "f554ceb0500f75c425b37c74a0d65d138c0fbdd0" ], "author": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Wed Apr 29 16:52:04 2009 -0700" }, "committer": { "name": "Doug Zongker", "email": "dougz@android.com", "time": "Wed Apr 29 17:35:34 2009 -0700" }, "message": "handle short writes when unzipping files\n\nminzip fails if write() doesn\u0027t write all the data in one call.\nApparently this was good enough before, but it causes OTAs to fail all\nthe time now (maybe due to the recently-submitted kernel)? Change\ncode to attempt continuing after short writes.\n" }, { "commit": "c24a8e688a6312764254beac2b2520bb0c5e998d", "tree": "7df23711566b358047301d8413ee399105546e8b", "parents": [ "ffb48f64fec674c6dd923eb8b1eb3f743e05a8ba" ], "author": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Mar 03 19:28:42 2009 -0800" }, "committer": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Mar 03 19:28:42 2009 -0800" }, "message": "auto import from //depot/cupcake/@135843\n" }, { "commit": "ffb48f64fec674c6dd923eb8b1eb3f743e05a8ba", "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904", "parents": [ "d4ae69739ebb67374d62229829df07bf2de85103" ], "author": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Mar 03 18:28:14 2009 -0800" }, "committer": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Mar 03 18:28:14 2009 -0800" }, "message": "auto import from //depot/cupcake/@135843\n" }, { "commit": "23580ca27a0a8109312fdd36cc363ad1f4719889", "tree": "0bb90eaa72f8df110162499f756b5cbfb7d49235", "parents": [], "author": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Oct 21 07:00:00 2008 -0700" }, "committer": { "name": "The Android Open Source Project", "email": "initial-contribution@android.com", "time": "Tue Oct 21 07:00:00 2008 -0700" }, "message": "Initial Contribution\n" } ] }