From f1cfe3382df22fdcd0e718286e9de8b01b8045e1 Mon Sep 17 00:00:00 2001 From: Jason Levine Date: Thu, 23 Jul 2020 20:14:38 -0400 Subject: [PATCH] escape ()\* characters in LDAP DN string (as required by ldap-filter 0.3.0 breaking change) --- lib/activedirectory.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/activedirectory.js b/lib/activedirectory.js index 316dd10..1460207 100755 --- a/lib/activedirectory.js +++ b/lib/activedirectory.js @@ -176,6 +176,10 @@ function parseDistinguishedName(dn) { if (! dn) return(dn); dn = dn.replace(/"/g, '\\"'); + dn = dn.replace(/\\/g, '\\\\'); // escape \ as per RFC 4514 + dn = dn.replace(/\*/g, '\\*'); // escape * as per RFC 4514 + dn = dn.replace(/\(/g, '\\('); // escape ( as per RFC 4514 + dn = dn.replace(/\)/g, '\\)'); // escape ) as per RFC 4514 return(dn.replace('\\,', '\\\\,')); }