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

Side by Side Diff: mojo/nacl/sfi/nacl_bindings/mojo_irt.c

Issue 1993283002: Add thunks for MojoGetRights(), etc. (Closed) Base URL: https://github.com/domokit/mojo.git@work795_core_get_rights
Patch Set: I'm an idiot Created 4 years, 7 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 unified diff | 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 »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // WARNING this file was generated by generate_nacl_bindings.py 5 // WARNING this file was generated by generate_nacl_bindings.py
6 // Do not edit by hand. 6 // Do not edit by hand.
7 7
8 #include "mojo/public/platform/nacl/mojo_irt.h" 8 #include "mojo/public/platform/nacl/mojo_irt.h"
9 9
10 #include <stdio.h> 10 #include <stdio.h>
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 static MojoResult irt_MojoClose(MojoHandle handle) { 50 static MojoResult irt_MojoClose(MojoHandle handle) {
51 uint32_t params[3]; 51 uint32_t params[3];
52 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 52 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
53 params[0] = 2; 53 params[0] = 2;
54 params[1] = (uint32_t)(&handle); 54 params[1] = (uint32_t)(&handle);
55 params[2] = (uint32_t)(&result); 55 params[2] = (uint32_t)(&result);
56 DoMojoCall(params, sizeof(params)); 56 DoMojoCall(params, sizeof(params));
57 return result; 57 return result;
58 }; 58 };
59 59
60 static MojoResult irt_MojoGetRights(
61 MojoHandle handle,
62 MojoHandleRights* rights) {
63 uint32_t params[4];
64 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
65 params[0] = 3;
66 params[1] = (uint32_t)(&handle);
67 params[2] = (uint32_t)(rights);
68 params[3] = (uint32_t)(&result);
69 DoMojoCall(params, sizeof(params));
70 return result;
71 };
72
60 static MojoResult irt_MojoWait( 73 static MojoResult irt_MojoWait(
61 MojoHandle handle, 74 MojoHandle handle,
62 MojoHandleSignals signals, 75 MojoHandleSignals signals,
63 MojoDeadline deadline, 76 MojoDeadline deadline,
64 struct MojoHandleSignalsState* signals_state) { 77 struct MojoHandleSignalsState* signals_state) {
65 uint32_t params[6]; 78 uint32_t params[6];
66 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 79 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
67 params[0] = 3; 80 params[0] = 4;
68 params[1] = (uint32_t)(&handle); 81 params[1] = (uint32_t)(&handle);
69 params[2] = (uint32_t)(&signals); 82 params[2] = (uint32_t)(&signals);
70 params[3] = (uint32_t)(&deadline); 83 params[3] = (uint32_t)(&deadline);
71 params[4] = (uint32_t)(signals_state); 84 params[4] = (uint32_t)(signals_state);
72 params[5] = (uint32_t)(&result); 85 params[5] = (uint32_t)(&result);
73 DoMojoCall(params, sizeof(params)); 86 DoMojoCall(params, sizeof(params));
74 return result; 87 return result;
75 }; 88 };
76 89
77 static MojoResult irt_MojoWaitMany( 90 static MojoResult irt_MojoWaitMany(
78 const MojoHandle* handles, 91 const MojoHandle* handles,
79 const MojoHandleSignals* signals, 92 const MojoHandleSignals* signals,
80 uint32_t num_handles, 93 uint32_t num_handles,
81 MojoDeadline deadline, 94 MojoDeadline deadline,
82 uint32_t* result_index, 95 uint32_t* result_index,
83 struct MojoHandleSignalsState* signals_states) { 96 struct MojoHandleSignalsState* signals_states) {
84 uint32_t params[8]; 97 uint32_t params[8];
85 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 98 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
86 params[0] = 4; 99 params[0] = 5;
87 params[1] = (uint32_t)(handles); 100 params[1] = (uint32_t)(handles);
88 params[2] = (uint32_t)(signals); 101 params[2] = (uint32_t)(signals);
89 params[3] = (uint32_t)(&num_handles); 102 params[3] = (uint32_t)(&num_handles);
90 params[4] = (uint32_t)(&deadline); 103 params[4] = (uint32_t)(&deadline);
91 params[5] = (uint32_t)(result_index); 104 params[5] = (uint32_t)(result_index);
92 params[6] = (uint32_t)(signals_states); 105 params[6] = (uint32_t)(signals_states);
93 params[7] = (uint32_t)(&result); 106 params[7] = (uint32_t)(&result);
94 DoMojoCall(params, sizeof(params)); 107 DoMojoCall(params, sizeof(params));
95 return result; 108 return result;
96 }; 109 };
97 110
98 static MojoResult irt_MojoCreateMessagePipe( 111 static MojoResult irt_MojoCreateMessagePipe(
99 const struct MojoCreateMessagePipeOptions* options, 112 const struct MojoCreateMessagePipeOptions* options,
100 MojoHandle* message_pipe_handle0, 113 MojoHandle* message_pipe_handle0,
101 MojoHandle* message_pipe_handle1) { 114 MojoHandle* message_pipe_handle1) {
102 uint32_t params[5]; 115 uint32_t params[5];
103 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 116 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
104 params[0] = 5; 117 params[0] = 6;
105 params[1] = (uint32_t)(options); 118 params[1] = (uint32_t)(options);
106 params[2] = (uint32_t)(message_pipe_handle0); 119 params[2] = (uint32_t)(message_pipe_handle0);
107 params[3] = (uint32_t)(message_pipe_handle1); 120 params[3] = (uint32_t)(message_pipe_handle1);
108 params[4] = (uint32_t)(&result); 121 params[4] = (uint32_t)(&result);
109 DoMojoCall(params, sizeof(params)); 122 DoMojoCall(params, sizeof(params));
110 return result; 123 return result;
111 }; 124 };
112 125
113 static MojoResult irt_MojoWriteMessage( 126 static MojoResult irt_MojoWriteMessage(
114 MojoHandle message_pipe_handle, 127 MojoHandle message_pipe_handle,
115 const void* bytes, 128 const void* bytes,
116 uint32_t num_bytes, 129 uint32_t num_bytes,
117 const MojoHandle* handles, 130 const MojoHandle* handles,
118 uint32_t num_handles, 131 uint32_t num_handles,
119 MojoWriteMessageFlags flags) { 132 MojoWriteMessageFlags flags) {
120 uint32_t params[8]; 133 uint32_t params[8];
121 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 134 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
122 params[0] = 6; 135 params[0] = 7;
123 params[1] = (uint32_t)(&message_pipe_handle); 136 params[1] = (uint32_t)(&message_pipe_handle);
124 params[2] = (uint32_t)(bytes); 137 params[2] = (uint32_t)(bytes);
125 params[3] = (uint32_t)(&num_bytes); 138 params[3] = (uint32_t)(&num_bytes);
126 params[4] = (uint32_t)(handles); 139 params[4] = (uint32_t)(handles);
127 params[5] = (uint32_t)(&num_handles); 140 params[5] = (uint32_t)(&num_handles);
128 params[6] = (uint32_t)(&flags); 141 params[6] = (uint32_t)(&flags);
129 params[7] = (uint32_t)(&result); 142 params[7] = (uint32_t)(&result);
130 DoMojoCall(params, sizeof(params)); 143 DoMojoCall(params, sizeof(params));
131 return result; 144 return result;
132 }; 145 };
133 146
134 static MojoResult irt_MojoReadMessage( 147 static MojoResult irt_MojoReadMessage(
135 MojoHandle message_pipe_handle, 148 MojoHandle message_pipe_handle,
136 void* bytes, 149 void* bytes,
137 uint32_t* num_bytes, 150 uint32_t* num_bytes,
138 MojoHandle* handles, 151 MojoHandle* handles,
139 uint32_t* num_handles, 152 uint32_t* num_handles,
140 MojoReadMessageFlags flags) { 153 MojoReadMessageFlags flags) {
141 uint32_t params[8]; 154 uint32_t params[8];
142 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 155 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
143 params[0] = 7; 156 params[0] = 8;
144 params[1] = (uint32_t)(&message_pipe_handle); 157 params[1] = (uint32_t)(&message_pipe_handle);
145 params[2] = (uint32_t)(bytes); 158 params[2] = (uint32_t)(bytes);
146 params[3] = (uint32_t)(num_bytes); 159 params[3] = (uint32_t)(num_bytes);
147 params[4] = (uint32_t)(handles); 160 params[4] = (uint32_t)(handles);
148 params[5] = (uint32_t)(num_handles); 161 params[5] = (uint32_t)(num_handles);
149 params[6] = (uint32_t)(&flags); 162 params[6] = (uint32_t)(&flags);
150 params[7] = (uint32_t)(&result); 163 params[7] = (uint32_t)(&result);
151 DoMojoCall(params, sizeof(params)); 164 DoMojoCall(params, sizeof(params));
152 return result; 165 return result;
153 }; 166 };
154 167
155 static MojoResult irt_MojoCreateDataPipe( 168 static MojoResult irt_MojoCreateDataPipe(
156 const struct MojoCreateDataPipeOptions* options, 169 const struct MojoCreateDataPipeOptions* options,
157 MojoHandle* data_pipe_producer_handle, 170 MojoHandle* data_pipe_producer_handle,
158 MojoHandle* data_pipe_consumer_handle) { 171 MojoHandle* data_pipe_consumer_handle) {
159 uint32_t params[5]; 172 uint32_t params[5];
160 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 173 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
161 params[0] = 8; 174 params[0] = 9;
162 params[1] = (uint32_t)(options); 175 params[1] = (uint32_t)(options);
163 params[2] = (uint32_t)(data_pipe_producer_handle); 176 params[2] = (uint32_t)(data_pipe_producer_handle);
164 params[3] = (uint32_t)(data_pipe_consumer_handle); 177 params[3] = (uint32_t)(data_pipe_consumer_handle);
165 params[4] = (uint32_t)(&result); 178 params[4] = (uint32_t)(&result);
166 DoMojoCall(params, sizeof(params)); 179 DoMojoCall(params, sizeof(params));
167 return result; 180 return result;
168 }; 181 };
169 182
170 static MojoResult irt_MojoSetDataPipeProducerOptions( 183 static MojoResult irt_MojoSetDataPipeProducerOptions(
171 MojoHandle data_pipe_producer_handle, 184 MojoHandle data_pipe_producer_handle,
172 const struct MojoDataPipeProducerOptions* options) { 185 const struct MojoDataPipeProducerOptions* options) {
173 uint32_t params[4]; 186 uint32_t params[4];
174 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 187 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
175 params[0] = 9; 188 params[0] = 10;
176 params[1] = (uint32_t)(&data_pipe_producer_handle); 189 params[1] = (uint32_t)(&data_pipe_producer_handle);
177 params[2] = (uint32_t)(options); 190 params[2] = (uint32_t)(options);
178 params[3] = (uint32_t)(&result); 191 params[3] = (uint32_t)(&result);
179 DoMojoCall(params, sizeof(params)); 192 DoMojoCall(params, sizeof(params));
180 return result; 193 return result;
181 }; 194 };
182 195
183 static MojoResult irt_MojoGetDataPipeProducerOptions( 196 static MojoResult irt_MojoGetDataPipeProducerOptions(
184 MojoHandle data_pipe_producer_handle, 197 MojoHandle data_pipe_producer_handle,
185 struct MojoDataPipeProducerOptions* options, 198 struct MojoDataPipeProducerOptions* options,
186 uint32_t options_num_bytes) { 199 uint32_t options_num_bytes) {
187 uint32_t params[5]; 200 uint32_t params[5];
188 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 201 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
189 params[0] = 10; 202 params[0] = 11;
190 params[1] = (uint32_t)(&data_pipe_producer_handle); 203 params[1] = (uint32_t)(&data_pipe_producer_handle);
191 params[2] = (uint32_t)(options); 204 params[2] = (uint32_t)(options);
192 params[3] = (uint32_t)(&options_num_bytes); 205 params[3] = (uint32_t)(&options_num_bytes);
193 params[4] = (uint32_t)(&result); 206 params[4] = (uint32_t)(&result);
194 DoMojoCall(params, sizeof(params)); 207 DoMojoCall(params, sizeof(params));
195 return result; 208 return result;
196 }; 209 };
197 210
198 static MojoResult irt_MojoWriteData( 211 static MojoResult irt_MojoWriteData(
199 MojoHandle data_pipe_producer_handle, 212 MojoHandle data_pipe_producer_handle,
200 const void* elements, 213 const void* elements,
201 uint32_t* num_bytes, 214 uint32_t* num_bytes,
202 MojoWriteDataFlags flags) { 215 MojoWriteDataFlags flags) {
203 uint32_t params[6]; 216 uint32_t params[6];
204 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 217 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
205 params[0] = 11; 218 params[0] = 12;
206 params[1] = (uint32_t)(&data_pipe_producer_handle); 219 params[1] = (uint32_t)(&data_pipe_producer_handle);
207 params[2] = (uint32_t)(elements); 220 params[2] = (uint32_t)(elements);
208 params[3] = (uint32_t)(num_bytes); 221 params[3] = (uint32_t)(num_bytes);
209 params[4] = (uint32_t)(&flags); 222 params[4] = (uint32_t)(&flags);
210 params[5] = (uint32_t)(&result); 223 params[5] = (uint32_t)(&result);
211 DoMojoCall(params, sizeof(params)); 224 DoMojoCall(params, sizeof(params));
212 return result; 225 return result;
213 }; 226 };
214 227
215 static MojoResult irt_MojoBeginWriteData( 228 static MojoResult irt_MojoBeginWriteData(
216 MojoHandle data_pipe_producer_handle, 229 MojoHandle data_pipe_producer_handle,
217 void** buffer, 230 void** buffer,
218 uint32_t* buffer_num_bytes, 231 uint32_t* buffer_num_bytes,
219 MojoWriteDataFlags flags) { 232 MojoWriteDataFlags flags) {
220 uint32_t params[6]; 233 uint32_t params[6];
221 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 234 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
222 params[0] = 12; 235 params[0] = 13;
223 params[1] = (uint32_t)(&data_pipe_producer_handle); 236 params[1] = (uint32_t)(&data_pipe_producer_handle);
224 params[2] = (uint32_t)(buffer); 237 params[2] = (uint32_t)(buffer);
225 params[3] = (uint32_t)(buffer_num_bytes); 238 params[3] = (uint32_t)(buffer_num_bytes);
226 params[4] = (uint32_t)(&flags); 239 params[4] = (uint32_t)(&flags);
227 params[5] = (uint32_t)(&result); 240 params[5] = (uint32_t)(&result);
228 DoMojoCall(params, sizeof(params)); 241 DoMojoCall(params, sizeof(params));
229 return result; 242 return result;
230 }; 243 };
231 244
232 static MojoResult irt_MojoEndWriteData( 245 static MojoResult irt_MojoEndWriteData(
233 MojoHandle data_pipe_producer_handle, 246 MojoHandle data_pipe_producer_handle,
234 uint32_t num_bytes_written) { 247 uint32_t num_bytes_written) {
235 uint32_t params[4]; 248 uint32_t params[4];
236 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 249 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
237 params[0] = 13; 250 params[0] = 14;
238 params[1] = (uint32_t)(&data_pipe_producer_handle); 251 params[1] = (uint32_t)(&data_pipe_producer_handle);
239 params[2] = (uint32_t)(&num_bytes_written); 252 params[2] = (uint32_t)(&num_bytes_written);
240 params[3] = (uint32_t)(&result); 253 params[3] = (uint32_t)(&result);
241 DoMojoCall(params, sizeof(params)); 254 DoMojoCall(params, sizeof(params));
242 return result; 255 return result;
243 }; 256 };
244 257
245 static MojoResult irt_MojoSetDataPipeConsumerOptions( 258 static MojoResult irt_MojoSetDataPipeConsumerOptions(
246 MojoHandle data_pipe_consumer_handle, 259 MojoHandle data_pipe_consumer_handle,
247 const struct MojoDataPipeConsumerOptions* options) { 260 const struct MojoDataPipeConsumerOptions* options) {
248 uint32_t params[4]; 261 uint32_t params[4];
249 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 262 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
250 params[0] = 14; 263 params[0] = 15;
251 params[1] = (uint32_t)(&data_pipe_consumer_handle); 264 params[1] = (uint32_t)(&data_pipe_consumer_handle);
252 params[2] = (uint32_t)(options); 265 params[2] = (uint32_t)(options);
253 params[3] = (uint32_t)(&result); 266 params[3] = (uint32_t)(&result);
254 DoMojoCall(params, sizeof(params)); 267 DoMojoCall(params, sizeof(params));
255 return result; 268 return result;
256 }; 269 };
257 270
258 static MojoResult irt_MojoGetDataPipeConsumerOptions( 271 static MojoResult irt_MojoGetDataPipeConsumerOptions(
259 MojoHandle data_pipe_consumer_handle, 272 MojoHandle data_pipe_consumer_handle,
260 struct MojoDataPipeConsumerOptions* options, 273 struct MojoDataPipeConsumerOptions* options,
261 uint32_t options_num_bytes) { 274 uint32_t options_num_bytes) {
262 uint32_t params[5]; 275 uint32_t params[5];
263 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 276 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
264 params[0] = 15; 277 params[0] = 16;
265 params[1] = (uint32_t)(&data_pipe_consumer_handle); 278 params[1] = (uint32_t)(&data_pipe_consumer_handle);
266 params[2] = (uint32_t)(options); 279 params[2] = (uint32_t)(options);
267 params[3] = (uint32_t)(&options_num_bytes); 280 params[3] = (uint32_t)(&options_num_bytes);
268 params[4] = (uint32_t)(&result); 281 params[4] = (uint32_t)(&result);
269 DoMojoCall(params, sizeof(params)); 282 DoMojoCall(params, sizeof(params));
270 return result; 283 return result;
271 }; 284 };
272 285
273 static MojoResult irt_MojoReadData( 286 static MojoResult irt_MojoReadData(
274 MojoHandle data_pipe_consumer_handle, 287 MojoHandle data_pipe_consumer_handle,
275 void* elements, 288 void* elements,
276 uint32_t* num_bytes, 289 uint32_t* num_bytes,
277 MojoReadDataFlags flags) { 290 MojoReadDataFlags flags) {
278 uint32_t params[6]; 291 uint32_t params[6];
279 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 292 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
280 params[0] = 16; 293 params[0] = 17;
281 params[1] = (uint32_t)(&data_pipe_consumer_handle); 294 params[1] = (uint32_t)(&data_pipe_consumer_handle);
282 params[2] = (uint32_t)(elements); 295 params[2] = (uint32_t)(elements);
283 params[3] = (uint32_t)(num_bytes); 296 params[3] = (uint32_t)(num_bytes);
284 params[4] = (uint32_t)(&flags); 297 params[4] = (uint32_t)(&flags);
285 params[5] = (uint32_t)(&result); 298 params[5] = (uint32_t)(&result);
286 DoMojoCall(params, sizeof(params)); 299 DoMojoCall(params, sizeof(params));
287 return result; 300 return result;
288 }; 301 };
289 302
290 static MojoResult irt_MojoBeginReadData( 303 static MojoResult irt_MojoBeginReadData(
291 MojoHandle data_pipe_consumer_handle, 304 MojoHandle data_pipe_consumer_handle,
292 const void** buffer, 305 const void** buffer,
293 uint32_t* buffer_num_bytes, 306 uint32_t* buffer_num_bytes,
294 MojoReadDataFlags flags) { 307 MojoReadDataFlags flags) {
295 uint32_t params[6]; 308 uint32_t params[6];
296 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 309 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
297 params[0] = 17; 310 params[0] = 18;
298 params[1] = (uint32_t)(&data_pipe_consumer_handle); 311 params[1] = (uint32_t)(&data_pipe_consumer_handle);
299 params[2] = (uint32_t)(buffer); 312 params[2] = (uint32_t)(buffer);
300 params[3] = (uint32_t)(buffer_num_bytes); 313 params[3] = (uint32_t)(buffer_num_bytes);
301 params[4] = (uint32_t)(&flags); 314 params[4] = (uint32_t)(&flags);
302 params[5] = (uint32_t)(&result); 315 params[5] = (uint32_t)(&result);
303 DoMojoCall(params, sizeof(params)); 316 DoMojoCall(params, sizeof(params));
304 return result; 317 return result;
305 }; 318 };
306 319
307 static MojoResult irt_MojoEndReadData( 320 static MojoResult irt_MojoEndReadData(
308 MojoHandle data_pipe_consumer_handle, 321 MojoHandle data_pipe_consumer_handle,
309 uint32_t num_bytes_read) { 322 uint32_t num_bytes_read) {
310 uint32_t params[4]; 323 uint32_t params[4];
311 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 324 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
312 params[0] = 18; 325 params[0] = 19;
313 params[1] = (uint32_t)(&data_pipe_consumer_handle); 326 params[1] = (uint32_t)(&data_pipe_consumer_handle);
314 params[2] = (uint32_t)(&num_bytes_read); 327 params[2] = (uint32_t)(&num_bytes_read);
315 params[3] = (uint32_t)(&result); 328 params[3] = (uint32_t)(&result);
316 DoMojoCall(params, sizeof(params)); 329 DoMojoCall(params, sizeof(params));
317 return result; 330 return result;
318 }; 331 };
319 332
320 static MojoResult irt_MojoCreateSharedBuffer( 333 static MojoResult irt_MojoCreateSharedBuffer(
321 const struct MojoCreateSharedBufferOptions* options, 334 const struct MojoCreateSharedBufferOptions* options,
322 uint64_t num_bytes, 335 uint64_t num_bytes,
323 MojoHandle* shared_buffer_handle) { 336 MojoHandle* shared_buffer_handle) {
324 uint32_t params[5]; 337 uint32_t params[5];
325 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 338 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
326 params[0] = 19; 339 params[0] = 20;
327 params[1] = (uint32_t)(options); 340 params[1] = (uint32_t)(options);
328 params[2] = (uint32_t)(&num_bytes); 341 params[2] = (uint32_t)(&num_bytes);
329 params[3] = (uint32_t)(shared_buffer_handle); 342 params[3] = (uint32_t)(shared_buffer_handle);
330 params[4] = (uint32_t)(&result); 343 params[4] = (uint32_t)(&result);
331 DoMojoCall(params, sizeof(params)); 344 DoMojoCall(params, sizeof(params));
332 return result; 345 return result;
333 }; 346 };
334 347
335 static MojoResult irt_MojoDuplicateBufferHandle( 348 static MojoResult irt_MojoDuplicateBufferHandle(
336 MojoHandle buffer_handle, 349 MojoHandle buffer_handle,
337 const struct MojoDuplicateBufferHandleOptions* options, 350 const struct MojoDuplicateBufferHandleOptions* options,
338 MojoHandle* new_buffer_handle) { 351 MojoHandle* new_buffer_handle) {
339 uint32_t params[5]; 352 uint32_t params[5];
340 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 353 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
341 params[0] = 20; 354 params[0] = 21;
342 params[1] = (uint32_t)(&buffer_handle); 355 params[1] = (uint32_t)(&buffer_handle);
343 params[2] = (uint32_t)(options); 356 params[2] = (uint32_t)(options);
344 params[3] = (uint32_t)(new_buffer_handle); 357 params[3] = (uint32_t)(new_buffer_handle);
345 params[4] = (uint32_t)(&result); 358 params[4] = (uint32_t)(&result);
346 DoMojoCall(params, sizeof(params)); 359 DoMojoCall(params, sizeof(params));
347 return result; 360 return result;
348 }; 361 };
349 362
350 static MojoResult irt_MojoGetBufferInformation( 363 static MojoResult irt_MojoGetBufferInformation(
351 MojoHandle buffer_handle, 364 MojoHandle buffer_handle,
352 struct MojoBufferInformation* info, 365 struct MojoBufferInformation* info,
353 uint32_t info_num_bytes) { 366 uint32_t info_num_bytes) {
354 uint32_t params[5]; 367 uint32_t params[5];
355 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 368 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
356 params[0] = 21; 369 params[0] = 22;
357 params[1] = (uint32_t)(&buffer_handle); 370 params[1] = (uint32_t)(&buffer_handle);
358 params[2] = (uint32_t)(info); 371 params[2] = (uint32_t)(info);
359 params[3] = (uint32_t)(&info_num_bytes); 372 params[3] = (uint32_t)(&info_num_bytes);
360 params[4] = (uint32_t)(&result); 373 params[4] = (uint32_t)(&result);
361 DoMojoCall(params, sizeof(params)); 374 DoMojoCall(params, sizeof(params));
362 return result; 375 return result;
363 }; 376 };
364 377
365 static MojoResult irt_MojoMapBuffer( 378 static MojoResult irt_MojoMapBuffer(
366 MojoHandle buffer_handle, 379 MojoHandle buffer_handle,
367 uint64_t offset, 380 uint64_t offset,
368 uint64_t num_bytes, 381 uint64_t num_bytes,
369 void** buffer, 382 void** buffer,
370 MojoMapBufferFlags flags) { 383 MojoMapBufferFlags flags) {
371 uint32_t params[7]; 384 uint32_t params[7];
372 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 385 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
373 params[0] = 22; 386 params[0] = 23;
374 params[1] = (uint32_t)(&buffer_handle); 387 params[1] = (uint32_t)(&buffer_handle);
375 params[2] = (uint32_t)(&offset); 388 params[2] = (uint32_t)(&offset);
376 params[3] = (uint32_t)(&num_bytes); 389 params[3] = (uint32_t)(&num_bytes);
377 params[4] = (uint32_t)(buffer); 390 params[4] = (uint32_t)(buffer);
378 params[5] = (uint32_t)(&flags); 391 params[5] = (uint32_t)(&flags);
379 params[6] = (uint32_t)(&result); 392 params[6] = (uint32_t)(&result);
380 DoMojoCall(params, sizeof(params)); 393 DoMojoCall(params, sizeof(params));
381 return result; 394 return result;
382 }; 395 };
383 396
384 static MojoResult irt_MojoUnmapBuffer(void* buffer) { 397 static MojoResult irt_MojoUnmapBuffer(void* buffer) {
385 uint32_t params[3]; 398 uint32_t params[3];
386 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT; 399 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
387 params[0] = 23; 400 params[0] = 24;
388 params[1] = (uint32_t)(&buffer); 401 params[1] = (uint32_t)(&buffer);
389 params[2] = (uint32_t)(&result); 402 params[2] = (uint32_t)(&result);
390 DoMojoCall(params, sizeof(params)); 403 DoMojoCall(params, sizeof(params));
391 return result; 404 return result;
392 }; 405 };
393 406
394 struct nacl_irt_mojo kIrtMojo = { 407 struct nacl_irt_mojo kIrtMojo = {
395 &irt__MojoGetInitialHandle, 408 &irt__MojoGetInitialHandle,
396 &irt_MojoGetTimeTicksNow, 409 &irt_MojoGetTimeTicksNow,
397 &irt_MojoClose, 410 &irt_MojoClose,
411 &irt_MojoGetRights,
398 &irt_MojoWait, 412 &irt_MojoWait,
399 &irt_MojoWaitMany, 413 &irt_MojoWaitMany,
400 &irt_MojoCreateMessagePipe, 414 &irt_MojoCreateMessagePipe,
401 &irt_MojoWriteMessage, 415 &irt_MojoWriteMessage,
402 &irt_MojoReadMessage, 416 &irt_MojoReadMessage,
403 &irt_MojoCreateDataPipe, 417 &irt_MojoCreateDataPipe,
404 &irt_MojoSetDataPipeProducerOptions, 418 &irt_MojoSetDataPipeProducerOptions,
405 &irt_MojoGetDataPipeProducerOptions, 419 &irt_MojoGetDataPipeProducerOptions,
406 &irt_MojoWriteData, 420 &irt_MojoWriteData,
407 &irt_MojoBeginWriteData, 421 &irt_MojoBeginWriteData,
(...skipping 16 matching lines...) Expand all
424 size_t tablesize) { 438 size_t tablesize) {
425 static const size_t size = sizeof(kIrtMojo); 439 static const size_t size = sizeof(kIrtMojo);
426 if (0 == strcmp(interface_ident, NACL_IRT_MOJO_v0_1)) { 440 if (0 == strcmp(interface_ident, NACL_IRT_MOJO_v0_1)) {
427 if (size <= tablesize) { 441 if (size <= tablesize) {
428 memcpy(table, &kIrtMojo, size); 442 memcpy(table, &kIrtMojo, size);
429 return size; 443 return size;
430 } 444 }
431 } 445 }
432 return 0; 446 return 0;
433 } 447 }
OLDNEW
« 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