Author: kkolinko Date: Fri Mar 22 09:16:06 2013 New Revision: 1459681 URL: http://svn.apache.org/r1459681 Log: 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/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java?rev=1459681&r1=1459680&r2=1459681&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java Fri Mar 22 09:16:06 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(); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org