blob: 5423303500f21994fb8ce8e7318ae722bcee66d0 [file] [log] [blame]
// Copyright 2018 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 "components/signin/core/browser/cookie_settings_util.h"
#include "components/content_settings/core/browser/cookie_settings.h"
#include "google_apis/gaia/gaia_urls.h"
#include "url/gurl.h"
namespace signin {
bool SettingsAllowSigninCookies(
const content_settings::CookieSettings* cookie_settings) {
GURL gaia_url = GaiaUrls::GetInstance()->gaia_url();
GURL google_url = GaiaUrls::GetInstance()->google_url();
return cookie_settings &&
cookie_settings->IsCookieAccessAllowed(gaia_url, gaia_url) &&
cookie_settings->IsCookieAccessAllowed(google_url, google_url);
}
bool SettingsDeleteSigninCookiesOnExit(
const content_settings::CookieSettings* cookie_settings) {
GURL gaia_url = GaiaUrls::GetInstance()->gaia_url();
GURL google_url = GaiaUrls::GetInstance()->google_url();
ContentSettingsForOneType settings;
cookie_settings->GetCookieSettings(&settings);
return !cookie_settings ||
cookie_settings->ShouldDeleteCookieOnExit(
settings, "." + gaia_url.host(), true) ||
cookie_settings->ShouldDeleteCookieOnExit(
settings, "." + google_url.host(), true);
}
} // namespace signin