net.sf.hermesftp.server.impl
Class SecureFtpServer

java.lang.Object
  extended by net.sf.hermesftp.utils.AbstractAppAwareBean
      extended by net.sf.hermesftp.server.AbstractFtpServer
          extended by net.sf.hermesftp.server.impl.SecureFtpServer
All Implemented Interfaces:
java.lang.Runnable, BeanConstants, FtpConstants, FtpEventListener, FtpServer, org.springframework.context.ApplicationContextAware

public class SecureFtpServer
extends AbstractFtpServer

Implementation of a FTP server that supports communication via implicit SSL. Note that implicit SSL is not covered by any RFC.

Author:
Lars Behnke

Field Summary
 
Fields inherited from interface net.sf.hermesftp.common.FtpConstants
ATTR_CLIENT_NAME, ATTR_DATA_PROT, ATTR_FILE_OFFSET, ATTR_FORCE_UTF8, ATTR_GROUP_DATA, ATTR_LOGIN_TIME, ATTR_RENAME_FILE, ATTR_RESTART_MARKERS, ATTR_SSL, ATTR_USER_DATA, BYTE_LENGTH, BYTE_MASK, DEFAULT_BEAN_RES, DEFAULT_KEYSTORE, DEFAULT_KEYSTORE_PASS, DT_ASCII, DT_BINARY, DT_EBCDIC, HERMES_HOME, MILLI, MODE_BLOCK, MODE_COMPRESS, MODE_STREAM, MODE_ZIP, MSG_GOODBYE, MSG150, MSG200, MSG200_NOTED, MSG200_PBSZ, MSG200_SIZE, MSG200_TYPE, MSG202, MSG211_FEAT_ENTRY, MSG211_FEAT_FOOTER, MSG211_FEAT_HEADER, MSG211_STAT, MSG213_SIZE, MSG213_TIME, MSG214, MSG220, MSG220_WEL, MSG226, MSG227, MSG229, MSG230, MSG234, MSG250, MSG257, MSG331, MSG350, MSG350_REST, MSG421, MSG425, MSG426, MSG431, MSG450, MSG451, MSG500, MSG500_CMD, MSG501, MSG501_PATH, MSG501_SIZE, MSG503, MSG503_USR, MSG504, MSG522, MSG530, MSG530_AUTH, MSG534, MSG536, MSG550, MSG550_COMM, MSG550_EXISTS, MSG550_MSG, MSG550_NOTEMPTY, MSG550_PERM, MSG553, OPT_ALLOWED_PASSIVE_PORTS, OPT_BUFFER_SIZE, OPT_CHARSET_ASCII, OPT_CHARSET_EBCDIC, OPT_EMULATE_UNIX, OPT_FTP_PORT, OPT_IPV4_BLACK_LIST, OPT_IPV6_BLACK_LIST, OPT_MAX_CONNECTIONS, OPT_MAX_DOWNLOAD_RATE, OPT_MAX_IDLE_SECONDS, OPT_MAX_UPLOAD_RATE, OPT_MSG_GOODBYE, OPT_MSG_WELCOME, OPT_REMOTE_DIR, OPT_SSL_ALLOW_EXPLICIT, OPT_SSL_ALLOW_IMPLICIT, OPT_SSL_CIPHER_SUITES, OPT_SSL_FORCE, OPT_SSL_KEYSTORE_FILE, OPT_SSL_KEYSTORE_PASS, OPT_SSL_PORT_IMPLICIT, PRIV_NONE, PRIV_READ, PRIV_READ_WRITE, PRIV_WRITE, PWD, SEPARATOR, SERVER_STATUS_HALTED, SERVER_STATUS_INIT, SERVER_STATUS_READY, SERVER_STATUS_UNDEF, SPACE, STAT_BYTES_DOWNLOADED, STAT_BYTES_UPLOADED, STAT_DOWNLOAD_RATE, STAT_FILES_DOWNLOADED, STAT_FILES_UPLOADED, STAT_UPLOAD_RATE, STRUCT_FILE, STRUCT_RECORD, TYPE_NAMES, WILDCARD
 
Fields inherited from interface net.sf.hermesftp.common.BeanConstants
BEAN_CONSOLE, BEAN_SERVER, BEAN_SESSION, BEAN_SSL_SERVER
 
Constructor Summary
SecureFtpServer()
           
 
Method Summary
protected  FtpSessionContext createFtpContext()
          Creates the context object passed to the user session.
protected  java.net.ServerSocket createServerSocket()
          Creates a server socket.
 
Methods inherited from class net.sf.hermesftp.server.AbstractFtpServer
abort, addFtpEventListener, cleanUpSessions, downloadPerformed, getConnectionCount, getConnectionCountHWMark, getConnectionCountHWMarkDate, getName, getOption, getOptions, getResources, getSessions, getStatus, getUserManager, isTerminated, loginPerformed, run, sessionClosed, sessionOpened, setConnectionCountHWMark, setConnectionCountHWMarkDate, setName, setOptions, setResources, setStatus, setUserManager, uploadPerformed
 
Methods inherited from class net.sf.hermesftp.utils.AbstractAppAwareBean
getApplicationContext, setApplicationContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SecureFtpServer

public SecureFtpServer()
Method Detail

createFtpContext

protected FtpSessionContext createFtpContext()
Creates the context object passed to the user session.

Specified by:
createFtpContext in class AbstractFtpServer
Returns:
The session context.

createServerSocket

protected java.net.ServerSocket createServerSocket()
                                            throws java.io.IOException
Creates a server socket. Depending on the server implementation this can be a SSL or a regular server socket.

Specified by:
createServerSocket in class AbstractFtpServer
Returns:
The server socket.
Throws:
java.io.IOException - Error on creating server socket.


Copyright © 2005-2007 Lars Behnke. All Rights Reserved.