From 4f4c5c1eab2c76e1b7092a8463d998ac58c07fc2 Mon Sep 17 00:00:00 2001 From: adam Date: Thu, 5 Jul 2007 01:35:01 +0000 Subject: [PATCH] fiddling with Main darcs-hash:20070705013501-5007d-a242bda4b20a798bfdadedea3b15ea9919b7f4f2.gz --- src/org/ibex/mail/Main.java | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/org/ibex/mail/Main.java b/src/org/ibex/mail/Main.java index bd3014d..b11584c 100644 --- a/src/org/ibex/mail/Main.java +++ b/src/org/ibex/mail/Main.java @@ -16,6 +16,7 @@ import javax.net.ssl.SSLServerSocket; import javax.net.ssl.SSLServerSocketFactory; import javax.net.ssl.SSLSocket; +// restrict the maximum number of open connections from any given source IP (probably max 4) public class Main { public static void main(String[] s) throws Exception { @@ -72,22 +73,22 @@ public class Main { private ServerSocket ss; public Acceptor(ServerSocket ss) { this.ss = ss; } public void run() { - try { - ss.setReuseAddress(true); - - while(true) { + while(true) { + try { + ss.setReuseAddress(true); final Socket s = ss.accept(); - try { - new Thread() { - public void run() { - try { - accept(new Connection(s, "megacz.com")); - } catch (Exception e) { Log.error(Main.class, e); } - } - }.start(); - } catch (Exception e) { Log.error(Main.class, e); } + new Thread() { + public void run() { + try { + accept(new Connection(s, "megacz.com")); + } catch (Throwable t) { Log.error(Main.class, t); } + } + }.start(); + } catch (Throwable t) { + Log.error(Main.class, t); + Misc.sleep(1000); } - } catch (Exception e) { Log.error(Main.class, e); } + } } } @@ -115,7 +116,7 @@ public class Main { static final Auth auth = new Auth(); static class Auth implements Login { - private KerberosAuth ka = new KerberosAuth("MEGACZ.COM", "godel.megacz.com"); + private KerberosAuth ka = new KerberosAuth("MEGACZ.COM", "chaitin.megacz.com"); public Account anonymous() { try { final Mailbox root = @@ -131,6 +132,7 @@ public class Main { public Object login(String user, String pass, Class protocol) { return login(user, pass); } public Account login(String user, String pass) { //if (!EtcPasswd.verify(user, pass)) return null; + //if (!CheckPassword.verify(user, pass)) return null; if (!ka.auth(user, pass)) return null; final Mailbox root = FileBasedMailbox.getFileBasedMailbox(Mailbox.STORAGE_ROOT + "/user", true); -- 1.7.10.4