From patchwork Tue May 5 12:55:46 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matt Weber X-Patchwork-Id: 1283538 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=rockwellcollins.com Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49Gfq234H9z9sSk for ; Tue, 5 May 2020 22:55:58 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 7036087E84; Tue, 5 May 2020 12:55:56 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2urqbpFOPnQr; Tue, 5 May 2020 12:55:53 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 30037875A2; Tue, 5 May 2020 12:55:53 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 72A0D1BF3BC for ; Tue, 5 May 2020 12:55:51 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 0DAF023A53 for ; Tue, 5 May 2020 12:55:51 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id z8WsLLlLiuNM for ; Tue, 5 May 2020 12:55:48 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from da1vs02.rockwellcollins.com (da1vs02.rockwellcollins.com [205.175.227.29]) by silver.osuosl.org (Postfix) with ESMTPS id EC28C20028 for ; Tue, 5 May 2020 12:55:47 +0000 (UTC) IronPort-SDR: YEYfF/kAbQF0m1t37Ch2ncDEhRgIZIvCdOqn92uIEUZtKAMSEfYGebhOc4hqPgLAdfCFomD6PH 9XBADtlufNP346M9r1ZigyxolAnRO8NuwXd8/ENEaPje4PHRgTvHB+U+8yw0GHFn9Ipi66HkeH xmcPegJuU2cETQ8Wr5XxXAbHmTOife/3GpEOvyBzDaFeUoBUfEn7NtKPKqpTFvllt9qOiD7Hcs Rp62vYz0pa97R4xWg7eILgT72mhu5MeFpsofVWAlpPdk/LYCwZNluXmEml3OsYXqlFq2+OoYyy wBU= Received: from ofwda1n02.rockwellcollins.com (HELO crulimr01.rockwellcollins.com) ([205.175.227.14]) by da1vs02.rockwellcollins.com with ESMTP; 05 May 2020 07:55:47 -0500 X-Received: from biscuits.rockwellcollins.lab (biscuits.rockwellcollins.lab [10.148.119.137]) by crulimr01.rockwellcollins.com (Postfix) with ESMTP id F21616030C; Tue, 5 May 2020 07:55:46 -0500 (CDT) From: Matt Weber To: buildroot@buildroot.org Date: Tue, 5 May 2020 07:55:46 -0500 Message-Id: <20200505125546.4207-1-matthew.weber@rockwellcollins.com> X-Mailer: git-send-email 2.17.1 Subject: [Buildroot] [2020.02.x] package/libsepol: fix -fno-common build failures X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Matt Weber , Romain Naour , Adam Duskett MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" GCC10 as a host complier has started to trigger these failures Add upstream patch for libsepol: remove leftovers of cil_mem_error_handler libsepol: fix CIL_KEY_* build errors with -fno-common Fixes: http://autobuild.buildroot.net/results/1ebeed4bb1b0f5bca493ff687f879367eaeaf868 Cc: Romain Naour Cc: Adam Duskett Signed-off-by: Matthew Weber --- ...IL_KEY_-build-errors-with-fno-common.patch | 525 ++++++++++++++++++ ...e-leftovers-of-cil_mem_error_handler.patch | 63 +++ 2 files changed, 588 insertions(+) create mode 100644 package/libsepol/0002-libsepol-fix-CIL_KEY_-build-errors-with-fno-common.patch create mode 100644 package/libsepol/0003-libsepol-remove-leftovers-of-cil_mem_error_handler.patch diff --git a/package/libsepol/0002-libsepol-fix-CIL_KEY_-build-errors-with-fno-common.patch b/package/libsepol/0002-libsepol-fix-CIL_KEY_-build-errors-with-fno-common.patch new file mode 100644 index 0000000000..af13036884 --- /dev/null +++ b/package/libsepol/0002-libsepol-fix-CIL_KEY_-build-errors-with-fno-common.patch @@ -0,0 +1,525 @@ +From 6a30b31d31fb175f808ccedec1564943b9e91e78 Mon Sep 17 00:00:00 2001 +From: Ondrej Mosnacek +Date: Thu, 23 Jan 2020 13:57:13 +0100 +Subject: [PATCH] libsepol: fix CIL_KEY_* build errors with -fno-common + +GCC 10 comes with -fno-common enabled by default - fix the CIL_KEY_* +global variables to be defined only once in cil.c and declared in the +header file correctly with the 'extern' keyword, so that other units +including the file don't generate duplicate definitions. + +Upstream: https://github.com/SELinuxProject/selinux/commit/a96e8c59ecac84096d870b42701a504791a8cc8c + +Signed-off-by: Ondrej Mosnacek +Signed-off-by: Matt Weber +--- + cil/src/cil.c | 161 +++++++++++++++++++++ + cil/src/cil_internal.h | 320 ++++++++++++++++++++--------------------- + 2 files changed, 321 insertions(+), 160 deletions(-) + +diff --git a/cil/src/cil.c b/cil/src/cil.c +index 2a7ec06..14bd443 100644 +--- a/cil/src/cil.c ++++ b/cil/src/cil.c +@@ -77,6 +77,167 @@ int cil_sym_sizes[CIL_SYM_ARRAY_NUM][CIL_SYM_NUM] = { + {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1} + }; + ++char *CIL_KEY_CONS_T1; ++char *CIL_KEY_CONS_T2; ++char *CIL_KEY_CONS_T3; ++char *CIL_KEY_CONS_R1; ++char *CIL_KEY_CONS_R2; ++char *CIL_KEY_CONS_R3; ++char *CIL_KEY_CONS_U1; ++char *CIL_KEY_CONS_U2; ++char *CIL_KEY_CONS_U3; ++char *CIL_KEY_CONS_L1; ++char *CIL_KEY_CONS_L2; ++char *CIL_KEY_CONS_H1; ++char *CIL_KEY_CONS_H2; ++char *CIL_KEY_AND; ++char *CIL_KEY_OR; ++char *CIL_KEY_NOT; ++char *CIL_KEY_EQ; ++char *CIL_KEY_NEQ; ++char *CIL_KEY_CONS_DOM; ++char *CIL_KEY_CONS_DOMBY; ++char *CIL_KEY_CONS_INCOMP; ++char *CIL_KEY_CONDTRUE; ++char *CIL_KEY_CONDFALSE; ++char *CIL_KEY_SELF; ++char *CIL_KEY_OBJECT_R; ++char *CIL_KEY_STAR; ++char *CIL_KEY_TCP; ++char *CIL_KEY_UDP; ++char *CIL_KEY_DCCP; ++char *CIL_KEY_SCTP; ++char *CIL_KEY_AUDITALLOW; ++char *CIL_KEY_TUNABLEIF; ++char *CIL_KEY_ALLOW; ++char *CIL_KEY_DONTAUDIT; ++char *CIL_KEY_TYPETRANSITION; ++char *CIL_KEY_TYPECHANGE; ++char *CIL_KEY_CALL; ++char *CIL_KEY_TUNABLE; ++char *CIL_KEY_XOR; ++char *CIL_KEY_ALL; ++char *CIL_KEY_RANGE; ++char *CIL_KEY_GLOB; ++char *CIL_KEY_FILE; ++char *CIL_KEY_DIR; ++char *CIL_KEY_CHAR; ++char *CIL_KEY_BLOCK; ++char *CIL_KEY_SOCKET; ++char *CIL_KEY_PIPE; ++char *CIL_KEY_SYMLINK; ++char *CIL_KEY_ANY; ++char *CIL_KEY_XATTR; ++char *CIL_KEY_TASK; ++char *CIL_KEY_TRANS; ++char *CIL_KEY_TYPE; ++char *CIL_KEY_ROLE; ++char *CIL_KEY_USER; ++char *CIL_KEY_USERATTRIBUTE; ++char *CIL_KEY_USERATTRIBUTESET; ++char *CIL_KEY_SENSITIVITY; ++char *CIL_KEY_CATEGORY; ++char *CIL_KEY_CATSET; ++char *CIL_KEY_LEVEL; ++char *CIL_KEY_LEVELRANGE; ++char *CIL_KEY_CLASS; ++char *CIL_KEY_IPADDR; ++char *CIL_KEY_MAP_CLASS; ++char *CIL_KEY_CLASSPERMISSION; ++char *CIL_KEY_BOOL; ++char *CIL_KEY_STRING; ++char *CIL_KEY_NAME; ++char *CIL_KEY_SOURCE; ++char *CIL_KEY_TARGET; ++char *CIL_KEY_LOW; ++char *CIL_KEY_HIGH; ++char *CIL_KEY_LOW_HIGH; ++char *CIL_KEY_HANDLEUNKNOWN; ++char *CIL_KEY_HANDLEUNKNOWN_ALLOW; ++char *CIL_KEY_HANDLEUNKNOWN_DENY; ++char *CIL_KEY_HANDLEUNKNOWN_REJECT; ++char *CIL_KEY_MACRO; ++char *CIL_KEY_IN; ++char *CIL_KEY_MLS; ++char *CIL_KEY_DEFAULTRANGE; ++char *CIL_KEY_BLOCKINHERIT; ++char *CIL_KEY_BLOCKABSTRACT; ++char *CIL_KEY_CLASSORDER; ++char *CIL_KEY_CLASSMAPPING; ++char *CIL_KEY_CLASSPERMISSIONSET; ++char *CIL_KEY_COMMON; ++char *CIL_KEY_CLASSCOMMON; ++char *CIL_KEY_SID; ++char *CIL_KEY_SIDCONTEXT; ++char *CIL_KEY_SIDORDER; ++char *CIL_KEY_USERLEVEL; ++char *CIL_KEY_USERRANGE; ++char *CIL_KEY_USERBOUNDS; ++char *CIL_KEY_USERPREFIX; ++char *CIL_KEY_SELINUXUSER; ++char *CIL_KEY_SELINUXUSERDEFAULT; ++char *CIL_KEY_TYPEATTRIBUTE; ++char *CIL_KEY_TYPEATTRIBUTESET; ++char *CIL_KEY_EXPANDTYPEATTRIBUTE; ++char *CIL_KEY_TYPEALIAS; ++char *CIL_KEY_TYPEALIASACTUAL; ++char *CIL_KEY_TYPEBOUNDS; ++char *CIL_KEY_TYPEPERMISSIVE; ++char *CIL_KEY_RANGETRANSITION; ++char *CIL_KEY_USERROLE; ++char *CIL_KEY_ROLETYPE; ++char *CIL_KEY_ROLETRANSITION; ++char *CIL_KEY_ROLEALLOW; ++char *CIL_KEY_ROLEATTRIBUTE; ++char *CIL_KEY_ROLEATTRIBUTESET; ++char *CIL_KEY_ROLEBOUNDS; ++char *CIL_KEY_BOOLEANIF; ++char *CIL_KEY_NEVERALLOW; ++char *CIL_KEY_TYPEMEMBER; ++char *CIL_KEY_SENSALIAS; ++char *CIL_KEY_SENSALIASACTUAL; ++char *CIL_KEY_CATALIAS; ++char *CIL_KEY_CATALIASACTUAL; ++char *CIL_KEY_CATORDER; ++char *CIL_KEY_SENSITIVITYORDER; ++char *CIL_KEY_SENSCAT; ++char *CIL_KEY_CONSTRAIN; ++char *CIL_KEY_MLSCONSTRAIN; ++char *CIL_KEY_VALIDATETRANS; ++char *CIL_KEY_MLSVALIDATETRANS; ++char *CIL_KEY_CONTEXT; ++char *CIL_KEY_FILECON; ++char *CIL_KEY_IBPKEYCON; ++char *CIL_KEY_IBENDPORTCON; ++char *CIL_KEY_PORTCON; ++char *CIL_KEY_NODECON; ++char *CIL_KEY_GENFSCON; ++char *CIL_KEY_NETIFCON; ++char *CIL_KEY_PIRQCON; ++char *CIL_KEY_IOMEMCON; ++char *CIL_KEY_IOPORTCON; ++char *CIL_KEY_PCIDEVICECON; ++char *CIL_KEY_DEVICETREECON; ++char *CIL_KEY_FSUSE; ++char *CIL_KEY_POLICYCAP; ++char *CIL_KEY_OPTIONAL; ++char *CIL_KEY_DEFAULTUSER; ++char *CIL_KEY_DEFAULTROLE; ++char *CIL_KEY_DEFAULTTYPE; ++char *CIL_KEY_ROOT; ++char *CIL_KEY_NODE; ++char *CIL_KEY_PERM; ++char *CIL_KEY_ALLOWX; ++char *CIL_KEY_AUDITALLOWX; ++char *CIL_KEY_DONTAUDITX; ++char *CIL_KEY_NEVERALLOWX; ++char *CIL_KEY_PERMISSIONX; ++char *CIL_KEY_IOCTL; ++char *CIL_KEY_UNORDERED; ++char *CIL_KEY_SRC_INFO; ++char *CIL_KEY_SRC_CIL; ++char *CIL_KEY_SRC_HLL; ++ + static void cil_init_keys(void) + { + /* Initialize CIL Keys into strpool */ +diff --git a/cil/src/cil_internal.h b/cil/src/cil_internal.h +index 6ff3228..b07c068 100644 +--- a/cil/src/cil_internal.h ++++ b/cil/src/cil_internal.h +@@ -74,166 +74,166 @@ enum cil_pass { + /* + Keywords + */ +-char *CIL_KEY_CONS_T1; +-char *CIL_KEY_CONS_T2; +-char *CIL_KEY_CONS_T3; +-char *CIL_KEY_CONS_R1; +-char *CIL_KEY_CONS_R2; +-char *CIL_KEY_CONS_R3; +-char *CIL_KEY_CONS_U1; +-char *CIL_KEY_CONS_U2; +-char *CIL_KEY_CONS_U3; +-char *CIL_KEY_CONS_L1; +-char *CIL_KEY_CONS_L2; +-char *CIL_KEY_CONS_H1; +-char *CIL_KEY_CONS_H2; +-char *CIL_KEY_AND; +-char *CIL_KEY_OR; +-char *CIL_KEY_NOT; +-char *CIL_KEY_EQ; +-char *CIL_KEY_NEQ; +-char *CIL_KEY_CONS_DOM; +-char *CIL_KEY_CONS_DOMBY; +-char *CIL_KEY_CONS_INCOMP; +-char *CIL_KEY_CONDTRUE; +-char *CIL_KEY_CONDFALSE; +-char *CIL_KEY_SELF; +-char *CIL_KEY_OBJECT_R; +-char *CIL_KEY_STAR; +-char *CIL_KEY_TCP; +-char *CIL_KEY_UDP; +-char *CIL_KEY_DCCP; +-char *CIL_KEY_SCTP; +-char *CIL_KEY_AUDITALLOW; +-char *CIL_KEY_TUNABLEIF; +-char *CIL_KEY_ALLOW; +-char *CIL_KEY_DONTAUDIT; +-char *CIL_KEY_TYPETRANSITION; +-char *CIL_KEY_TYPECHANGE; +-char *CIL_KEY_CALL; +-char *CIL_KEY_TUNABLE; +-char *CIL_KEY_XOR; +-char *CIL_KEY_ALL; +-char *CIL_KEY_RANGE; +-char *CIL_KEY_GLOB; +-char *CIL_KEY_FILE; +-char *CIL_KEY_DIR; +-char *CIL_KEY_CHAR; +-char *CIL_KEY_BLOCK; +-char *CIL_KEY_SOCKET; +-char *CIL_KEY_PIPE; +-char *CIL_KEY_SYMLINK; +-char *CIL_KEY_ANY; +-char *CIL_KEY_XATTR; +-char *CIL_KEY_TASK; +-char *CIL_KEY_TRANS; +-char *CIL_KEY_TYPE; +-char *CIL_KEY_ROLE; +-char *CIL_KEY_USER; +-char *CIL_KEY_USERATTRIBUTE; +-char *CIL_KEY_USERATTRIBUTESET; +-char *CIL_KEY_SENSITIVITY; +-char *CIL_KEY_CATEGORY; +-char *CIL_KEY_CATSET; +-char *CIL_KEY_LEVEL; +-char *CIL_KEY_LEVELRANGE; +-char *CIL_KEY_CLASS; +-char *CIL_KEY_IPADDR; +-char *CIL_KEY_MAP_CLASS; +-char *CIL_KEY_CLASSPERMISSION; +-char *CIL_KEY_BOOL; +-char *CIL_KEY_STRING; +-char *CIL_KEY_NAME; +-char *CIL_KEY_SOURCE; +-char *CIL_KEY_TARGET; +-char *CIL_KEY_LOW; +-char *CIL_KEY_HIGH; +-char *CIL_KEY_LOW_HIGH; +-char *CIL_KEY_HANDLEUNKNOWN; +-char *CIL_KEY_HANDLEUNKNOWN_ALLOW; +-char *CIL_KEY_HANDLEUNKNOWN_DENY; +-char *CIL_KEY_HANDLEUNKNOWN_REJECT; +-char *CIL_KEY_MACRO; +-char *CIL_KEY_IN; +-char *CIL_KEY_MLS; +-char *CIL_KEY_DEFAULTRANGE; +-char *CIL_KEY_BLOCKINHERIT; +-char *CIL_KEY_BLOCKABSTRACT; +-char *CIL_KEY_CLASSORDER; +-char *CIL_KEY_CLASSMAPPING; +-char *CIL_KEY_CLASSPERMISSIONSET; +-char *CIL_KEY_COMMON; +-char *CIL_KEY_CLASSCOMMON; +-char *CIL_KEY_SID; +-char *CIL_KEY_SIDCONTEXT; +-char *CIL_KEY_SIDORDER; +-char *CIL_KEY_USERLEVEL; +-char *CIL_KEY_USERRANGE; +-char *CIL_KEY_USERBOUNDS; +-char *CIL_KEY_USERPREFIX; +-char *CIL_KEY_SELINUXUSER; +-char *CIL_KEY_SELINUXUSERDEFAULT; +-char *CIL_KEY_TYPEATTRIBUTE; +-char *CIL_KEY_TYPEATTRIBUTESET; +-char *CIL_KEY_EXPANDTYPEATTRIBUTE; +-char *CIL_KEY_TYPEALIAS; +-char *CIL_KEY_TYPEALIASACTUAL; +-char *CIL_KEY_TYPEBOUNDS; +-char *CIL_KEY_TYPEPERMISSIVE; +-char *CIL_KEY_RANGETRANSITION; +-char *CIL_KEY_USERROLE; +-char *CIL_KEY_ROLETYPE; +-char *CIL_KEY_ROLETRANSITION; +-char *CIL_KEY_ROLEALLOW; +-char *CIL_KEY_ROLEATTRIBUTE; +-char *CIL_KEY_ROLEATTRIBUTESET; +-char *CIL_KEY_ROLEBOUNDS; +-char *CIL_KEY_BOOLEANIF; +-char *CIL_KEY_NEVERALLOW; +-char *CIL_KEY_TYPEMEMBER; +-char *CIL_KEY_SENSALIAS; +-char *CIL_KEY_SENSALIASACTUAL; +-char *CIL_KEY_CATALIAS; +-char *CIL_KEY_CATALIASACTUAL; +-char *CIL_KEY_CATORDER; +-char *CIL_KEY_SENSITIVITYORDER; +-char *CIL_KEY_SENSCAT; +-char *CIL_KEY_CONSTRAIN; +-char *CIL_KEY_MLSCONSTRAIN; +-char *CIL_KEY_VALIDATETRANS; +-char *CIL_KEY_MLSVALIDATETRANS; +-char *CIL_KEY_CONTEXT; +-char *CIL_KEY_FILECON; +-char *CIL_KEY_IBPKEYCON; +-char *CIL_KEY_IBENDPORTCON; +-char *CIL_KEY_PORTCON; +-char *CIL_KEY_NODECON; +-char *CIL_KEY_GENFSCON; +-char *CIL_KEY_NETIFCON; +-char *CIL_KEY_PIRQCON; +-char *CIL_KEY_IOMEMCON; +-char *CIL_KEY_IOPORTCON; +-char *CIL_KEY_PCIDEVICECON; +-char *CIL_KEY_DEVICETREECON; +-char *CIL_KEY_FSUSE; +-char *CIL_KEY_POLICYCAP; +-char *CIL_KEY_OPTIONAL; +-char *CIL_KEY_DEFAULTUSER; +-char *CIL_KEY_DEFAULTROLE; +-char *CIL_KEY_DEFAULTTYPE; +-char *CIL_KEY_ROOT; +-char *CIL_KEY_NODE; +-char *CIL_KEY_PERM; +-char *CIL_KEY_ALLOWX; +-char *CIL_KEY_AUDITALLOWX; +-char *CIL_KEY_DONTAUDITX; +-char *CIL_KEY_NEVERALLOWX; +-char *CIL_KEY_PERMISSIONX; +-char *CIL_KEY_IOCTL; +-char *CIL_KEY_UNORDERED; +-char *CIL_KEY_SRC_INFO; +-char *CIL_KEY_SRC_CIL; +-char *CIL_KEY_SRC_HLL; ++extern char *CIL_KEY_CONS_T1; ++extern char *CIL_KEY_CONS_T2; ++extern char *CIL_KEY_CONS_T3; ++extern char *CIL_KEY_CONS_R1; ++extern char *CIL_KEY_CONS_R2; ++extern char *CIL_KEY_CONS_R3; ++extern char *CIL_KEY_CONS_U1; ++extern char *CIL_KEY_CONS_U2; ++extern char *CIL_KEY_CONS_U3; ++extern char *CIL_KEY_CONS_L1; ++extern char *CIL_KEY_CONS_L2; ++extern char *CIL_KEY_CONS_H1; ++extern char *CIL_KEY_CONS_H2; ++extern char *CIL_KEY_AND; ++extern char *CIL_KEY_OR; ++extern char *CIL_KEY_NOT; ++extern char *CIL_KEY_EQ; ++extern char *CIL_KEY_NEQ; ++extern char *CIL_KEY_CONS_DOM; ++extern char *CIL_KEY_CONS_DOMBY; ++extern char *CIL_KEY_CONS_INCOMP; ++extern char *CIL_KEY_CONDTRUE; ++extern char *CIL_KEY_CONDFALSE; ++extern char *CIL_KEY_SELF; ++extern char *CIL_KEY_OBJECT_R; ++extern char *CIL_KEY_STAR; ++extern char *CIL_KEY_TCP; ++extern char *CIL_KEY_UDP; ++extern char *CIL_KEY_DCCP; ++extern char *CIL_KEY_SCTP; ++extern char *CIL_KEY_AUDITALLOW; ++extern char *CIL_KEY_TUNABLEIF; ++extern char *CIL_KEY_ALLOW; ++extern char *CIL_KEY_DONTAUDIT; ++extern char *CIL_KEY_TYPETRANSITION; ++extern char *CIL_KEY_TYPECHANGE; ++extern char *CIL_KEY_CALL; ++extern char *CIL_KEY_TUNABLE; ++extern char *CIL_KEY_XOR; ++extern char *CIL_KEY_ALL; ++extern char *CIL_KEY_RANGE; ++extern char *CIL_KEY_GLOB; ++extern char *CIL_KEY_FILE; ++extern char *CIL_KEY_DIR; ++extern char *CIL_KEY_CHAR; ++extern char *CIL_KEY_BLOCK; ++extern char *CIL_KEY_SOCKET; ++extern char *CIL_KEY_PIPE; ++extern char *CIL_KEY_SYMLINK; ++extern char *CIL_KEY_ANY; ++extern char *CIL_KEY_XATTR; ++extern char *CIL_KEY_TASK; ++extern char *CIL_KEY_TRANS; ++extern char *CIL_KEY_TYPE; ++extern char *CIL_KEY_ROLE; ++extern char *CIL_KEY_USER; ++extern char *CIL_KEY_USERATTRIBUTE; ++extern char *CIL_KEY_USERATTRIBUTESET; ++extern char *CIL_KEY_SENSITIVITY; ++extern char *CIL_KEY_CATEGORY; ++extern char *CIL_KEY_CATSET; ++extern char *CIL_KEY_LEVEL; ++extern char *CIL_KEY_LEVELRANGE; ++extern char *CIL_KEY_CLASS; ++extern char *CIL_KEY_IPADDR; ++extern char *CIL_KEY_MAP_CLASS; ++extern char *CIL_KEY_CLASSPERMISSION; ++extern char *CIL_KEY_BOOL; ++extern char *CIL_KEY_STRING; ++extern char *CIL_KEY_NAME; ++extern char *CIL_KEY_SOURCE; ++extern char *CIL_KEY_TARGET; ++extern char *CIL_KEY_LOW; ++extern char *CIL_KEY_HIGH; ++extern char *CIL_KEY_LOW_HIGH; ++extern char *CIL_KEY_HANDLEUNKNOWN; ++extern char *CIL_KEY_HANDLEUNKNOWN_ALLOW; ++extern char *CIL_KEY_HANDLEUNKNOWN_DENY; ++extern char *CIL_KEY_HANDLEUNKNOWN_REJECT; ++extern char *CIL_KEY_MACRO; ++extern char *CIL_KEY_IN; ++extern char *CIL_KEY_MLS; ++extern char *CIL_KEY_DEFAULTRANGE; ++extern char *CIL_KEY_BLOCKINHERIT; ++extern char *CIL_KEY_BLOCKABSTRACT; ++extern char *CIL_KEY_CLASSORDER; ++extern char *CIL_KEY_CLASSMAPPING; ++extern char *CIL_KEY_CLASSPERMISSIONSET; ++extern char *CIL_KEY_COMMON; ++extern char *CIL_KEY_CLASSCOMMON; ++extern char *CIL_KEY_SID; ++extern char *CIL_KEY_SIDCONTEXT; ++extern char *CIL_KEY_SIDORDER; ++extern char *CIL_KEY_USERLEVEL; ++extern char *CIL_KEY_USERRANGE; ++extern char *CIL_KEY_USERBOUNDS; ++extern char *CIL_KEY_USERPREFIX; ++extern char *CIL_KEY_SELINUXUSER; ++extern char *CIL_KEY_SELINUXUSERDEFAULT; ++extern char *CIL_KEY_TYPEATTRIBUTE; ++extern char *CIL_KEY_TYPEATTRIBUTESET; ++extern char *CIL_KEY_EXPANDTYPEATTRIBUTE; ++extern char *CIL_KEY_TYPEALIAS; ++extern char *CIL_KEY_TYPEALIASACTUAL; ++extern char *CIL_KEY_TYPEBOUNDS; ++extern char *CIL_KEY_TYPEPERMISSIVE; ++extern char *CIL_KEY_RANGETRANSITION; ++extern char *CIL_KEY_USERROLE; ++extern char *CIL_KEY_ROLETYPE; ++extern char *CIL_KEY_ROLETRANSITION; ++extern char *CIL_KEY_ROLEALLOW; ++extern char *CIL_KEY_ROLEATTRIBUTE; ++extern char *CIL_KEY_ROLEATTRIBUTESET; ++extern char *CIL_KEY_ROLEBOUNDS; ++extern char *CIL_KEY_BOOLEANIF; ++extern char *CIL_KEY_NEVERALLOW; ++extern char *CIL_KEY_TYPEMEMBER; ++extern char *CIL_KEY_SENSALIAS; ++extern char *CIL_KEY_SENSALIASACTUAL; ++extern char *CIL_KEY_CATALIAS; ++extern char *CIL_KEY_CATALIASACTUAL; ++extern char *CIL_KEY_CATORDER; ++extern char *CIL_KEY_SENSITIVITYORDER; ++extern char *CIL_KEY_SENSCAT; ++extern char *CIL_KEY_CONSTRAIN; ++extern char *CIL_KEY_MLSCONSTRAIN; ++extern char *CIL_KEY_VALIDATETRANS; ++extern char *CIL_KEY_MLSVALIDATETRANS; ++extern char *CIL_KEY_CONTEXT; ++extern char *CIL_KEY_FILECON; ++extern char *CIL_KEY_IBPKEYCON; ++extern char *CIL_KEY_IBENDPORTCON; ++extern char *CIL_KEY_PORTCON; ++extern char *CIL_KEY_NODECON; ++extern char *CIL_KEY_GENFSCON; ++extern char *CIL_KEY_NETIFCON; ++extern char *CIL_KEY_PIRQCON; ++extern char *CIL_KEY_IOMEMCON; ++extern char *CIL_KEY_IOPORTCON; ++extern char *CIL_KEY_PCIDEVICECON; ++extern char *CIL_KEY_DEVICETREECON; ++extern char *CIL_KEY_FSUSE; ++extern char *CIL_KEY_POLICYCAP; ++extern char *CIL_KEY_OPTIONAL; ++extern char *CIL_KEY_DEFAULTUSER; ++extern char *CIL_KEY_DEFAULTROLE; ++extern char *CIL_KEY_DEFAULTTYPE; ++extern char *CIL_KEY_ROOT; ++extern char *CIL_KEY_NODE; ++extern char *CIL_KEY_PERM; ++extern char *CIL_KEY_ALLOWX; ++extern char *CIL_KEY_AUDITALLOWX; ++extern char *CIL_KEY_DONTAUDITX; ++extern char *CIL_KEY_NEVERALLOWX; ++extern char *CIL_KEY_PERMISSIONX; ++extern char *CIL_KEY_IOCTL; ++extern char *CIL_KEY_UNORDERED; ++extern char *CIL_KEY_SRC_INFO; ++extern char *CIL_KEY_SRC_CIL; ++extern char *CIL_KEY_SRC_HLL; + + /* + Symbol Table Array Indices +-- +2.17.1 + diff --git a/package/libsepol/0003-libsepol-remove-leftovers-of-cil_mem_error_handler.patch b/package/libsepol/0003-libsepol-remove-leftovers-of-cil_mem_error_handler.patch new file mode 100644 index 0000000000..57ead4d7b4 --- /dev/null +++ b/package/libsepol/0003-libsepol-remove-leftovers-of-cil_mem_error_handler.patch @@ -0,0 +1,63 @@ +From 5f5f0dce25d46af57ddabd8713e548480f2460ab Mon Sep 17 00:00:00 2001 +From: Ondrej Mosnacek +Date: Thu, 23 Jan 2020 13:57:14 +0100 +Subject: [PATCH] libsepol: remove leftovers of cil_mem_error_handler + +Commit 4459d635b8f1 ("libsepol: Remove cil_mem_error_handler() function +pointer") replaced cil_mem_error_handler usage with inline contents of +the default handler. However, it left over the header declaration and +two callers. Convert these as well and remove the header declaration. + +This also fixes a build failure with -fno-common. + +Upstream: https://github.com/SELinuxProject/selinux/commit/3d32fc24d6aff360a538c63dad08ca5c957551b0 + +Fixes: 4459d635b8f1 ("libsepol: Remove cil_mem_error_handler() function pointer") +Signed-off-by: Ondrej Mosnacek +Signed-off-by: Matt Weber +--- + cil/src/cil_mem.h | 1 - + cil/src/cil_strpool.c | 8 ++++---- + 2 files changed, 4 insertions(+), 5 deletions(-) + +diff --git a/cil/src/cil_mem.h b/cil/src/cil_mem.h +index 902ce13..794f02a 100644 +--- a/cil/src/cil_mem.h ++++ b/cil/src/cil_mem.h +@@ -36,7 +36,6 @@ void *cil_calloc(size_t num_elements, size_t element_size); + void *cil_realloc(void *ptr, size_t size); + char *cil_strdup(const char *str); + int cil_asprintf(char **strp, const char *fmt, ...); +-void (*cil_mem_error_handler)(void); + + #endif /* CIL_MEM_H_ */ + +diff --git a/cil/src/cil_strpool.c b/cil/src/cil_strpool.c +index 97d4c4b..2598bbf 100644 +--- a/cil/src/cil_strpool.c ++++ b/cil/src/cil_strpool.c +@@ -80,8 +80,8 @@ char *cil_strpool_add(const char *str) + int rc = hashtab_insert(cil_strpool_tab, (hashtab_key_t)strpool_ref->str, strpool_ref); + if (rc != SEPOL_OK) { + pthread_mutex_unlock(&cil_strpool_mutex); +- (*cil_mem_error_handler)(); +- pthread_mutex_lock(&cil_strpool_mutex); ++ cil_log(CIL_ERR, "Failed to allocate memory\n"); ++ exit(1); + } + } + +@@ -104,8 +104,8 @@ void cil_strpool_init(void) + cil_strpool_tab = hashtab_create(cil_strpool_hash, cil_strpool_compare, CIL_STRPOOL_TABLE_SIZE); + if (cil_strpool_tab == NULL) { + pthread_mutex_unlock(&cil_strpool_mutex); +- (*cil_mem_error_handler)(); +- return; ++ cil_log(CIL_ERR, "Failed to allocate memory\n"); ++ exit(1); + } + } + cil_strpool_readers++; +-- +2.17.1 +