1// Copyright (c) 2012 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 CONTENT_COMMON_SSL_STATUS_SERIALIZATION_H_
6#define CONTENT_COMMON_SSL_STATUS_SERIALIZATION_H_
7
8#include <string>
9
10#include "content/common/content_export.h"
11#include "content/public/common/signed_certificate_timestamp_id_and_status.h"
12#include "net/cert/cert_status_flags.h"
13
14namespace content {
15
16// Convenience methods for serializing/deserializing the security info.
17CONTENT_EXPORT std::string SerializeSecurityInfo(
18    int cert_id,
19    net::CertStatus cert_status,
20    int security_bits,
21    int connection_status,
22    const SignedCertificateTimestampIDStatusList&
23        signed_certificate_timestamp_ids);
24
25bool DeserializeSecurityInfo(
26    const std::string& state,
27    int* cert_id,
28    net::CertStatus* cert_status,
29    int* security_bits,
30    int* connection_status,
31    SignedCertificateTimestampIDStatusList* signed_certificate_timestamp_ids);
32
33}  // namespace content
34
35#endif  // CONTENT_COMMON_SSL_STATUS_SERIALIZATION_H_
36