diff options
Diffstat (limited to 'ios/web/public/ssl_status.h')
-rw-r--r-- | ios/web/public/ssl_status.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/ios/web/public/ssl_status.h b/ios/web/public/ssl_status.h new file mode 100644 index 0000000..56f3d11 --- /dev/null +++ b/ios/web/public/ssl_status.h @@ -0,0 +1,49 @@ +// Copyright 2014 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. + +#ifndef IOS_WEB_PUBLIC_SSL_STATUS_H_ +#define IOS_WEB_PUBLIC_SSL_STATUS_H_ + +#include "ios/web/public/security_style.h" +#include "net/cert/cert_status_flags.h" + +namespace web { + +// Collects the SSL information for this NavigationItem. +struct 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, + + // The RAN_INSECURE_CONTENT flag is intentionally omitted on iOS because + // there is no way to tell when insecure content is run in a web view. + }; + + SSLStatus(); + ~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; + } + + web::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; +}; + +} // namespace web + +#endif // IOS_WEB_PUBLIC_SSL_STATUS_H_ |