21 lines
575 B
Diff
21 lines
575 B
Diff
|
See https://sylpheed.sraoss.jp/redmine/issues/306
|
||
|
|
||
|
Patch is necessary both on LibreSSL and OpenSSL
|
||
|
|
||
|
--- libsylph/ssl.c.orig
|
||
|
+++ libsylph/ssl.c
|
||
|
@@ -258,6 +258,13 @@ gboolean ssl_init_socket_with_method(SockInfo *sockinf
|
||
|
return FALSE;
|
||
|
}
|
||
|
|
||
|
+#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
|
||
|
+ if (!SSL_set_tlsext_host_name(sockinfo->ssl, sockinfo->hostname)) {
|
||
|
+ g_warning("Error setting servername extension\n");
|
||
|
+ return FALSE;
|
||
|
+ }
|
||
|
+#endif
|
||
|
+
|
||
|
SSL_set_fd(sockinfo->ssl, sockinfo->sock);
|
||
|
while ((ret = SSL_connect(sockinfo->ssl)) != 1) {
|
||
|
err = SSL_get_error(sockinfo->ssl, ret);
|