| OLD | NEW |
| 1 // Copyright 2015 The Crashpad Authors. All rights reserved. | 1 // Copyright 2015 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 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 //! the messages or ExceptionInformation are modified incompatibly. | 42 //! the messages or ExceptionInformation are modified incompatibly. |
| 43 enum { kMessageVersion = 1 }; | 43 enum { kMessageVersion = 1 }; |
| 44 | 44 |
| 45 //! \brief Version field to detect skew between client and server. Should be | 45 //! \brief Version field to detect skew between client and server. Should be |
| 46 //! set to kMessageVersion. | 46 //! set to kMessageVersion. |
| 47 int version; | 47 int version; |
| 48 | 48 |
| 49 //! \brief The PID of the client process. | 49 //! \brief The PID of the client process. |
| 50 DWORD client_process_id; | 50 DWORD client_process_id; |
| 51 | 51 |
| 52 //! \brief The address, in the client process address space, of an | 52 //! \brief The address, in the client process's address space, of an |
| 53 //! ExceptionInformation structure, used when handling a crash dump | 53 //! ExceptionInformation structure, used when handling a crash dump |
| 54 //! request. | 54 //! request. |
| 55 WinVMAddress crash_exception_information; | 55 WinVMAddress crash_exception_information; |
| 56 | 56 |
| 57 //! \brief The address, in the client process address space, of an | 57 //! \brief The address, in the client process's address space, of an |
| 58 //! ExceptionInformation structure, used when handling a non-crashing dump | 58 //! ExceptionInformation structure, used when handling a non-crashing dump |
| 59 //! request. | 59 //! request. |
| 60 WinVMAddress non_crash_exception_information; | 60 WinVMAddress non_crash_exception_information; |
| 61 |
| 62 //! \brief The address, in the client process's address space, of a |
| 63 //! `CRITICAL_SECTION` allocated with a valid .DebugInfo field. This can |
| 64 //! be accomplished by using the |
| 65 //! `RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO` flag to |
| 66 //! `InitializeCriticalSectionEx()`. This value can be `0`, however then |
| 67 //! limited lock data will be available in minidumps. |
| 68 WinVMAddress critical_section_address; |
| 61 }; | 69 }; |
| 62 | 70 |
| 63 //! \brief A message only sent to the server by itself to trigger shutdown. | 71 //! \brief A message only sent to the server by itself to trigger shutdown. |
| 64 struct ShutdownRequest { | 72 struct ShutdownRequest { |
| 65 //! \brief A randomly generated token used to validate the the shutdown | 73 //! \brief A randomly generated token used to validate the the shutdown |
| 66 //! request was not sent from another process. | 74 //! request was not sent from another process. |
| 67 uint64_t token; | 75 uint64_t token; |
| 68 }; | 76 }; |
| 69 | 77 |
| 70 //! \brief The message passed from client to server by | 78 //! \brief The message passed from client to server by |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 121 //! CrashpadClient::SetHandler(). | 129 //! CrashpadClient::SetHandler(). |
| 122 //! | 130 //! |
| 123 //! \sa CrashpadClient::SetHandler() | 131 //! \sa CrashpadClient::SetHandler() |
| 124 bool SendToCrashHandlerServer(const base::string16& pipe_name, | 132 bool SendToCrashHandlerServer(const base::string16& pipe_name, |
| 125 const ClientToServerMessage& message, | 133 const ClientToServerMessage& message, |
| 126 ServerToClientMessage* response); | 134 ServerToClientMessage* response); |
| 127 | 135 |
| 128 } // namespace crashpad | 136 } // namespace crashpad |
| 129 | 137 |
| 130 #endif // CRASHPAD_UTIL_WIN_REGISTRATION_PROTOCOL_WIN_H_ | 138 #endif // CRASHPAD_UTIL_WIN_REGISTRATION_PROTOCOL_WIN_H_ |
| OLD | NEW |