org.gudy.azureus2.core3.security.impl
Class SESecurityManagerImpl
java.lang.Object
org.gudy.azureus2.core3.security.impl.SESecurityManagerImpl
public class SESecurityManagerImpl
- extends java.lang.Object
Method Summary |
void |
addCertificateListener(SECertificateListener l)
|
protected void |
addCertToKeyStore(java.lang.String alias,
java.security.Key public_key,
java.security.cert.Certificate[] certChain)
|
protected javax.net.ssl.SSLSocketFactory |
addCertToTrustStore(java.lang.String alias,
java.security.cert.Certificate cert,
boolean update_https_factory)
|
void |
addPasswordListener(SEPasswordListener l)
|
protected boolean |
checkKeyStoreHasEntry()
|
void |
clearPasswords()
|
java.security.cert.Certificate |
createSelfSignedCertificate(java.lang.String alias,
java.lang.String cert_dn,
int strength)
|
protected boolean |
ensureStoreExists(java.lang.String name)
|
void |
exitVM(int status)
|
javax.net.ssl.TrustManager[] |
getAllTrustingTrustManager()
|
javax.net.ssl.TrustManager[] |
getAllTrustingTrustManager(javax.net.ssl.X509TrustManager delegate)
|
java.net.PasswordAuthentication |
getAuthentication(java.lang.String realm,
java.lang.String protocol,
java.lang.String host,
int port)
|
java.lang.Class[] |
getClassContext()
|
SEKeyDetails |
getKeyDetails(java.lang.String alias)
|
java.security.KeyStore |
getKeyStore()
|
java.lang.String |
getKeystoreName()
|
java.lang.String |
getKeystorePassword()
|
java.net.PasswordAuthentication |
getPasswordAuthentication(java.lang.String realm,
java.net.URL tracker)
|
static SESecurityManagerImpl |
getSingleton()
|
javax.net.ssl.SSLServerSocketFactory |
getSSLServerSocketFactory()
|
javax.net.ssl.SSLSocketFactory |
getSSLSocketFactory()
|
javax.net.ssl.TrustManagerFactory |
getTrustManagerFactory()
|
java.security.KeyStore |
getTrustStore()
|
java.security.KeyStore |
getTrustStore(boolean attempt_recovery)
|
void |
initialise()
|
void |
installAuthenticator()
|
protected void |
installSecurityManager()
|
javax.net.ssl.SSLSocketFactory |
installServerCertificates(java.lang.String alias,
java.lang.String host,
int port)
|
javax.net.ssl.SSLSocketFactory |
installServerCertificates(java.lang.String alias,
java.lang.String host,
int port,
boolean sni_hack)
|
javax.net.ssl.SSLSocketFactory |
installServerCertificates(java.net.URL https_url)
|
protected java.security.KeyStore |
loadKeyStore()
|
protected java.security.KeyStore |
loadKeyStore(javax.net.ssl.KeyManagerFactory keyManagerFactory)
|
static void |
main(java.lang.String[] args)
|
void |
removeCertificateListener(SECertificateListener l)
|
void |
removePasswordListener(SEPasswordListener l)
|
boolean |
resetTrustStore(boolean test_only)
|
void |
setCertificateHandler(java.net.URL url,
SECertificateListener l)
|
void |
setPasswordAuthenticationOutcome(java.lang.String realm,
java.net.URL tracker,
boolean success)
|
void |
setPasswordHandler(java.net.URL url,
SEPasswordListener l)
|
void |
setThreadPasswordHandler(SEPasswordListener l)
|
void |
stopThread(java.lang.Thread t)
|
void |
unsetThreadPasswordHandler()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
singleton
protected static final SESecurityManagerImpl singleton
KEYSTORE_TYPE
protected static java.lang.String KEYSTORE_TYPE
keystore_name
protected java.lang.String keystore_name
truststore_name
protected java.lang.String truststore_name
certificate_listeners
protected final java.util.List<SECertificateListener> certificate_listeners
password_listeners
protected final CopyOnWriteList password_listeners
password_handlers
protected final java.util.Map password_handlers
certificate_handlers
protected final java.util.Map certificate_handlers
exit_vm_permitted
protected boolean exit_vm_permitted
this_mon
protected final AEMonitor this_mon
SESecurityManagerImpl
public SESecurityManagerImpl()
getSingleton
public static SESecurityManagerImpl getSingleton()
initialise
public void initialise()
resetTrustStore
public boolean resetTrustStore(boolean test_only)
getKeystoreName
public java.lang.String getKeystoreName()
getKeystorePassword
public java.lang.String getKeystorePassword()
installSecurityManager
protected void installSecurityManager()
stopThread
public void stopThread(java.lang.Thread t)
exitVM
public void exitVM(int status)
installAuthenticator
public void installAuthenticator()
getAuthentication
public java.net.PasswordAuthentication getAuthentication(java.lang.String realm,
java.lang.String protocol,
java.lang.String host,
int port)
checkKeyStoreHasEntry
protected boolean checkKeyStoreHasEntry()
ensureStoreExists
protected boolean ensureStoreExists(java.lang.String name)
getKeyStore
public java.security.KeyStore getKeyStore()
throws java.lang.Exception
- Throws:
java.lang.Exception
getTrustStore
public java.security.KeyStore getTrustStore()
throws java.lang.Exception
- Throws:
java.lang.Exception
getTrustStore
public java.security.KeyStore getTrustStore(boolean attempt_recovery)
throws java.lang.Exception
- Throws:
java.lang.Exception
loadKeyStore
protected java.security.KeyStore loadKeyStore()
throws java.lang.Exception
- Throws:
java.lang.Exception
loadKeyStore
protected java.security.KeyStore loadKeyStore(javax.net.ssl.KeyManagerFactory keyManagerFactory)
throws java.lang.Exception
- Throws:
java.lang.Exception
getSSLServerSocketFactory
public javax.net.ssl.SSLServerSocketFactory getSSLServerSocketFactory()
throws java.lang.Exception
- Throws:
java.lang.Exception
getKeyDetails
public SEKeyDetails getKeyDetails(java.lang.String alias)
throws java.lang.Exception
- Throws:
java.lang.Exception
createSelfSignedCertificate
public java.security.cert.Certificate createSelfSignedCertificate(java.lang.String alias,
java.lang.String cert_dn,
int strength)
throws java.lang.Exception
- Throws:
java.lang.Exception
getTrustManagerFactory
public javax.net.ssl.TrustManagerFactory getTrustManagerFactory()
getSSLSocketFactory
public javax.net.ssl.SSLSocketFactory getSSLSocketFactory()
installServerCertificates
public javax.net.ssl.SSLSocketFactory installServerCertificates(java.net.URL https_url)
getAllTrustingTrustManager
public javax.net.ssl.TrustManager[] getAllTrustingTrustManager()
getAllTrustingTrustManager
public javax.net.ssl.TrustManager[] getAllTrustingTrustManager(javax.net.ssl.X509TrustManager delegate)
installServerCertificates
public javax.net.ssl.SSLSocketFactory installServerCertificates(java.lang.String alias,
java.lang.String host,
int port)
installServerCertificates
public javax.net.ssl.SSLSocketFactory installServerCertificates(java.lang.String alias,
java.lang.String host,
int port,
boolean sni_hack)
addCertToKeyStore
protected void addCertToKeyStore(java.lang.String alias,
java.security.Key public_key,
java.security.cert.Certificate[] certChain)
throws java.lang.Exception
- Throws:
java.lang.Exception
addCertToTrustStore
protected javax.net.ssl.SSLSocketFactory addCertToTrustStore(java.lang.String alias,
java.security.cert.Certificate cert,
boolean update_https_factory)
throws java.lang.Exception
- Throws:
java.lang.Exception
getPasswordAuthentication
public java.net.PasswordAuthentication getPasswordAuthentication(java.lang.String realm,
java.net.URL tracker)
setPasswordAuthenticationOutcome
public void setPasswordAuthenticationOutcome(java.lang.String realm,
java.net.URL tracker,
boolean success)
addPasswordListener
public void addPasswordListener(SEPasswordListener l)
removePasswordListener
public void removePasswordListener(SEPasswordListener l)
clearPasswords
public void clearPasswords()
setThreadPasswordHandler
public void setThreadPasswordHandler(SEPasswordListener l)
unsetThreadPasswordHandler
public void unsetThreadPasswordHandler()
setPasswordHandler
public void setPasswordHandler(java.net.URL url,
SEPasswordListener l)
addCertificateListener
public void addCertificateListener(SECertificateListener l)
setCertificateHandler
public void setCertificateHandler(java.net.URL url,
SECertificateListener l)
removeCertificateListener
public void removeCertificateListener(SECertificateListener l)
getClassContext
public java.lang.Class[] getClassContext()
main
public static void main(java.lang.String[] args)