Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(555)

Unified Diff: mojo/nacl/sfi/nacl_bindings/mojo_irt.c

Issue 1859123003: Add Mojo{Set,Get}DataPipeConsumerOptions() to the NaCl system thunks. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/nacl/nonsfi/irt_mojo_nonsfi.cc ('k') | mojo/nacl/sfi/nacl_bindings/mojo_syscall.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/nacl/sfi/nacl_bindings/mojo_irt.c
diff --git a/mojo/nacl/sfi/nacl_bindings/mojo_irt.c b/mojo/nacl/sfi/nacl_bindings/mojo_irt.c
index 8fbc1c5d7dfcf20e6c3d871534fd28a9db73512c..9c451a69c277dcf38857d2ca84109330027610af 100644
--- a/mojo/nacl/sfi/nacl_bindings/mojo_irt.c
+++ b/mojo/nacl/sfi/nacl_bindings/mojo_irt.c
@@ -214,6 +214,34 @@ static MojoResult irt_MojoEndWriteData(
return result;
};
+static MojoResult irt_MojoSetDataPipeConsumerOptions(
+ MojoHandle data_pipe_consumer_handle,
+ const struct MojoDataPipeConsumerOptions* options) {
+ uint32_t params[4];
+ MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
+ params[0] = 12;
+ params[1] = (uint32_t)(&data_pipe_consumer_handle);
+ params[2] = (uint32_t)(options);
+ params[3] = (uint32_t)(&result);
+ DoMojoCall(params, sizeof(params));
+ return result;
+};
+
+static MojoResult irt_MojoGetDataPipeConsumerOptions(
+ MojoHandle data_pipe_consumer_handle,
+ struct MojoDataPipeConsumerOptions* options,
+ uint32_t options_num_bytes) {
+ uint32_t params[5];
+ MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
+ params[0] = 13;
+ params[1] = (uint32_t)(&data_pipe_consumer_handle);
+ params[2] = (uint32_t)(options);
+ params[3] = (uint32_t)(&options_num_bytes);
+ params[4] = (uint32_t)(&result);
+ DoMojoCall(params, sizeof(params));
+ return result;
+};
+
static MojoResult irt_MojoReadData(
MojoHandle data_pipe_consumer_handle,
void* elements,
@@ -221,7 +249,7 @@ static MojoResult irt_MojoReadData(
MojoReadDataFlags flags) {
uint32_t params[6];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 12;
+ params[0] = 14;
params[1] = (uint32_t)(&data_pipe_consumer_handle);
params[2] = (uint32_t)(elements);
params[3] = (uint32_t)(num_bytes);
@@ -238,7 +266,7 @@ static MojoResult irt_MojoBeginReadData(
MojoReadDataFlags flags) {
uint32_t params[6];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 13;
+ params[0] = 15;
params[1] = (uint32_t)(&data_pipe_consumer_handle);
params[2] = (uint32_t)(buffer);
params[3] = (uint32_t)(buffer_num_bytes);
@@ -253,7 +281,7 @@ static MojoResult irt_MojoEndReadData(
uint32_t num_bytes_read) {
uint32_t params[4];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 14;
+ params[0] = 16;
params[1] = (uint32_t)(&data_pipe_consumer_handle);
params[2] = (uint32_t)(&num_bytes_read);
params[3] = (uint32_t)(&result);
@@ -267,7 +295,7 @@ static MojoResult irt_MojoCreateSharedBuffer(
MojoHandle* shared_buffer_handle) {
uint32_t params[5];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 15;
+ params[0] = 17;
params[1] = (uint32_t)(options);
params[2] = (uint32_t)(&num_bytes);
params[3] = (uint32_t)(shared_buffer_handle);
@@ -282,7 +310,7 @@ static MojoResult irt_MojoDuplicateBufferHandle(
MojoHandle* new_buffer_handle) {
uint32_t params[5];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 16;
+ params[0] = 18;
params[1] = (uint32_t)(&buffer_handle);
params[2] = (uint32_t)(options);
params[3] = (uint32_t)(new_buffer_handle);
@@ -297,7 +325,7 @@ static MojoResult irt_MojoGetBufferInformation(
uint32_t info_num_bytes) {
uint32_t params[5];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 17;
+ params[0] = 19;
params[1] = (uint32_t)(&buffer_handle);
params[2] = (uint32_t)(info);
params[3] = (uint32_t)(&info_num_bytes);
@@ -314,7 +342,7 @@ static MojoResult irt_MojoMapBuffer(
MojoMapBufferFlags flags) {
uint32_t params[7];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 18;
+ params[0] = 20;
params[1] = (uint32_t)(&buffer_handle);
params[2] = (uint32_t)(&offset);
params[3] = (uint32_t)(&num_bytes);
@@ -328,7 +356,7 @@ static MojoResult irt_MojoMapBuffer(
static MojoResult irt_MojoUnmapBuffer(void* buffer) {
uint32_t params[3];
MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
- params[0] = 19;
+ params[0] = 21;
params[1] = (uint32_t)(&buffer);
params[2] = (uint32_t)(&result);
DoMojoCall(params, sizeof(params));
@@ -348,6 +376,8 @@ struct nacl_irt_mojo kIrtMojo = {
&irt_MojoWriteData,
&irt_MojoBeginWriteData,
&irt_MojoEndWriteData,
+ &irt_MojoSetDataPipeConsumerOptions,
+ &irt_MojoGetDataPipeConsumerOptions,
&irt_MojoReadData,
&irt_MojoBeginReadData,
&irt_MojoEndReadData,
« no previous file with comments | « mojo/nacl/nonsfi/irt_mojo_nonsfi.cc ('k') | mojo/nacl/sfi/nacl_bindings/mojo_syscall.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698