Changeset 174

Show
Ignore:
Timestamp:
01/08/08 21:22:54 (1 year ago)
Author:
jfp
Message:

ssl receiver added

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/jsmtpd/.classpath

    r171 r174  
    1111        <classpathentry kind="lib" path="lib/log4j-1.2.9.jar"/> 
    1212        <classpathentry kind="lib" path="lib/tiger-javamail-1.0.jar"/> 
     13        <classpathentry kind="lib" path="lib/libclamav-1.0.jar"/> 
     14        <classpathentry kind="lib" path="lib/commons-io-1.3.1.jar"/> 
    1315        <classpathentry kind="output" path="bin"/> 
    1416</classpath> 
  • trunk/jsmtpd/CHANGELOG

    r169 r174  
    11Version 0.x 
     2        Added ssl socket receiver 
    23        Ldap auth fix 
    34        Late rbl checking plugin 
     
    78                (ie zen.spamhaus.org by example) 
    89        Bug fix with slow clamd 
    9         Removed Jasen plugin from main project (see http://svn.jsmtpd.org/trunk/jasen-plugin/)   
     10        Removed Jasen plugin from main project (see http://svn.jsmtpd.org/trunk/jasen-plugin/) 
     11        Clamd integration in a separate lib (http://dev.taldius.net/libclamav). 
    1012 
    1113Version 0.6a 
  • trunk/jsmtpd/etc/jsmtpd.ini

    r149 r174  
    3232 
    3333#port listening, 25 default 
    34 rPort = 25 
     34rPort = 2500 
    3535 
    3636#number of worker threads spawn at time. others connections will be rejected. 
     
    5353dDelayRetry=30 
    5454 
     55###### SSL ##### 
     56#Will bind a ssl receiver socket 
     57ssl=off 
     58sslPort=4650 
     59sslKeystore=keystore 
     60sslPassword=demodemo 
  • trunk/jsmtpd/src/org/jsmtpd/Controler.java

    r138 r174  
    3838import org.jsmtpd.core.common.PluginStore; 
    3939import org.jsmtpd.core.receive.Receiver; 
     40import org.jsmtpd.core.receive.SslReceiver; 
    4041import org.jsmtpd.core.send.DeliveryPicker; 
    4142import org.xml.sax.SAXException; 
     
    5758     */ 
    5859    private Receiver rec = null; 
     60     
     61    private SslReceiver sslReceiver = null; 
    5962    /** 
    6063     * mail delivery services 
     
    232235        try { 
    233236            rec = new Receiver(ReadConfig.getInstance().getRPort(), ReadConfig.getInstance().getRMaxInstances()); 
     237            if ("on".equals(ReadConfig.getInstance().getProps().getProperty("ssl"))) { 
     238                int sslPort = Integer.parseInt(ReadConfig.getInstance().getProps().getProperty("sslPort")); 
     239                sslReceiver = new SslReceiver(sslPort, ReadConfig.getInstance().getRMaxInstances()); 
     240            } 
    234241        } catch (IOException e1) { 
    235242            log.info("Network Listener is down"); 
     
    258265        } 
    259266 
     267        if (sslReceiver != null) { 
     268                sslReceiver.shutdown(); 
     269        } 
     270         
    260271        if (delivery != null) { 
    261272            delivery.shutdown(); 
  • trunk/jsmtpd/src/org/jsmtpd/config/ReadConfig.java

    r136 r174  
    3535    private static ReadConfig instance = null; 
    3636 
    37     private ReadConfig() { 
     37    public Properties getProps() { 
     38                return props; 
     39        } 
     40 
     41        private ReadConfig() { 
    3842 
    3943    } 
  • trunk/jsmtpd/src/org/jsmtpd/core/common/filter/FilterTreeFailureException.java

    r3 r174  
    2626 * @author Jean-Francois POUX 
    2727 */ 
    28 public class FilterTreeFailureException extends FilterTreeSuccesException { 
     28public class FilterTreeFailureException extends Exception { 
    2929 
    3030} 
  • trunk/jsmtpd/src/org/jsmtpd/core/receive/ProtocolHandler.java

    r170 r174  
    158158    private int maxRcpt =ReadConfig.getInstance().getMaxRcpt(); 
    159159     
    160     public void init(Socket sock) { 
     160    public void init(Socket sock,boolean secured) { 
    161161        commandHistory=new LinkedList<String>(); 
    162162        remote = ((InetSocketAddress) sock.getRemoteSocketAddress()).getAddress().getHostAddress(); // get client hostname 
     
    166166        reset(); 
    167167        this.sock = sock; 
    168          
     168        this.secured=secured; 
    169169        try { 
    170170            sock.setSoTimeout(timeout * 1000); // Timeout comes from the config file 
     
    480480                wr = null; 
    481481            } catch (IOException e) { 
    482                 e.printStackTrace(); 
     482                log.error(e); 
    483483            } 
    484484        } 
     
    488488                sock = null; 
    489489            } catch (IOException e) { 
    490                 e.printStackTrace(); 
     490               log.error(e); 
    491491            } 
    492492        } 
  • trunk/jsmtpd/src/org/jsmtpd/core/receive/Receiver.java

    r142 r174  
    4242public class Receiver extends Thread { 
    4343 
    44     private ServerSocket sock = null; 
    45     private ThreadPool p = null; 
     44    protected ServerSocket sock = null; 
     45    protected ThreadPool p = null; 
    4646    public boolean runing = true; 
    4747    private Log log = LogFactory.getLog(Receiver.class); 
    48     private Socket inc = null; 
     48    protected Socket inc = null; 
    4949 
     50    public Receiver () { 
     51         
     52    } 
     53     
    5054    public Receiver(int port, int maxInst) throws IOException, InstantiationException, IllegalAccessException, ClassNotFoundException { 
    5155        p = new GrowingThreadPool(maxInst, "org.jsmtpd.core.receive.ReceiverWorkerImpl","R"); 
  • trunk/jsmtpd/src/org/jsmtpd/core/receive/ReceiverWorkerImpl.java

    r136 r174  
    3737 
    3838    public void doJob() { 
    39         proto.init(rec); 
     39        if (rec.getClass().getName().toLowerCase().contains("ssl")) 
     40                proto.init(rec,true); 
     41        proto.init(rec,false); 
    4042    } 
    4143