You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2006/09/25 18:03:54 UTC

svn commit: r449712 - /james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java

Author: norman
Date: Mon Sep 25 09:03:53 2006
New Revision: 449712

URL: http://svn.apache.org/viewvc?view=rev&rev=449712
Log:
Add option to use best guess from commandline. See JSPF-24

Modified:
    james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java?view=diff&rev=449712&r1=449711&r2=449712
==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java (original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java Mon Sep 25 09:03:53 2006
@@ -58,6 +58,8 @@
     private final static String CMD_VERBOSE = "-verbose";
 
     private final static String CMD_DEFAULT_EXP =  "-default-explanation";
+    
+    private final static String CMD_BEST_GUESS =  "-use-best-guess";
     
     private static Logger logger = Logger.getRootLogger();
 
@@ -70,7 +72,8 @@
         String ip = null;
         String sender = null;
         String helo = null;
-        String defaultExplanation = null;
+        String defaultExplanation = null;
+        boolean useBestGuess = false;
 
         SimpleLayout layout = new SimpleLayout();
         ConsoleAppender consoleAppender = new ConsoleAppender(layout);
@@ -85,7 +88,7 @@
             for (int i = 0; i < args.length; i++) {
                 String[] arguments = args[i].split("=");
 
-                if (arguments == null || arguments.length != 2) usage();
+                if (arguments == null || (arguments.length > 2 && (arguments[0] != CMD_DEBUG) && arguments[0] != CMD_VERBOSE)) usage();
                 
                 if (arguments[0].equals(CMD_IP)) {
                     ip = arguments[1];
@@ -98,7 +101,9 @@
                 } else if (arguments[0].equals(CMD_VERBOSE)) {
                     logger.setLevel(Level.TRACE);
                 } else if (arguments[0].equals(CMD_DEFAULT_EXP)) {
-                    defaultExplanation = arguments[1];
+                    defaultExplanation = arguments[1];
+                } else if (arguments[0].equals(CMD_BEST_GUESS)) {
+                    useBestGuess = Boolean.valueOf(arguments[1]).booleanValue();
                 } else {
                     usage();
                 }
@@ -114,6 +119,11 @@
                 if (defaultExplanation != null) {
                     spf.setDefaultExplanation(defaultExplanation);
                 }
+                
+                // Check if we should use best guess
+                if (useBestGuess == true) {
+                    spf.setUseBestGuess(true);
+                }
                 
                 SPFResult result = spf.checkSPF(ip, sender, helo);
                 System.out.println(result.getResult());
@@ -131,7 +141,7 @@
      */
     private static void usage() {
         System.out.println("Usage: java -jar jspf-x.jar " + CMD_IP + "=192.168.100.1 " + CMD_SENDER + "=postmaster@foo.bar "
-                        + CMD_HELO + "=foo.bar [" + CMD_DEBUG + "] [" + CMD_VERBOSE+ "]");
+                        + CMD_HELO + "=foo.bar ["  + CMD_DEFAULT_EXP+ "=\"explanation String\"] [" +CMD_BEST_GUESS+ "=true|false] "+ CMD_DEBUG + "] [" + CMD_VERBOSE+ "]");
         System.exit(UNKNOWN_RCODE);
     }
     



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org