vboot: vb2_shared_data offsets should hang off parent

vb2_shared_data struct has many offsets to other objects in the
workbuf.  They are all prefixed with `workbuf_`, e.g.:
  uint32_t workbuf_data_key_offset;
  uint32_t workbuf_data_key_size;

In order to adhere to a hierarchical structure on the workbuf,
remove the workbuf_ prefix from these symbols to reflect the
relationship between vb2_shared_data and its children more

Create a helper function vb2_member_of to safely look up a child
of a particular object in the workbuf by offset.  Pointer
arithmetic to find vb2_shared_data children is replaced with
calls to this function.

BUG=b:124141368, chromium:994060
TEST=make clean && make runtests

Change-Id: Ia82417a35d2067ee5e4f42fea0396e6325127223
Signed-off-by: Joel Kitching <kitching@google.com>
Cq-Depend: chromium:1753400
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/1718264
Commit-Queue: Joel Kitching <kitching@chromium.org>
Tested-by: Joel Kitching <kitching@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
17 files changed