]> gitweb.factorcode.org Git - factor.git/blobdiff - vm/mach_signal.hpp
Put brackets around ipv6 addresses in `inet6 present`
[factor.git] / vm / mach_signal.hpp
index a1961359d1a58b0036b47655d0e70f96190790a3..feb0ebd58002d6a9130981671308aaeb28ff1148 100644 (file)
@@ -1,13 +1,13 @@
-/* Fault handler information.  MacOSX version.
-Copyright (C) 1993-1999, 2002-2003  Bruno Haible <clisp.org at bruno>
-Copyright (C) 2003  Paolo Bonzini <gnu.org at bonzini>
+// Fault handler information.  MacOSX version.
+// Copyright (C) 1993-1999, 2002-2003  Bruno Haible <clisp.org at bruno>
+// Copyright (C) 2003  Paolo Bonzini <gnu.org at bonzini>
 
-Used under BSD license with permission from Paolo Bonzini and Bruno Haible,
-2005-03-10:
+// Used under BSD license with permission from Paolo Bonzini and Bruno Haible,
+// 2005-03-10:
 
-http://sourceforge.net/mailarchive/message.php?msg_name=200503102200.32002.bruno%40clisp.org
+// http://sourceforge.net/mailarchive/message.php?msg_name=200503102200.32002.bruno%40clisp.org
 
-Modified for Factor by Slava Pestov */
+// Modified for Factor by Slava Pestov
 #include <stdio.h>
 #include <stdlib.h>
 #include <errno.h>
@@ -20,64 +20,44 @@ Modified for Factor by Slava Pestov */
 #include <mach/task.h>
 #include <pthread.h>
 
-/* This is not defined in any header, although documented.  */
-
-/* http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/exc_server.html says:
-   The exc_server function is the MIG generated server handling function
-   to handle messages from the kernel relating to the occurrence of an
-   exception in a thread. Such messages are delivered to the exception port
-   set via thread_set_exception_ports or task_set_exception_ports. When an
-   exception occurs in a thread, the thread sends an exception message to its
-   exception port, blocking in the kernel waiting for the receipt of a reply.
-   The exc_server function performs all necessary argument handling for this
-   kernel message and calls catch_exception_raise, catch_exception_raise_state
-   or catch_exception_raise_state_identity, which should handle the exception.
-   If the called routine returns KERN_SUCCESS, a reply message will be sent,
-   allowing the thread to continue from the point of the exception; otherwise,
-   no reply message is sent and the called routine must have dealt with the
-   exception thread directly.  */
-extern "C" boolean_t exc_server (mach_msg_header_t *request_msg, mach_msg_header_t *reply_msg);
-
-/* http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/catch_exception_raise.html
-   These functions are defined in this file, and called by exc_server.
-   FIXME: What needs to be done when this code is put into a shared library? */
-extern "C"
-kern_return_t
-catch_exception_raise (mach_port_t exception_port,
-                      mach_port_t thread,
-                      mach_port_t task,
-                      exception_type_t exception,
-                      exception_data_t code,
-                      mach_msg_type_number_t code_count);
-extern "C"
-kern_return_t
-catch_exception_raise_state (mach_port_t exception_port,
-                            exception_type_t exception,
-                            exception_data_t code,
-                            mach_msg_type_number_t code_count,
-                            thread_state_flavor_t *flavor,
-                            thread_state_t in_state,
-                            mach_msg_type_number_t in_state_count,
-                            thread_state_t out_state,
-                            mach_msg_type_number_t *out_state_count);
-
-extern "C"
-kern_return_t
-catch_exception_raise_state_identity (mach_port_t exception_port,
-                                     mach_port_t thread,
-                                     mach_port_t task,
-                                     exception_type_t exception,
-                                     exception_data_t code,
-                                     mach_msg_type_number_t codeCnt,
-                                     thread_state_flavor_t *flavor,
-                                     thread_state_t in_state,
-                                     mach_msg_type_number_t in_state_count,
-                                     thread_state_t out_state,
-                                     mach_msg_type_number_t *out_state_count);
-
-namespace factor
-{
-
-void mach_initialize ();
-
-}
+// This is not defined in any header, although documented.
+
+// http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/exc_server.html says:
+// The exc_server function is the MIG generated server handling function
+// to handle messages from the kernel relating to the occurrence of an
+// exception in a thread. Such messages are delivered to the exception port
+// set via thread_set_exception_ports or task_set_exception_ports. When an
+// exception occurs in a thread, the thread sends an exception message to its
+// exception port, blocking in the kernel waiting for the receipt of a reply.
+// The exc_server function performs all necessary argument handling for this
+// kernel message and calls catch_exception_raise, catch_exception_raise_state
+// or catch_exception_raise_state_identity, which should handle the exception.
+// If the called routine returns KERN_SUCCESS, a reply message will be sent,
+// allowing the thread to continue from the point of the exception; otherwise,
+// no reply message is sent and the called routine must have dealt with the
+// exception thread directly.
+extern "C" boolean_t exc_server(mach_msg_header_t* request_msg,
+                                mach_msg_header_t* reply_msg);
+
+// http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/catch_exception_raise.html
+// These functions are defined in this file, and called by exc_server.
+// FIXME: What needs to be done when this code is put into a shared library?
+extern "C" kern_return_t catch_exception_raise(
+    mach_port_t exception_port, mach_port_t thread, mach_port_t task,
+    exception_type_t exception, exception_data_t code,
+    mach_msg_type_number_t code_count);
+extern "C" kern_return_t catch_exception_raise_state(
+    mach_port_t exception_port, exception_type_t exception,
+    exception_data_t code, mach_msg_type_number_t code_count,
+    thread_state_flavor_t* flavor, thread_state_t in_state,
+    mach_msg_type_number_t in_state_count, thread_state_t out_state,
+    mach_msg_type_number_t* out_state_count);
+
+extern "C" kern_return_t catch_exception_raise_state_identity(
+    mach_port_t exception_port, mach_port_t thread, mach_port_t task,
+    exception_type_t exception, exception_data_t code,
+    mach_msg_type_number_t codeCnt, thread_state_flavor_t* flavor,
+    thread_state_t in_state, mach_msg_type_number_t in_state_count,
+    thread_state_t out_state, mach_msg_type_number_t* out_state_count);
+
+namespace factor { void mach_initialize(); }