Commit Graph

1662 Commits

Author SHA1 Message Date
Bill Richardson
468cf3a20c Display keyblock information, even if not checking the signature.
Change-Id: Ie96ac39e2598fdfdc49898f92fd528edefd36313

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3602014
2010-10-05 10:47:30 -07:00
Luigi Semenzato
d7eff3e8aa Always compile the TPM tests with -DVBOOT_DEBUG.
Change-Id: I63fcb58b8415dd08417585f53bde655ca83e1f48

BUG=none
TEST=compiled locally and emerged for x86-generic

Review URL: http://codereview.chromium.org/3535006
2010-10-04 18:05:54 -07:00
Luigi Semenzato
e523695263 Fix build broken by assert() expanding to nothing.
Change-Id: I4d781bad6e638d681e930b70ed94fa3ec694ab0a

BUG=none
TEST=compiled locally and with emerge-x86-generic.

Review URL: http://codereview.chromium.org/3551014
2010-10-04 13:20:00 -07:00
Randall Spangler
c93347b3c2 Add performance macros. When enabled, these are defined in each platform's biosincludes.h.
Fix assert() macro to only be defined #ifdef VBOOT_DEBUG

Change-Id: I4a65c408544cd4319628c4ad20ed46eafebe69c9

BUG=chrome-os-partner:1207
TEST=manual

Review URL: http://codereview.chromium.org/3446025
2010-10-04 12:45:49 -07:00
Gaurav Shah
815193daee Add a script to put in a rootfs from one image into another.
Also add an option to prevent sign_official_build from attempting to re-sign the firmware.

This is needed because we want both the SSD and RECOVERY images to have the same rootfs for delta updates to work correctly.

BUG=chromium-os:7242
TEST=manually verified that rootfs gets replaced correctly (by verifying the rootfs hash).

Change-Id: I2ca4f2bef938ca14301fed6a0b16c1a7dc2ba6d9

Review URL: http://codereview.chromium.org/3529007
2010-10-01 13:01:37 -07:00
Luigi Semenzato
9565edc4c9 Revive TPM firmware autotest.
Change-Id: I2e798ac8898852aa44a8979e67dfa4de385a6e34

BUG=none
TEST=ran the autotest on a CRB with special firmware

Review URL: http://codereview.chromium.org/3389029
2010-09-30 13:44:00 -07:00
Luigi Semenzato
7c6a69f1cb Add a script that measures DAD behavior (Dictionary Attack Defense)
Change-Id: I303bb68c366c382caff20c1ee8dbfb97ed5e1c2d

BUG=none
TEST=ran the script

Review URL: http://codereview.chromium.org/3492011
2010-09-30 13:35:11 -07:00
Hung-Te Lin
04c00e19c6 Add a utility to tag/stamp image
There are several procedures in Chrome OS post-processing before being released:
stamping, tagging, mod image for URLs, ... and signing.
We need an integrated script to handle all the stamping / tagging.

This CL can handle empty tag files like /root/.force_update_firmware
or /root/.dev_mode.

This CL deprecates http://codereview.chromium.org/3421040 and moved script
from crosutils to vboot_reference. In the future we may isolate the non-signing
post-processing scripts (set_lsb, tag_image, remove_label, ...) into crosutils.

BUG=none
TEST=manually:
(1) Build a general dev image without firmware updates (default behavior of build_image for x86-generic ToT)
(2) Enter chroot and then execute:
    cd ~/trunk/src/platform/vboot_reference/scripts;
    ./tag_image.sh \
      --from ~/trunk/src/build/images/x86-generic/latest/chromiumos_image.bin
    Expected: output message:
      Update Firmware: disabled
      Developer Mode: Enabled
(3) ./tag_image.sh --update_firmware=1 --dev_mode=0 \
      --from ~/trunk/src//build/images/x86-generic/latest/chromiumos_image.bin
    Expected: output message:
      Update Firmware: disabled => Enabled
      Developer Mode: Enabled => disabled

    Manually verify:
      pushd ../../build/images/x86-generic/latest
      unpack_partitions.sh chromiumos_image.bin
      sudo mount -o loop,ro part_3 rootfs
      ls -l rootfs/root/.force_update_firmware # this file should exist
      ls -l rootfs/root/.dev_mode # this file should NOT exist (i.e., error)
      sudo umount rootfs

