Mojo: More flexible message serialization

Desktop / Chromium - Ken Rockot [chromium.org] - 10 August 2017 01:37 EDT

Augments MojoExtendSerializedMessagePayload to allow for the attachment of additional handles to the target message.

Introduces MojoCommitSerializedMessageContents() API as an explicit means to finalize the dimensions (payload size and to aggregate and defer the work of extended handle attachment serialization into a single operation.

BUG=752631

Change-Id: Iaa7e6d02e57764ec92cb794f5e970faff9166b2d Reviewed-on: https://chromium-review.googlesource.com/602930 Commit-Queue: Ken Rockot

766e766 Mojo: More flexible message serialization
mojo/edk/embedder/entrypoints.cc | 12 ++
mojo/edk/system/core.cc | 38 +++-
mojo/edk/system/core.h | 9 +-
mojo/edk/system/handle_table.cc | 3 +-
mojo/edk/system/message_unittest.cc | 136 +++++++++---
mojo/edk/system/node_controller.cc | 4 +-
mojo/edk/system/user_message_impl.cc | 236 ++++++++++++++++-----
mojo/edk/system/user_message_impl.h | 16 +-
mojo/public/c/system/message_pipe.h | 100 +++++++--
mojo/public/c/system/thunks.cc | 15 +-
mojo/public/c/system/thunks.h | 6 +
mojo/public/cpp/bindings/lib/buffer.cc | 12 +-
.../cpp/bindings/tests/validation_unittest.cc | 4 +
mojo/public/cpp/system/message_pipe.cc | 5 +
14 files changed, 482 insertions(+), 114 deletions(-)

Upstream: git.chromium.org


  • Share