Update DN parsing fn

This commit is contained in:
Tuan Dang
2024-08-02 07:00:36 -07:00
parent 9f0d7c6d11
commit 76311a1b5f
@@ -20,15 +20,11 @@ export const createDistinguishedName = (parts: TDNParts) => {
export const parseDistinguishedName = (dn: string): TDNParts => { export const parseDistinguishedName = (dn: string): TDNParts => {
const parts: TDNParts = {}; const parts: TDNParts = {};
const dnRegex = /(?:^|,\s*)([A-Z]+)=([^,]+)/g; const dnParts = dn.split(/,\s*/);
let match: RegExpExecArray | null;
while (true) { for (const part of dnParts) {
match = dnRegex.exec(dn); const [key, value] = part.split("=");
if (match === null) break; switch (key.toUpperCase()) {
const [, key, value] = match;
switch (key) {
case "C": case "C":
parts.country = value; parts.country = value;
break; break;
@@ -52,6 +48,7 @@ export const parseDistinguishedName = (dn: string): TDNParts => {
break; break;
} }
} }
return parts; return parts;
}; };