diff options
Diffstat (limited to 'content/public/browser/ssl_status.h')
-rw-r--r-- | content/public/browser/ssl_status.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/content/public/browser/ssl_status.h b/content/public/browser/ssl_status.h new file mode 100644 index 0000000..24c03fc --- /dev/null +++ b/content/public/browser/ssl_status.h @@ -0,0 +1,63 @@ +// Copyright (c) 2011 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. + +// Defines the Geolocation access token store, and associated factory function. +// An access token store is responsible for providing the API to persist +// access tokens, one at a time, and to load them back on mass. +// The API is a little more complex than one might wish, due to the need for +// prefs access to happen asynchronously on the UI thread. +// This API is provided as abstract base classes to allow mocking and testing +// of clients, without dependency on browser process singleton objects etc. + +#ifndef CONTENT_PUBLIC_BROWSER_SSL_STATUS_H_ +#define CONTENT_PUBLIC_BROWSER_SSL_STATUS_H_ +#pragma once + +#include "content/common/content_export.h" +#include "content/public/common/security_style.h" +#include "net/base/cert_status_flags.h" + +namespace content { + +// Collects the SSL information for this NavigationEntry. +struct CONTENT_EXPORT SSLStatus { + // Flags used for the page security content status. + enum ContentStatusFlags { + // HTTP page, or HTTPS page with no insecure content. + NORMAL_CONTENT = 0, + + // HTTPS page containing "displayed" HTTP resources (e.g. images, CSS). + DISPLAYED_INSECURE_CONTENT = 1 << 0, + + // HTTPS page containing "executed" HTTP resources (i.e. script). + // Also currently used for HTTPS page containing broken-HTTPS resources; + // this is wrong and should be fixed (see comments in + // SSLPolicy::OnRequestStarted()). + RAN_INSECURE_CONTENT = 1 << 1, + }; + + SSLStatus(); + + bool Equals(const SSLStatus& status) const { + return security_style == status.security_style && + cert_id == status.cert_id && + cert_status == status.cert_status && + security_bits == status.security_bits && + content_status == status.content_status; + } + + content::SecurityStyle security_style; + int cert_id; + net::CertStatus cert_status; + int security_bits; + int connection_status; + // A combination of the ContentStatusFlags above. + int content_status; + + // Copy and assignment is explicitly allowed for this class. +}; + +} // namespace content + +#endif // CONTENT_PUBLIC_BROWSER_SSL_STATUS_H_ |