setKeyMaterialServerSide() — netty Function Reference
Architecture documentation for the setKeyMaterialServerSide() function in OpenSslKeyMaterialManager.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 3b01879e_82cd_3256_f2aa_3ebac0487795["setKeyMaterialServerSide()"] 11ae770e_feee_981d_8065_927b3b5d177e["OpenSslKeyMaterialManager"] 3b01879e_82cd_3256_f2aa_3ebac0487795 -->|defined in| 11ae770e_feee_981d_8065_927b3b5d177e 3154b46f_de9b_ad12_1688_71a3cf3d3625["resolveKeyTypeBit()"] 3b01879e_82cd_3256_f2aa_3ebac0487795 -->|calls| 3154b46f_de9b_ad12_1688_71a3cf3d3625 df75439f_1a1d_ea9c_9698_ca6c0b10cef2["setKeyMaterial()"] 3b01879e_82cd_3256_f2aa_3ebac0487795 -->|calls| df75439f_1a1d_ea9c_9698_ca6c0b10cef2 style 3b01879e_82cd_3256_f2aa_3ebac0487795 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
handler/src/main/java/io/netty/handler/ssl/OpenSslKeyMaterialManager.java lines 60–93
void setKeyMaterialServerSide(ReferenceCountedOpenSslEngine engine) throws SSLException {
String[] authMethods = engine.authMethods();
if (authMethods.length == 0) {
throw new SSLHandshakeException("Unable to find key material");
}
// authMethods may contain duplicates or may result in the same type
// but call chooseServerAlias(...) may be expensive. So let's ensure
// we filter out duplicates.
int seenTypes = 0;
for (String authMethod : authMethods) {
int typeBit = resolveKeyTypeBit(authMethod);
if (typeBit == 0 || (seenTypes & typeBit) != 0) {
continue;
}
seenTypes |= typeBit; // mark as seen
String keyType = keyTypeString(typeBit);
String alias = chooseServerAlias(engine, keyType);
if (alias != null) {
setKeyMaterial(engine, alias);
return;
}
}
if (hasTmpDhKeys && authMethods.length == 1 &&
("DH_anon".equals(authMethods[0]) || "ECDH_anon".equals(authMethods[0]))) {
return; // These auth methods don't require certificates.
}
throw new SSLHandshakeException("Unable to find key material for auth method(s): "
+ Arrays.toString(authMethods));
}
Domain
Subdomains
Source
Frequently Asked Questions
What does setKeyMaterialServerSide() do?
setKeyMaterialServerSide() is a function in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/OpenSslKeyMaterialManager.java.
Where is setKeyMaterialServerSide() defined?
setKeyMaterialServerSide() is defined in handler/src/main/java/io/netty/handler/ssl/OpenSslKeyMaterialManager.java at line 60.
What does setKeyMaterialServerSide() call?
setKeyMaterialServerSide() calls 2 function(s): resolveKeyTypeBit, setKeyMaterial.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free