| Index: third_party/breakpad/src/client/windows/crash_generation/crash_generation_client.h
|
| diff --git a/third_party/breakpad/src/client/windows/crash_generation/crash_generation_client.h b/third_party/breakpad/src/client/windows/crash_generation/crash_generation_client.h
|
| deleted file mode 100644
|
| index 01d13ddec58b5cc818a1fe91bf9bca09acf4175e..0000000000000000000000000000000000000000
|
| --- a/third_party/breakpad/src/client/windows/crash_generation/crash_generation_client.h
|
| +++ /dev/null
|
| @@ -1,162 +0,0 @@
|
| -// Copyright (c) 2008, Google Inc.
|
| -// All rights reserved.
|
| -//
|
| -// Redistribution and use in source and binary forms, with or without
|
| -// modification, are permitted provided that the following conditions are
|
| -// met:
|
| -//
|
| -// * Redistributions of source code must retain the above copyright
|
| -// notice, this list of conditions and the following disclaimer.
|
| -// * Redistributions in binary form must reproduce the above
|
| -// copyright notice, this list of conditions and the following disclaimer
|
| -// in the documentation and/or other materials provided with the
|
| -// distribution.
|
| -// * Neither the name of Google Inc. nor the names of its
|
| -// contributors may be used to endorse or promote products derived from
|
| -// this software without specific prior written permission.
|
| -//
|
| -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
| -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
| -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
| -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
| -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
| -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
| -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
| -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
| -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
| -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| -
|
| -#ifndef CLIENT_WINDOWS_CRASH_GENERATION_CRASH_GENERATION_CLIENT_H_
|
| -#define CLIENT_WINDOWS_CRASH_GENERATION_CRASH_GENERATION_CLIENT_H_
|
| -
|
| -#include <windows.h>
|
| -#include <dbghelp.h>
|
| -#include <string>
|
| -#include <utility>
|
| -#include "client/windows/common/ipc_protocol.h"
|
| -#include "processor/scoped_ptr.h"
|
| -
|
| -namespace google_breakpad {
|
| -
|
| -struct CustomClientInfo;
|
| -
|
| -// Abstraction of client-side implementation of out of process
|
| -// crash generation.
|
| -//
|
| -// The process that desires to have out-of-process crash dump
|
| -// generation service can use this class in the following way:
|
| -//
|
| -// * Create an instance.
|
| -// * Call Register method so that the client tries to register
|
| -// with the server process and check the return value. If
|
| -// registration is not successful, out-of-process crash dump
|
| -// generation will not be available
|
| -// * Request dump generation by calling either of the two
|
| -// overloaded RequestDump methods - one in case of exceptions
|
| -// and the other in case of assertion failures
|
| -//
|
| -// Note that it is the responsibility of the client code of
|
| -// this class to set the unhandled exception filter with the
|
| -// system by calling the SetUnhandledExceptionFilter function
|
| -// and the client code should explicitly request dump generation.
|
| -class CrashGenerationClient {
|
| - public:
|
| - CrashGenerationClient(const wchar_t* pipe_name,
|
| - MINIDUMP_TYPE dump_type,
|
| - const CustomClientInfo* custom_info);
|
| -
|
| - ~CrashGenerationClient();
|
| -
|
| - // Registers the client process with the crash server.
|
| - //
|
| - // Returns true if the registration is successful; false otherwise.
|
| - bool Register();
|
| -
|
| - bool RequestDump(EXCEPTION_POINTERS* ex_info,
|
| - MDRawAssertionInfo* assert_info);
|
| -
|
| - // Requests the crash server to generate a dump with the given
|
| - // exception information.
|
| - //
|
| - // Returns true if the dump was successful; false otherwise. Note that
|
| - // if the registration step was not performed or it was not successful,
|
| - // false will be returned.
|
| - bool RequestDump(EXCEPTION_POINTERS* ex_info);
|
| -
|
| - // Requests the crash server to generate a dump with the given
|
| - // assertion information.
|
| - //
|
| - // Returns true if the dump was successful; false otherwise. Note that
|
| - // if the registration step was not performed or it was not successful,
|
| - // false will be returned.
|
| - bool RequestDump(MDRawAssertionInfo* assert_info);
|
| -
|
| - private:
|
| - // Connects to the appropriate pipe and sets the pipe handle state.
|
| - //
|
| - // Returns the pipe handle if everything goes well; otherwise Returns NULL.
|
| - HANDLE ConnectToServer();
|
| -
|
| - // Performs a handshake with the server over the given pipe which should be
|
| - // already connected to the server.
|
| - //
|
| - // Returns true if handshake with the server was successful; false otherwise.
|
| - bool RegisterClient(HANDLE pipe);
|
| -
|
| - // Validates the given server response.
|
| - bool ValidateResponse(const ProtocolMessage& msg) const;
|
| -
|
| - // Returns true if the registration step succeeded; false otherwise.
|
| - bool IsRegistered() const;
|
| -
|
| - // Connects to the given named pipe with given parameters.
|
| - //
|
| - // Returns true if the connection is successful; false otherwise.
|
| - HANDLE ConnectToPipe(const wchar_t* pipe_name,
|
| - DWORD pipe_access,
|
| - DWORD flags_attrs);
|
| -
|
| - // Signals the crash event and wait for the server to generate crash.
|
| - bool SignalCrashEventAndWait();
|
| -
|
| - // Pipe name to use to talk to server.
|
| - std::wstring pipe_name_;
|
| -
|
| - // Custom client information
|
| - CustomClientInfo custom_info_;
|
| -
|
| - // Type of dump to generate.
|
| - MINIDUMP_TYPE dump_type_;
|
| -
|
| - // Event to signal in case of a crash.
|
| - HANDLE crash_event_;
|
| -
|
| - // Handle to wait on after signaling a crash for the server
|
| - // to finish generating crash dump.
|
| - HANDLE crash_generated_;
|
| -
|
| - // Handle to a mutex that will become signaled with WAIT_ABANDONED
|
| - // if the server process goes down.
|
| - HANDLE server_alive_;
|
| -
|
| - // Server process id.
|
| - DWORD server_process_id_;
|
| -
|
| - // Id of the thread that caused the crash.
|
| - DWORD thread_id_;
|
| -
|
| - // Exception pointers for an exception crash.
|
| - EXCEPTION_POINTERS* exception_pointers_;
|
| -
|
| - // Assertion info for an invalid parameter or pure call crash.
|
| - MDRawAssertionInfo assert_info_;
|
| -
|
| - // Disable copy ctor and operator=.
|
| - CrashGenerationClient(const CrashGenerationClient& crash_client);
|
| - CrashGenerationClient& operator=(const CrashGenerationClient& crash_client);
|
| -};
|
| -
|
| -} // namespace google_breakpad
|
| -
|
| -#endif // CLIENT_WINDOWS_CRASH_GENERATION_CRASH_GENERATION_CLIENT_H_
|
|
|