(4) ./tag_image.sh --update_firmware=0 --dev_mod=1 \
      --from ~/trunk/src/build/images/x86-generic/latest/chromiumos_image.bin
    Expected: output message:
      Update Firmware: Enabled => disabled
      Developer Mode: disabled => Enabled

    Manually verify:
      pushd ../../build/images/x86-generic/latest
      unpack_partitions.sh chromiumos_image.bin
      sudo mount -o loop,ro part_3 rootfs
      ls -l rootfs/root/.force_update_firmware # this file should NOT exist (i.e., error)
      ls -l rootfs/root/.dev_mode # this file should exist
      sudo umount rootfs

Change-Id: I96af3c7201372bb904426d10cff142467a1fa2e7

Review URL: http://codereview.chromium.org/3604001
2010-09-30 16:18:09 +08:00
vbendeb
a222fbc00e Fix test suite deficiencies.
While trying to debug/test some vbutil_kernel changes
(coming in a different CL) it was noticed that this utility
is not covered by tests, and the script which runs it to set
up further testing (tests/gen_fuzz_test_cases.sh) fails
because of the key format mismatch.

Some investigation has shown that this was left behind when
vboot_reference key storage format was changed.

To make gen_fuzz_test_cases.sh work again a new set of test
keys is required, the keys are generated by
tests/gen_test_keys.sh. This utility had to be changed to
generate the proper set of wrapped public and private keys.

Actually code in tests/gen_test_keys.shgenerate_keys() is
copied in pasted in many scripts in this tree, this has to
be refactored, but under a different CL.

Once the changes were made, two scripts were run:
 ./tests/gen_test_keys.sh
 ./gen_test_cases.sh

resulting in the new and updated keys generated.

firmware/stub/tpm_lite_stub.c was edited to fix compilation
warning issued when compiling with debugging enabled.

Change-Id: I26a45cbad00d21a29195f2a89b4df7d3559133fe

BUG=chromium-os:7178
TEST=described below

The following commands succeed:

vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
make
make runtests
./tests/gen_fuzz_test_cases.sh
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

note that  ./tests/gen_fuzz_test_cases.sh was failing
before this change.

The upcoming CL modifying vbutil_kernel will make sure
gen_fuzz_test_cases.sh is executed when tests are run and
will enhance it to cover vbutil_kernel testing.

Review URL: http://codereview.chromium.org/3423022
2010-09-29 20:25:29 -07:00
Gaurav Shah
395d9c6e41 set_lsb_release.sh: Make it mount rootfs r/w only if necessary.
If we just want to read the current lsb-release, we shouldn't need to break rootfs verification.

Change-Id: I5ba6ddbd9f5801783a568b6806392184b683f628

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3563001
2010-09-28 16:47:47 -07:00
Bill Richardson
a31803a237 Change dev-mode warning screen text: s/untrusted/unverified/
BUG=chromium-os:7071
TEST=none (will be tested when BIOS is updated)

Change-Id: I7e765175b23dc08adb260a41abf81ba4b999eb34

Review URL: http://codereview.chromium.org/3443030
2010-09-26 18:00:07 +08:00
Luigi Semenzato
26718cad62 Move initialization of g_recovery_mode.
Change-Id: I876b1f366eeb5d73eb3b3998a76ee5e1d386c7f5

BUG=chrome-os-partner:1182
TEST=none

Review URL: http://codereview.chromium.org/3470013
2010-09-24 12:50:45 -07:00
Luigi Semenzato
5be730cbf1 Fix (unfiled, I think) TPM initialization bug.
Change-Id: Id083f73680dbb1edd9ba036659b57f77b16325ec

BUG=none
TEST=none
TBR=rspangler@chromium.org
2010-09-23 17:05:12 -07:00
Bill Richardson
cf0b05a9b7 Fix stupid wrong-stride bug.
Change-Id: Ic07d7409511adf1b30a9206cef0aa5d18a837897

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3405024
2010-09-24 07:47:47 +08:00
Luigi Semenzato
a8cba996b7 Utility to measure the available size of a TPM NVRAM.
Also change tpmc to return the TPM error code, or 255.

Change-Id: Ie5fc107ff50efd4480c2a47b91f3b8a93b4f95e3

BUG=none
TEST=ran it on a TPM

