|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.net.SocketClient org.apache.commons.net.smtp.SMTP org.apache.commons.net.smtp.SMTPClient org.apache.commons.net.smtp.SMTPSClient
public class SMTPSClient
SMTP over SSL processing. Copied from FTPSClient.java and modified to suit SMTP. If implicit mode is selected (NOT the default), SSL/TLS negotiation starts right after the connection has been established. In explicit mode (the default), SSL/TLS negotiation starts when the user calls execTLS() and the server accepts the command. Implicit usage: SMTPSClient c = new SMTPSClient(true); c.connect("127.0.0.1", 465); Explicit usage: SMTPSClient c = new SMTPSClient(); c.connect("127.0.0.1", 25); if (c.execTLS()) { /rest of the commands here/ }
Field Summary |
---|
Fields inherited from class org.apache.commons.net.smtp.SMTP |
---|
_commandSupport_, DEFAULT_PORT, encoding |
Fields inherited from class org.apache.commons.net.SocketClient |
---|
_defaultPort_, _input_, _output_, _serverSocketFactory_, _socket_, _socketFactory_, _timeout_, connectTimeout, NETASCII_EOL |
Constructor Summary | |
---|---|
SMTPSClient()
Constructor for SMTPSClient, using DEFAULT_PROTOCOL i.e. |
|
SMTPSClient(boolean implicit)
Constructor for SMTPSClient, using DEFAULT_PROTOCOL i.e. |
|
SMTPSClient(boolean implicit,
SSLContext ctx)
Constructor for SMTPSClient, using DEFAULT_PROTOCOL i.e. |
|
SMTPSClient(SSLContext context)
Constructor for SMTPSClient. |
|
SMTPSClient(String proto)
Constructor for SMTPSClient, using explicit security mode. |
|
SMTPSClient(String proto,
boolean implicit)
Constructor for SMTPSClient. |
Method Summary | |
---|---|
protected void |
_connectAction_()
Because there are so many connect() methods, the _connectAction_() method is provided as a means of performing some action immediately after establishing a connection, rather than reimplementing all of the connect() methods. |
boolean |
execTLS()
The TLS command execution. |
String[] |
getEnabledCipherSuites()
Returns the names of the cipher suites which could be enabled for use on this connection. |
String[] |
getEnabledProtocols()
Returns the names of the protocol versions which are currently enabled for use on this connection. |
KeyManager |
getKeyManager()
Get the KeyManager instance. |
TrustManager |
getTrustManager()
Get the currently configured TrustManager . |
void |
setEnabledCipherSuites(String[] cipherSuites)
Controls which particular cipher suites are enabled for use on this connection. |
void |
setEnabledProtocols(String[] protocolVersions)
Controls which particular protocol versions are enabled for use on this connection. |
void |
setKeyManager(KeyManager newKeyManager)
Set a KeyManager to use. |
void |
setTrustManager(TrustManager newTrustManager)
Override the default TrustManager to use. |
Methods inherited from class org.apache.commons.net.smtp.SMTPClient |
---|
addRecipient, addRecipient, completePendingCommand, listHelp, listHelp, login, login, logout, reset, sendMessageData, sendNoOp, sendShortMessageData, sendSimpleMessage, sendSimpleMessage, setSender, setSender, verify |
Methods inherited from class org.apache.commons.net.smtp.SMTP |
---|
data, disconnect, expn, getCommandSupport, getReply, getReplyCode, getReplyString, getReplyStrings, helo, help, help, mail, noop, quit, rcpt, removeProtocolCommandistener, rset, saml, send, sendCommand, sendCommand, sendCommand, sendCommand, soml, turn, vrfy |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SMTPSClient()
DEFAULT_PROTOCOL
i.e. TLS
Sets security mode to explicit (isImplicit = false).
public SMTPSClient(boolean implicit)
DEFAULT_PROTOCOL
i.e. TLS
implicit
- The security mode, true
for implicit, false
for explicitpublic SMTPSClient(String proto)
proto
- the protocol.public SMTPSClient(String proto, boolean implicit)
proto
- the protocol.implicit
- The security mode, true
for implicit, false
for explicitpublic SMTPSClient(boolean implicit, SSLContext ctx)
DEFAULT_PROTOCOL
i.e. TLS
implicit
- The security mode, true
for implicit, false
for explicitctx
- A pre-configured SSL Context.public SMTPSClient(SSLContext context)
context
- A pre-configured SSL Context.SMTPSClient(boolean, SSLContext)
Method Detail |
---|
protected void _connectAction_() throws IOException
_connectAction_
in class SMTP
IOException
- If it is thrown by _connectAction_().SocketClient._connectAction_()
public KeyManager getKeyManager()
KeyManager
instance.
KeyManager
instance.public void setKeyManager(KeyManager newKeyManager)
KeyManager
to use.
newKeyManager
- The KeyManager implementation to set.KeyManagerUtils
public void setEnabledCipherSuites(String[] cipherSuites)
cipherSuites
- The cipher suites.public String[] getEnabledCipherSuites()
Socket
is not an SSLSocket
instance, returns null.
null
.public void setEnabledProtocols(String[] protocolVersions)
protocolVersions
- The protocol versions.public String[] getEnabledProtocols()
Socket
is not an SSLSocket
instance, returns null.
null
.public boolean execTLS() throws SSLException, IOException
IOException
- If an I/O error occurs while sending
the command or performing the negotiation.
SSLException
public TrustManager getTrustManager()
TrustManager
.
public void setTrustManager(TrustManager newTrustManager)
TrustManager
to use.
newTrustManager
- The TrustManager implementation to set.TrustManagerUtils
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |