6 [ "$1" == "" ] && echo "Usage: $0 <year>" && exit 1
9 genTimeCA(){ #csr,ca to sign with,start,end
10 cat <<TESTCA > timesubca.cnf
11 basicConstraints = CA:true
12 keyUsage = keyCertSign, cRLSign
14 subjectKeyIdentifier = hash
15 authorityKeyIdentifier = keyid:always
17 crlDistributionPoints=URI:http://g2.crl.cacert.org/g2/$2.crl
18 authorityInfoAccess = OCSP;URI:http://g2.ocsp.cacert.org,caIssuers;URI:http://g2.crt.cacert.org/g2/$2.crt
20 caSign $1 $2 timesubca.cnf "$3" "$4"
27 for i in $TIME_IDX; do
28 point=${year}${points[${i}]}
29 nextp=${points[$((${i} + 1))]}
30 if [[ "$nextp" == "" ]]; then
31 epoint=$((${year} + 3 ))${epoints[${i}]}
33 epoint=$((${year} + 2 ))${epoints[${i}]}
37 genca "/CN=$name ${year}-${i}" $year/ca/env_${year}_${i}
38 genTimeCA $year/ca/env_${year}_${i}.ca/key env "$point" "$epoint"
40 for ca in $STRUCT_CAS; do
41 [ "$ca" == "env" ] && continue
43 genKey "/CN=$name ${year}-${i}" $year/ca/${ca}_${year}_${i}
44 genTimeCA $year/ca/${ca}_${year}_${i} $ca "$point" "$epoint"