diff --git a/SOURCES/04-auditswig-i-avoid-setter-generation-for-audit-rule-data.patch b/SOURCES/04-auditswig-i-avoid-setter-generation-for-audit-rule-data.patch new file mode 100644 index 0000000..e072cc9 --- /dev/null +++ b/SOURCES/04-auditswig-i-avoid-setter-generation-for-audit-rule-data.patch @@ -0,0 +1,35 @@ +From beed138222421a2eb4212d83cb889404bd7efc49 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Wed, 23 Mar 2022 07:27:05 +0000 +Subject: [PATCH] auditswig.i: avoid setter generation for audit_rule_data::buf + +As it's a flexible array generated code was never safe to use. +With kernel's https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ed98ea2128b6fd83bce13716edf8f5fe6c47f574 +change it's a build failure now: + + audit> audit_wrap.c:5010:15: error: invalid use of flexible array member + audit> 5010 | arg1->buf = (char [])(char *)memcpy(malloc((size)*sizeof(char)), (const char *)(arg2), sizeof(char)*(size)); + audit> | ^ + +Let's avoid setter generation entirely. + +Closes: https://github.com/linux-audit/audit-userspace/issues/252 +--- + bindings/swig/src/auditswig.i | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/bindings/swig/src/auditswig.i b/bindings/swig/src/auditswig.i +index 21aafca31..9a2c5661d 100644 +--- a/bindings/swig/src/auditswig.i ++++ b/bindings/swig/src/auditswig.i +@@ -39,6 +39,10 @@ signed + #define __attribute(X) /*nothing*/ + typedef unsigned __u32; + typedef unsigned uid_t; ++/* Sidestep SWIG's limitation of handling c99 Flexible arrays by not: ++ * generating setters against them: https://github.com/swig/swig/issues/1699 ++ */ ++%ignore audit_rule_data::buf; + %include "/usr/include/linux/audit.h" + #define __extension__ /*nothing*/ + %include diff --git a/SPECS/audit.spec b/SPECS/audit.spec index 36a6658..352f82c 100644 --- a/SPECS/audit.spec +++ b/SPECS/audit.spec @@ -3,7 +3,7 @@ Summary: User space tools for kernel auditing Name: audit Version: 3.0.7 -Release: 4%{?dist} +Release: 4%{?dist}.inferit License: GPLv2+ URL: http://people.redhat.com/sgrubb/audit/ Source0: http://people.redhat.com/sgrubb/audit/%{name}-%{version}.tar.gz @@ -11,6 +11,8 @@ Source1: https://www.gnu.org/licenses/lgpl-2.1.txt Patch1: audit-3.0.8-auparse-path-norm.patch Patch2: audit-3.0.8-drop-protecthome.patch +# https://github.com/linux-audit/audit-userspace/pull/253 +Patch3: 04-auditswig-i-avoid-setter-generation-for-audit-rule-data.patch BuildRequires: gcc swig make BuildRequires: openldap-devel @@ -88,6 +90,7 @@ Management Facility) database, through an IBM Tivoli Directory Server cp %{SOURCE1} . %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build %configure --with-python=no \ @@ -240,6 +243,9 @@ fi %attr(750,root,root) %{_sbindir}/audispd-zos-remote %changelog +* Mon Dec 4 2034 Arkady L. Shane - 3.0.7-4.inferit +- Fix build + * Tue Jul 25 2023 MSVSphere Packaging Team - 3.0.7-4 - Rebuilt for MSVSphere 8.8