crashpad::ExceptionHandlerServer::Delegate Class Referenceabstract
Inheritance diagram for crashpad::ExceptionHandlerServer::Delegate:

## Public Member Functions

virtual bool | HandleException (pid_t client_process_id, const ClientInformation &info)=0
| Called on receipt of a crash dump request from a client. More...
virtual bool | HandleExceptionWithBroker (pid_t client_process_id, const ClientInformation &info, int broker_sock)=0
| Called on the receipt of a crash dump request from a client for a crash that should be mediated by a PtraceBroker. More...
virtual void | ExceptionHandlerServerStarted ()=0
| Called when the server has created the named pipe connection points and is ready to service requests.
virtual unsigned int | ExceptionHandlerServerException (HANDLE process, WinVMAddress exception_information_address, WinVMAddress debug_critical_section_address)=0
| Called when the client has signalled that it has encountered an exception and so wants a crash dump to be taken. More...

## Member Function Documentation

## ExceptionHandlerServerException()

virtual unsigned int crashpad::ExceptionHandlerServer::Delegate::ExceptionHandlerServerException | ( | HANDLE | process,
|  | WinVMAddress | exception_information_address,
|  | WinVMAddress | debug_critical_section_address
| ) |  |

pure virtual

Called when the client has signalled that it has encountered an exception and so wants a crash dump to be taken.

Parameters

  [in] | process | A handle to the client process. Ownership of the lifetime of this handle is not passed to the delegate.
  [in] | exception_information_address | The address in the client's address space of an ExceptionInformation structure.
  [in] | debug_critical_section_address | The address in the client's address space of a `CRITICAL_SECTION` allocated with a valid `.DebugInfo` field, or `0` if unavailable.

Returns
  The exit code that should be used when terminating the client process.

Implemented in crashpad::CrashReportExceptionHandler.

## HandleException()

virtual bool crashpad::ExceptionHandlerServer::Delegate::HandleException | ( | pid_t | client_process_id,
|  | const ClientInformation & | info
| ) |  |

pure virtual

Called on receipt of a crash dump request from a client.

Parameters

  [in] | client_process_id | The process ID of the crashing client.
  [in] | info | Information on the client.

Returns
  `true` on success. `false` on failure with a message logged.

Implemented in crashpad::CrashReportExceptionHandler.

## HandleExceptionWithBroker()

virtual bool crashpad::ExceptionHandlerServer::Delegate::HandleExceptionWithBroker | ( | pid_t | client_process_id,
|  | const ClientInformation & | info,
|  | int | broker_sock
| ) |  |

pure virtual

Called on the receipt of a crash dump request from a client for a crash that should be mediated by a PtraceBroker.

Parameters

  [in] | client_process_id | The process ID of the crashing client.
  [in] | info | Information on the client.
  [in] | broker_sock | A socket connected to the PtraceBroker.

Returns
  `true` on success. `false` on failure with a message logged.

Implemented in crashpad::CrashReportExceptionHandler.

The documentation for this class was generated from the following files:

- handler/linux/exception_handler_server.h
- util/win/exception_handler_server.cc