Author: kkolinko
Date: Fri Mar 22 09:22:55 2013
New Revision: 1459683
URL: http://svn.apache.org/r1459683
Log:
Merged revision 1459681 from tomcat/trunk:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54599
jdbc-pool: Do not expose connection password via DataSource.toString().
Based on a patch by Daniel Mikusa
Modified:
tomcat/tc7.0.x/trunk/ (props changed)
tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
Merged /tomcat/trunk:r1459681
Modified:
tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
URL:
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java?rev=1459683&r1=1459682&r2=1459683&view=diff
==============================================================================
---
tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
(original)
+++
tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
Fri Mar 22 09:22:55 2013
@@ -802,28 +802,33 @@ public class PoolProperties implements P
StringBuilder buf = new StringBuilder("ConnectionPool[");
try {
String[] fields = DataSourceFactory.ALL_PROPERTIES;
- for (int i=0; i<fields.length; i++) {
+ for (String field: fields) {
final String[] prefix = new String[] {"get","is"};
for (int j=0; j<prefix.length; j++) {
- String name = prefix[j] + fields[i].substring(0,
1).toUpperCase(Locale.ENGLISH) +
- fields[i].substring(1);
+ String name = prefix[j]
+ + field.substring(0, 1).toUpperCase(Locale.ENGLISH)
+ + field.substring(1);
Method m = null;
try {
m = getClass().getMethod(name);
}catch (NoSuchMethodException nm) {
continue;
}
- buf.append(fields[i]);
+ buf.append(field);
buf.append("=");
- buf.append(m.invoke(this, new Object[0]));
+ if (DataSourceFactory.PROP_PASSWORD.equals(field)) {
+ buf.append("********");
+ } else {
+ buf.append(m.invoke(this, new Object[0]));
+ }
buf.append("; ");
break;
}
}
}catch (Exception x) {
- //shouldn;t happen
- x.printStackTrace();
+ //shouldn't happen
+ log.debug("toString() call failed", x);
}
return buf.toString();
}
Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1459683&r1=1459682&r2=1459683&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Fri Mar 22 09:22:55 2013
@@ -134,6 +134,11 @@
Patch provided by Martin Lichtin. (violetagg)
</fix>
<fix>
+ <bug>54599</bug>: Do not print connection password in
+ <code>PoolProperties.toString()</code>. Based on a patch by
+ Daniel Mikusa. (kkolinko)
+ </fix>
+ <fix>
<bug>54684</bug>: Add <code>javax.naming.spi</code> to
<code>Import-Package</code> header in MANIFEST.MF in order to resolve
<code>ClassNotFoundException</code> when running in OSGi environment.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]