Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 /* | |
| 2 * Copyright (c) 2015 The Native Client Authors. All rights reserved. | |
| 3 * Use of this source code is governed by a BSD-style license that can be | |
| 4 * found in the LICENSE file. | |
| 5 */ | |
| 6 | |
| 7 /* | |
| 8 * NaCl Async Signal Support | |
| 9 */ | |
| 10 | |
| 11 #ifndef __NATIVE_CLIENT_SRC_SERVICE_RUNTIME_INCLUDE_SYS_NACL_SIGNAL_H__ | |
| 12 #define __NATIVE_CLIENT_SRC_SERVICE_RUNTIME_INCLUDE_SYS_NACL_SIGNAL_H__ 1 | |
| 13 | |
| 14 #if defined(__cplusplus) | |
| 15 extern "C" { | |
| 16 #endif | |
| 17 | |
|
Mark Seaborn
2015/07/16 23:21:16
For documentation, could you add a text file in do
Luis Héctor Chávez
2015/07/20 18:13:46
Done.
| |
| 18 struct NaClExceptionContext; | |
| 19 typedef void (*nacl_signal_handler_t)(struct NaClExceptionContext *context); | |
| 20 | |
| 21 /* | |
| 22 * Sets the global signal handler. | |
|
Mark Seaborn
2015/07/16 23:21:16
Generally, everywhere you say "signal" (in comment
Luis Héctor Chávez
2015/07/20 18:13:46
Merged the docs with unrusted/irt/irt.h
| |
| 23 * | |
| 24 * NaCl applications can register a single, global signal handler that will be | |
|
Mark Seaborn
2015/07/16 23:21:16
These comments are duplicating those in irt.h. Ho
Luis Héctor Chávez
2015/07/20 18:13:46
Done.
| |
| 25 * invoked on the thread that receives the signal. As opposed to POSIX, the | |
| 26 * signal mask is not changed upon entering/exiting the handler, so it is | |
| 27 * possible for the signal handler to be interrupted by itself, even on the same | |
| 28 * thread. Furthermore, the signal handler will run in the same thread in which | |
| 29 * the signal is delivered in the same stack. This function is not | |
| 30 * async-signal-safe, and should not be used within a signal handler. | |
| 31 * @return 0 on success. A positive errno value on error. | |
| 32 */ | |
| 33 int nacl_signal_set_handler(nacl_signal_handler_t handler); | |
|
Mark Seaborn
2015/07/16 23:21:16
The way you've currently got these functions defin
Luis Héctor Chávez
2015/07/20 18:13:46
Done.
| |
| 34 | |
| 35 /* | |
| 36 * Asynchronously delivers a signal to a thread. | |
| 37 * | |
| 38 * This function delivers a signal to the thread identified by |tid| within the | |
| 39 * same thread group as the caller. This function requires | |
| 40 * |nacl_signal_set_handler| to be called first, otherwise it will fail with | |
| 41 * ESRCH. |tid| must be a valid thread identifier obtained when creating the | |
| 42 * thread, or 0 to refer to the main thread. Using an invalid |tid| will result | |
| 43 * in undefined behavior. This function is async-signal-safe, and can be used | |
| 44 * within a signal handler. | |
| 45 * @return 0 on success. A positive errno value on error. | |
| 46 */ | |
| 47 int nacl_signal_send_async_signal(uintptr_t tid); | |
| 48 | |
| 49 #if defined(__cplusplus) | |
| 50 } | |
| 51 #endif | |
| 52 | |
| 53 #endif /* __NATIVE_CLIENT_SRC_SERVICE_RUNTIME_INCLUDE_SYS_NACL_SIGNAL_H__ */ | |
| OLD | NEW |