File links-nosslcomp.patch of Package links
---
connect.c | 6 ------
https.c | 18 +++++++++++++++++-
2 files changed, 17 insertions(+), 7 deletions(-)
Index: links-2.8/connect.c
===================================================================
--- links-2.8.orig/connect.c 2013-08-26 00:08:07.000000000 +0100
+++ links-2.8/connect.c 2013-10-02 21:02:00.000000000 +0100
@@ -326,9 +326,6 @@ static void ssl_want_read(struct connect
set_connection_timeout(c);
-#ifndef HAVE_NSS
- if (c->no_tsl) c->ssl->options |= SSL_OP_NO_TLSv1;
-#endif
switch ((ret2 = SSL_get_error(c->ssl, ret1 = SSL_connect(c->ssl)))) {
case SSL_ERROR_NONE:
c->newconn = NULL;
@@ -591,9 +588,6 @@ static void connected(struct connection
goto ssl_error;
}
SSL_set_fd(c->ssl, *b->sock);
-#ifndef HAVE_NSS
- if (c->no_tsl) c->ssl->options |= SSL_OP_NO_TLSv1;
-#endif
switch ((ret2 = SSL_get_error(c->ssl, ret1 = SSL_connect(c->ssl)))) {
case SSL_ERROR_WANT_READ:
setcstate(c, S_SSL_NEG);
Index: links-2.8/https.c
===================================================================
--- links-2.8.orig/https.c 2013-09-20 22:17:00.000000000 +0100
+++ links-2.8/https.c 2013-10-02 21:01:08.000000000 +0100
@@ -62,7 +62,23 @@ SSL *getSSL(void)
if (!m) return NULL;
context = SSL_CTX_new((void *)m);
if (!context) return NULL;
- SSL_CTX_set_options(context, SSL_OP_ALL);
+ SSL_CTX_set_options(context, SSL_OP_ALL | SSL_OP_NO_SSLv2);
+
+#ifdef SSL_OP_NO_COMPRESSION
+ SSL_CTX_set_options(context, SSL_OP_NO_COMPRESSION);
+#endif
+
+#ifdef SSL_OP_NO_TICKET
+ SSL_CTX_set_options(context, SSL_OP_NO_TICKET);
+#endif
+#ifdef SSL_MODE_RELEASE_BUFFERS
+ SSL_CTX_set_mode(context, SSL_MODE_RELEASE_BUFFERS);
+#endif
+
+#ifdef SSL_MODE_AUTO_RETRY
+ SSL_CTX_set_mode(context, SSL_MODE_AUTO_RETRY);
+#endif
+
SSL_CTX_set_default_verify_paths(context);
}