Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(112)

Side by Side Diff: chrome/chrome_watcher/chrome_watcher_main_api.h

Issue 901673002: Instantiate a Kasko reporter inside the Chrome watcher process, when SyzyASAN instrumented. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@ship_kasko
Patch Set: Fix a runtime error. Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_ 5 #ifndef CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_
6 #define CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_ 6 #define CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_
7 7
8 #include <Windows.h> 8 #include <Windows.h>
9 #include "base/files/file_path.h" 9 #include "base/files/file_path.h"
10 #include "base/process/process_handle.h"
10 #include "base/strings/string16.h" 11 #include "base/strings/string16.h"
11 12
12 // The name of the watcher DLL. 13 // The name of the watcher DLL.
13 extern const base::FilePath::CharType kChromeWatcherDll[]; 14 extern const base::FilePath::CharType kChromeWatcherDll[];
14 // The name of the watcher DLLs entrypoint function. 15 // The name of the watcher DLLs entrypoint function.
15 extern const char kChromeWatcherDLLEntrypoint[]; 16 extern const char kChromeWatcherDLLEntrypoint[];
16 17
17 // The type of the watcher DLL's main entry point. 18 // The type of the watcher DLL's main entry point.
18 // Watches |parent_process| and records its exit code under |registry_path| in 19 // Watches |parent_process| and records its exit code under |registry_path| in
19 // HKCU. |on_initialized_event| will be signaled once the process is fully 20 // HKCU. If SyzyASAN is enabled, a Kasko reporter process is also instantiated,
20 // initialized. Takes ownership of |parent_process| and |on_initialized_event|. 21 // using |browser_data_directory| to store crash reports. |on_initialized_event|
22 // will be signaled once the process is fully initialized. Takes ownership of
23 // |parent_process| and |on_initialized_event|.
21 typedef int (*ChromeWatcherMainFunction)( 24 typedef int (*ChromeWatcherMainFunction)(
22 const base::char16* registry_path, 25 const base::char16* registry_path,
23 HANDLE parent_process, 26 HANDLE parent_process,
24 HANDLE on_initialized_event); 27 HANDLE on_initialized_event,
28 const base::char16* browser_data_directory);
29
30 // Returns an RPC endpoint name for the identified client process. This method
31 // may be invoked in both the client and the watcher process with the PID of the
32 // client process to establish communication between the two using a common
33 // endpoint name.
34 base::string16 GetKaskoEndpoint(base::ProcessId client_process_id);
25 35
26 #endif // CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_ 36 #endif // CHROME_CHROME_WATCHER_CHROME_WATCHER_MAIN_API_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698