Review URL: http://codereview.chromium.org/3479003
2010-09-21 14:12:15 -07:00
Luigi Semenzato
e19da8b818 Change Makefile for new test ebuild.
Change-Id: Idb081dccdcba17005cd3edc059e58b78316c3dbe

BUG=none
TEST=ran the ebuild (separate CL) and verified that the targets are created

Review URL: http://codereview.chromium.org/3480004
2010-09-21 11:11:58 -07:00
Gaurav Shah
474f055c1b Add script to remove the test label from lsb-release descriptions of an image.
Change-Id: I7978568414c935eb625539f3ca5af5002e08931f

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3429011
2010-09-16 14:34:54 -07:00
Gaurav Shah
14805f5551 Don't forget to umount rootfs in case we bail on firmware re-signing.
BUG=chrome-os-partner:1097
TEST=manual + independently verified by drewry@

1) Extract rootfs from the original image.
2) run tune2fs -l <original rootfs> on it. Observe filesystem features has no "needs_recovery"
3) run sign_official_build.sh
4) Extract new rootfs
6) run tune2fs -l <new rootfs>. "needs_recovery" should still not be there (it was before this fix)

Change-Id: I3a03245886844d3dbfe1f8b2b73ce624ec67808f

Review URL: http://codereview.chromium.org/3436010
2010-09-15 19:03:45 -07:00
Luigi Semenzato
ef176b7599 Add missing header file.
Change-Id: I2b0fdab305fc3b7286679ac133daed62523fb241

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3423009
2010-09-15 18:12:35 -07:00
Luigi Semenzato
a7e19cffbe Add new files: two tests, one common file, one program to set things up.
Change-Id: I4c9b7a937103f3978cbed6629ee4057018b80eae

More cleanup.  Also allow some tests to run even when TPM is already started.

Change-Id: I23558b96a1de55bbeca42dbf2e44f6802a0ec85b

Reorganize and standardize behavior of tests.

Change-Id: Id32fd09211a72deaa66a3dd0f973d35506ff96f2

BUG=433
TEST=ran all the tests I could run without TPM-free BIOS

Review URL: http://codereview.chromium.org/3389004
2010-09-15 17:20:36 -07:00
Randall Spangler
6eee220fcd Fix one-time init
Change-Id: Ie8b4f5b1b7493b16b69eb41531ec3362d4b3679f

BUG=chrome-os-partner:1101
TEST=manual testing of affected TPM on CRB

Review URL: http://codereview.chromium.org/3388008
2010-09-15 15:57:58 -07:00
Hung-Te Lin
89feaed8dc Change tool "fmap_decode" to "mosys"
The fmap_decode tool from flashmap project is deprecated.
mosys provides more functionality and fit better into the
host environment.

BUG=chromium-os:6264
TEST=manually

Change-Id: I513d36c8a8f657fdb4cb10d08a867876c32d36b6

Review URL: http://codereview.chromium.org/3388002
2010-09-15 09:36:49 +08:00
Zdenek Behan
d37eafa398 vboot_reference: move tests into client/ and also put the server test in here
* Adjusted the path in VbootCrypto Makefile

Change-Id: I2485c3940f4d3894694c3e834ed79b1b3f58d4bc

BUG=
TEST=

Review URL: http://codereview.chromium.org/3335018
2010-09-13 21:49:55 -07:00
Gaurav Shah
71bff41d6f If found, sign the packaged firmware autoupdate.
Previously this was hidden behind an environment variable. With this change, the signing script will always try to sign the firmware update if found. If not, it will still perform the remaining steps (rootfs calculation, kernel partition signature etc.).

Also fixed a few minor bugs with the firmware update code.

BUG=chrome-os-partner:925, chrome-os:3496
TEST=created a ToT semi-official build, and ran the signing script on the image. Verified that the firmware got correctly updated (by running chromeos-firmwareupdate on the device). Also tested on images without the packaged firmware update.

Change-Id: I0921ce36a880e18167a8e3a2b63d8f246693d488

Review URL: http://codereview.chromium.org/3292016
2010-09-09 21:18:03 -07:00
Randall Spangler
77ae389799 fix clearing kernel attributes
Change-Id: Id353323d268835cbcc1fb13c8669cee420c8fb6a

BUG=chrome-os-partner:1046
TEST=manual

Make sure your chromeos install on the hard drive has 2 good kernel
partitions. Do:

