1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_SAFE_BROWSING_INCIDENT_REPORTING_ENVIRONMENT_DATA_COLLECTION_WIN_H_ 6 #define CHROME_BROWSER_SAFE_BROWSING_INCIDENT_REPORTING_ENVIRONMENT_DATA_COLLECTION_WIN_H_ 7 8 namespace safe_browsing { 9 10 class ClientIncidentReport_EnvironmentData_Process; 11 12 // Collects then populates |process| with the sanitized paths of all DLLs 13 // loaded in the current process. Return false if an error occurred while 14 // querying for the loaded dlls. 15 bool CollectDlls(ClientIncidentReport_EnvironmentData_Process* process); 16 17 // For each of the dlls in this already populated incident report, 18 // check one of them is a registered LSP. 19 void RecordLspFeature(ClientIncidentReport_EnvironmentData_Process* process); 20 21 // Checks each module in the provided list for modifications and records these, 22 // along with any modified exports, in |process|. 23 void CollectModuleVerificationData( 24 const wchar_t* const modules_to_verify[], 25 size_t num_modules_to_verify, 26 ClientIncidentReport_EnvironmentData_Process* process); 27 28 // Populates |process| with the dll names that have been added to the chrome elf 29 // blacklist through the Windows registry. 30 void CollectDllBlacklistData( 31 ClientIncidentReport_EnvironmentData_Process* process); 32 33 } // namespace safe_browsing 34 35 #endif // CHROME_BROWSER_SAFE_BROWSING_INCIDENT_REPORTING_ENVIRONMENT_DATA_COLLECTION_WIN_H_ 36