diff options
author | Endi Sukma Dewata <edewata@redhat.com> | 2012-09-18 10:37:06 -0500 |
---|---|---|
committer | Endi Sukma Dewata <edewata@redhat.com> | 2012-09-19 12:17:48 -0500 |
commit | 947ab8aa80c430bdec9ecfced19074c3bbd661c2 (patch) | |
tree | 714f711aa093f114a14df58bdc4b78169b9f0b6c /base/common/src/com/netscape/cms/servlet | |
parent | 715d89dee392b9005ac493d8f354b0d8f96652bd (diff) | |
download | pki-947ab8aa80c430bdec9ecfced19074c3bbd661c2.tar.gz pki-947ab8aa80c430bdec9ecfced19074c3bbd661c2.tar.xz pki-947ab8aa80c430bdec9ecfced19074c3bbd661c2.zip |
Removed duplicate DN escaping methods.
The duplicate methods to escape DN value have been removed. The
codes that used the duplicate methods have been modified to use
LDAPUtil.escapeDN().
Ticket #193
Diffstat (limited to 'base/common/src/com/netscape/cms/servlet')
5 files changed, 8 insertions, 85 deletions
diff --git a/base/common/src/com/netscape/cms/servlet/base/CMSServlet.java b/base/common/src/com/netscape/cms/servlet/base/CMSServlet.java index a4922ab25..72ced2c53 100644 --- a/base/common/src/com/netscape/cms/servlet/base/CMSServlet.java +++ b/base/common/src/com/netscape/cms/servlet/base/CMSServlet.java @@ -2257,44 +2257,4 @@ public abstract class CMSServlet extends HttpServlet { CMS.getLogMessage("CMSGW_ERR_BAD_SERV_OUT_STREAM", "", ee.toString())); } } - - protected StringBuffer escapeValueRfc1779(String v, boolean doubleEscape) { - StringBuffer result = new StringBuffer(); - - // Do we need to escape any characters - for (int i = 0; i < v.length(); i++) { - int c = v.charAt(i); - if (c == ',' || c == '=' || c == '+' || c == '<' || - c == '>' || c == '#' || c == ';' || c == '\r' || - c == '\n' || c == '\\' || c == '"') { - if ((c == 0x5c) && ((i + 1) < v.length())) { - int nextC = v.charAt(i + 1); - if ((c == 0x5c) && (nextC == ',' || nextC == '=' || nextC == '+' || - nextC == '<' || nextC == '>' || nextC == '#' || - nextC == ';' || nextC == '\r' || nextC == '\n' || - nextC == '\\' || nextC == '"')) { - if (doubleEscape) - result.append('\\'); - } else { - result.append('\\'); - if (doubleEscape) - result.append('\\'); - } - } else { - result.append('\\'); - if (doubleEscape) - result.append('\\'); - } - } - if (c == '\r') { - result.append("0D"); - } else if (c == '\n') { - result.append("0A"); - } else { - result.append((char) c); - } - } - return result; - } - } diff --git a/base/common/src/com/netscape/cms/servlet/cert/CertProcessor.java b/base/common/src/com/netscape/cms/servlet/cert/CertProcessor.java index 4acc94d07..4e24b5862 100644 --- a/base/common/src/com/netscape/cms/servlet/cert/CertProcessor.java +++ b/base/common/src/com/netscape/cms/servlet/cert/CertProcessor.java @@ -43,6 +43,7 @@ import com.netscape.certsrv.request.INotify; import com.netscape.certsrv.request.IRequest; import com.netscape.certsrv.request.RequestStatus; import com.netscape.cms.servlet.processors.Processor; +import com.netscape.cmsutil.ldap.LDAPUtil; public class CertProcessor extends Processor { @@ -98,8 +99,7 @@ public class CertProcessor extends Processor { // special characters in subject names parameters must be escaped if (inputName.matches("^sn_.*")) { req.setExtData(inputName, - escapeValueRfc1779(dataInputs.get(inputName), false) - .toString()); + LDAPUtil.escapeDN(dataInputs.get(inputName))); } else { req.setExtData(inputName, dataInputs.get(inputName)); } diff --git a/base/common/src/com/netscape/cms/servlet/cert/EnrollmentProcessor.java b/base/common/src/com/netscape/cms/servlet/cert/EnrollmentProcessor.java index 911b30fa3..03d0bb20c 100644 --- a/base/common/src/com/netscape/cms/servlet/cert/EnrollmentProcessor.java +++ b/base/common/src/com/netscape/cms/servlet/cert/EnrollmentProcessor.java @@ -39,6 +39,7 @@ import com.netscape.certsrv.profile.ProfileInput; import com.netscape.certsrv.request.IRequest; import com.netscape.cms.servlet.common.CMSRequest; import com.netscape.cms.servlet.profile.SSLClientCertProvider; +import com.netscape.cmsutil.ldap.LDAPUtil; public class EnrollmentProcessor extends CertProcessor { @@ -69,7 +70,7 @@ public class EnrollmentProcessor extends CertProcessor { if (dataInputs.containsKey(inputName)) { // all subject name parameters start with sn_, no other input parameters do if (inputName.matches("^sn_.*")) { - ctx.set(inputName, escapeValueRfc1779(dataInputs.get(inputName), false).toString()); + ctx.set(inputName, LDAPUtil.escapeDN(dataInputs.get(inputName))); } else { ctx.set(inputName, dataInputs.get(inputName)); } diff --git a/base/common/src/com/netscape/cms/servlet/cert/SrchCerts.java b/base/common/src/com/netscape/cms/servlet/cert/SrchCerts.java index d538ce675..b35ca054c 100644 --- a/base/common/src/com/netscape/cms/servlet/cert/SrchCerts.java +++ b/base/common/src/com/netscape/cms/servlet/cert/SrchCerts.java @@ -58,6 +58,7 @@ import com.netscape.cms.servlet.common.CMSRequest; import com.netscape.cms.servlet.common.CMSTemplate; import com.netscape.cms.servlet.common.CMSTemplateParams; import com.netscape.cms.servlet.common.ECMSGWException; +import com.netscape.cmsutil.ldap.LDAPUtil; /** * Search for certificates matching complex query filter @@ -224,12 +225,12 @@ public class SrchCerts extends CMSServlet { lf.append("(x509cert.subject=*"); lf.append(avaName); lf.append("="); - lf.append(escapeValueRfc1779(val, true)); + lf.append(LDAPUtil.escapeFilter(LDAPUtil.escapeDN(val))); lf.append(",*)"); lf.append("(x509cert.subject=*"); lf.append(avaName); lf.append("="); - lf.append(escapeValueRfc1779(val, true)); + lf.append(LDAPUtil.escapeFilter(LDAPUtil.escapeDN(val))); lf.append(")"); lf.append(")"); } else { @@ -237,7 +238,7 @@ public class SrchCerts extends CMSServlet { lf.append(avaName); lf.append("="); lf.append("*"); - lf.append(escapeValueRfc1779(val, true)); + lf.append(LDAPUtil.escapeFilter(LDAPUtil.escapeDN(val))); lf.append("*)"); } } diff --git a/base/common/src/com/netscape/cms/servlet/processors/Processor.java b/base/common/src/com/netscape/cms/servlet/processors/Processor.java index a39ba715b..fdbc85dd5 100644 --- a/base/common/src/com/netscape/cms/servlet/processors/Processor.java +++ b/base/common/src/com/netscape/cms/servlet/processors/Processor.java @@ -294,45 +294,6 @@ public class Processor { CMS.debug("End of CertProcessor Input Parameters"); } - protected StringBuffer escapeValueRfc1779(String v, boolean doubleEscape) { - StringBuffer result = new StringBuffer(); - - // Do we need to escape any characters - for (int i = 0; i < v.length(); i++) { - int c = v.charAt(i); - if (c == ',' || c == '=' || c == '+' || c == '<' || - c == '>' || c == '#' || c == ';' || c == '\r' || - c == '\n' || c == '\\' || c == '"') { - if ((c == 0x5c) && ((i + 1) < v.length())) { - int nextC = v.charAt(i + 1); - if ((c == 0x5c) && (nextC == ',' || nextC == '=' || nextC == '+' || - nextC == '<' || nextC == '>' || nextC == '#' || - nextC == ';' || nextC == '\r' || nextC == '\n' || - nextC == '\\' || nextC == '"')) { - if (doubleEscape) - result.append('\\'); - } else { - result.append('\\'); - if (doubleEscape) - result.append('\\'); - } - } else { - result.append('\\'); - if (doubleEscape) - result.append('\\'); - } - } - if (c == '\r') { - result.append("0D"); - } else if (c == '\n') { - result.append("0A"); - } else { - result.append((char) c); - } - } - return result; - } - /** * get ssl client authenticated certificate */ |