sudo cgpt show /dev/sda

If partition 2 has success=1, do:

sudo dd if=/dev/sda2 of=/dev/sda4 bs=1M
sudo dd if=/dev/sda3 of=/dev/sda5 bs=1M
cgpt add -i 4 -S 1 -P 2

(if instead partition 4 has success=1, do:)

sudo dd if=/dev/sda4 of=/dev/sda2 bs=1M
sudo dd if=/dev/sda5 of=/dev/sda3 bs=1M
cgpt add -i 2 -S 1 -P 2

Reboot and do the following:

sudo cgpt show /dev/sda

If the partition you just marked active still has success=1
priority=2, the bug is fixed.  If it has success=0 priority=0, the bug
is still there.

Review URL: http://codereview.chromium.org/3324014
2010-09-09 17:37:51 -07:00
Bill Richardson
60bcbe3cd4 New tools to help debug vboot failures.
This adds some tools to help us figure out why a particular kernel isn't
booting. Often we suspect it's because it was signed with the wrong keys, or
has flags restricting its use to certain boot modes. This change adds some
tools to extract and display all the keys from the BIOS, and try them on the
various kernels. We also display the sha1sum of all the keys we find, to
make comparing them easier.

Change-Id: I38e447bf95cb6c3a0b87aa949611bb135f2f94b4

BUG=chromeos-partner:888
TEST=manual

To test, obtain a root shell, and run dev_debug_vboot. You should see lots
of useful information go by.

Review URL: http://codereview.chromium.org/3303018
2010-09-09 14:53:56 -07:00
Randall Spangler
7c88d4c31d use continue self test
Change-Id: I4785a6326017c63d83a8eb153d6b90ee82e5f839

BUG=chromeos-partner:222
TEST=manual (build FW, make sure system boots and tpmc prints good values)

Review URL: http://codereview.chromium.org/3367020
2010-09-09 11:14:59 -07:00
Randall Spangler
528f6a20db fix missing constant
Change-Id: I26d7d725cb429394e24be40a2f362b7ff160f4ee

BUG=none
TEST=make && make runtests (and build into test BIOS)

Review URL: http://codereview.chromium.org/3337017
2010-09-08 16:40:14 -07:00
Gaurav Shah
1a2e6fc765 Adds a sudo before dumpe2fs.
Looks like dumpe2fs is not in the path otherwise. Also added a check to look for it as a pre-requisite.

BUG=none
TEST=none

Change-Id: I329c894597bc1638043a67359465e55b2ce6d0f7

Review URL: http://codereview.chromium.org/3355013
2010-09-07 21:14:37 -07:00
Gaurav Shah
8b7baafee1 Fix autotest Makefile for vboot_reference.
Update list of scripts and test binaries - slightly more involved since the test runner scripts and the test binaries themselves reside in different directories.

BUG=none
TEST=manual (Ran make, went into the tests/ directory and ran the tests)

Change-Id: I97bd36d806726f6005e35490173cfcd0300add95

Review URL: http://codereview.chromium.org/3326014
2010-09-07 18:19:21 -07:00
Zdenek Behan
6667f0ad82 vboot_reference: add hardware_TPMFirmware test case into vboot_reference repo
* The files it needs to build are here

Change-Id: I95973a9d96e7be6d7359a44b44337fdb9bfe0d92

BUG=
TEST=

Review URL: http://codereview.chromium.org/3335010
2010-09-07 18:06:38 -07:00
Zdenek Behan
b3e07ca793 vboot_reference: add in the VbootCrypto tests into vboot_reference git repo
Change-Id: I7a46dc2ea475c72703ff5bc1f88fbb021cb24c92

Review URL: http://codereview.chromium.org/3143029
2010-09-07 12:53:17 -07:00
Randall Spangler
2c21fe6693 Successful partitions are never marked bad by cgptlib.
Change-Id: I70e54f59b540e9115bb6bd77ae51f49a1f4ab671

BUG=chromeos-partner:1029
TEST=make && make runtests

Review URL: http://codereview.chromium.org/3315014
2010-09-07 10:30:50 -07:00
Luigi Semenzato
9828594eaa Bail out from S3Resume if TPM was not power-cycled.
Change-Id: I80027a5a935e13ba37e24978dd4b0c6040d66728

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3298010
2010-09-07 09:56:19 -07:00
Gaurav Shah
1cd4cdbbae Add a "verify" option to sign_official_build.sh.
This option will perform verification operations on an image.
1) Check if the RootFS hash is correct.
2) Check if the image will verify using recovery keys (in recovery mode)
3) Check if the image will verify using SSD keys (in non-recovery mode)

