После компиляции моего клиент-серверного приложения win32 (с использованием INDY и TMS Sparkle) с Delphi 10.4 я получаю ошибку ssl. Я использую Indy с самоподписанным сертификатом на стороне сервера и indy на стороне клиента. Сообщение об ошибке (переведено с немецкого):
Ошибка соединения с SSL. EOF обнаружил нарушение протокола.
Я не менял код или среду с версии 10.3, где она работала отлично. Я могу разбить его на серверную часть, поскольку старый сервер (скомпилированный в 10.3) работает с новым клиентом (скомпилирован с 10.4), но старый клиент также ломается при попытке подключиться к новому серверу.
Это вот как я инициализирую SSL:
SecureServer := TIndySparkleHTTPServer.create(nil);
SecureServer.DefaultPort := SecurePort;
// Initialize SSL with self signed certificate
SSLHandler := TIdServerIOHandlerSSLOpenSSL.create(SecureServer);
SSLHandler.SSLOptions.CertFile := SharedVals.ServerPath + 'appcert.pem';
SSLHandler.SSLOptions.RootCertFile := SharedVals.ServerPath + 'approot.pem';
SSLHandler.SSLOptions.KeyFile := SharedVals.ServerPath + 'appkey.pem';
SSLHandler.SSLOptions.Method := sslvSSLv23;
SecureServer.IOHandler := SSLHandler;
Эмба сумела сломать Indy в 10.3, возможно, это другой такой случай?