Fix NPE in OpenSslEngine
Motivation: The gRPC interop tests fail due to a NPE in OpenSslEngine. Caused by: java.lang.NullPointerException at io.netty.handler.ssl.OpenSslEngine.setSSLParameters(OpenSslEngine.java:1473) Modifications: Add a null check Result: No more NPE exceptions :-)
This commit is contained in:
parent
7673bed45a
commit
a96a97356f
@ -1470,12 +1470,15 @@ public final class OpenSslEngine extends SSLEngine {
|
|||||||
assert GET_ASCII_NAME_METHOD != null;
|
assert GET_ASCII_NAME_METHOD != null;
|
||||||
try {
|
try {
|
||||||
List<?> servernames = (List<?>) GET_SERVER_NAMES_METHOD.invoke(sslParameters);
|
List<?> servernames = (List<?>) GET_SERVER_NAMES_METHOD.invoke(sslParameters);
|
||||||
for (Object serverName : servernames) {
|
if (servernames != null) {
|
||||||
if (SNI_HOSTNAME_CLASS.isInstance(serverName)) {
|
for (Object serverName : servernames) {
|
||||||
SSL.setTlsExtHostName(ssl, (String) GET_ASCII_NAME_METHOD.invoke(serverName));
|
if (SNI_HOSTNAME_CLASS.isInstance(serverName)) {
|
||||||
} else {
|
SSL.setTlsExtHostName(ssl, (String) GET_ASCII_NAME_METHOD.invoke(serverName));
|
||||||
throw new IllegalArgumentException("Only " + SNI_HOSTNAME_CLASS.getName()
|
} else {
|
||||||
+ " instances are supported, but found: " + serverName);
|
throw new IllegalArgumentException("Only " + SNI_HOSTNAME_CLASS.getName()
|
||||||
|
+ " instances are supported, but found: " +
|
||||||
|
serverName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sniHostNames = servernames;
|
sniHostNames = servernames;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user