2) and 3) are both tested with and without dev mode.

Also re-factor existing code for rootfs calculation and update.

BUG=5830,3496
TEST=manual

Example usage and output follows:

# Verifying an image meant for factory install.
sudo ./sign_official_build.sh verify factory_install_image.sh ../../tests/devkeys/
Verifying RootFS hash...
PASS: RootFS hash is correct
Testing key verification...
With Recovery Key (Recovery Mode ON, Dev Mode OFF): NO
With Recovery Key (Recovery Mode ON, Dev Mode ON): YES
With SSD Key (Recovery Mode OFF, Dev Mode OFF): NO
With SSD Key (Recovery Mode OFF, Dev Mode ON): YES

# Verifying an image meant for recovery mode.
sudo ./sign_official_build.sh verify recovery_image.bin ../../tests/devkeys/
Verifying RootFS hash...
PASS: RootFS hash is correct
Testing key verification...
With Recovery Key (Recovery Mode ON, Dev Mode OFF): YES
With Recovery Key (Recovery Mode ON, Dev Mode ON): YES
With SSD Key (Recovery Mode OFF, Dev Mode OFF): NO
With SSD Key (Recovery Mode OFF, Dev Mode ON): YES

# Verifying an image meant for the SSD drive.
sudo ./sign_official_build.sh verify ssd_image.bin ../../tests/devkeys/
Verifying RootFS hash...
PASS: RootFS hash is correct
Testing key verification...
With Recovery Key (Recovery Mode ON, Dev Mode OFF): NO
With Recovery Key (Recovery Mode ON, Dev Mode ON): NO
With SSD Key (Recovery Mode OFF, Dev Mode OFF): YES
With SSD Key (Recovery Mode OFF, Dev Mode ON): YES

# Image with an incorrect rootfs hash but otherwise validly signed
sudo ./sign_official_build.sh verify ssd_image.bin ../../tests/devkeys/
Verifying RootFS hash...
FAILED: RootFS hash is incorrect.
Expected: ebce345727ca05ea9368d3b8d5ce1c81471d7d3b
Got: 9b092985996bb2422b11487a66929a1a004df4fc
Testing key verification...
With Recovery Key (Recovery Mode ON, Dev Mode OFF): NO
With Recovery Key (Recovery Mode ON, Dev Mode ON): NO
With SSD Key (Recovery Mode OFF, Dev Mode OFF): YES
With SSD Key (Recovery Mode OFF, Dev Mode ON): YES

# Image signed using a different set of keys (but validly signed).
sudo ./sign_official_build.sh verify invalid_image.bin ../../tests/devkeys/
Verifying RootFS hash...
PASS: RootFS hash is correct (70e6f2de0220991fd503a6fcc7edac131b4a48ca)
Testing key verification...
With Recovery Key (Recovery Mode ON, Dev Mode OFF): NO
With Recovery Key (Recovery Mode ON, Dev Mode ON): NO
With SSD Key (Recovery Mode OFF, Dev Mode OFF): NO
With SSD Key (Recovery Mode OFF, Dev Mode ON): YES

Change-Id: I4960cdbbbe93e685346417b882739f9cfd5f6b75

Review URL: http://codereview.chromium.org/3327005
2010-09-03 12:34:46 -07:00
Bill Richardson
62a58dfeb5 Reposition text and URL
Change-Id: I24d7ac275421916fd9471e629de3bbc0cce4c94d

BUG=chrome-os-partner:803
TEST=none

Review URL: http://codereview.chromium.org/3302005
2010-09-02 16:32:13 -07:00
Bill Richardson
34b446073e zip the output images after creating them
Change-Id: I07eb8cc030c33ab3ff41eb0f894771eb3ea3962a

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3307007
2010-09-02 16:16:25 -07:00
Randall Spangler
1fe1607679 TBR: reviewed in person with semenzato 2010-09-02 11:37:51 -07:00
Bill Richardson
8adcb43774 Enhance output and helpfulness of --unpack options for vbutil_key
We now display the sha1sum of the public key contained in .vbpubk files,
and the --copyto option can be used to extract a minimal-sized .vbpubk or
.vbprivk from a file with extra padding on the end, to make comparisons
easier.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3300006

