diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2016-10-04 09:48:18 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-10-19 11:38:52 -0700 |
commit | 3875e6191f24ceb83415f553ca91dcac7b71073b (patch) | |
tree | e8b48dfa7edb55c2e9ef676732cec20ed97faf67 | |
parent | 77d9dd0dd58d2cac1ea6aa8873491afcf2441945 (diff) | |
download | vboot-3875e6191f24ceb83415f553ca91dcac7b71073b.tar.gz |
bdb: Add --load_address to futility-bdb --create
This change makes futility-bdb --create take --load_address parameter,
which sets the load address field in the BDB header.
BUG=chromium:649554
BRANCH=none
TEST=make runtests
$ futility bdb --resign test/futility/data/bin.bdb --data_version 2
then futility show --type bdb test/futility/data/bin.bdb
Change-Id: Ib4dec86c2a043e0989c91bbc01f39776e3630e4c
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/399594
Commit-Ready: Daisuke Nojiri <dnojiri@google.com>
Tested-by: Daisuke Nojiri <dnojiri@google.com>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
-rw-r--r-- | futility/cmd_bdb.c | 8 | ||||
-rwxr-xr-x | tests/futility/test_bdb.sh | 5 |
2 files changed, 9 insertions, 4 deletions
diff --git a/futility/cmd_bdb.c b/futility/cmd_bdb.c index d3c06728..ffd575b7 100644 --- a/futility/cmd_bdb.c +++ b/futility/cmd_bdb.c @@ -158,7 +158,8 @@ static int do_create(const char *bdb_filename, uint32_t bdbkey_version, const char *datakey_pri_filename, const char *datakey_pub_filename, - uint32_t datakey_version) + uint32_t datakey_version, + uint64_t load_address) { struct bdb_key *bdbkey; struct bdb_key *datakey; @@ -186,7 +187,7 @@ static int do_create(const char *bdb_filename, } memset(¶ms, 0, sizeof(params)); - params.bdb_load_address = -1; + params.bdb_load_address = load_address; params.bdbkey = bdbkey; params.datakey = datakey; params.private_bdbkey = bdbkey_pri; @@ -530,6 +531,7 @@ static void print_help(int argc, char *argv[]) " --bdbkey_pub <file> BDB key in .keyb format\n" " --datakey_pri <file> Data key in .pem format\n" " --datakey_pub <file> Data key in .keyb format\n" + " --load_address <number> BDB load address\n" "\n" "For '--resign <bdb_file> [OPTIONS]', optional OPTIONS are:\n" " --bdbkey_pri <file> New BDB key in .pem format\n" @@ -686,7 +688,7 @@ static int do_bdb(int argc, char *argv[]) return do_create(bdb_filename, bdbkey_pri_filename, bdbkey_pub_filename, bdbkey_version, datakey_pri_filename, datakey_pub_filename, - datakey_version); + datakey_version, load_address); case OPT_MODE_RESIGN: return do_resign(bdb_filename, bdbkey_pri_filename, bdbkey_pub_filename, bdbkey_version, diff --git a/tests/futility/test_bdb.sh b/tests/futility/test_bdb.sh index eef1a98c..0f0c0249 100755 --- a/tests/futility/test_bdb.sh +++ b/tests/futility/test_bdb.sh @@ -55,10 +55,13 @@ check_field() { } # Demonstrate bdb --create can create a valid BDB +load_address=0x60061ec0de ${FUTILITY} bdb --create ${BDB_FILE} \ --bdbkey_pri ${BDBKEY_PRI} --bdbkey_pub ${BDBKEY_PUB} \ - --datakey_pub ${DATAKEY_PUB} --datakey_pri ${DATAKEY_PRI} + --datakey_pub ${DATAKEY_PUB} --datakey_pri ${DATAKEY_PRI} \ + --load_address ${load_address} verify +check_field "Load Address:" ${load_address} # Demonstrate bdb --add can add a new hash num_hash=$(get_num_hash) |