Lots of random cleanups, mostly for native_theme_win.cc:
[chromium-blink-merge.git] / net / data / ssl / scripts / generate-aia-certs.sh
blob76b86cf5418df067cc461940c4ad2c52bdd498f1
1 #!/bin/sh
3 # Copyright 2013 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file.
7 # This script generates a set of test (end-entity, intermediate, root)
8 # certificates that can be used to test fetching of an intermediate via AIA.
10 try() {
11 echo "$@"
12 "$@" || exit 1
15 try rm -rf out
16 try mkdir out
18 # Create the serial number files.
19 try /bin/sh -c "echo 01 > out/aia-test-root-serial"
20 try /bin/sh -c "echo 01 > out/aia-test-intermediate-serial"
22 # Create the signers' DB files.
23 touch out/aia-test-root-index.txt
24 touch out/aia-test-intermediate-index.txt
26 # Generate the keys
27 try openssl genrsa -out out/aia-test-root.key 2048
28 try openssl genrsa -out out/aia-test-intermediate.key 2048
29 try openssl genrsa -out out/aia-test-cert.key 2048
31 # Generate the root certificate
32 CA_COMMON_NAME="AIA Test Root CA" \
33 CA_DIR=out \
34 CA_NAME=aia-test-root \
35 try openssl req \
36 -new \
37 -key out/aia-test-root.key \
38 -out out/aia-test-root.csr \
39 -config aia-test.cnf
41 CA_COMMON_NAME="AIA Test Root CA" \
42 CA_DIR=out \
43 CA_NAME=aia-test-root \
44 try openssl x509 \
45 -req -days 3650 \
46 -in out/aia-test-root.csr \
47 -out out/aia-test-root.pem \
48 -signkey out/aia-test-root.key \
49 -extfile aia-test.cnf \
50 -extensions ca_cert \
51 -text
53 # Generate the intermediate
54 CA_COMMON_NAME="AIA Test Intermediate CA" \
55 CA_DIR=out \
56 CA_NAME=aia-test-root \
57 try openssl req \
58 -new \
59 -key out/aia-test-intermediate.key \
60 -out out/aia-test-intermediate.csr \
61 -config aia-test.cnf
63 CA_COMMON_NAME="AIA Test Intermediate CA" \
64 CA_DIR=out \
65 CA_NAME=aia-test-root \
66 try openssl ca \
67 -batch \
68 -in out/aia-test-intermediate.csr \
69 -out out/aia-test-intermediate.pem \
70 -config aia-test.cnf \
71 -extensions ca_cert
73 # Generate the leaf
74 CA_COMMON_NAME="aia-host.invalid" \
75 CA_DIR=out \
76 CA_NAME=aia-test-intermediate \
77 try openssl req \
78 -new \
79 -key out/aia-test-cert.key \
80 -out out/aia-test-cert.csr \
81 -config aia-test.cnf
83 CA_COMMON_NAME="AIA Test Intermediate CA" \
84 CA_DIR=out \
85 CA_NAME=aia-test-intermediate \
86 AIA_URL=http://aia-test.invalid \
87 try openssl ca \
88 -batch \
89 -in out/aia-test-cert.csr \
90 -out out/aia-test-cert.pem \
91 -config aia-test.cnf \
92 -extensions user_cert
94 # Copy to the file names that are actually checked in.
95 try cp out/aia-test-cert.pem ../certificates/aia-cert.pem
96 try openssl x509 \
97 -outform der \
98 -in out/aia-test-intermediate.pem \
99 -out ../certificates/aia-intermediate.der
100 try cp out/aia-test-root.pem ../certificates/aia-root.pem