blob: 6faa2dfa1ca86d651fd93be9d4376b633423e078 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/safe_browsing/srt_client_info_win.h"
#include "base/logging.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_list.h"
#include "chrome/common/channel_info.h"
#include "components/safe_browsing_db/safe_browsing_prefs.h"
#include "components/version_info/version_info.h"
namespace safe_browsing {
namespace {
bool SafeBrowsingExtendedEnabledForBrowser(const Browser* browser) {
const Profile* profile = browser->profile();
return profile && !profile->IsOffTheRecord() &&
IsExtendedReportingEnabled(*profile->GetPrefs());
}
} // namespace
const char kChromeChannelSwitch[] = "chrome-channel";
const char kChromeVersionSwitch[] = "chrome-version";
const char kEnableCrashReporting[] = "enable-crash-reporting";
const char kExtendedSafeBrowsingEnabledSwitch[] =
"extended-safebrowsing-enabled";
int ChannelAsInt() {
switch (chrome::GetChannel()) {
case version_info::Channel::UNKNOWN:
return 0;
case version_info::Channel::CANARY:
return 1;
case version_info::Channel::DEV:
return 2;
case version_info::Channel::BETA:
return 3;
case version_info::Channel::STABLE:
return 4;
}
NOTREACHED();
return 0;
}
bool SafeBrowsingExtendedReportingEnabled() {
BrowserList* browser_list = BrowserList::GetInstance();
return std::any_of(browser_list->begin_last_active(),
browser_list->end_last_active(),
&SafeBrowsingExtendedEnabledForBrowser);
}
} // namespace safe_browsing