Fixed #2376. Certificate altNames exception.
Ylian Saint-Hilaire committed
Mar 11, 2021 at 01:39 UTC
b68afcde6a1f025fc707bfb9409ee50db1fd5439
1 file changed
+12
-3
certoperations.js
+12
-3
@@ -734,8 +734,10 @@ module.exports.CertificateOperations = function (parent) {
734
var altNames = webCertificate.getExtension('subjectAltName');
735
if (altNames) {
736
for (i = 0; i < altNames.altNames.length; i++) {
737
- var acn = altNames.altNames[i].value.toLowerCase();
738
- if (r.CommonNames.indexOf(acn) == -1) { r.CommonNames.push(acn); }
737
+ if ((altNames.altNames[i] != null) && (altNames.altNames[i].type === 2) && (typeof altNames.altNames[i].value === 'string')) {
738
+ var acn = altNames.altNames[i].value.toLowerCase();
739
+ if (r.CommonNames.indexOf(acn) == -1) { r.CommonNames.push(acn); }
740
+ }
741
}
742
}
743
var rootCertificate = obj.pki.certificateFromPem(r.root.cert);
@@ -900,7 +902,14 @@ module.exports.CertificateOperations = function (parent) {
902
}
903
r.CommonNames = [r.CommonName.toLowerCase()];
904
var altNames = webCertificate.getExtension('subjectAltName');
903
- if (altNames) { for (i = 0; i < altNames.altNames.length; i++) { r.CommonNames.push(altNames.altNames[i].value.toLowerCase()); } }
905
+ if (altNames) {
906
+ for (i = 0; i < altNames.altNames.length; i++) {
907
+ if ((altNames.altNames[i] != null) && (altNames.altNames[i].type === 2) && (typeof altNames.altNames[i].value === 'string')) {
908
+ var acn = altNames.altNames[i].value.toLowerCase();
909
+ if (r.CommonNames.indexOf(acn) == -1) { r.CommonNames.push(acn); }
910
+ }
911
+ }
912
+ }
913
var rootCertificate = obj.pki.certificateFromPem(r.root.cert);
914
r.RootName = rootCertificate.subject.getField('CN').value;
915