SETools 4.4.2 release
Resolves: rhbz#2184140
This commit is contained in:
parent
71717e8ff1
commit
74da72d0f6
1
.gitignore
vendored
1
.gitignore
vendored
@ -13,3 +13,4 @@ setools-3.3.8-f1e5b20.tar.bz2
|
|||||||
/16c0696.tar.gz
|
/16c0696.tar.gz
|
||||||
/4.4.0.tar.gz
|
/4.4.0.tar.gz
|
||||||
/4.4.1.tar.gz
|
/4.4.1.tar.gz
|
||||||
|
/4.4.2.tar.gz
|
||||||
|
@ -1,91 +0,0 @@
|
|||||||
From 716a1d9e1db6701c0b310dd7e10dc4a10656da0f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Chris PeBenito <chpebeni@linux.microsoft.com>
|
|
||||||
Date: Tue, 14 Dec 2021 14:24:20 -0500
|
|
||||||
Subject: [PATCH] Make NetworkX optional.
|
|
||||||
Content-type: text/plain
|
|
||||||
|
|
||||||
The CLI tools get installed to most distros, but sedta and seinfoflow are
|
|
||||||
not typically used or separated into a different package. This will allow
|
|
||||||
seinfo, sesearch, and sediff to function if NetworkX is missing, since they
|
|
||||||
don't require it.
|
|
||||||
|
|
||||||
Signed-off-by: Chris PeBenito <chpebeni@linux.microsoft.com>
|
|
||||||
---
|
|
||||||
setools/dta.py | 18 ++++++++++++++----
|
|
||||||
setools/infoflow.py | 17 +++++++++++++----
|
|
||||||
2 files changed, 27 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/setools/dta.py b/setools/dta.py
|
|
||||||
index ce5a36463684..ded88ff4f615 100644
|
|
||||||
--- a/setools/dta.py
|
|
||||||
+++ b/setools/dta.py
|
|
||||||
@@ -10,8 +10,11 @@ from collections import defaultdict
|
|
||||||
from contextlib import suppress
|
|
||||||
from typing import DefaultDict, Iterable, List, NamedTuple, Optional, Union
|
|
||||||
|
|
||||||
-import networkx as nx
|
|
||||||
-from networkx.exception import NetworkXError, NetworkXNoPath, NodeNotFound
|
|
||||||
+try:
|
|
||||||
+ import networkx as nx
|
|
||||||
+ from networkx.exception import NetworkXError, NetworkXNoPath, NodeNotFound
|
|
||||||
+except ImportError:
|
|
||||||
+ logging.getLogger(__name__).debug("NetworkX failed to import.")
|
|
||||||
|
|
||||||
from .descriptors import EdgeAttrDict, EdgeAttrList
|
|
||||||
from .policyrep import AnyTERule, SELinuxPolicy, TERuletype, Type
|
|
||||||
@@ -73,8 +76,15 @@ class DomainTransitionAnalysis:
|
|
||||||
self.reverse = reverse
|
|
||||||
self.rebuildgraph = True
|
|
||||||
self.rebuildsubgraph = True
|
|
||||||
- self.G = nx.DiGraph()
|
|
||||||
- self.subG = self.G.copy()
|
|
||||||
+
|
|
||||||
+ try:
|
|
||||||
+ self.G = nx.DiGraph()
|
|
||||||
+ self.subG = self.G.copy()
|
|
||||||
+ except NameError:
|
|
||||||
+ self.log.critical("NetworkX is not available. This is "
|
|
||||||
+ "requried for Domain Transition Analysis.")
|
|
||||||
+ self.log.critical("This is typically in the python3-networkx package.")
|
|
||||||
+ raise
|
|
||||||
|
|
||||||
@property
|
|
||||||
def reverse(self) -> bool:
|
|
||||||
diff --git a/setools/infoflow.py b/setools/infoflow.py
|
|
||||||
index 0ef240a9993f..4b94a0c2d6dd 100644
|
|
||||||
--- a/setools/infoflow.py
|
|
||||||
+++ b/setools/infoflow.py
|
|
||||||
@@ -7,8 +7,11 @@ import logging
|
|
||||||
from contextlib import suppress
|
|
||||||
from typing import cast, Iterable, List, Mapping, Optional, Union
|
|
||||||
|
|
||||||
-import networkx as nx
|
|
||||||
-from networkx.exception import NetworkXError, NetworkXNoPath, NodeNotFound
|
|
||||||
+try:
|
|
||||||
+ import networkx as nx
|
|
||||||
+ from networkx.exception import NetworkXError, NetworkXNoPath, NodeNotFound
|
|
||||||
+except ImportError:
|
|
||||||
+ logging.getLogger(__name__).debug("NetworkX failed to import.")
|
|
||||||
|
|
||||||
from .descriptors import EdgeAttrIntMax, EdgeAttrList
|
|
||||||
from .permmap import PermissionMap
|
|
||||||
@@ -54,8 +57,14 @@ class InfoFlowAnalysis:
|
|
||||||
self.rebuildgraph = True
|
|
||||||
self.rebuildsubgraph = True
|
|
||||||
|
|
||||||
- self.G = nx.DiGraph()
|
|
||||||
- self.subG = self.G.copy()
|
|
||||||
+ try:
|
|
||||||
+ self.G = nx.DiGraph()
|
|
||||||
+ self.subG = self.G.copy()
|
|
||||||
+ except NameError:
|
|
||||||
+ self.log.critical("NetworkX is not available. This is "
|
|
||||||
+ "requried for Information Flow Analysis.")
|
|
||||||
+ self.log.critical("This is typically in the python3-networkx package.")
|
|
||||||
+ raise
|
|
||||||
|
|
||||||
@property
|
|
||||||
def min_weight(self) -> int:
|
|
||||||
--
|
|
||||||
2.39.1
|
|
||||||
|
|
@ -1,24 +0,0 @@
|
|||||||
From 7b73bdeda54b9c944774452bfa3b3c1f2733b3f0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Petr Lautrbach <plautrba@redhat.com>
|
|
||||||
Date: Thu, 2 Apr 2020 16:06:14 +0200
|
|
||||||
Subject: [PATCH 2/2] Require networkx on package level
|
|
||||||
|
|
||||||
It allows us to ship python3-setools without dependency on python3-networkx
|
|
||||||
---
|
|
||||||
setup.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/setup.py b/setup.py
|
|
||||||
index c593b786cc61..0551811e3fd1 100644
|
|
||||||
--- a/setup.py
|
|
||||||
+++ b/setup.py
|
|
||||||
@@ -163,5 +163,5 @@ setup(name='setools',
|
|
||||||
# setup also requires libsepol and libselinux
|
|
||||||
# C libraries and headers to compile.
|
|
||||||
setup_requires=['setuptools', 'Cython>=0.27'],
|
|
||||||
- install_requires=['setuptools', 'networkx>=2.0']
|
|
||||||
+ install_requires=['setuptools']
|
|
||||||
)
|
|
||||||
--
|
|
||||||
2.30.0
|
|
||||||
|
|
11
setools.spec
11
setools.spec
@ -1,8 +1,8 @@
|
|||||||
%global sepol_ver 3.4-1
|
%global sepol_ver 3.5-1
|
||||||
%global selinux_ver 3.4-1
|
%global selinux_ver 3.5-1
|
||||||
|
|
||||||
Name: setools
|
Name: setools
|
||||||
Version: 4.4.1
|
Version: 4.4.2
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Policy analysis tools for SELinux
|
Summary: Policy analysis tools for SELinux
|
||||||
|
|
||||||
@ -11,8 +11,6 @@ URL: https://github.com/SELinuxProject/setools/wiki
|
|||||||
Source0: https://github.com/SELinuxProject/setools/archive/%{version}.tar.gz
|
Source0: https://github.com/SELinuxProject/setools/archive/%{version}.tar.gz
|
||||||
Source1: setools.pam
|
Source1: setools.pam
|
||||||
Source2: apol.desktop
|
Source2: apol.desktop
|
||||||
Patch0001: 0001-Make-NetworkX-optional.patch
|
|
||||||
Patch1003: 1003-Require-networkx-on-package-level.patch
|
|
||||||
Obsoletes: setools < 4.0.0, setools-devel < 4.0.0
|
Obsoletes: setools < 4.0.0, setools-devel < 4.0.0
|
||||||
BuildRequires: flex, bison
|
BuildRequires: flex, bison
|
||||||
BuildRequires: glibc-devel, gcc, git-core
|
BuildRequires: glibc-devel, gcc, git-core
|
||||||
@ -145,6 +143,9 @@ Python modules designed to facilitate SELinux policy analysis.
|
|||||||
%{_mandir}/ru/man1/apol*
|
%{_mandir}/ru/man1/apol*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Apr 20 2023 Petr Lautrbach <lautrbach@redhat.com> - 4.4.2-1
|
||||||
|
- SETools 4.4.2 release
|
||||||
|
|
||||||
* Mon Feb 6 2023 Petr Lautrbach <lautrbach@redhat.com> - 4.4.1-1
|
* Mon Feb 6 2023 Petr Lautrbach <lautrbach@redhat.com> - 4.4.1-1
|
||||||
- SETools 4.4.1 release
|
- SETools 4.4.1 release
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (4.4.1.tar.gz) = 1a3091f3f3f8ad6a7a550618b07ed72d5337c63a38df762663a8df3b79c0f1a29c85abf43db814f730fd637cc432db27e8b12ea7ca3b504d80154f4eea3f7f7e
|
SHA512 (4.4.2.tar.gz) = b5117c5de1503e25183c2a1af92cd015320dd37e0cf26b8e09bd5d0ff879734d2f9c301def2a40b476c1ed1960f9ee04ae13b284df73f39f743004104ac85fb1
|
||||||
|
Loading…
Reference in New Issue
Block a user