Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package stunnel for openSUSE:Factory checked 
in at 2023-09-08 21:15:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/stunnel (Old)
 and      /work/SRC/openSUSE:Factory/.stunnel.new.1766 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "stunnel"

Fri Sep  8 21:15:34 2023 rev:39 rq:1109601 version:5.70

Changes:
--------
--- /work/SRC/openSUSE:Factory/stunnel/stunnel.changes  2023-07-24 
18:26:17.890267042 +0200
+++ /work/SRC/openSUSE:Factory/.stunnel.new.1766/stunnel.changes        
2023-09-08 21:16:24.980347569 +0200
@@ -1,0 +2,17 @@
+Thu Sep  7 11:01:11 UTC 2023 - Pedro Monreal <pmonr...@suse.com>
+
+- Enable crypto-policies support: [bsc#1211301]
+  * The system's crypto-policies are the best source to determine
+    which cipher suites to accept in TLS. OpenSSL supports the
+    PROFILE=SYSTEM setting to use those policies. Change stunnel
+    to default to the system settings.
+  * Add patches:
+    - stunnel-5.69-system-ciphers.patch
+    - stunnel-5.69-default-tls-version.patch
+
+-------------------------------------------------------------------
+Thu Sep  7 10:34:18 UTC 2023 - Pedro Monreal <pmonr...@suse.com>
+
+- Enable bash completion support
+
+-------------------------------------------------------------------

New:
----
  stunnel-5.69-default-tls-version.patch
  stunnel-5.69-system-ciphers.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ stunnel.spec ++++++
--- /var/tmp/diff_new_pack.QJtl9f/_old  2023-09-08 21:16:26.476401037 +0200
+++ /var/tmp/diff_new_pack.QJtl9f/_new  2023-09-08 21:16:26.480401180 +0200
@@ -37,6 +37,11 @@
 # PATCH-FIX-UPSTREAM Fix service file, so it ensure we are starting after 
network is really up!
 Patch1:         stunnel-5.59_service_always_after_network.patch
 Patch2:         harden_stunnel.service.patch
+%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400
+# PATCH-FIX-FEDORA bsc#1211301 Add crypto-policies support
+Patch3:         stunnel-5.69-system-ciphers.patch
+Patch4:         stunnel-5.69-default-tls-version.patch
+%endif
 BuildRequires:  libopenssl-devel
 # test dependencies
 BuildRequires:  netcat
@@ -77,12 +82,17 @@
 chmod -x %{_builddir}/stunnel-%{version}/tools/ca.*
 chmod -x %{_builddir}/stunnel-%{version}/tools/importCA.*
 %patch2 -p1
+%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400
+%patch3 -p1
+%patch4 -p1
+%endif
 
 %build
 sed -i 's/-m 1770//g' tools/Makefile.in
 %configure \
        --disable-static \
-       --bindir=%{_sbindir}
+       --bindir=%{_sbindir} \
+       --with-bashcompdir=%{_datadir}/bash-completion/completions
 %if 0%{?sle_version} < 150000
   %define make_build %{__make} -O %{?_smp_mflags}
 %endif
@@ -161,6 +171,7 @@
 %dir %attr(755,stunnel,root) %{_localstatedir}/lib/stunnel%{_localstatedir}/run
 %{_fillupdir}/sysconfig.syslog-stunnel
 %{_unitdir}/stunnel.service
+%{_datadir}/bash-completion/completions/%{name}.bash
 
 %files doc
 %doc %{_docdir}/%{name}

++++++ stunnel-5.69-default-tls-version.patch ++++++
>From 1d3349209f339e6a68312fce076e355bc767d76c Mon Sep 17 00:00:00 2001
From: Clemens Lang <cll...@redhat.com>
Date: Mon, 12 Sep 2022 11:07:38 +0200
Subject: [PATCH 5/7] Apply patch stunnel-5.69-default-tls-version.patch

Patch-name: stunnel-5.69-default-tls-version.patch
Patch-id: 5
From-dist-git-commit: 70b3076eb09912b3a11f371b8c523303114fffa3
---
 src/ctx.c        | 34 ++++++++++++++++++++++------------
 src/options.c    | 15 +++++++++++----
 src/prototypes.h |  3 +++
 3 files changed, 36 insertions(+), 16 deletions(-)

diff --git a/src/ctx.c b/src/ctx.c
index 6a42a6b..cba24d9 100644
--- a/src/ctx.c
+++ b/src/ctx.c
@@ -152,19 +152,29 @@ int context_init(SERVICE_OPTIONS *section) { /* init TLS 
context */
     section->ctx=SSL_CTX_new(section->option.client ?
         TLS_client_method() : TLS_server_method());
 #endif /* OPENSSL_VERSION_NUMBER>=0x30000000L */
-    if(section->min_proto_version &&
-            !SSL_CTX_set_min_proto_version(section->ctx,
-            section->min_proto_version)) {
-        s_log(LOG_ERR, "Failed to set the minimum protocol version 0x%X",
-            section->min_proto_version);
-        return 1; /* FAILED */
+    if (section->min_proto_version == USE_DEFAULT_TLS_VERSION) {
+        s_log(LOG_INFO, "Using the default TLS minimum version as specified in"
+                " crypto policies. Not setting explicitly.");
+    } else {
+        if(section->min_proto_version &&
+                !SSL_CTX_set_min_proto_version(section->ctx,
+                section->min_proto_version)) {
+            s_log(LOG_ERR, "Failed to set the minimum protocol version 0x%X",
+                section->min_proto_version);
+            return 1; /* FAILED */
+        }
     }
-    if(section->max_proto_version &&
-            !SSL_CTX_set_max_proto_version(section->ctx,
-            section->max_proto_version)) {
-        s_log(LOG_ERR, "Failed to set the maximum protocol version 0x%X",
-            section->max_proto_version);
-        return 1; /* FAILED */
+    if (section->max_proto_version == USE_DEFAULT_TLS_VERSION) {
+        s_log(LOG_INFO, "Using the default TLS maximum version as specified in"
+                " crypto policies. Not setting explicitly");
+    } else {
+        if(section->max_proto_version &&
+                !SSL_CTX_set_max_proto_version(section->ctx,
+                section->max_proto_version)) {
+            s_log(LOG_ERR, "Failed to set the maximum protocol version 0x%X",
+                section->max_proto_version);
+            return 1; /* FAILED */
+        }
     }
 #else /* OPENSSL_VERSION_NUMBER<0x10100000L */
     if(section->option.client)
diff --git a/src/options.c b/src/options.c
index 4d31815..2ec5934 100644
--- a/src/options.c
+++ b/src/options.c
@@ -3371,8 +3371,9 @@ NOEXPORT const char *parse_service_option(CMD cmd, 
SERVICE_OPTIONS **section_ptr
             return "Invalid protocol version";
         return NULL; /* OK */
     case CMD_INITIALIZE:
-        if(section->max_proto_version && section->min_proto_version &&
-                section->max_proto_version<section->min_proto_version)
+        if(section->max_proto_version != USE_DEFAULT_TLS_VERSION
+                && section->min_proto_version != USE_DEFAULT_TLS_VERSION
+                && section->max_proto_version<section->min_proto_version)
             return "Invalid protocol version range";
         break;
     case CMD_PRINT_DEFAULTS:
@@ -3390,7 +3391,10 @@ NOEXPORT const char *parse_service_option(CMD cmd, 
SERVICE_OPTIONS **section_ptr
     /* sslVersionMax */
     switch(cmd) {
     case CMD_SET_DEFAULTS:
-        section->max_proto_version=0; /* highest supported */
+        section->max_proto_version=USE_DEFAULT_TLS_VERSION; /* use defaults in
+                                                               OpenSSL crypto
+                                                               policies.Do not
+                                                               override it */
         break;
     case CMD_SET_COPY:
         section->max_proto_version=new_service_options.max_proto_version;
@@ -3421,7 +3425,10 @@ NOEXPORT const char *parse_service_option(CMD cmd, 
SERVICE_OPTIONS **section_ptr
     /* sslVersionMin */
     switch(cmd) {
     case CMD_SET_DEFAULTS:
-        section->min_proto_version=0; /* lowest supported */
+        section->min_proto_version=USE_DEFAULT_TLS_VERSION; /* use defaults in
+                                                               OpenSSL crypto
+                                                               policies. Do not
+                                                               override it */
         break;
     case CMD_SET_COPY:
         section->min_proto_version=new_service_options.min_proto_version;
diff --git a/src/prototypes.h b/src/prototypes.h
index 0ecd719..a126c9e 100644
--- a/src/prototypes.h
+++ b/src/prototypes.h
@@ -940,6 +940,9 @@ ICON_IMAGE load_icon_default(ICON_TYPE);
 ICON_IMAGE load_icon_file(const char *);
 #endif
 
+#define USE_DEFAULT_TLS_VERSION ((int)-2) /* Use defaults in OpenSSL
+                                             crypto policies */
+
 #endif /* defined PROTOTYPES_H */
 
 /* end of prototypes.h */
-- 
2.39.2


++++++ stunnel-5.69-system-ciphers.patch ++++++
>From 6c8c4c8c85204943223b251d09ca1e93571a437a Mon Sep 17 00:00:00 2001
From: Sahana Prasad <sprasad@localhost.localdomain>
Date: Mon, 12 Sep 2022 11:07:38 +0200
Subject: [PATCH 3/7] Use cipher configuration from crypto-policies

On Fedora, CentOS and RHEL, the system's crypto policies are the best
source to determine which cipher suites to accept in TLS. On these
platforms, OpenSSL supports the PROFILE=SYSTEM setting to use those
policies. Change stunnel to default to this setting.

Co-Authored-by: Sahana Prasad <shebb...@redhat.com>
Patch-name: stunnel-5.69-system-ciphers.patch
Patch-id: 3
From-dist-git-commit: 70b3076eb09912b3a11f371b8c523303114fffa3
---
 src/options.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/options.c b/src/options.c
index 6e4a18b..4d31815 100644
--- a/src/options.c
+++ b/src/options.c
@@ -321,9 +321,9 @@ static const char *option_not_found=
     "Specified option name is not valid here";
 
 static const char *stunnel_cipher_list=
-    "HIGH:!aNULL:!SSLv2:!DH:!kDHEPSK";
+    "PROFILE=SYSTEM";
 static const char *fips_cipher_list=
-    "FIPS:!DH:!kDHEPSK";
+    "PROFILE=SYSTEM";
 
 #ifndef OPENSSL_NO_TLS1_3
 static const char *stunnel_ciphersuites=
-- 
2.39.2

Reply via email to