OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/safe_browsing/signature_util.h" | 5 #include "chrome/browser/safe_browsing/signature_util.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/base_paths.h" | 10 #include "base/base_paths.h" |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 ClientDownloadRequest_SignatureInfo signature_info; | 52 ClientDownloadRequest_SignatureInfo signature_info; |
53 signature_util->CheckSignature(testdata_path_.Append(L"signed.exe"), | 53 signature_util->CheckSignature(testdata_path_.Append(L"signed.exe"), |
54 &signature_info); | 54 &signature_info); |
55 ASSERT_EQ(1, signature_info.certificate_chain_size()); | 55 ASSERT_EQ(1, signature_info.certificate_chain_size()); |
56 std::vector<scoped_refptr<net::X509Certificate> > certs; | 56 std::vector<scoped_refptr<net::X509Certificate> > certs; |
57 ParseCertificateChain(signature_info.certificate_chain(0), &certs); | 57 ParseCertificateChain(signature_info.certificate_chain(0), &certs); |
58 ASSERT_EQ(2, certs.size()); | 58 ASSERT_EQ(2, certs.size()); |
59 EXPECT_EQ("Joe's-Software-Emporium", certs[0]->subject().common_name); | 59 EXPECT_EQ("Joe's-Software-Emporium", certs[0]->subject().common_name); |
60 EXPECT_EQ("Root Agency", certs[1]->subject().common_name); | 60 EXPECT_EQ("Root Agency", certs[1]->subject().common_name); |
61 | 61 |
| 62 EXPECT_TRUE(signature_info.has_trusted()); |
62 EXPECT_FALSE(signature_info.trusted()); | 63 EXPECT_FALSE(signature_info.trusted()); |
63 } | 64 } |
64 | 65 |
65 TEST_F(SignatureUtilWinTest, TrustedBinary) { | 66 TEST_F(SignatureUtilWinTest, TrustedBinary) { |
66 // wow_helper.exe is signed using Google's signing certifiacte. | 67 // wow_helper.exe is signed using Google's signing certifiacte. |
67 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); | 68 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); |
68 ClientDownloadRequest_SignatureInfo signature_info; | 69 ClientDownloadRequest_SignatureInfo signature_info; |
69 signature_util->CheckSignature(testdata_path_.Append(L"wow_helper.exe"), | 70 signature_util->CheckSignature(testdata_path_.Append(L"wow_helper.exe"), |
70 &signature_info); | 71 &signature_info); |
71 ASSERT_EQ(1, signature_info.certificate_chain_size()); | 72 ASSERT_EQ(1, signature_info.certificate_chain_size()); |
(...skipping 10 matching lines...) Expand all Loading... |
82 EXPECT_TRUE(signature_info.trusted()); | 83 EXPECT_TRUE(signature_info.trusted()); |
83 } | 84 } |
84 | 85 |
85 TEST_F(SignatureUtilWinTest, UnsignedBinary) { | 86 TEST_F(SignatureUtilWinTest, UnsignedBinary) { |
86 // unsigned.exe has no signature information. | 87 // unsigned.exe has no signature information. |
87 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); | 88 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); |
88 ClientDownloadRequest_SignatureInfo signature_info; | 89 ClientDownloadRequest_SignatureInfo signature_info; |
89 signature_util->CheckSignature(testdata_path_.Append(L"unsigned.exe"), | 90 signature_util->CheckSignature(testdata_path_.Append(L"unsigned.exe"), |
90 &signature_info); | 91 &signature_info); |
91 EXPECT_EQ(0, signature_info.certificate_chain_size()); | 92 EXPECT_EQ(0, signature_info.certificate_chain_size()); |
92 EXPECT_FALSE(signature_info.trusted()); | 93 EXPECT_FALSE(signature_info.has_trusted()); |
93 } | 94 } |
94 | 95 |
95 TEST_F(SignatureUtilWinTest, NonExistentBinary) { | 96 TEST_F(SignatureUtilWinTest, NonExistentBinary) { |
96 // Test a file that doesn't exist. | 97 // Test a file that doesn't exist. |
97 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); | 98 scoped_refptr<SignatureUtil> signature_util(new SignatureUtil()); |
98 ClientDownloadRequest_SignatureInfo signature_info; | 99 ClientDownloadRequest_SignatureInfo signature_info; |
99 signature_util->CheckSignature(testdata_path_.Append(L"doesnotexist.exe"), | 100 signature_util->CheckSignature(testdata_path_.Append(L"doesnotexist.exe"), |
100 &signature_info); | 101 &signature_info); |
101 EXPECT_EQ(0, signature_info.certificate_chain_size()); | 102 EXPECT_EQ(0, signature_info.certificate_chain_size()); |
102 EXPECT_FALSE(signature_info.trusted()); | 103 EXPECT_FALSE(signature_info.has_trusted()); |
103 } | 104 } |
104 | 105 |
105 } // namespace safe_browsing | 106 } // namespace safe_browsing |
OLD | NEW |