[prev in list] [next in list] [prev in thread] [next in thread] 

List:       james-dev
Subject:    svn commit: r630686 - in /james/jspf/trunk/src:
From:       bago () apache ! org
Date:       2008-02-24 21:44:54
Message-ID: 20080224214455.0C02F1A9832 () eris ! apache ! org
[Download RAW message or body]

Author: bago
Date: Sun Feb 24 13:44:53 2008
New Revision: 630686

URL: http://svn.apache.org/viewvc?rev=630686&view=rev
Log:
Make sure we correctly use "postmaster" as localpart when we receive no local part.
Remove workaround from the testsuite.
Make sure we don't check the whole record when the input IP is malformed but direclty \
return the permerror (JSPF-60).

Modified:
    james/jspf/trunk/src/main/java/org/apache/james/jspf/core/SPFSession.java
    james/jspf/trunk/src/main/java/org/apache/james/jspf/impl/SPF.java
    james/jspf/trunk/src/test/java/org/apache/james/jspf/AbstractYamlTest.java
    james/jspf/trunk/src/test/resources/org/apache/james/jspf/tests.yml

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/core/SPFSession.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/core/SPFSession.java?rev=630686&r1=630685&r2=630686&view=diff
 ==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/core/SPFSession.java \
                (original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/core/SPFSession.java Sun Feb \
24 13:44:53 2008 @@ -112,6 +112,9 @@
             if (fromParts.length > 1) {
                 this.senderDomain = fromParts[fromParts.length -1];
                 this.currentSenderPart = mailFrom.substring(0, mailFrom.length() - \
senderDomain.length() - 1); +                if (this.currentSenderPart.length() == \
0) { +                    this.currentSenderPart = "postmaster";
+                }
             } else {
                 this.currentSenderPart = "postmaster";
                 this.senderDomain = mailFrom;

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/impl/SPF.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/impl/SPF.java?rev=630686&r1=630685&r2=630686&view=diff
 ==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/impl/SPF.java (original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/impl/SPF.java Sun Feb 24 \
13:44:53 2008 @@ -341,11 +341,14 @@
     public DNSLookupContinuation checkSPF(SPFSession spfData) throws \
PermErrorException,  NoneException, TempErrorException, NeutralException {
 
-        SPFChecker policyChecker = new PolicyChecker(getPolicies());
-        SPFChecker recordChecker = new SPFRecordChecker();
-        
-        spfData.pushChecker(recordChecker);
-        spfData.pushChecker(policyChecker);
+        // if we already have a result we don't need to add further processing.
+        if (spfData.getCurrentResultExpanded() == null) {
+            SPFChecker policyChecker = new PolicyChecker(getPolicies());
+            SPFChecker recordChecker = new SPFRecordChecker();
+            
+            spfData.pushChecker(recordChecker);
+            spfData.pushChecker(policyChecker);
+        }
         
         return null;
     }

Modified: james/jspf/trunk/src/test/java/org/apache/james/jspf/AbstractYamlTest.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/test/java/org/apache/james/jspf/AbstractYamlTest.java?rev=630686&r1=630685&r2=630686&view=diff
 ==============================================================================
--- james/jspf/trunk/src/test/java/org/apache/james/jspf/AbstractYamlTest.java \
                (original)
+++ james/jspf/trunk/src/test/java/org/apache/james/jspf/AbstractYamlTest.java Sun \
Feb 24 13:44:53 2008 @@ -310,7 +310,7 @@
         if (currentTest.get("explanation") != null) {
             
             // Check for our default explanation!
-            if (currentTest.get("explanation").equals("DEFAULT") || \
currentTest.get("explanation").equals("postmaster") ) { +            if \
                (currentTest.get("explanation").equals("DEFAULT")) {
                 assertTrue(res.getExplanation().startsWith("http://www.openspf.org/why.html?sender="));
  } else if (currentTest.get("explanation").equals("cafe:babe::1 is queried as \
                1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.E.B.A.B.E.F.A.C.ip6.arpa")) \
                {
                 // See \
http://java.sun.com/j2se/1.4.2/docs/api/java/net/Inet6Address.html    

Modified: james/jspf/trunk/src/test/resources/org/apache/james/jspf/tests.yml
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/test/resources/org/apache/james/jspf/tests.yml?rev=630686&r1=630685&r2=630686&view=diff
 ==============================================================================
--- james/jspf/trunk/src/test/resources/org/apache/james/jspf/tests.yml (original)
+++ james/jspf/trunk/src/test/resources/org/apache/james/jspf/tests.yml Sun Feb 24 \
13:44:53 2008 @@ -1,6 +1,18 @@
 ---
 description: Converted tests
 tests:
+  test-#double@:
+    helo: spf1-test.foo.bar
+    host: 192.0.2.200
+    mailfrom: '"a@test"@spf1-test.foo.bar'
+    result: pass
+    explanation: 
+  test-#malformedip:
+    helo: spf1-test.foo.bar
+    host: 192.0.2.
+    mailfrom: 'spf1-test.foo.bar'
+    result: permerror
+    explanation:
   test-#1:
     helo: spf1-test.foo.bar
     host: 192.0.2.200



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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic