Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(380)

Side by Side Diff: net/data/verify_certificate_chain_unittest/generate-intermediate-lacks-signing-key-usage.py

Issue 2759023002: Improvements to the net/cert/internal error handling. (Closed)
Patch Set: fix comment Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2015 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Certificate chain with 1 intermediate and a trusted root. The intermediate 6 """Certificate chain with 1 intermediate and a trusted root. The intermediate
7 contains a keyUsage extension, HOWEVER it does not contain the keyCertSign bit. 7 contains a keyUsage extension, HOWEVER it does not contain the keyCertSign bit.
8 Hence validation is expected to fail.""" 8 Hence validation is expected to fail."""
9 9
10 import common 10 import common
11 11
12 # Self-signed root certificate (used as trust anchor). 12 # Self-signed root certificate (used as trust anchor).
13 root = common.create_self_signed_root_certificate('Root') 13 root = common.create_self_signed_root_certificate('Root')
14 14
15 # Intermediate that is missing keyCertSign. 15 # Intermediate that is missing keyCertSign.
16 intermediate = common.create_intermediate_certificate('Intermediate', root) 16 intermediate = common.create_intermediate_certificate('Intermediate', root)
17 intermediate.get_extensions().set_property('keyUsage', 17 intermediate.get_extensions().set_property('keyUsage',
18 'critical,digitalSignature,keyEncipherment') 18 'critical,digitalSignature,keyEncipherment')
19 19
20 # Target certificate. 20 # Target certificate.
21 target = common.create_end_entity_certificate('Target', intermediate) 21 target = common.create_end_entity_certificate('Target', intermediate)
22 22
23 chain = [target, intermediate] 23 chain = [target, intermediate]
24 trusted = common.TrustAnchor(root, constrained=False) 24 trusted = common.TrustAnchor(root, constrained=False)
25 time = common.DEFAULT_TIME 25 time = common.DEFAULT_TIME
26 verify_result = False 26 verify_result = False
27 errors = """[Context] Processing Certificate 27 errors = """----- Certificate i=1 (CN=Intermediate) -----
28 index: 0 28 ERROR: keyCertSign bit is not set
29 [Error] keyCertSign bit is not set 29
30 """ 30 """
31 31
32 common.write_test_file(__doc__, chain, trusted, time, verify_result, errors) 32 common.write_test_file(__doc__, chain, trusted, time, verify_result, errors)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698