commit:     1ccf67d6469aa5773cdb68794de1f9a1f6192966
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Tue Nov 12 22:15:59 2024 +0000
Commit:     orbea <orbea <AT> riseup <DOT> net>
CommitDate: Tue Nov 12 22:15:59 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=1ccf67d6

net-misc/stunnel: fix for libressl 4.0.0

Signed-off-by: orbea <orbea <AT> riseup.net>

 net-misc/stunnel/files/stunnel-5.59-libressl.patch | 12 ++++++++++++
 net-misc/stunnel/files/stunnel-5.65-libressl.patch | 12 ++++++++++++
 net-misc/stunnel/files/stunnel-5.68-libressl.patch | 13 +++++++++++++
 net-misc/stunnel/files/stunnel-5.71-libressl.patch | 13 +++++++++++++
 4 files changed, 50 insertions(+)

diff --git a/net-misc/stunnel/files/stunnel-5.59-libressl.patch 
b/net-misc/stunnel/files/stunnel-5.59-libressl.patch
index 1e61881..5950745 100644
--- a/net-misc/stunnel/files/stunnel-5.59-libressl.patch
+++ b/net-misc/stunnel/files/stunnel-5.59-libressl.patch
@@ -99,6 +99,18 @@ Index: src/ctx.c
          OSSL_HANDSHAKE_STATE state=SSL_get_state(ssl);
  #else
          int state=SSL_get_state((SSL *)ssl);
+@@ -1575,7 +1575,10 @@ NOEXPORT void info_callback(const SSL *ssl, int where, 
int ret) {
+             if(state==TLS_ST_SR_CLNT_HELLO) {
+ #else
+             if(state==SSL3_ST_SR_CLNT_HELLO_A
+-                    || state==SSL23_ST_SR_CLNT_HELLO_A) {
++#if !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x4000000fL
++                    || state==SSL23_ST_SR_CLNT_HELLO_A
++#endif
++            ) {
+ #endif
+                 /* client hello received after initial handshake,
+                  * this means renegotiation -> mark it */
 Index: src/options.c
 --- a/src/options.c.orig
 +++ b/src/options.c

diff --git a/net-misc/stunnel/files/stunnel-5.65-libressl.patch 
b/net-misc/stunnel/files/stunnel-5.65-libressl.patch
index ac878f6..f00bc1c 100644
--- a/net-misc/stunnel/files/stunnel-5.65-libressl.patch
+++ b/net-misc/stunnel/files/stunnel-5.65-libressl.patch
@@ -102,6 +102,18 @@ index a2202b7..a39ee4c 100644
          OSSL_HANDSHAKE_STATE state=SSL_get_state(ssl);
  #else
          int state=SSL_get_state((SSL *)ssl);
+@@ -1575,7 +1575,10 @@ NOEXPORT void info_callback(const SSL *ssl, int where, 
int ret) {
+             if(state==TLS_ST_SR_CLNT_HELLO) {
+ #else
+             if(state==SSL3_ST_SR_CLNT_HELLO_A
+-                    || state==SSL23_ST_SR_CLNT_HELLO_A) {
++#if !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x4000000fL
++                    || state==SSL23_ST_SR_CLNT_HELLO_A
++#endif
++            ) {
+ #endif
+                 /* client hello received after initial handshake,
+                  * this means renegotiation -> mark it */
 diff --git a/src/options.c b/src/options.c
 index 9ac9c7e..dfcf8b2 100644
 --- a/src/options.c

diff --git a/net-misc/stunnel/files/stunnel-5.68-libressl.patch 
b/net-misc/stunnel/files/stunnel-5.68-libressl.patch
index 7bae42f..7dfef31 100644
--- a/net-misc/stunnel/files/stunnel-5.68-libressl.patch
+++ b/net-misc/stunnel/files/stunnel-5.68-libressl.patch
@@ -124,6 +124,19 @@ index 6a42a6b..90d6273 100644
      OSSL_HANDSHAKE_STATE state=SSL_get_state(ssl);
  #else
      int state=SSL_get_state((SSL *)ssl);
+@@ -1622,8 +1622,11 @@ NOEXPORT void info_callback(const SSL *ssl, int where, 
int ret) {
+         if(state==TLS_ST_SR_CLNT_HELLO) {
+ #else
+         if(state==SSL3_ST_SR_CLNT_HELLO_A
+-                || state==SSL23_ST_SR_CLNT_HELLO_A) {
++#if !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x4000000fL
++                || state==SSL23_ST_SR_CLNT_HELLO_A
+ #endif
++#endif
++        ) {
+             /* client hello received after initial handshake,
+              * this means renegotiation -> mark it */
+             c->reneg_state=RENEG_DETECTED;
 diff --git a/src/prototypes.h b/src/prototypes.h
 index 0ecd719..1084ce2 100644
 --- a/src/prototypes.h

diff --git a/net-misc/stunnel/files/stunnel-5.71-libressl.patch 
b/net-misc/stunnel/files/stunnel-5.71-libressl.patch
index cd29227..0016560 100644
--- a/net-misc/stunnel/files/stunnel-5.71-libressl.patch
+++ b/net-misc/stunnel/files/stunnel-5.71-libressl.patch
@@ -114,6 +114,19 @@ Rebased from an OpenBSD patch.
      OSSL_HANDSHAKE_STATE state=SSL_get_state(ssl);
  #else
      int state=SSL_get_state((SSL *)ssl);
+@@ -1622,8 +1622,11 @@ NOEXPORT void info_callback(const SSL *ssl, int where, 
int ret) {
+         if(state==TLS_ST_SR_CLNT_HELLO) {
+ #else
+         if(state==SSL3_ST_SR_CLNT_HELLO_A
+-                || state==SSL23_ST_SR_CLNT_HELLO_A) {
++#if !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x4000000fL
++                || state==SSL23_ST_SR_CLNT_HELLO_A
+ #endif
++#endif
++        ) {
+             /* client hello received after initial handshake,
+              * this means renegotiation -> mark it */
+             c->reneg_state=RENEG_DETECTED;
 --- a/src/ocsp.c
 +++ b/src/ocsp.c
 @@ -108,7 +108,7 @@ int ocsp_init(SERVICE_OPTIONS *section) {

Reply via email to