1eae873b6194db25781233d7a4aaee6a34160eec |
|
05-Feb-2015 |
Bill Richardson <wfrichar@chromium.org> |
futility: Add global args to specify vboot API and format The host-side futility tool will need to support all extant vboot implementations. Some legacy futility commands only support the original vb1 format, but others ("show" or "sign", for example) may need to be instructed which formats to expect or emit. This change adds some global args to specify the preferred formats. It also cleans up a few [unused AFAICT] one-letter args to avoid conflicts. BUG=chromium:231574 BRANCH=none TEST=make runtests Nothing makes use of this yet, except the "help" command. Change-Id: Ib79fa12af72b8860b9494e5d9e90b9572c006107 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/246765 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
80e779d50b52cd97c9d5896a3b75fa8118ee488f |
|
04-Feb-2015 |
Furquan Shaikh <furquan@google.com> |
kernel flags: Add flags field to kernel preamble. 1. Increase kernel preamble revision from 2.1 to 2.2. 2. Add flags field to kernel preamble. 3. Update futility to accept flags parameter for vbutil_kernel and cmd_sign for kernel. 4. Pass in an extra flags field to SignKernelBlob and CreateKernelPreamble. BUG=chrome-os-partner:35861 BRANCH=None TEST=1) "make runalltests" completes successfully. 2) vboot_reference compiles successfully for ryu. 3) Verified flags field in header using futility show. Change-Id: If9f06f98778a7339194c77090cbef4807d5e34e2 Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://chromium-review.googlesource.com/245950 Tested-by: Furquan Shaikh <furquan@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Furquan Shaikh <furquan@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
05987b159acb9737707b9ef92b818ac434ef8c3d |
|
06-Feb-2015 |
David Riley <davidriley@chromium.org> |
Changes to compile signing tools on darwin The following works from a Mac with these changes: make Q= ARCH=arm HAVE_MACOS=1 `pwd`/build/futility/futility Only vbutil_keyblock and vbutil_kernel have been exercised. BUG=none TEST='make Q= ARCH=arm HAVE_MACOS=1 `pwd`/build/futility/futility' BRANCH=none Signed-off-by: David Riley <davidriley@chromium.org> Change-Id: Ie69cfee0c650d4ff96be6322083a2fea1543ee39 Reviewed-on: https://chromium-review.googlesource.com/246773 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: David Riley <davidriley@chromium.org> Commit-Queue: David Riley <davidriley@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
1bdc6125788e5f9156f23045c004db5c3b30c7b8 |
|
02-Feb-2015 |
Shelley Chen <shchen@chromium.org> |
vboot_reference: fix pointer issue in vmlinuz recontruction vmlinuz_header_address was using an offset as opposed to a pointer. BUG=None BRANCH=None TEST=Take a kernel block and reconstruction the vmlinuz image: "vbutil_kernel --get-vmlinuz kern0 --vmlinuz-out vm.out" Then, try to kexec vm.out. Change-Id: Ifb41a00fd73f3222673467eef370c7abdbd0fd9c Reviewed-on: https://chromium-review.googlesource.com/245441 Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-by: Zach Reizner <zachr@chromium.org> Commit-Queue: Shelley Chen <shchen@chromium.org> Tested-by: Shelley Chen <shchen@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
2559338dbdacbcbd3ae426337403196135bbc7e8 |
|
30-Jan-2015 |
Bill Richardson <wfrichar@chromium.org> |
futility: refactor file type detection into new files This moves the what-kind-of-file-is-this logic into a separate file, and makes it work by calling distinct recognizers until one hits. A new "-t" option to the show command prints what it's doing. BUG=chromium:228932 BRANCH=ToT TEST=make runtests Change-Id: Id8f60bdf3fe6a9adf41b4555b3448a261fa52fea Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/245122 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
9bfe2c9f267579454fc63688fde3d023b338d938 |
|
27-Jan-2015 |
Bill Richardson <wfrichar@chromium.org> |
futility: vbutil_kernel should check the kernel a bit more Trying to repack an invalid kernel blob should notice and complain that the blob is invalid instead of just segfaulting. BUG=chromium:452353 BRANCH=ToT TEST=manual See the bug report for an example test case. Many more tests are being added as futility development continues. Change-Id: I2bbfb8ab41a0f596b25a76f76f74d7b47b7e4a17 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/243583 Reviewed-by: Mike Frysinger <vapier@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
f1f53b3732f235da15a50080db6e7bbd4666e390 |
|
08-Jan-2015 |
Shelley Chen <shchen@chromium.org> |
vboot: Add flag to vbutil_kernel for reconstruction of vmlinuz image Adding functionality to allow for rebuilding of vmlinuz after it has been processed into vblock and header stripped. Basically appends the 16-bit header of a vmlinuz image onto the end of the vblock. BUG=chromium:438302 BRANCH=none TEST=Successfully ran "make runalltests". Also, ran: 1. Repack kernel block (so that 16-bit header is included): "vbutil_kernel --pack kern_0 ..." 2. Verify kernel: "vbutil_kernel --verify kern_0 ... ". This should be done before booting into kernel, but not necessary for it to work. 3. Rebuild vmlinuz image: "vbutil_kernel --get-vmlinuz kern_0 --vmlinuz-out vm.out" 4. Set up kexec with vmlinuz (this should complete with no errors): "kexec -l vm.out (other kernel cmd line args)" 5. Boot into kernel: "kexec -e" Change-Id: Iaa1582a1aedf70b43cdb3a56cde1fb248f1793d4 Signed-off-by: Shelley Chen <shchen@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/232750 Reviewed-by: Furquan Shaikh <furquan@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
4dad690e082af98de8311566c197efbbfa1bc956 |
|
04-Dec-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: update the vbutil_kernel implementation Now that the underlying bug is fixed (commit 64ef69c), this replaces the old vbutil_kernel command implementation with the new one that we rolled back in commit f1dba02. BUG=chromium:418647 BRANCH=none TEST=make runtests I've also built an image with this change, installed it on a Chromebook, ran make_dev_ssd.sh, make_dev_firmware.sh, recovered, etc. Everything still works. Change-Id: I8996e674a24b5d994658a6be2973ef3623cd659b Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/235429 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
f1dba02034fba650c84cec52630755cd3c063e88 |
|
01-Oct-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: rolled back vbutil_kernel change When disabling verity with make_dev_ssh.sh, a bug in vbutil_kernel caused the re-signed kernel size to be the entire kernel partition instead of just the necessary bits. Until we can improve the test coverage, I'm rolling back the changes that introduced this bug. BUG=chromium:418647 BRANCH=ToT TEST=manual Created a new test image with these changes. You can install it and disable dm-verity and it works (although there seems to be an unrelated browser startup issue on ToT). Change-Id: I48e8427b05e191c9894c42056429a79d57bfc78d Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/220935 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
f318ee205cc8d92def925c6158272da8a63bf1ed |
|
23-Sep-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: implement vbutil_kernel using buffers, not files The original vbutil_kernel command used file read and write to make changes. Futility prefers to use memory-mapped files. This rewrites cmd_vbutil_kernel.c to use that scheme. BUG=none BRANCH=ToT TEST=make runtests The original cmd_vbutil_kernel.c is renamed, and a test written to ensure that the refactored version produces identical results. Signed-off-by: Bill Richardson <wfrichar@chromium.org> Change-Id: Ic6c3e12429a5dcb271f8136a9edac70807d66120 Reviewed-on: https://chromium-review.googlesource.com/219647 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
e192e7f6cea5f2c4556b729bf57ef1f552e0242a |
|
23-Sep-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: clean up a few shared functions Move the Debug() function into a common place instead of several copies in different files, rename shared functions to start with "futil_" BUG=none BRANCH=ToT TEST=make runtests Signed-off-by: Bill Richardson <wfrichar@chromium.org> Change-Id: I6b844553dff95c24894dae611102716a8da5312d Reviewed-on: https://chromium-review.googlesource.com/219645 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
779796f57e1e0236ea502248ede2cbea986fca21 |
|
23-Sep-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: Improve help messages This provides help messages for the futility commands similar to the way git does. These show the available commands: futility futility help futility --help While these show help for a specific command: futility help COMMAND futility --help COMMAND futility COMMAND --help BUG=none BRANCH=ToT TEST=manual make runtests And manually look at help messages for each command. Change-Id: I1126471e242784c6ca7a2f11694fa7c505d833e8 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/219528 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
31d95c2386df8d3d5ec619a077960645d052fa38 |
|
25-Aug-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: Reformat to use kernel coding style This just reformats the futility sources to conform to the Linux kernel coding style. No functional changes. BUG=chromium:224734 BRANCH=ToT TEST=make runtests Change-Id: I82df07dd3f8be2ad2f3df24cebe00a9a378b13f4 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/213915 Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
e5b7a541190c3af1607e14548148f5e336e7ce84 |
|
22-Aug-2014 |
Benson Leung <bleung@chromium.org> |
futility: add --arch=aarch64 Add support for the 64bit arm architecture, which update_kernel.sh passes in as "aarch64" Signed-off-by: Benson Leung <bleung@chromium.org> BUG=chrome-os-partner:31525 TEST=run vbutil_kernel --arch=aarch64 Check that it no longer complains about "Unknown architecture string: aarch64" BRANCH=none Change-Id: Iccd925e05baffb1953b229fc4150ca179d1d1e1c Reviewed-on: https://chromium-review.googlesource.com/213706 Reviewed-by: David Riley <davidriley@chromium.org> Tested-by: Benson Leung <bleung@chromium.org> Commit-Queue: Benson Leung <bleung@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
7351ed7a3cf2759ac043d341d94f16e0ecd139f0 |
|
18-Aug-2014 |
Mike Frysinger <vapier@chromium.org> |
futility: add more static/const markings BUG=chromium:404643 TEST=pre-cq passes (runs unittests) BRANCH=None Change-Id: I3c3a9ee7192305dfa72333c0b6a77653b7188869 Reviewed-on: https://chromium-review.googlesource.com/212877 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Tested-by: Mike Frysinger <vapier@chromium.org> Commit-Queue: Mike Frysinger <vapier@chromium.org>
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|
6f3961507e73f90cec665896dece884e86be560a |
|
15-Jul-2014 |
Bill Richardson <wfrichar@chromium.org> |
futility: Add remaining vboot binary utilities This change adds these formerly external utilities into the futility binary: dev_sign_file dump_kernel_config gbb_utility vbutil_firmware vbutil_kernel These target binaries will remain independent of futility, since they are not directly related to verified boot: cgpt crossystem tpm_init_temp_fix tpmc Also, dumpRSAPublicKey is removed from the target, since it is only used on the build host to create new keypairs. This change also add several additional tests. BUG=chromium:224734 BRANCH=ToT CQ-DEPEND=CL:210391,CL:210568,CL:210587 TEST=manual make runtests make clean Also build and test: - normal image - test image - recovery image - firmware shellball Note that this CL depends on simultaneous changes to the chromeos-initramfs ebuild. Change-Id: If791b5e9b5aac218ceafa9f45fc1785f16b91a64 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/210403
/external/vboot_reference/futility/cmd_vbutil_kernel.c
|