| // 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 NET_CERT_CT_LOG_RESPONSE_PARSER_H_ | 
 | #define NET_CERT_CT_LOG_RESPONSE_PARSER_H_ | 
 |  | 
 | #include <string> | 
 | #include <vector> | 
 |  | 
 | #include "base/strings/string_piece.h" | 
 | #include "net/base/net_export.h" | 
 |  | 
 | namespace base { | 
 | class Value; | 
 | }  // namespace base | 
 |  | 
 | namespace net { | 
 |  | 
 | namespace ct { | 
 | struct SignedTreeHead; | 
 |  | 
 | // Fills in |signed_tree_head| from its JSON representation in | 
 | // |json_signed_tree_head|. | 
 | // Returns true and fills in |signed_tree_head| if all fields are present and | 
 | // valid.Otherwise, returns false and does not modify |signed_tree_head|. | 
 | NET_EXPORT bool FillSignedTreeHead(const base::Value& json_signed_tree_head, | 
 |                                    SignedTreeHead* signed_tree_head); | 
 |  | 
 | NET_EXPORT bool FillConsistencyProof( | 
 |     const base::Value& json_signed_tree_head, | 
 |     std::vector<std::string>* consistency_proof); | 
 |  | 
 | }  // namespace ct | 
 |  | 
 | }  // namespace net | 
 | #endif  // NET_CERT_CT_LOG_RESPONSE_PARSER_H_ |