supportedCiphers() — netty Function Reference
Architecture documentation for the supportedCiphers() function in JdkSslContext.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 42e71854_5300_5427_a868_fea31fd76042["supportedCiphers()"] 3d4632d0_2f31_c47f_5ff2_913e505ddf39["JdkSslContext"] 42e71854_5300_5427_a868_fea31fd76042 -->|defined in| 3d4632d0_2f31_c47f_5ff2_913e505ddf39 72fd56fa_278f_1c21_43ff_0abc25ab65d4["JdkSslContext()"] 72fd56fa_278f_1c21_43ff_0abc25ab65d4 -->|calls| 42e71854_5300_5427_a868_fea31fd76042 91c2cc55_5baf_f1e1_9478_d01f7eefe9fd["init()"] 91c2cc55_5baf_f1e1_9478_d01f7eefe9fd -->|calls| 42e71854_5300_5427_a868_fea31fd76042 style 42e71854_5300_5427_a868_fea31fd76042 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java lines 141–168
private static Set<String> supportedCiphers(SSLEngine engine) {
// Choose the sensible default list of cipher suites.
final String[] supportedCiphers = engine.getSupportedCipherSuites();
Set<String> supportedCiphersSet = new LinkedHashSet<String>(supportedCiphers.length);
for (int i = 0; i < supportedCiphers.length; ++i) {
String supportedCipher = supportedCiphers[i];
supportedCiphersSet.add(supportedCipher);
// IBM's J9 JVM utilizes a custom naming scheme for ciphers and only returns ciphers with the "SSL_"
// prefix instead of the "TLS_" prefix (as defined in the JSSE cipher suite names [1]). According to IBM's
// documentation [2] the "SSL_" prefix is "interchangeable" with the "TLS_" prefix.
// See the IBM forum discussion [3] and issue on IBM's JVM [4] for more details.
//[1] https://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites
//[2] https://www.ibm.com/support/knowledgecenter/en/SSYKE2_8.0.0/com.ibm.java.security.component.80.doc/
// security-component/jsse2Docs/ciphersuites.html
//[3] https://www.ibm.com/developerworks/community/forums/html/topic?id=9b5a56a9-fa46-4031-b33b-df91e28d77c2
//[4] https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=71770
if (supportedCipher.startsWith("SSL_")) {
final String tlsPrefixedCipherName = "TLS_" + supportedCipher.substring("SSL_".length());
try {
engine.setEnabledCipherSuites(new String[]{tlsPrefixedCipherName});
supportedCiphersSet.add(tlsPrefixedCipherName);
} catch (IllegalArgumentException ignored) {
// The cipher is not supported ... move on to the next cipher.
}
}
}
return supportedCiphersSet;
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does supportedCiphers() do?
supportedCiphers() is a function in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java.
Where is supportedCiphers() defined?
supportedCiphers() is defined in handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java at line 141.
What calls supportedCiphers()?
supportedCiphers() is called by 2 function(s): JdkSslContext, init.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free