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/30 12:29:04 UTC
svn commit: r451574 - in /james/server/trunk/src: java/org/apache/james/
java/org/apache/james/core/
java/org/apache/james/smtpserver/core/filter/fastfail/
test/org/apache/james/ test/org/apache/james/smtpserver/
Author: norman
Date: Sat Sep 30 03:29:03 2006
New Revision: 451574
URL: http://svn.apache.org/viewvc?view=rev&rev=451574
Log:
Replace InetAddress usage to lookup dns. See JAMES-643
Modified:
james/server/trunk/src/java/org/apache/james/James.java
james/server/trunk/src/java/org/apache/james/core/AbstractJamesService.java
james/server/trunk/src/java/org/apache/james/smtpserver/core/filter/fastfail/ReverseEqualsEhloHeloHandler.java
james/server/trunk/src/test/org/apache/james/JamesTest.java
james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
Modified: james/server/trunk/src/java/org/apache/james/James.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/James.java?view=diff&rev=451574&r1=451573&r2=451574
==============================================================================
--- james/server/trunk/src/java/org/apache/james/James.java (original)
+++ james/server/trunk/src/java/org/apache/james/James.java Sat Sep 30 03:29:03 2006
@@ -310,7 +310,7 @@
private void initializeServernamesAndPostmaster() throws ConfigurationException, ParseException {
String hostName = null;
try {
- hostName = InetAddress.getLocalHost().getHostName();
+ hostName = lookupDNSServer().getHostName(InetAddress.getLocalHost());
} catch (UnknownHostException ue) {
hostName = "localhost";
}
Modified: james/server/trunk/src/java/org/apache/james/core/AbstractJamesService.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/core/AbstractJamesService.java?view=diff&rev=451574&r1=451573&r2=451574
==============================================================================
--- james/server/trunk/src/java/org/apache/james/core/AbstractJamesService.java (original)
+++ james/server/trunk/src/java/org/apache/james/core/AbstractJamesService.java Sat Sep 30 03:29:03 2006
@@ -42,6 +42,7 @@
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.excalibur.thread.ThreadPool;
+import org.apache.james.services.DNSServer;
import org.apache.james.services.JamesConnectionManager;
import org.apache.james.util.watchdog.ThreadPerWatchdogFactory;
import org.apache.james.util.watchdog.Watchdog;
@@ -175,6 +176,11 @@
* The factory used to generate Watchdog objects
*/
protected WatchdogFactory theWatchdogFactory = null;
+
+ /**
+ * The DNSServer
+ */
+ private DNSServer dnsServer = null;
public void setConnectionManager(JamesConnectionManager connectionManager) {
this.connectionManager = connectionManager;
@@ -189,6 +195,7 @@
JamesConnectionManager connectionManager =
(JamesConnectionManager)componentManager.lookup(JamesConnectionManager.ROLE);
setConnectionManager(connectionManager);
+ dnsServer = (DNSServer) comp.lookup(DNSServer.ROLE);
}
/**
@@ -309,7 +316,7 @@
StringBuffer infoBuffer;
String hostName = null;
try {
- hostName = InetAddress.getLocalHost().getHostName();
+ hostName = dnsServer.getHostName(InetAddress.getLocalHost());
} catch (UnknownHostException ue) {
hostName = "localhost";
}
Modified: james/server/trunk/src/java/org/apache/james/smtpserver/core/filter/fastfail/ReverseEqualsEhloHeloHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/smtpserver/core/filter/fastfail/ReverseEqualsEhloHeloHandler.java?view=diff&rev=451574&r1=451573&r2=451574
==============================================================================
--- james/server/trunk/src/java/org/apache/james/smtpserver/core/filter/fastfail/ReverseEqualsEhloHeloHandler.java (original)
+++ james/server/trunk/src/java/org/apache/james/smtpserver/core/filter/fastfail/ReverseEqualsEhloHeloHandler.java Sat Sep 30 03:29:03 2006
@@ -130,13 +130,14 @@
boolean badHelo = false;
try {
// get reverse entry
- String reverse = dnsServer.getByName(
- session.getRemoteIPAddress()).getHostName();
-
+ String reverse = dnsServer.getHostName(dnsServer.getByName(
+ session.getRemoteIPAddress()));
+System.err.println("argument: " + argument +" reverse: " + reverse);
if (!argument.equals(reverse)) {
badHelo = true;
}
} catch (UnknownHostException e) {
+ e.printStackTrace();
badHelo = true;
}
@@ -167,7 +168,7 @@
String responseString = "501 "
+ DSNStatus.getStatus(DSNStatus.PERMANENT,
DSNStatus.DELIVERY_INVALID_ARG) + " Provided EHLO "
- + argument + " not equal reverse of "
+ + session.getState().get(SMTPSession.CURRENT_HELO_NAME) + " not equal reverse of "
+ session.getRemoteIPAddress();
session.writeResponse(responseString);
Modified: james/server/trunk/src/test/org/apache/james/JamesTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/JamesTest.java?view=diff&rev=451574&r1=451573&r2=451574
==============================================================================
--- james/server/trunk/src/test/org/apache/james/JamesTest.java (original)
+++ james/server/trunk/src/test/org/apache/james/JamesTest.java Sat Sep 30 03:29:03 2006
@@ -23,6 +23,8 @@
import org.apache.avalon.cornerstone.services.store.Store;
import org.apache.avalon.framework.container.ContainerUtil;
+import org.apache.james.services.AbstractDNSServer;
+import org.apache.james.services.DNSServer;
import org.apache.james.services.MailServer;
import org.apache.james.services.MailServerTestAllImplementations;
import org.apache.james.services.UsersRepository;
@@ -36,6 +38,7 @@
import org.apache.james.userrepository.MockUsersRepository;
import java.io.File;
+import java.net.InetAddress;
public class JamesTest extends MailServerTestAllImplementations {
@@ -85,7 +88,17 @@
mockMailRepository = new InMemorySpoolRepository();
mockStore.add(EXISTING_USER_NAME, mockMailRepository);
serviceManager.put(Store.ROLE, mockStore);
+ serviceManager.put(DNSServer.ROLE, setUpDNSServer());
return serviceManager;
+ }
+
+ private DNSServer setUpDNSServer() {
+ DNSServer dns = new AbstractDNSServer() {
+ public String getHostName(InetAddress addr) {
+ return "localhost";
+ }
+ };
+ return dns;
}
public boolean allowsPasswordlessUser() {
Modified: james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java?view=diff&rev=451574&r1=451573&r2=451574
==============================================================================
--- james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java (original)
+++ james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java Sat Sep 30 03:29:03 2006
@@ -101,7 +101,7 @@
}
if ("1.0.0.127.bl.spamcop.net.".equals(host)) {
- return getLocalhostByName();
+ return InetAddress.getByName("localhost");
}
if ("james.apache.org".equals(host)) {
@@ -140,7 +140,7 @@
}
public String getHostName(InetAddress addr) throws UnknownHostException {
- return "localhost";
+ return addr.getHostName();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org