Change-Id: Id465bf4f6f7d0545456a86968accc87964a769ef
2010-09-01 10:40:25 -07:00
Luigi Semenzato
89a02c194f Make TPM datagrams const, since they cannot be modified in the RO firmware.
Change-Id: I7f135584536c7437824ae65f74a8f7ef27c28665

BUG=
TEST=

Review URL: http://codereview.chromium.org/3271006
2010-08-31 15:49:56 -07:00
Luigi Semenzato
3da063e3f7 Add resume command (TPM_Startup(ST_STATE))
Change-Id: Ia85c3cdbcb74c6cd8e7bd53c51eaccc98b13677e

BUG=
TEST=

Review URL: http://codereview.chromium.org/3232006
2010-08-31 14:31:30 -07:00
Luigi Semenzato
377557fcb2 Add physical presence initialization and locking to one-time initializations.
Change-Id: If2b6041fe93bc97885e45bbb0cf7e1b81cb06c18

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3229011
2010-08-31 13:20:53 -07:00
Bill Richardson
60563ee0af Always treat invalid images as nonexistant now.
This makes the sequence of pictures shown to the user slightly less
confusing, but the whole process needs a bit more cleanup. Some of the work
has to be done in the BIOS code, not just here. This is better, but it's not
complete.

Change-Id: If0b3ecc92716020a06031866849d83411d7f0db8

BUG=chrome-os-partner:903
TEST=manual

Review URL: http://codereview.chromium.org/3249009
2010-08-30 15:15:38 -07:00
Gaurav Shah
2447dd256f Add a PCR extend call for measuring the dev mode boot flag.
BUG=2083
TEST=manual

Compiled with DISABLE_ROLLBACK unset. I need help testing this change - in particular, if the PCR 0 value is actually different in dev mode off vs. dev mode on. This can be done by invoking 'tpm_pcrread -p 0' at the shell. tpm_pcrread is part of the tpm_tools package.

Change-Id: I0728fb776a0c9cb90d885e7a1c76ff6a1a41a17b

Review URL: http://codereview.chromium.org/3195018
2010-08-30 11:43:57 -07:00
Gaurav Shah
9379a7d759 Use SafeMemcmp() in RSAVerify() just to be safe.
BUG=chrome-os-partner:832
TEST=make && make runtests

Change-Id: I370021071b2b219c0db89cfaa015f4ff315c9204

Review URL: http://codereview.chromium.org/3216010
2010-08-30 11:41:01 -07:00
Luigi Semenzato
1d83dd1ba5 Add a command to enable the physical presence command.
Change-Id: Id8b6ac3c75d1ee34237cde8adde55cea33b25889

Review URL: http://codereview.chromium.org/3163045
2010-08-30 10:23:43 -07:00
Bill Richardson
09021d0d6c Remove finger from RecoveryBmp image, change text accordingly
Change-Id: I9ce9dd679fb55a733f5c852ff9275089a633fe7f

Review URL: http://codereview.chromium.org/3272001
2010-08-27 09:47:37 -07:00
Bill Richardson
aa8eda4f97 More cgptlib tests
Add some extra cases to SanityCheckTest() to test both header and entries
being garbled at either end of the disk.

Add DuplicateUniqueGuidTest() to check that GPTs having duplicate
UniqueGuids in the entries are rejected. We can only check this per-disk, of
course.

Made some changes to the library to enforce the UniqueGuid requirement that
I just started testing for.

BUG=chromium-os:4854

Review URL: http://codereview.chromium.org/3135044

Change-Id: I86458faf9cc99aa3f29aac0d5b144dbd05067181
2010-08-27 09:31:26 -07:00
Luigi Semenzato
5896b9664d Added new commands and reactivated full rebuild after fixing for ARM ebuild.
Review URL: http://codereview.chromium.org/3116025

Change-Id: Ideb82562f6b1c3ce5cd9e0b79de250d0a7bd976e
2010-08-25 07:16:03 -07:00
Randall Spangler
41656c082d Fix utility.c to compile on MSVC.
BUG=none
TEST=make && make runtests

Review URL: http://codereview.chromium.org/3186024
2010-08-23 13:20:07 -07:00