| OLD | NEW |
| 1 // Copyright 2014 The Crashpad Authors. All rights reserved. | 1 // Copyright 2014 The Crashpad Authors. All rights reserved. |
| 2 // | 2 // |
| 3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
| 5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
| 6 // | 6 // |
| 7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
| 8 // | 8 // |
| 9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
| 10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 | 43 |
| 44 Alternatively, on OS X, this server may be started from launchd(8), where it | 44 Alternatively, on OS X, this server may be started from launchd(8), where it |
| 45 receives the Mach service name in a *--mach-service* argument. It checks in with | 45 receives the Mach service name in a *--mach-service* argument. It checks in with |
| 46 the bootstrap server under this service name, and clients may look it up with | 46 the bootstrap server under this service name, and clients may look it up with |
| 47 the bootstrap server under this service name. It monitors this service for | 47 the bootstrap server under this service name. It monitors this service for |
| 48 exception messages. Upon receipt of +SIGTERM+, the server exits after allowing | 48 exception messages. Upon receipt of +SIGTERM+, the server exits after allowing |
| 49 any upload in progress to complete. +SIGTERM+ is normally sent by launchd(8) | 49 any upload in progress to complete. +SIGTERM+ is normally sent by launchd(8) |
| 50 when it determines that the server should exit. | 50 when it determines that the server should exit. |
| 51 | 51 |
| 52 On Windows, clients register with this server by communicating with it via the | 52 On Windows, clients register with this server by communicating with it via the |
| 53 named pipe identified by the *--pipe-name* argument. During registration, a | 53 named pipe identified by the *--pipe-name* argument. Alternatively, the server |
| 54 client provides the server with an OS event object that it will signal should it | 54 can create a new pipe with a random name and inform a client of this name via |
| 55 crash. The server obtains the client’s process handle and waits on the crash | 55 the *--handshake-handle* mechanism; clients may then register by communicating |
| 56 event object for a crash, as well as the client’s process handle for the client | 56 with it via that named pipe. During registration, a client provides the server |
| 57 to exit cleanly without crashing. When the server loses all clients and | 57 with an OS event object that it will signal should it crash. The server obtains |
| 58 *--persistent* is not specified, it exits after allowing any upload in progress | 58 the client’s process handle and waits on the crash event object for a crash, as |
| 59 to complete. | 59 well as the client’s process handle for the client to exit cleanly without |
| 60 crashing. When a server started via the *--handshake-handle* mechanism loses all |
| 61 of its clients, it exits after allowing any upload in progress to complete. |
| 60 | 62 |
| 61 It is not normally appropriate to invoke this program directly. Usually, it will | 63 It is not normally appropriate to invoke this program directly. Usually, it will |
| 62 be invoked by a Crashpad client using the Crashpad client library, or started by | 64 be invoked by a Crashpad client using the Crashpad client library, or started by |
| 63 another system service. On OS X, arbitrary programs may be run with a Crashpad | 65 another system service. On OS X, arbitrary programs may be run with a Crashpad |
| 64 handler by using man_link:run_with_crashpad[1] to establish the Crashpad client | 66 handler by using man_link:run_with_crashpad[1] to establish the Crashpad client |
| 65 environment before running a program. | 67 environment before running a program. |
| 66 | 68 |
| 67 == Options | 69 == Options |
| 68 *--annotation*='KEY=VALUE':: | 70 *--annotation*='KEY=VALUE':: |
| 69 Sets a process-level annotation mapping 'KEY' to 'VALUE' in each crash report | 71 Sets a process-level annotation mapping 'KEY' to 'VALUE' in each crash report |
| (...skipping 28 matching lines...) Expand all Loading... |
| 98 *--mach-service*='SERVICE':: | 100 *--mach-service*='SERVICE':: |
| 99 Check in with the bootstrap server under the name 'SERVICE'. Either this option | 101 Check in with the bootstrap server under the name 'SERVICE'. Either this option |
| 100 or *--handshake-fd*, but not both, is required. This option is only valid on OS | 102 or *--handshake-fd*, but not both, is required. This option is only valid on OS |
| 101 X. | 103 X. |
| 102 + | 104 + |
| 103 'SERVICE' may already be reserved with the bootstrap server in cases where this | 105 'SERVICE' may already be reserved with the bootstrap server in cases where this |
| 104 tool is started by launchd(8) as a result of a message being sent to a service | 106 tool is started by launchd(8) as a result of a message being sent to a service |
| 105 declared in a job’s +MachServices+ dictionary (see launchd.plist(5)). The | 107 declared in a job’s +MachServices+ dictionary (see launchd.plist(5)). The |
| 106 service name may also be completely unknown to the system. | 108 service name may also be completely unknown to the system. |
| 107 | 109 |
| 108 *--persistent*:: | 110 *--handshake-handle*='HANDLE':: |
| 109 Continue running after the last client exits. If this option is not specified, | 111 Perform the handshake with the initial client on the HANDLE at 'HANDLE'. Either |
| 110 this server will exit as soon as it has no clients, although on startup, it | 112 this option or *--pipe-name*, but not both, is required. This option is only |
| 111 always waits for at least one client to connect. This option is only valid on | 113 valid on Windows. |
| 112 Windows. | 114 + |
| 115 When this option is present, the server creates a new named pipe at a random |
| 116 name and informs its client of the name. The server waits for at least one |
| 117 client to register, and exits when all clients have exited, after waiting for |
| 118 any uploads in progress to complete. |
| 113 | 119 |
| 114 *--pipe-name*='PIPE':: | 120 *--pipe-name*='PIPE':: |
| 115 Listen on the given pipe name for connections from clients. 'PIPE' must be of | 121 Listen on the given pipe name for connections from clients. 'PIPE' must be of |
| 116 the form +\\.\pipe\<somename>+. This option is required. This option is only | 122 the form +\\.\pipe\<somename>+. Either this option or *--handshake-handle*, but |
| 117 valid on Windows. | 123 not both, is required. This option is only valid on Windows. |
| 124 + |
| 125 When this option is present, the server creates a named pipe at 'PIPE', a name |
| 126 known to both the server and its clients. The server continues running even |
| 127 after all clients have exited. |
| 118 | 128 |
| 119 *--reset-own-crash-exception-port-to-system-default*:: | 129 *--reset-own-crash-exception-port-to-system-default*:: |
| 120 Causes the exception handler server to set its own crash handler to the system | 130 Causes the exception handler server to set its own crash handler to the system |
| 121 default before beginning operation. This is only expected to be useful in cases | 131 default before beginning operation. This is only expected to be useful in cases |
| 122 where the server inherits an inappropriate crash handler from its parent | 132 where the server inherits an inappropriate crash handler from its parent |
| 123 process. This option is only valid on OS X. Use of this option is discouraged. | 133 process. This option is only valid on OS X. Use of this option is discouraged. |
| 124 It should not be used absent extraordinary circumstances. | 134 It should not be used absent extraordinary circumstances. |
| 125 | 135 |
| 126 *--url*='URL':: | 136 *--url*='URL':: |
| 127 If uploads are enabled, sends crash reports to the Breakpad-type crash report | 137 If uploads are enabled, sends crash reports to the Breakpad-type crash report |
| (...skipping 17 matching lines...) Expand all Loading... |
| 145 Failure, with a message printed to the standard error stream. | 155 Failure, with a message printed to the standard error stream. |
| 146 | 156 |
| 147 == See Also | 157 == See Also |
| 148 | 158 |
| 149 man_link:catch_exception_tool[1], | 159 man_link:catch_exception_tool[1], |
| 150 man_link:crashpad_database_util[1], | 160 man_link:crashpad_database_util[1], |
| 151 man_link:generate_dump[1], | 161 man_link:generate_dump[1], |
| 152 man_link:run_with_crashpad[1] | 162 man_link:run_with_crashpad[1] |
| 153 | 163 |
| 154 include::../doc/support/man_footer.ad[] | 164 include::../doc/support/man_footer.ad[] |
| OLD | NEW |