* Router: Set permissions on wrapper.log when not called by RouterLaunch

This commit is contained in:
zzz
2010-10-24 16:52:41 +00:00
parent 4bb902a8b9
commit b1f1725506
2 changed files with 14 additions and 1 deletions

View File

@@ -56,7 +56,7 @@ public class SecureFileOutputStream extends FileOutputStream {
* Tries to set the permissions to 600,
* ignores errors
*/
private static void setPerms(File f) {
public static void setPerms(File f) {
if (!canSetPerms)
return;
try {

View File

@@ -218,6 +218,19 @@ public class Router {
// NOW we start all the activity
_context.initAll();
// Set wrapper.log permissions.
// Just hope this is the right location, we don't know for sure,
// but this is the same method used in LogsHelper and we have no complaints.
// (we could look for the wrapper.config file and parse it I guess...)
// If we don't have a wrapper, RouterLaunch does this for us.
if (System.getProperty("wrapper.version") != null) {
File f = new File(System.getProperty("java.io.tmpdir"), "wrapper.log");
if (!f.exists())
f = new File(_context.getBaseDir(), "wrapper.log");
if (f.exists())
SecureFileOutputStream.setPerms(f);
}
_routerInfo = null;
_higherVersionSeen = false;
_log = _context.logManager().getLog(Router.class);