@@ -1893,27 +1893,15 @@ Raw CA mode
1893
1893
1894
1894
# keyUsage critical
1895
1895
if [ "$EASYRSA_KU_CRIT" ]; then
1896
- crit_tmp=
1897
- easyrsa_mktemp crit_tmp
1898
-
1899
- add_critical_attrib keyUsage "$x509_type_file" \
1900
- "$crit_tmp" || die "build-ca - KU add_critical_attrib"
1901
-
1902
- # Use the new tmp-file with critical attribute
1903
- x509_type_file="$crit_tmp"
1896
+ add_critical_attrib_v2 keyUsage "$x509_type_file" || \
1897
+ die "build-ca - add_critical_attrib_v2 keyUsage"
1904
1898
verbose "build_ca: keyUsage critical OK"
1905
1899
fi
1906
1900
1907
1901
# basicConstraints critical
1908
1902
if [ "$EASYRSA_BC_CRIT" ]; then
1909
- crit_tmp=
1910
- easyrsa_mktemp crit_tmp
1911
-
1912
- add_critical_attrib basicConstraints "$x509_type_file" \
1913
- "$crit_tmp" || die "build-ca - BC add_critical_attrib"
1914
-
1915
- # Use the new tmp-file with critical attribute
1916
- x509_type_file="$crit_tmp"
1903
+ add_critical_attrib_v2 basicConstraints "$x509_type_file" || \
1904
+ die "build-ca - add_critical_attrib_v2 basicConstraints"
1917
1905
verbose "build_ca: basicConstraints critical OK"
1918
1906
fi
1919
1907
@@ -2609,44 +2597,26 @@ Writing 'copy_exts' to SSL config temp-file failed"
2609
2597
# keyUsage critical
2610
2598
confirm_ku_crit=
2611
2599
if [ "$EASYRSA_KU_CRIT" ]; then
2612
- crit_tmp=
2613
- easyrsa_mktemp crit_tmp
2614
-
2615
- add_critical_attrib keyUsage "$x509_type_file" \
2616
- "$crit_tmp" || die "sign-req - KU add_critical_attrib"
2617
-
2618
- # Use the new tmp-file with critical attribute
2619
- x509_type_file="$crit_tmp"
2600
+ add_critical_attrib_v2 keyUsage "$x509_type_file" || \
2601
+ die "sign-req - add_critical_attrib_v2 keyUsage"
2620
2602
confirm_ku_crit=" keyUsage: 'critical'${NL}"
2621
2603
verbose "sign_req: keyUsage critical OK"
2622
2604
fi
2623
2605
2624
2606
# basicConstraints critical
2625
2607
confirm_bc_crit=
2626
2608
if [ "$EASYRSA_BC_CRIT" ]; then
2627
- crit_tmp=
2628
- easyrsa_mktemp crit_tmp
2629
-
2630
- add_critical_attrib basicConstraints "$x509_type_file" \
2631
- "$crit_tmp" || die "sign-req - BC add_critical_attrib"
2632
-
2633
- # Use the new tmp-file with critical attribute
2634
- x509_type_file="$crit_tmp"
2609
+ add_critical_attrib_v2 basicConstraints "$x509_type_file" || \
2610
+ die "sign-req - add_critical_attrib_v2 basicConstraints"
2635
2611
confirm_bc_crit=" basicConstraints: 'critical'${NL}"
2636
2612
verbose "sign_req: basicConstraints critical OK"
2637
2613
fi
2638
2614
2639
2615
# extendedKeyUsage critical
2640
2616
confirm_eku_crit=
2641
2617
if [ "$EASYRSA_EKU_CRIT" ]; then
2642
- crit_tmp=
2643
- easyrsa_mktemp crit_tmp
2644
-
2645
- add_critical_attrib extendedKeyUsage "$x509_type_file" \
2646
- "$crit_tmp" || die "sign-req - EKU add_critical_attrib"
2647
-
2648
- # Use the new tmp-file with critical attribute
2649
- x509_type_file="$crit_tmp"
2618
+ add_critical_attrib_v2 extendedKeyUsage "$x509_type_file" || \
2619
+ die "sign-req - add_critical_attrib_v2 extendedKeyUsage"
2650
2620
confirm_eku_crit=" extendedKeyUsage: 'critical'${NL}"
2651
2621
verbose "sign_req: extendedKeyUsage critical OK"
2652
2622
fi
@@ -2900,22 +2870,31 @@ Certificate created at:
2900
2870
} # => sign_req()
2901
2871
2902
2872
# Add 'critical' attribute to X509-type file
2903
- add_critical_attrib() {
2873
+ add_critical_attrib_v2() {
2874
+ fn_name="$fn_name; add_critical_attrib_v2"
2904
2875
case "$1" in
2905
2876
basicConstraints|keyUsage|extendedKeyUsage) : ;; # ok
2906
- *) die "add_critical_attrib - usage: '$1'"
2877
+ *) die "$fn_name - usage: '$1'"
2907
2878
esac
2908
2879
2909
- [ -f "$2" ] || die "add_critical_attrib - file-2: '$2'"
2910
- [ -f "$3" ] || die "add_critical_attrib - file-3: '$3'"
2880
+ [ -f "$2" ] || die "$fn_name - missing output file"
2881
+
2882
+ crit_tmp=
2883
+ easyrsa_mktemp crit_tmp
2911
2884
2912
2885
# Insert 'critical,' attrib, ONLY if NOT present
2913
2886
srch="${1}[[:blank:]]*=[[:blank:]]*critical"
2914
2887
repl="${1}[[:blank:]]*=[[:blank:]]*"
2915
2888
with="${1} = critical,"
2916
- sed /"$srch"/!s/"$repl"/"$with"/g "$2" > "$3" || return 1
2917
- unset -v srch repl with
2918
- } # => add_critical_attrib()
2889
+ sed /"$srch"/!s/"$repl"/"$with"/g \
2890
+ "$2" > "$crit_tmp" || return 1
2891
+
2892
+ # Use the new tmp-file:$crit_tmp with critical attribute
2893
+ mv -f "$crit_tmp" "$2" || return 1
2894
+
2895
+ fn_name="${fn_name%; add_critical_attrib_v2}"
2896
+ unset -v srch repl with crit_tmp
2897
+ } # => add_critical_attrib_v2()
2919
2898
2920
2899
# Check serial in db
2921
2900
check_serial_unique() {
@@ -5052,28 +5031,16 @@ $cmd does not support setting an external commonName."
5052
5031
# basicConstraints critical
5053
5032
if grep -q 'Basic Constraints: critical' "$old_cert_tmp"
5054
5033
then
5055
- crit_tmp=
5056
- easyrsa_mktemp crit_tmp
5057
-
5058
- add_critical_attrib basicConstraints "$x509_type_file" \
5059
- "$crit_tmp" || die "$f_name BC add_critical_attrib"
5060
-
5061
- # Use the new tmp-file with critical attribute
5062
- x509_type_file="$crit_tmp"
5034
+ add_critical_attrib_v2 basicConstraints "$x509_type_file" || \
5035
+ die "$f_name BC add_critical_attrib_v2"
5063
5036
verbose "renew_ca_cert: basicConstraints critical OK"
5064
5037
fi
5065
5038
5066
5039
# keyUsage critical
5067
5040
if grep -q 'Key Usage: critical' "$old_cert_tmp"
5068
5041
then
5069
- crit_tmp=
5070
- easyrsa_mktemp crit_tmp
5071
-
5072
- add_critical_attrib keyUsage "$x509_type_file" \
5073
- "$crit_tmp" || die "$f_name KU add_critical_attrib"
5074
-
5075
- # Use the new tmp-file with critical attribute
5076
- x509_type_file="$crit_tmp"
5042
+ add_critical_attrib_v2 keyUsage "$x509_type_file" || \
5043
+ die "$f_name KU add_critical_attrib_v2"
5077
5044
verbose "renew_ca_cert: keyUsage critical OK"
5078
5045
fi
5079
5046
0 commit comments