Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rpm for openSUSE:Factory checked in 
at 2022-11-12 17:40:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rpm (Old)
 and      /work/SRC/openSUSE:Factory/.rpm.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rpm"

Sat Nov 12 17:40:05 2022 rev:303 rq:1035056 version:4.17.1.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/rpm/rpm.changes  2022-10-20 11:09:20.543731687 
+0200
+++ /work/SRC/openSUSE:Factory/.rpm.new.1597/rpm.changes        2022-11-12 
17:40:07.369794253 +0100
@@ -1,0 +2,7 @@
+Tue Oct 25 12:15:12 UTC 2022 - Johannes Segitz <jseg...@suse.com>
+
+- Add selinux_transactional_update.patch to ignore errors when setting
+  file labels during transactional updates. They will be set upon
+  reboot once the new policy is loaded (bsc#1204605)
+
+-------------------------------------------------------------------

New:
----
  selinux_transactional_update.patch

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

Other differences:
------------------
++++++ rpm.spec ++++++
--- /var/tmp/diff_new_pack.MyMn5w/_old  2022-11-12 17:40:08.421800516 +0100
+++ /var/tmp/diff_new_pack.MyMn5w/_new  2022-11-12 17:40:08.425800539 +0100
@@ -111,6 +111,7 @@
 Patch131:       posttrans.diff
 Patch133:       zstdpool.diff
 Patch134:       zstdthreaded.diff
+Patch135:       selinux_transactional_update.patch
 # touches a generated file
 Patch180:       whatrequires-doc.diff
 Patch6464:      auto-config-update-aarch64-ppc64le.diff
@@ -222,6 +223,7 @@
 %patch -P 100        -P 102 -P 103
 %patch                                                  -P 117
 %patch -P 122 -P 123               -P 131        -P 133 -P 134
+%patch -p1 -P 135
 %patch -P 180
 
 %ifarch aarch64 ppc64le riscv64

++++++ selinux_transactional_update.patch ++++++
Index: rpm-4.17.1.1/plugins/selinux.c
===================================================================
--- rpm-4.17.1.1.orig/plugins/selinux.c
+++ rpm-4.17.1.1/plugins/selinux.c
@@ -7,6 +7,7 @@
 #include <rpm/rpmlog.h>
 #include <rpm/rpmts.h>
 #include "lib/rpmplugin.h"
+#include <stdlib.h>
 
 #include "debug.h"
 
@@ -165,9 +166,15 @@ static rpmRC selinux_fsm_file_prepare(rp
        char *scon = NULL;
        if (selabel_lookup_raw(sehandle, &scon, dest, file_mode) == 0) {
            int conrc = lsetfilecon(path, scon);
-
            if (conrc == 0 || (conrc < 0 && errno == EOPNOTSUPP))
                rc = RPMRC_OK;
+           else {
+               char *tup = getenv("TRANSACTIONAL_UPDATE");
+               if ( tup != NULL && ! strncmp( tup, "true", 4 ) ) {
+                   rpmlog(RPMLOG_DEBUG, "lsetfilecon failed, will be healed 
upon reboot (transactional update): (%s, %s)\n", path, scon);
+                   rc = RPMRC_OK;
+               }
+           }
 
            rpmlog(loglvl(rc != RPMRC_OK), "lsetfilecon: (%s, %s) %s\n",
                       path, scon, (conrc < 0 ? strerror(errno) : ""));

Reply via email to