java/src/org/openantivirus/daemon ScannerDaemon.java,1.3,1.4
Kurt Huwig <[email protected]> Wed, 26 May 2004 20:19:55 +0000
| Newsgroups | gmane.comp.security.virus.openantivirus.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/openantivirus/java/src/org/openantivirus/daemon
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16773/src/org/openantivirus/daemon
Modified Files:
ScannerDaemon.java
Log Message:
More flexible handling of configuration
Index: ScannerDaemon.java
===================================================================
RCS file: /cvsroot/openantivirus/java/src/org/openantivirus/daemon/ScannerDaemon.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- ScannerDaemon.java 25 May 2004 06:49:09 -0000 1.3
+++ ScannerDaemon.java 26 May 2004 20:19:52 -0000 1.4
@@ -56,6 +56,7 @@
public static final String BINDNAME = "localhost";
public static final int PORT = 8127;
+ private static final String CONF_FILE = "ScannerDaemon-settings.properties";
private static final int MAX_BACKLOG = 50;
private boolean isRunning;
@@ -102,34 +103,37 @@
+ "This is free software, and you are welcome to redistribute "
+ "it under certain\nconditions; for details read 'COPYING'.");
- final WriteableScanConfiguration scanConfiguration =
- new WriteableScanConfiguration(new DefaultScanConfiguration());
+ final WriteableScanConfiguration loadConf =
+ new WriteableScanConfiguration(new DefaultScanConfiguration());
+ final WriteableScanConfiguration scanConf =
+ new WriteableScanConfiguration(loadConf);
- for (int i = 0; i < args.length; i++) {
- if (args[i].charAt(0) == '-') {
- final String sParameter = args[i].substring(1);
- if ("nosignature".equals(sParameter)) {
- scanConfiguration.putInt("credo.level",
- CredoParser.NO_VERIFY);
- } else if ("credolevel".equals(sParameter)) {
- scanConfiguration.putInt("credo.level",
- Integer.parseInt(args[++i]));
- } else if ("followsymlinks".equals(sParameter)) {
- scanConfiguration.putBoolean("engine.follow-symlinks",
- true);
- } else if ("tempdir".equals(sParameter)) {
- scanConfiguration.putString("engine.tempdirectory",
- args[++i]);
+ try {
+ boolean confFileLoaded = false;
+ for (int i = 0; i < args.length; i++) {
+ if (args[i].charAt(0) == '-') {
+ final String sParameter = args[i].substring(1);
+ if ("nosignature".equals(sParameter)) {
+ scanConf.putInt("credo.level",
+ CredoParser.NO_VERIFY);
+ } else if ("configfile".equals(sParameter)) {
+ loadConf.loadFile(args[++i]);
+ confFileLoaded = true;
+ } else {
+ scanConf.putAny(args[i], args[++i]);
+ }
} else {
- System.err.println("Unknown parameter: " + args[i]);
+ System.err.println("unknown parameter: " + args[i]);
}
- } else {
- scanConfiguration.putString("credo.directory", args[i]);
}
- }
-
- try {
- new ScannerDaemon(scanConfiguration).start();
+
+ if (!confFileLoaded) {
+ if (new File(CONF_FILE).exists()) {
+ loadConf.loadFile(CONF_FILE);
+ }
+ }
+
+ new ScannerDaemon(scanConf).start();
} catch (Exception e) {
e.printStackTrace();
}
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g.
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click