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 8namespace safe_browsing { 9 10class 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. 15bool 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. 19void 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|. 23void 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. 30void 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