diff --git a/router/java/src/net/i2p/router/Router.java b/router/java/src/net/i2p/router/Router.java index b0dff487c4397c05b1f03d78e8467f895e3bf289..c3ea5f9f5b7894b1e519d4398a3f2057ac638028 100644 --- a/router/java/src/net/i2p/router/Router.java +++ b/router/java/src/net/i2p/router/Router.java @@ -153,6 +153,8 @@ public class Router implements RouterClock.ClockShiftListener { // just in case, lets make it explicit... TimeZone.setDefault(TimeZone.getTimeZone("GMT")); } + // Note: I2P_DISABLE_OUTPUT_OVERRIDE implemented in startup/WorkingDir.java + // https://www.kb.cert.org/vuls/id/402580 // http://docs.codehaus.org/display/JETTY/SystemProperties // Fixed in Jetty 5.1.15 but we are running 5.1.12 diff --git a/router/java/src/net/i2p/router/startup/WorkingDir.java b/router/java/src/net/i2p/router/startup/WorkingDir.java index 815c4d0504c26db89de082081001c8c99fa07454..63f7358aec6c7cc58949881586ffb5250610d9cf 100644 --- a/router/java/src/net/i2p/router/startup/WorkingDir.java +++ b/router/java/src/net/i2p/router/startup/WorkingDir.java @@ -60,7 +60,8 @@ public class WorkingDir { * Only call this once on router invocation. * Caller should store the return value for future reference. * - * This also redirects stdout and stderr to a wrapper.log file if there is no wrapper present. + * This also redirects stdout and stderr to a wrapper.log file if there is no wrapper present, + * unless system property I2P_DISABLE_OUTPUT_OVERRIDE is set. * * @param migrateOldConfig whether to copy all data over from an existing install */ @@ -262,7 +263,8 @@ public class WorkingDir { } /** - * Redirect stdout and stderr to a wrapper.log file if there is no wrapper. + * Redirect stdout and stderr to a wrapper.log file if there is no wrapper, + * unless system property I2P_DISABLE_OUTPUT_OVERRIDE is set. * * If there is no -Dwrapper.log=/path/to/wrapper.log on the java command line * to specify a log file, check for existence of wrapper.log in CWD, @@ -275,7 +277,9 @@ public class WorkingDir { * @since 0.8.13 */ private static void setupSystemOut(String dir) { - if (System.getProperty("wrapper.version") != null) + if (SystemVersion.hasWrapper()) + return; + if (System.getProperty("I2P_DISABLE_OUTPUT_OVERRIDE") != null) return; String path = System.getProperty(PROP_WRAPPER_LOG); File logfile;