/** * @see org.apache.james.jspf.core.SPFChecker#checkSPF(org.apache.james.jspf.core.SPFSession) */ public DNSLookupContinuation checkSPF(SPFSession spfData) throws PermErrorException, TempErrorException { // throws a PermErrorException that we can pass through String host = macroExpand.expand(getHost(), spfData, MacroExpand.DOMAIN); spfData.setCurrentDomain(host); // On includes we should not use the explanation of the included domain spfData.setIgnoreExplanation(true); // set a null current result spfData.setCurrentResult(null); spfData.setCurrentResultExpanded(null); spfData.pushChecker(spfChecker); return null; }
private void restoreSession(SPFSession spfData) { spfData.setIgnoreExplanation(false); spfData.setCurrentDomain(previousDomain); spfData.setCurrentResult(previousResult); spfData.setCurrentResultExpanded(previousResultExpanded); }