OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 {{generator_warning}} | 5 {{generator_warning}} |
6 | 6 |
7 #include "mojo/public/c/system/core.h" | 7 #include "mojo/public/c/system/core.h" |
8 #include "native_client/src/public/chrome_main.h" | 8 #include "native_client/src/public/chrome_main.h" |
9 #include "native_client/src/public/imc_syscalls.h" | 9 #include "native_client/src/public/imc_syscalls.h" |
10 #include "native_client/src/public/imc_types.h" | 10 #include "native_client/src/public/imc_types.h" |
11 | 11 |
12 #define NACL_MOJO_DESC (NACL_CHROME_DESC_BASE + 2) | 12 // The value for this FD must not conflict with uses inside Chromium. However, |
| 13 // mojo/nacl doesn't depend on any Chromium headers, so we can't use a #define |
| 14 // from there. |
| 15 #define NACL_MOJO_DESC (NACL_CHROME_DESC_BASE + 3) |
13 | 16 |
14 static void DoMojoCall(uint32_t params[], nacl_abi_size_t num_params) { | 17 static void DoMojoCall(uint32_t params[], nacl_abi_size_t num_params) { |
15 NaClAbiNaClImcMsgIoVec iov[1] = { | 18 NaClAbiNaClImcMsgIoVec iov[1] = { |
16 {params, num_params} | 19 {params, num_params} |
17 }; | 20 }; |
18 NaClAbiNaClImcMsgHdr msgh = {iov, 1, NULL, 0}; | 21 NaClAbiNaClImcMsgHdr msgh = {iov, 1, NULL, 0}; |
19 // Note: return value unchecked. We're relying on the result parameter being | 22 // Note: return value unchecked. We're relying on the result parameter being |
20 // unmodified - if the syscall fails, the Mojo function will return whatever | 23 // unmodified - if the syscall fails, the Mojo function will return whatever |
21 // the result parameter was initialized to before this function was called. | 24 // the result parameter was initialized to before this function was called. |
22 imc_sendmsg(NACL_MOJO_DESC, &msgh, 0); | 25 imc_sendmsg(NACL_MOJO_DESC, &msgh, 0); |
23 } | 26 } |
24 | 27 |
25 {{body}} | 28 {{body}} |
OLD | NEW |