Mirror of Google Breakpad project
Go to file
doshimun@gmail.com c79141e306 Overview:
Implement out-of-process dump generation for Windows platform.

Details:
- Created a lib, crash_generation.lib, that implements the out-of-process dump generation protocol.
- The lib code is under client/windows/crash_generation folder and is organized in the following way:
	- CrashGenerationServer class (crash_generation_server.h/.cc) implements the server side of
	  the protocol.
	- CrashGenerationClient class (crash_generation_client.h/.cc) implements the client side of
	  the protocol.
	- MinidumpGenerator class (minidump_generator.h/.cc) serves as an abstractino for generating
	  dump files using Windows APIs, coming up with new file names by creating GUIDs, etc.
	- ProtocolMessage class (ipc_protocol.h) represents the message format between the client and server
	  for pipe IPC.
	- Server allows one client at a time on the pipe in the current implementation.
	- ReadMe.txt explains the state machine the server uses to serve clients.
- ExceptionHandler is modified and a new constructor is added that allows specifying the pipe name. If the
  pipe name is NULL, the behavior is backward compatible - in-process dump generation is done as before. If
  the pipe name is specified, out-of-process dump generation registration is attempted. If that fails, the
  behavior is again backward compatible.
- If out-of-process registration succeeds, all write dump requests, direct or indirect, are directed to
  crash server process that served the registration request. NOTE that the explicit dump requests made by
  calling the static method of ExceptionHandler are not directed to theserver.
- client/windows/tests/crash_generation_app implements a simple Win32 GUI application to help test the
  out-of-process dump generation client and server. Typical use of the app is to start one instance, click
  Server --> Start and then start the other instance. The other instance will register with the first
  instance automatically at start-up. Then the second instance can be used to request various typoes of
  dump requests by using options under the Client menu.




git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@244 4c0a9323-5329-0410-9bdc-e9ce6186880e
2008-03-08 00:02:40 +00:00
autotools Add logging to minidump processor (#82). First part: logging infrastructure 2007-05-17 18:34:37 +00:00
src Overview: 2008-03-08 00:02:40 +00:00
aclocal.m4 Add logging to minidump processor (#82). First part: logging infrastructure 2007-05-17 18:34:37 +00:00
AUTHORS Make build system less annoying (#8) r=bryner 2006-08-30 20:05:05 +00:00
ChangeLog Initial import, which includes the Windows client-side dump_syms tool, and 2006-08-25 21:14:45 +00:00
configure Add logging to minidump processor (#82). First part: logging infrastructure 2007-05-17 18:34:37 +00:00
configure.ac Rename Airbag to Breakpad. 2007-02-14 19:51:05 +00:00
COPYING Relicense to BSD (#29). r=bryner 2006-09-20 21:16:16 +00:00
INSTALL Add logging to minidump processor (#82). First part: logging infrastructure 2007-05-17 18:34:37 +00:00
Makefile.am Issue 196 - Breakpad processor support for x86-64. r=mento 2007-10-31 19:20:31 +00:00
Makefile.in Issue 196 - Breakpad processor support for x86-64. r=mento 2007-10-31 19:20:31 +00:00
NEWS Initial import, which includes the Windows client-side dump_syms tool, and 2006-08-25 21:14:45 +00:00
README Rename Airbag to Breakpad. 2007-02-14 19:51:05 +00:00

Breakpad is a set of client and server components which implement a
crash-reporting system.