From a749d8dc102d979db2667a9de8df93b1d595b236 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 24 Nov 2023 16:12:57 +0100 Subject: [PATCH] Sync from SUSE:ALP:Source:Standard:1.0 policycoreutils revision 0059e14227373138cc8c508be5f99e8b --- .gitattributes | 23 + get_os_version.patch | 14 + make_targets.patch | 10 + newrole.pam | 5 + policycoreutils-3.5.tar.gz | 3 + policycoreutils-3.5.tar.gz.asc | 19 + policycoreutils.changes | 835 +++++++++++++++++++++++++++++++++ policycoreutils.keyring | 305 ++++++++++++ policycoreutils.spec | 431 +++++++++++++++++ reproducible-build.patch | 13 + run_init.pamd.patch | 18 + selinux-polgengui.console | 3 + selinux-polgengui.desktop | 64 +++ selinux-python-3.5.tar.gz | 3 + selinux-python-3.5.tar.gz.asc | 19 + semodule-utils-3.5.tar.gz | 3 + semodule-utils-3.5.tar.gz.asc | 19 + system-config-selinux.console | 3 + system-config-selinux.desktop | 64 +++ system-config-selinux.pam | 8 + system-config-selinux.png | 3 + 21 files changed, 1865 insertions(+) create mode 100644 .gitattributes create mode 100644 get_os_version.patch create mode 100644 make_targets.patch create mode 100644 newrole.pam create mode 100644 policycoreutils-3.5.tar.gz create mode 100644 policycoreutils-3.5.tar.gz.asc create mode 100644 policycoreutils.changes create mode 100644 policycoreutils.keyring create mode 100644 policycoreutils.spec create mode 100644 reproducible-build.patch create mode 100644 run_init.pamd.patch create mode 100644 selinux-polgengui.console create mode 100644 selinux-polgengui.desktop create mode 100644 selinux-python-3.5.tar.gz create mode 100644 selinux-python-3.5.tar.gz.asc create mode 100644 semodule-utils-3.5.tar.gz create mode 100644 semodule-utils-3.5.tar.gz.asc create mode 100644 system-config-selinux.console create mode 100644 system-config-selinux.desktop create mode 100644 system-config-selinux.pam create mode 100644 system-config-selinux.png diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/get_os_version.patch b/get_os_version.patch new file mode 100644 index 0000000..5d3ec1d --- /dev/null +++ b/get_os_version.patch @@ -0,0 +1,14 @@ +Index: policycoreutils-3.5/selinux-python-3.5/sepolicy/sepolicy/__init__.py +=================================================================== +--- policycoreutils-3.5.orig/selinux-python-3.5/sepolicy/sepolicy/__init__.py ++++ policycoreutils-3.5/selinux-python-3.5/sepolicy/sepolicy/__init__.py +@@ -1245,7 +1245,8 @@ def get_os_version(): + import distro + system_release = distro.name(pretty=True) + except IOError: +- system_release = "Misc" ++ # make SUSE the default return value on SUSE systems ++ system_release = "SUSE" + + return system_release + diff --git a/make_targets.patch b/make_targets.patch new file mode 100644 index 0000000..9634798 --- /dev/null +++ b/make_targets.patch @@ -0,0 +1,10 @@ +Index: policycoreutils-2.8/Makefile +=================================================================== +--- policycoreutils-2.8.orig/Makefile 2018-05-24 20:21:09.000000000 +0200 ++++ policycoreutils-2.8/Makefile 2018-11-21 15:59:44.968384128 +0100 +@@ -1,4 +1,4 @@ +-SUBDIRS = setfiles load_policy newrole run_init secon sestatus semodule setsebool scripts po man hll ++SUBDIRS = setfiles load_policy newrole run_init secon sestatus semodule setsebool scripts po man hll sepolicy audit2allow semanage sepolgen chcat semodule_expand semodule_link semodule_package + + all install relabel clean indent: + @for subdir in $(SUBDIRS); do \ diff --git a/newrole.pam b/newrole.pam new file mode 100644 index 0000000..76ef3a1 --- /dev/null +++ b/newrole.pam @@ -0,0 +1,5 @@ +auth include common-auth +account include common-account +password include common-password +session include common-session +session optional pam_xauth.so diff --git a/policycoreutils-3.5.tar.gz b/policycoreutils-3.5.tar.gz new file mode 100644 index 0000000..93fb9e2 --- /dev/null +++ b/policycoreutils-3.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78453e1529fbbf800e88860094d555e781ce1fba11a7ef77b5aabb43e1173276 +size 775639 diff --git a/policycoreutils-3.5.tar.gz.asc b/policycoreutils-3.5.tar.gz.asc new file mode 100644 index 0000000..ee34437 --- /dev/null +++ b/policycoreutils-3.5.tar.gz.asc @@ -0,0 +1,19 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQKTBAABCgB9FiEE4WLerRzN0RPwSz1JK77Zyxpo71UFAmP3a2FfFIAAAAAALgAo +aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx +NjJERUFEMUNDREQxMTNGMDRCM0Q0OTJCQkVEOUNCMUE2OEVGNTUACgkQK77Zyxpo +71WQsRAAsruGPf75DbWAFxNTdpoh6MybP5wkuV+kKixRLbMJBWWNg2LO4uUiiy7p +4AMgv4F/ecqxZJCZCO3INR12ChM0LTZ3EQZhuIsHfEsmAHzoLfspwUbwg0fAnKjP +3Nr8BQ/fJQxr7swSi1D+nQq7pB4C/mxhMKj/sIfKUgJsuOx4iFU+krLYMM7skaGI +vZ5HGjj0fJ8ExEgk2jl1Xd3z6rkqWS1kVvG3fhsatYAoEAZ6ryWdOwbKiIkaotSb +c2O7jC1N9MVCixS6z9jReNvez6ftqCAOTMEJJ/zU0IWSBVABk+6sd9Ffrl3JI05E +OvZfEhXYo2OHZgkD0UPTqbDa+oX/Eyp7YUI2l05SJOhxMce+qmdqkNkZ9iveszdJ +f/7/5T0EMR9x6uCV7ndtv8vdxAqDqN/dgJNPJ2xMoojMnDe6LIJMN3+GlQ9kPYqv +RhcbXFhlkN7UnGO7Vc+mMK2P7JJIZjrqxHORqM4fSJXG5Tdrsk+WkRsWA232pkC9 +OP0Sj5Ru+K7TkuxwNKSZ66IX6fyWjS809Vd59Is7+uX72D5Q183FKkqQBRO1SnZI +ks0+5ZVDW05x5llSw8KuVa/Eoo7/ZZ18xWp21LmYFCzzOfDXU7LfFlse4n+fz0ZU +NUKaE5AlYZrVLYRjyA4xrJf59P7p19hJMBm28HLp2q+vaGFGqc8= +=j4WN +-----END PGP SIGNATURE----- diff --git a/policycoreutils.changes b/policycoreutils.changes new file mode 100644 index 0000000..c8c59fd --- /dev/null +++ b/policycoreutils.changes @@ -0,0 +1,835 @@ +------------------------------------------------------------------- +Wed Oct 25 10:00:36 UTC 2023 - (null) Hu + +- Add reproducible-build.patch to make the output of "sepolicy manpage" + deterministic (bsc#1216452) + +------------------------------------------------------------------- +Tue May 9 09:08:51 UTC 2023 - Daniel Garcia + +- Add python-wheel build dependency to build correctly with latest + python-pip version. + +------------------------------------------------------------------- +Fri Feb 24 07:54:02 UTC 2023 - Johannes Segitz + +- Update to version 3.5 + * fixfiles: Unmount temporary bind mounts on SIGINT + * Lots of smaller changes +- Refreshed get_os_version.patch +- Drop chcat_handle_missing_translations.patch, is upstream +- Add additional BuildRequires for python +- Added additional developer key (Jason Zaman) +- Add requires for python3-distro for the devel package + +------------------------------------------------------------------- +Mon Dec 19 14:38:47 UTC 2022 - Callum Farmer + +- Use %_pam_vendordir + +------------------------------------------------------------------- +Fri Dec 16 15:28:13 UTC 2022 - Stefan Schubert + +- Error in spec file: No "config" tag in "/usr/ should be used. + +------------------------------------------------------------------- +Fri Dec 9 17:12:04 UTC 2022 - Stefan Schubert + +- Migration PAM settings to /usr/etc: Saving user changed + configuration files in /etc and restoring them while an RPM + update. + +------------------------------------------------------------------- +Mon Jul 25 15:07:58 UTC 2022 - Johannes Segitz + +- Add recommends for ausearch binary (bsc#1201043) + +------------------------------------------------------------------- +Wed Jun 22 15:39:31 UTC 2022 - Johannes Segitz + +- Handle missing translations properly in chcat. Added + chcat_handle_missing_translations.patch (bsc#1200752) + +------------------------------------------------------------------- +Tue Jun 21 13:15:58 UTC 2022 - Dominique Leuenberger + +- Build and package translations for python-utils (boo#1200752). + +------------------------------------------------------------------- +Mon May 9 10:59:34 UTC 2022 - Johannes Segitz + +- Update to version 3.4 + * fixfiles: Use parallel relabeling +- Refreshed patches + * get_os_version.patch + * run_init.pamd.patch + +------------------------------------------------------------------- +Wed Apr 20 12:41:52 UTC 2022 - Dominique Leuenberger + +- Fix file list: package ru/man8/sepolgen.8 only in the devel + package (was in devel and main). + +------------------------------------------------------------------- +Thu Nov 25 13:59:02 UTC 2021 - Johannes Segitz + +- finish UsrMerge (bsc#1191089) + +------------------------------------------------------------------- +Wed Nov 24 16:27:00 UTC 2021 - Johannes Segitz + +- Add run_init.pamd.patch to adjust to SUSE pam setup. Removed + run_init_use_pam_keyinit.patch and included it in the new patch + (bsc#1190098) + +------------------------------------------------------------------- +Thu Nov 11 14:15:29 UTC 2021 - Johannes Segitz + +- Update to version 3.3 + * Lots of fuzzing fixes + * `fixfiles -C` doesn't exclude /dev and /run anymore + Refreshed get_os_version.patch + +------------------------------------------------------------------- +Tue Mar 9 09:18:36 UTC 2021 - Johannes Segitz + +- Update to version 3.2 + * Tools using sepolgen, e.g. audit2allow, print extended permissions in + hexadecimal + * sepolgen sorts extended rules like normal ones + * `setfiles` doesn't abort on labeling errors +- Refreshed get_os_version.patch + +------------------------------------------------------------------- +Thu Sep 10 09:00:45 UTC 2020 - Johannes Segitz + +- Add get_os_version.patch + get_os_version is implemented in a very RH/Fedora specific way. + Ensure that it returns a valid string for SUSE by changing the + default. Also remove the RH specific logic when generating HTML + versions of the SELinux documentation + +------------------------------------------------------------------- +Wed Jul 29 13:09:39 UTC 2020 - Thorsten Kukuk + +- Align more with Fedora spec file to get rid of python dependencies + in the core system + - create new python-utils sub-package + - move some tools to devel sub-package +- Cleanup dependencies + +------------------------------------------------------------------- +Fri Jul 17 09:35:08 UTC 2020 - Johannes Segitz + +- Proper default permissions for newrole (4755) + +------------------------------------------------------------------- +Tue Jul 14 08:28:44 UTC 2020 - Johannes Segitz + +- Update to version 3.1 + * New `setfiles -E` option - treat conflicting specifications as errors, such + as where two hardlinks for the same inode have different contexts. + * `setsebool -V` reports errors from commit phase + * matchpathcon related interfaces are deprecated + * New `restorecon -x` option which prevents it from crossing file system + * boundaries. + * `sepolgen-ifgen` parses a gen_tunable statement as bool + * Removed Requires for python3-ipy as the ipaddress module is used. No + requires for python-ipaddress as it's assumed this is used only on recent + systems + * Drop chcat_join.patch, is upstream + +------------------------------------------------------------------- +Thu Jun 4 10:13:21 UTC 2020 - Dominique Leuenberger + +- Pass the right value for LIBEXECDIR to make / make install + instead of trying to move the file around post install. This + caters for the planned change of libexecdir to change from + /usr/lib to /usr/libexec by injecting the right value no matter + what. + +------------------------------------------------------------------- +Fri May 29 09:29:26 UTC 2020 - Johannes Segitz + +- Move pp binary to libexec directory instead of lib + +------------------------------------------------------------------- +Mon Mar 9 08:31:11 UTC 2020 - Johannes Segitz + +- Dropped Recommends: for %{name}-lang and %{name}-devel. Not + allowed by openSUSE guidelines + +------------------------------------------------------------------- +Tue Mar 3 12:30:55 UTC 2020 - Johannes Segitz + +- Update to version 3.0 + * fixfiles: Fix "verify" option + * fixfiles: Fix [-B] [-F] onboot + * fixfiles: Force full relabel when SELinux is disabled + * semodule: Enable CIL logging + * semanage: Add support for DCCP and SCTP protocols + * semanage: Do not use default s0 range in "semanage login -a" + * semanage: Document DCCP and SCTP support + * semanage: Improve handling of "permissive" statements + * semanage: fix moduleRecords.customized() + Refreshed chcat_join.patch + +------------------------------------------------------------------- +Thu Feb 27 16:03:36 UTC 2020 - Johannes Segitz + +- Ship working pam config for newrole (bsc#1163020) +- Recommend policycoreutils-devel to have perm_map file available + +------------------------------------------------------------------- +Wed Feb 19 14:31:39 UTC 2020 - Johannes Segitz + +- Package perm_map as it's used by audit2* tools + +------------------------------------------------------------------- +Tue Dec 17 10:36:49 UTC 2019 - Johannes Segitz + +- Added chcat_join.patch to prevent joining non-existing categories + (bsc#1159262) + +------------------------------------------------------------------- +Wed Sep 18 11:19:12 UTC 2019 - Johannes Segitz + +- Added run_init_use_pam_keyinit.patch + Added pam_keyinit to the run_init pam config (bsc#1144052) + +------------------------------------------------------------------- +Wed Mar 20 15:16:54 UTC 2019 - jsegitz@suse.com + +- Update to version 2.9 + * secon: free scon_trans before returning + * audit2allow/sepolgen-ifgen: show errors on stderr + * audit2allow: allow using audit2why as non-root user + * chcat: use check_call instead of getstatusoutput + * restorecon: add force option + * semanage module: Fix handling of -a/-e/-d/-r options + * semanage/seobject: Fix listing boolean values + * semanage: Drop python shebang from seobject.py + * semanage: Fix logger class definition + * semanage: Include MCS/MLS range when exporting local customizations + * semanage: Load a store policy and set the store SELinux policy root + * semanage: Start exporting "ibendport" and "ibpkey" entries + * semanage: Stop logging loginRecords changes + * semanage: Stop rejecting aliases in semanage commands + * semanage: Use standard argparse.error() method in handlePermissive + * semanage: do not show "None" levels when using a non-MLS policy + * semanage: import sepolicy only when it's needed + * semanage: move valid_types initialisations to class constructors + * sepolgen: close /etc/selinux/sepolgen.conf after parsing it + * sepolgen: fix access vector initialization + * sepolgen: fix refpolicy parsing of "permissive" + * sepolgen: print all AV rules correctly + * sepolgen: refpolicy installs its Makefile in include/Makefile + * sepolgen: return NotImplemented instead of raising it + * sepolgen: silence linter warning about has_key + * sepolgen: use self when accessing members in FilesystemUse + * sepolicy: Add sepolicy.load_store_policy(store) + * sepolicy: Make policy files sorting more robust + * sepolicy: Stop rejecting aliases in sepolicy commands + * sepolicy: Update to work with setools-4.2.0 + * sepolicy: add missing % in network tab help text + * sepolicy: initialize mislabeled_files in __init__() + * sepolicy: search() also for dontaudit rules + * add xperms support to audit2allow + * replace aliases with corresponding type names +- Dropped python3.patch, upstream now + +------------------------------------------------------------------- +Wed Feb 13 12:21:50 UTC 2019 - jsegitz@suse.com + +- Make sure current devel package conflicts with old + policycoreutils-python (bsc#1124437) + +------------------------------------------------------------------- +Tue Feb 5 15:27:55 UTC 2019 - Jan Engelhardt + +- Replace overly complicated %setup calls. + +------------------------------------------------------------------- +Mon Feb 4 08:30:53 UTC 2019 - jsegitz@suse.com + +- Removed hardcoded python 3.6 path from spec file + +------------------------------------------------------------------- +Thu Jan 31 10:19:44 UTC 2019 - Bernhard Wiedemann + +- Fix build with python 3.7 + +------------------------------------------------------------------- +Fri Jan 11 14:18:32 UTC 2019 - jsegitz@suse.com + +- Required python3-policycoreutils instead of just recommending it + for policycoreutils (bsc#1121455) +- Added requires for python3-setuptools to python3-policycoreutils + (bsc#1121455) +- Removed requires for audit-libs-python from policycoreutils + (bsc#1121455) + +------------------------------------------------------------------- +Mon Jan 7 14:32:58 UTC 2019 - Marcus Rueckert + +- properly obsolete/provides for policycoreutils-python +- remove unneeded obsolete from the devel package + +------------------------------------------------------------------- +Fri Dec 7 15:08:14 UTC 2018 - jsegitz@suse.com + +- Don't require selinux-policy-devel for the devel package + +------------------------------------------------------------------- +Fri Dec 7 13:10:50 UTC 2018 - jsegitz@suse.com + +- Obsolete policycoreutils-python in policycoreutils and + policycoreutils-devel to prevent file conflicts + +------------------------------------------------------------------- +Wed Nov 21 15:58:16 UTC 2018 - jsegitz@suse.com + +- Included content of selinux-python-2.8 and semodule-utils-2.8. + I think it's easier to have all the relevant binaries in the + policycoreutils package (bsc#1116596). + Added make_targets.patch for this +- Removed restorecond, is now a separate package +- Added python3.patch to use python3 interpreter +- New runtime requires: + * libsepol1 + * python3-ipy + * python3-networkx + * python3-semanage +- Provides and obsolete policycoreutils-python + +------------------------------------------------------------------- +Thu Nov 8 07:19:24 UTC 2018 - jsegitz@suse.com + +- Adjusted source urls (bsc#1115052) + +------------------------------------------------------------------- +Wed Oct 17 11:58:44 UTC 2018 - jsegitz@suse.com + +- Update to version 2.8 (bsc#1111732) + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20180524/RELEASE-20180524.txt + +------------------------------------------------------------------- +Wed May 16 07:26:07 UTC 2018 - mcepl@suse.com + +- Rebase to 2.7 + * Rather large rewrite of the SPEC file + * Significantly, support for python2 removed + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804/RELEASE-20170804.txt +- Dropped patches: + * policycoreutils-initscript.patch + * policycoreutils-pam-common.patch + * loadpolicy_path.patch + * CVE-2018-1063.patch + +------------------------------------------------------------------- +Mon Apr 30 11:24:50 UTC 2018 - dimstar@opensuse.org + +- Don't build policycoreutils-gui for anything suse_version >= + 1500: there is no reason te believe that SLE16 will have those + old, depreacted dependencies back. Fixes also the issues for + Tumbleweed, where -gui was not installable. + +------------------------------------------------------------------- +Thu Apr 26 11:37:36 UTC 2018 - jsegitz@suse.com + +- SLE 15 doesn't have the necessary files for policycoreutils-gui, + don't build it there + +------------------------------------------------------------------- +Wed Apr 25 14:31:29 UTC 2018 - jsegitz@suse.com + +- Drop the requirement for selinux-policy for the gui tools. + +------------------------------------------------------------------- +Tue Mar 27 13:46:37 UTC 2018 - tchvatal@suse.com + +- Drop SLE11 support, needs the audit that is not present on SLE11 +- Fix service link to actually work on current releases +- Drop SUSE_ASNEEDED=0 as it seems to build fine without it +- Do not depend on systemd, just systemd-rpm-macros + +------------------------------------------------------------------- +Wed Mar 21 11:32:47 UTC 2018 - jsegitz@suse.com + +- Added CVE-2018-1063.patch to prevent chcon from following symlinks in + /tmp, /var/tmp, /var/run and /var/lib/debug (bsc#1083624, CVE-2018-1063) + +------------------------------------------------------------------- +Tue Mar 20 12:01:55 UTC 2018 - jsegitz@suse.com + +- Remove BuildRequires for libcgroup-devel (bsc#1085837) + +------------------------------------------------------------------- +Thu Dec 21 14:29:30 UTC 2017 - jsegitz@suse.com + +- Removed BuildRequires for setools-devel and added new + runtime requirement for python2-networkx + +------------------------------------------------------------------- +Mon Nov 27 14:23:12 UTC 2017 - rbrown@suse.com + +- Replace references to /var/adm/fillup-templates with new + %_fillupdir macro (boo#1069468) + +------------------------------------------------------------------- +Fri Nov 24 09:21:51 UTC 2017 - jsegitz@suse.com + +- Update to policycoreutils version 2.6. Notable changes: + * setfiles: reverse the sense of -D option + * sandbox: Use dbus-run-session instead of dbus-launch when available + * setfiles: Utility to find security.restorecon_last entries + * setfiles: Add option to stop setting the digest + * hll/pp: Change warning for module name not matching filename to match new behavior + * sepolicy: convert to setools4 + * sandbox: create a new session for sandboxed processes + * sandbox: do not try to setup directories without -X or -M + * sandbox: do not run xmodmap in a new X session + * sandbox: fix file labels on copied files + * semanage: Fix semanage fcontext -D + * semanage: Default serange to "s0" for port modify + * semanage: Use socket.getprotobyname for protocol + * semanage: Add auditing of changes in records + * Improve compatibility with Python 3 + * Update sandbox types in sandbox manual + * hll/pp: Warn if module name different than output filename +- Update to sepolgen version 2.6. Notable changes: + * Add support for TYPEBOUNDS statement in INTERFACE policy files +- Dropped CVE-2016-7545_sandbox_escape.patch + +------------------------------------------------------------------- +Mon Dec 19 07:21:22 UTC 2016 - jsegitz@novell.com + +- Added CVE-2016-7545_sandbox_escape.patch to fix CVE-2016-7545, bsc#1000998 + Sandboxed session could have escaped to the parent session + +------------------------------------------------------------------- +Sat Jul 23 05:47:50 UTC 2016 - jengelh@inai.de + +- Trim description in line with other selinux packages + +------------------------------------------------------------------- +Thu Jul 14 08:45:45 UTC 2016 - jsegitz@novell.com + +- Changes submitted by MargueriteSu: + Update to version 2.5 + * sepolicy: Do not overwrite CFLAGS, from Nicolas Iooss. + * sepolicy: Rename policy global variable conflict, from Nicolas Iooss. + * newrole: Add missing defined in #if, from Nicolas Iooss. + * newrole: Add description of missing parameter -p in newrole man page, from Lukas Vrabec. + * secon: Add missing descriptions for --*-key params in secon man page, from Lukas Vrabec + * semanage: List reserve_port_t in semanage port -l, from Petr Lautrbach. + * chcat: Add a fallback in case os.getlogin() returns nothing, from Laurent Bigonville. + * semanage: fix 'semanage permissions -l' subcommand, from Petr Lautrbach. + * semanage: replace string.join() with str.join(), from Petr Lautrbach. + * Man page warning fixes, from Ville Skyttä. + * sandbox: Fix sandbox to propagate specified MCS/MLS Security Level, from Miroslav Grepl. + * semanage: Require at least one argument for 'semanage permissive -d', from Petr Lautrbach. + * sepolicy: Improve sepolicy command line interface, from Petr Lautrbach. + * audit2allow/why: ignore setlocale errors, from Petr Lautrbach. + * semodule: Add --extract/-E, --cil/-c, and --hll/-H to extract modules, from Yuli Khodorkovskiy. + * audit2allow: Comment constraint rules in output, from Miroslav Grepl via Petr Lautrbach. + * Fix PEP8 issues, from Jason Zaman. + * semanage: fix moduleRecords deleteall method, from Stephen Smalley. + * Improve compatibility with Python 3, from Michal Srb. + * semanage: Set self.sename to sename after calling semanage_seuser_set_sename(), from Laurent Bigonville. + * semanage: Fix typo in semanage args for minimium policy store, from Petr Lautrbach. + * sepolicy: Only invoke RPM on RPM-enabled Linux distributions, from Sven Vermeulen. + * mcstransd: don't reinvent getpeercon, from Stephen Smalley. + * setfiles/restorecon: fix -r/-R option, from Petr Lautrbach. + * org.selinux.policy: Require auth_admin_keep for all actions, from Stephen Smalley. + * hll: Move core functions of pp to libsepol, from James Carter + * run_init: Use a ring buffer in open_init_pty, from Jason Zaman. + * run_init: fix open_init_pty availability check, from Nicolas Iooss. + * Widen Xen IOMEM context entries, from Daniel De Graaf. + * Fix -Wformat errors with gcc-5.0.0, from Petr Lautrbach. + * Fixed typo/grammatical error, from Christopher Peterson. + * Fix typo in semanage-port man page, from Andrew Spiers. + Update to version 2.4 + * Fix bugs found by hardened gcc flags, from Nicolas Iooss. + * Improve support for building with different versions of python from + Nicolas Iooss. + * Ensure XDG_RUNTIME_DIR is passed through to the sandbox in seunshare, + from Dan Walsh + * Remove cgroups from sandbox, from Dan Walsh + * Try to use setcurrent before setexec in seunshare, from Andy Lutomirski + * Stop using the now deprecated flask.h and av_permissions.h, from Stephen Smalley + * Add a store root path in semodule, from Yuli Khodorkovskiy + * Add a flag to ignore cached CIL files and recompile HLL modules, from + Yuli Khodorkovskiy + * Add and install HLL compiler for policy packages to CIL. The compiler is + installed in /var/libexec/selinux/hll/ by default, from Steve Lawrence + * Fixes to pp compiler to better support roles and type attributes, from + Yuli Khodorkovskiy + * Deprecate base/upgrade/version in semodule. Calling these commands will + now call --install on the backend, from Yuli Khodorkovskiy + * Add ability to install modules with a specified priority, from Caleb + Case + * Use /tmp for permissive module creation, by Caleb Case + * Update semanage to use new source policy infrastructure, from Jason Dana + * Add RuntimeDirectory to mcstrans systemd unit file, from Laurent + Bigonville + +------------------------------------------------------------------- +Wed Nov 5 14:04:30 UTC 2014 - jsegitz@novell.com + +- added Requires: python-yum, yum-metadata-parser to fix sepolicy + (bnc#903841) + +------------------------------------------------------------------- +Mon Sep 8 08:04:51 UTC 2014 - jsegitz@suse.com + +- removed execute permission from systemd unit file + +------------------------------------------------------------------- +Sun May 18 00:33:58 UTC 2014 - crrodriguez@opensuse.org + +- Version 2.3 +sepolgen: Add back attributes flag to fix exception crash from Dan Walsh. +(drop policycoreutils-sepolgen_missing_attributes.patch) +* Add -P semodule option to man page from Dan Walsh. +* selinux_current_policy_path will return none on a disabled SELinux system +* Add new icons for sepolicy gui from Dan Walsh. +* Only return writeable files that are enabled from Dan Walsh. +* Add domain to short list of domains, when -t and -d from Dan Walsh. +* Fix up desktop files to match current standards from Dan Walsh. +* Add support to return sensitivities and categories for python from Dan Walsh. +* Cleanup whitespace from Dan Walsh. +* Add message to tell user to install sandbox policy from Dan Walsh. +* Add systemd unit file for mcstrans from Laurent Bigonville. +* Improve restorecond systemd unit file from Laurent Bigonville. +* Minor man pages improvements from Laurent Bigonville. +* Ignore selevel/serange if MLS is disabled from Sven Vermeulen. +* Revert automatic setting of serange and seuser in seobject; was breaking non-MLS systems. +* Apply polkit check on all dbus interfaces and restrict to active user from Dan Walsh. +* Fix typo in sepolicy gui dbus.relabel_on_boot call from Dan Walsh. +* Remove import policycoreutils.default_encoding_utf8 from semanage from Dan Walsh. +* Make yum/extract_rpms optional for sepolicy generate from Dan Walsh. +* Add test suite for audit2allow and sepolgen-ifgen from Dan Walsh. + +------------------------------------------------------------------- +Fri Dec 13 14:13:32 UTC 2013 - vcizek@suse.com + +- sepolgen: add back attributes + * fixes build of selinux-policy + * policycoreutils-sepolgen_missing_attributes.patch + +------------------------------------------------------------------- +Mon Dec 9 11:20:57 UTC 2013 - vcizek@suse.com + +- fix issues which prevented accepting to Factory + * mention the dropped patches (merged upstream): + - policycoreutils-rhat.patch + - policycoreutils-sepolgen.patch + +------------------------------------------------------------------- +Thu Oct 31 14:48:31 UTC 2013 - p.drouand@gmail.com + +- update to version 2.2 + * Properly build the swig exception file + * Fix man pages + * Support overriding PATH and INITDIR in Makefile + * Fix LDFLAGS usage + * Fix init_policy warning + * Fix semanage logging + * Open newrole stdin as read/write + * Fix sepolicy transition + * Support overriding CFLAGS + * Create correct man directory for run_init + * restorecon GLOB_BRACE change + * Extend audit2why to report additional constraint information. + * Catch IOError errors within audit2allow + * semanage export/import fixes + * Improve setfiles progress reporting + * Document setfiles -o option in usage + * Change setfiles to always return -1 on failure + * Improve setsebool error r eporting + * Major overhaul of gui + * Fix sepolicy handling of non-MLS policy + * Support returning type aliases + * Add sepolicy tests + * Add org.selinux.config.policy + * Improve range and user input checking by semanage + * Prevent source or target arguments that end with / for substitutions + * Allow use of <> for semanage fcontext + * Report customized user levels + * Support deleteall for restoring disabled modules + * Improve semanage error reporting + * Only list disabled modules for module locallist + * Fix logging + * Define new constants for file type character codes + * Improve bash completions + * Convert semanage to argparse + * Add semanage tests + * Split semanage man pages + * Move bash completion scripts + * Replace genhomedircon script with a link to semodule + * Fix fixfiles + * Add support for systemd service for restorecon + * Spelling corrections + * Improve sandbox support for home dir symlinks and file caps + * Switch sandbox to openbox window manager + * Coalesce audit2why and audit2allow + * Change audit2allow to append to output file + * Update translations + * Change audit2why to use selinux_current_policy_path +- Update sepolgen to version 1.2 + * Return additional constraint information. + * Fix bug in calls to attributes + * Add support for filename transitions + * Fix sepolgen tests +- Remove restorecond.service; use upstream service file +- Don't provide support for sysvinit and systemd on a same system + Use either one or the other + +------------------------------------------------------------------- +Thu Jun 27 14:51:08 UTC 2013 - vcizek@suse.com + +- change the source url to the official release tarballs + +------------------------------------------------------------------- +Wed Apr 3 10:06:06 UTC 2013 - vcizek@suse.com + +- fixed source url +- removed old tarball + +------------------------------------------------------------------- +Fri Mar 29 13:13:19 UTC 2013 - vcizek@suse.com + +- update to 2.1.14 + * setfiles: estimate percent progress + * load_policy: make link at the destination directory + * Rebuild polgen.glade with glade-3 + * sepolicy: new command to unite small utilities + * sepolicy: Update Makefiles and po files + * sandbox: use sepolicy to look for sandbox_t + * gui: switch to use sepolicy + * gui: sepolgen: use sepolicy to generate + * semanage: use sepolicy for boolean dictionary + * add po file configuration information + * po: stop running update-po on all + * semanage: seobject verify policy types before allowing you to assign them. + * gui: Start using Popen, instead of os.spawnl + * sandbox: Copy /var/tmp to /tmp as they are the same inside + * qualifier to shred content + * semanage: Fix handling of boolean_sub names when using the -F flag + * semanage: man: roles instead of role + * gui: system-config-selinux: Catch no DISPLAY= error + * setfiles: print error if no default label found + * semanage: list logins file entries in semanage login -l + * semanage: good error message is sepolgen python module missing + * gui: system-config-selinux: do not use lokkit + * secon: add support for setrans color information in prompt output + * restorecond: remove /etc/mtab from default list + * gui: If you are not able to read enforcemode set it to False + * genhomedircon: regenerate genhomedircon more often + * restorecond: Add /etc/udpatedb.conf to restorecond.conf + * genhomedircon generation to allow spec file to pass in SEMODULE_PATH + * fixfiles: relabel only after specific date + * po: update translations + * sandbox: seunshare: do not reassign realloc value + * seunshare: do checking on setfsuid + * sestatus: rewrite to shut up coverity +- removed policycoreutils-glibc217.patch (upstream fix) +- added patches: + * policycoreutils-rhat.patch + * policycoreutils-sepolgen.patch + * loadpolicy_path.patch + +------------------------------------------------------------------- +Wed Jan 30 12:10:23 UTC 2013 - vcizek@suse.com + +- update to 2.1.13 + - drop policycoreutils-po.patch.bz2 (updated upstream) + - drop policycoreutils-gui.patch.bz2 (added to upstream) + - drop sandbox init scripts (shouldn't be needed anymore) + - numerous other changes + +------------------------------------------------------------------- +Tue Dec 11 15:11:12 UTC 2012 - vcizek@suse.com + +- added service unit for restorecond + +------------------------------------------------------------------- +Wed Dec 5 13:41:33 UTC 2012 - vcizek@suse.com + +- semanage needs python-xml and python-ipy to run + +------------------------------------------------------------------- +Sat Nov 17 06:58:05 UTC 2012 - aj@suse.de + +- Fix compilation with glibc 2.17 (add patch policycoreutils-glibc217.patch + extracted from Fedora) + +------------------------------------------------------------------- +Tue Aug 7 15:30:58 UTC 2012 - meissner@suse.com + +- updated policycoreutils to 2.1.10 + - adapated patches +- updated sepolgen to 1.1.5 + +------------------------------------------------------------------- +Tue Feb 14 09:57:15 UTC 2012 - mvyskocil@suse.cz + +- fix seceral rpmlint errors and warnings + * use /var/adm/fillup-template for sandbox + * don't use /var/lock/subsys in any of init script + * use set_permissions macro and add correct Requires(pre) + * fix the languages to new -lang package + * fix policycoreutils-sandbox Group + * remove runlevel 4 from inint scripts + +------------------------------------------------------------------- +Mon Feb 13 10:53:53 UTC 2012 - coolo@suse.com + +- patch license to follow spdx.org standard + +------------------------------------------------------------------- +Mon Mar 14 15:16:51 UTC 2011 - prusnak@opensuse.org + +- updated to 2.0.85 + * changes too numerous to list + +------------------------------------------------------------------- +Fri Feb 4 00:09:42 UTC 2011 - toddrme2178@gmail.com + +- fix a typo in the package group + +------------------------------------------------------------------- +Fri Jun 4 13:19:27 UTC 2010 - prusnak@opensuse.org + +- remove usermode-gtk from Requires of -gui subpackage + +------------------------------------------------------------------- +Fri May 7 14:01:05 CEST 2010 - meissner@suse.de + +- remove incorrect and unnecessary rpmlintrc. + +------------------------------------------------------------------- +Mon Mar 22 15:47:14 UTC 2010 - prusnak@suse.cz + +- fix build by moving _GNU_SOURCE define (gnusource.patch), thx darix + +------------------------------------------------------------------- +Thu Feb 25 15:28:18 UTC 2010 - prusnak@suse.cz + +- updated to 2.0.79 + * changes too numerous to list + +------------------------------------------------------------------- +Wed Jul 15 13:31:00 CEST 2009 - prusnak@suse.cz + +- disable Requires usermode-gtk + +------------------------------------------------------------------- +Fri Jun 19 13:42:09 CEST 2009 - prusnak@suse.cz + +- added libsepol-static-devel to BuildRequires + +------------------------------------------------------------------- +Wed May 27 14:24:47 CEST 2009 - prusnak@suse.cz + +- updated to 2.0.62 + * Add btrfs to fixfiles from Dan Walsh. + * Remove restorecond error for matching globs with multiple hard links + and fix some error messages from Dan Walsh. + * Make removing a non-existant module a warning rather than an error + from Dan Walsh. + * Man page fixes from Dan Walsh. + +------------------------------------------------------------------- +Wed Feb 11 01:09:12 CET 2009 - ro@suse.de + +- use sr@latin instead of sr@Latn + +------------------------------------------------------------------- +Wed Jan 14 14:12:53 CET 2009 - prusnak@suse.cz + +- updated to 2.0.61 + * semanage: use semanage_mls_enabled() from Stephen Smalley + * fix error checking in restorecond, for inotify_add_watch + * change md5 to hashlib.md5 in sepolgen + * fix Japanese translations + * fix audit2allow man page + * don't error out when removing a non existing module + * chcat: cut categories at arbitrary point (25) from Dan Walsh + * semodule: use new interfaces in libsemanage for compressed + files from Dan Walsh + * audit2allow: string changes for usage + +------------------------------------------------------------------- +Mon Dec 1 11:23:02 CET 2008 - prusnak@suse.cz + +- updated to 2.0.59 + * Fix text in newrole + * Fix revertbutton on booleans page in system-config-selinux + * Fix system-config-selinux booleanspage throwing and exception + * Allow addition of local modifications of fcontext policy + * Handle selinux disabled correctly + * Handle manipulation of fcontext file correctly + * Fix traceback in audit2why + +------------------------------------------------------------------- +Mon Nov 10 16:51:16 CET 2008 - ro@suse.de + +- package "newrole" with permissions matching + "secure" permissions mode + +------------------------------------------------------------------- +Fri Nov 7 02:44:25 CET 2008 - ro@suse.de + +- buildfix: prevent regeneration of policycoreutils.pot + +------------------------------------------------------------------- +Fri Oct 31 15:57:57 CET 2008 - prusnak@suse.cz + +- use permissions for newrole + +------------------------------------------------------------------- +Mon Oct 20 11:48:40 CEST 2008 - prusnak@suse.cz + +- updated to 2.0.57 + * Update po files from Dan Walsh. +- updated to 2.0.56 + * fixfiles will now remove all files in /tmp and will check for + unlabeled_t in /tmp and /var/tmp from Dan Walsh. + * add glob support to restorecond from Dan Walsh. + * allow semanage to handle multi-line commands in a single transaction + from Dan Walsh. + +------------------------------------------------------------------- +Mon Sep 8 14:18:48 CEST 2008 - prusnak@suse.cz + +- fix scriptlets + +------------------------------------------------------------------- +Tue Sep 2 12:25:39 CEST 2008 - prusnak@suse.cz + +- updated to 2.0.55 + * Merged semanage node support from Christian Kuester. +- updated to 2.0.54 + * Add support for boolean files and group support for seusers from Dan Walsh. + * Ensure that setfiles -p output is newline terminated from Russell Coker. +- updated to 2.0.53 + * Change setfiles to validate all file_contexts files when using -c from Stephen Smalley. +- updated sepolgen to 1.0.13 + * Only append s0 suffix if MLS is enabled from Karl MacMillan. +- added missing preun/post/postun scriptlets + +------------------------------------------------------------------- +Mon Aug 4 01:00:45 CEST 2008 - ro@suse.de + +- add directory to filelist to fix build + +------------------------------------------------------------------- +Tue Jul 15 18:11:09 CEST 2008 - prusnak@suse.cz + +- initial version 2.0.52 + * based on Fedora package by Dan Walsh + diff --git a/policycoreutils.keyring b/policycoreutils.keyring new file mode 100644 index 0000000..8a24537 --- /dev/null +++ b/policycoreutils.keyring @@ -0,0 +1,305 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +t4zhuhOJjZ2YaPVALQ== +=UVQc +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +IuOUseqwzF197kqA16in1P25 +=f80i +-----END PGP PUBLIC KEY BLOCK----- diff --git a/policycoreutils.spec b/policycoreutils.spec new file mode 100644 index 0000000..732d1af --- /dev/null +++ b/policycoreutils.spec @@ -0,0 +1,431 @@ +# +# spec file for package policycoreutils +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define libaudit_ver 2.2 +%define libsepol_ver 3.5 +%define libsemanage_ver 3.5 +%define libselinux_ver 3.5 +%define setools_ver 4.1.1 +Name: policycoreutils +Version: 3.5 +Release: 0 +Summary: SELinux policy core utilities +License: GPL-2.0-or-later +Group: Productivity/Security +URL: https://github.com/SELinuxProject/selinux +Source0: https://github.com/SELinuxProject/selinux/releases/download/%{version}/%{name}-%{version}.tar.gz +Source1: https://github.com/SELinuxProject/selinux/releases/download/%{version}/%{name}-%{version}.tar.gz.asc +Source2: policycoreutils.keyring +Source3: https://github.com/SELinuxProject/selinux/releases/download/%{version}/selinux-python-%{version}.tar.gz +Source4: https://github.com/SELinuxProject/selinux/releases/download/%{version}/selinux-python-%{version}.tar.gz.asc +Source5: https://github.com/SELinuxProject/selinux/releases/download/%{version}/semodule-utils-%{version}.tar.gz +Source6: https://github.com/SELinuxProject/selinux/releases/download/%{version}/semodule-utils-%{version}.tar.gz.asc +Source7: system-config-selinux.png +Source8: system-config-selinux.desktop +Source9: system-config-selinux.pam +Source10: system-config-selinux.console +Source11: selinux-polgengui.desktop +Source12: selinux-polgengui.console +Source13: newrole.pam +Patch0: make_targets.patch +Patch2: get_os_version.patch +Patch3: run_init.pamd.patch +Patch4: reproducible-build.patch +BuildRequires: audit-devel >= %{libaudit_ver} +BuildRequires: bison +BuildRequires: dbus-1-glib-devel +BuildRequires: fdupes +BuildRequires: flex +BuildRequires: gettext +BuildRequires: hicolor-icon-theme +BuildRequires: libbz2-devel +BuildRequires: libcap-devel +BuildRequires: libcap-ng-devel +BuildRequires: libselinux-devel >= %{libselinux_ver} +BuildRequires: libsemanage-devel >= %{libsemanage_ver} +BuildRequires: libsepol-devel-static >= %{libsepol_ver} +BuildRequires: pam-devel +# needed only for dir /usr/share/polkit-1 from policycoreutils-gui +BuildRequires: polkit +BuildRequires: %{python_module devel} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: python-rpm-macros +BuildRequires: python3 +BuildRequires: update-desktop-files +BuildRequires: xmlto +Requires: gawk +Requires: libsepol2 >= %{libsepol_ver} +Requires: rpm +Requires: selinux-tools +Requires: util-linux + +%description +policycoreutils contains the policy core utilities that are required +for basic operation of a SELinux system. These utilities include +load_policy to load policies, setfiles to label filesystems, newrole +to switch roles, and run_init to run %{_initddir} scripts in the proper +context. + +(Security-enhanced Linux is a feature of the kernel and some +utilities that implement mandatory access control policies, such as +Type Enforcement, Role-based Access Control and Multi-Level +Security.) + +%lang_package + +%package -n python3-%{name} +Summary: SELinux policy core python3 interfaces +Group: Productivity/Security +Requires: %{name} = %{version}-%{release} +Requires: checkpolicy +Requires: python3-audit >= %{libaudit_ver} +Requires: python3-selinux +Requires: python3-semanage >= %{libsepol_ver} +Requires: python3-setools >= %{setools_ver} +Requires: python3-setuptools +Provides: policycoreutils-python = %{version}-%{release} +Obsoletes: policycoreutils-python < %{version} +BuildArch: noarch + +%description -n python3-%{name} +The python-policycoreutils package contains the interfaces that can be used +by python in an SELinux environment. + +%package python-utils +Summary: SELinux policy core python utilities +Group: Productivity/Security +Requires: python3-policycoreutils = %{version}-%{release} +BuildArch: noarch +Obsoletes: policycoreutils-python + +%description python-utils +The policycoreutils-python-utils package contains the management tools +use to manage an SELinux environment. + +%package devel +Summary: SELinux policy core policy devel utilities +Group: Productivity/Security +Requires: %{_bindir}/make +Requires: python3-%{name} = %{version}-%{release} +Requires: python3-distro +Recommends: %{_sbindir}/ausearch +Conflicts: %{name}-python <= 2.6 + +%description devel +The policycoreutils-devel package contains the management tools use to develop policy in an SELinux environment. + +%package sandbox +Summary: SELinux sandbox utilities +Group: Productivity/Security +Requires: python3-%{name} = %{version} +Requires: xorg-x11-server-extra + +%description sandbox +The sandbox package contains the scripts to create graphical sandboxes. + +%package newrole +Summary: The newrole application for RBAC/MLS +Group: Productivity/Security +Requires: %{name} = %{version} +# we need both, else permissions could be de-installed +# and verify failed +Requires: permissions +Requires(post): permissions + +%description newrole +RBAC/MLS policy machines require newrole as a way of changing the role +or level of a logged-in user. + +%if 0%{?suse_version} < 1500 +%package gui +Summary: SELinux configuration GUI +Group: Productivity/Security +Requires: python +Requires: python-gnome +Requires: python-gtk +Requires: python3-%{name} = %{version} +Requires: selinux-policy +Requires: setools-console + +%description gui +system-config-selinux is a utility for managing the SELinux environment. +%endif + +%prep +%setup -q -a3 -a5 +setools_python_pwd="$PWD/selinux-python-%{version}" +semodule_utils_pwd="$PWD/semodule-utils-%{version}" +%patch0 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 +mv ${setools_python_pwd}/audit2allow ${setools_python_pwd}/chcat ${setools_python_pwd}/semanage ${setools_python_pwd}/sepolgen ${setools_python_pwd}/sepolicy . +mv ${semodule_utils_pwd}/semodule_expand ${semodule_utils_pwd}/semodule_link ${semodule_utils_pwd}/semodule_package . + +%build +export PYTHON="python3" LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fPIE" LDFLAGS="-pie -Wl,-z,relro" +make %{?_smp_mflags} LIBEXECDIR="%{_libexecdir}" +(cd selinux-python-%{version}/po && make) + +%install +export PYTHON="python3" +mkdir -p %{buildroot}%{_localstatedir}/lib/selinux +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_sbindir} +mkdir -p %{buildroot}/sbin +mkdir -p %{buildroot}%{_mandir}/man1 +mkdir -p %{buildroot}%{_mandir}/man8 +mkdir -p %{buildroot}%{_sysconfdir}/security/console.apps +%if 0%{?suse_version} > 1500 +mkdir -p %{buildroot}%{_pam_vendordir} +%else +mkdir -p %{buildroot}%{_sysconfdir}/pam.d +%endif +make LSPP_PRIV=y DESTDIR=%{buildroot} install LIBEXECDIR=%{_libexecdir} +%if 0%{?suse_version} > 1500 +cp -f %{SOURCE13} %{buildroot}%{_pam_vendordir}/newrole +rm %{buildroot}%{_sysconfdir}/pam.d/newrole +mv %{buildroot}%{_sysconfdir}/pam.d/run_init %{buildroot}%{_pam_vendordir}/run_init +%else +cp -f %{SOURCE13} %{buildroot}%{_sysconfdir}/pam.d/newrole +%endif +install -D -m 644 %{SOURCE12} %{buildroot}%{_datadir}/pixmaps/system-config-selinux.png +%if 0%{?suse_version} < 1500 +install -m 644 %{SOURCE13} %{buildroot}%{_sysconfdir}/pam.d/system-config-selinux +install -m 644 %{SOURCE13} %{buildroot}%{_sysconfdir}/pam.d/selinux-polgengui +%endif +install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/security/console.apps/system-config-selinux +install -m 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/security/console.apps/selinux-polgengui +rm -f %{buildroot}%{_mandir}/ru/man8/genhomedircon.8.gz +ln -sf consolehelper %{buildroot}%{_bindir}/system-config-selinux +ln -sf consolehelper %{buildroot}%{_bindir}/selinux-polgengui +mkdir -p %{buildroot}%{_libexecdir}/selinux/hll/ +mkdir -p %{buildroot}%{_localstatedir}/lib/sepolgen +%suse_update_desktop_file -i system-config-selinux System Security Settings +%suse_update_desktop_file -i selinux-polgengui System Security Settings +(cd selinux-python-%{version}/po && make DESTDIR=%{buildroot} install) +%find_lang %{name} +%find_lang selinux-python +%fdupes -s %{buildroot}%{_datadir} + +%if 0%{?suse_version} >= 1500 +rm %{buildroot}%{_sysconfdir}/security/console.apps/selinux-polgengui \ + %{buildroot}%{_sysconfdir}/security/console.apps/system-config-selinux \ + %{buildroot}%{_bindir}/selinux-polgengui \ + %{buildroot}%{_bindir}/system-config-selinux \ + %{buildroot}%{_datadir}/applications/selinux-polgengui.desktop \ + %{buildroot}%{_datadir}/applications/system-config-selinux.desktop \ + %{buildroot}%{_datadir}/pixmaps/system-config-selinux.png +%endif + +mv %{buildroot}/sbin/* %{buildroot}/usr/sbin/ + +%if 0%{?suse_version} > 1500 +%pre +# Prepare for migration to /usr/etc; save any old .rpmsave +for i in pam.d/run_init ; do + test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i}.rpmsave.old ||: +done + +%pre newrole +# Prepare for migration to /usr/etc; save any old .rpmsave +for i in pam.d/newrole ; do + test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i}.rpmsave.old ||: +done + +%posttrans +# Migration to /usr/etc, restore just created .rpmsave +for i in pam.d/run_init ; do + test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i} ||: +done + +%posttrans newrole +# Migration to /usr/etc, restore just created .rpmsave +for i in pam.d/newrole ; do + test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i} ||: +done +%endif + +%post newrole +%set_permissions %{_bindir}/newrole + +%verifyscript newrole +%verify_permissions -e %{_bindir}/newrole + +%files +%{_bindir}/semodule_expand +%{_bindir}/semodule_link +%{_bindir}/semodule_package +%{_bindir}/semodule_unpackage +%{_sbindir}/restorecon +%{_sbindir}/setfiles +%{_sbindir}/restorecon_xattr +%{_sbindir}/fixfiles +%{_sbindir}/load_policy +%dir %{_libexecdir}/selinux +%dir %{_libexecdir}/selinux/hll +%{_libexecdir}/selinux/hll/pp +%{_sbindir}/genhomedircon +%{_sbindir}/setsebool +%{_sbindir}/semodule +%{_sbindir}/sestatus +%{_bindir}/sestatus +%{_sbindir}/run_init +%{_sbindir}/open_init_pty +%{_bindir}/secon +%if 0%{?suse_version} > 1500 +%{_pam_vendordir}/run_init +%else +%config(noreplace) %{_sysconfdir}/pam.d/run_init +%endif +%config(noreplace) %{_sysconfdir}/sestatus.conf +%{_mandir}/man8/fixfiles.8%{?ext_man} +%{_mandir}/man8/genhomedircon.8%{?ext_man} +%{_mandir}/man8/load_policy.8%{?ext_man} +%{_mandir}/man8/open_init_pty.8%{?ext_man} +%{_mandir}/man8/restorecon.8%{?ext_man} +%{_mandir}/man8/restorecon_xattr.8%{?ext_man} +%{_mandir}/man8/run_init.8%{?ext_man} +%{_mandir}/man8/semodule.8%{?ext_man} +%{_mandir}/man8/semodule_expand.8%{?ext_man} +%{_mandir}/man8/semodule_link.8%{?ext_man} +%{_mandir}/man8/semodule_package.8%{?ext_man} +%{_mandir}/man8/semodule_unpackage.8%{?ext_man} +%{_mandir}/man8/sestatus.8%{?ext_man} +%{_mandir}/man8/setfiles.8%{?ext_man} +%{_mandir}/man8/setsebool.8%{?ext_man} +%{_mandir}/ru/man8/fixfiles.8%{?ext_man} +%{_mandir}/ru/man8/genhomedircon.8%{?ext_man} +%{_mandir}/ru/man8/load_policy.8%{?ext_man} +%{_mandir}/ru/man8/open_init_pty.8%{?ext_man} +%{_mandir}/ru/man8/restorecon.8%{?ext_man} +%{_mandir}/ru/man8/restorecon_xattr.8%{?ext_man} +%{_mandir}/ru/man8/run_init.8%{?ext_man} +%{_mandir}/ru/man8/semodule.8%{?ext_man} +%{_mandir}/ru/man8/semodule_expand.8%{?ext_man} +%{_mandir}/ru/man8/semodule_link.8%{?ext_man} +%{_mandir}/ru/man8/semodule_package.8%{?ext_man} +%{_mandir}/ru/man8/semodule_unpackage.8%{?ext_man} +%{_mandir}/ru/man8/sestatus.8%{?ext_man} +%{_mandir}/ru/man8/setfiles.8%{?ext_man} +%{_mandir}/ru/man8/setsebool.8%{?ext_man} +%{_mandir}/man5/selinux_config.5%{?ext_man} +%{_mandir}/man5/sestatus.conf.5%{?ext_man} +%{_mandir}/ru/man5/selinux_config.5%{?ext_man} +%{_mandir}/ru/man5/sestatus.conf.5%{?ext_man} +%{_mandir}/man1/secon.1%{?ext_man} +%{_mandir}/ru/man1/secon.1%{?ext_man} +%{_datadir}/bash-completion/completions/setsebool + +%files -n python3-%{name} +%{python3_sitelib}/* +%dir %{_localstatedir}/lib/selinux + +%files lang -f %{name}.lang + +%files python-utils -f selinux-python.lang +%{_bindir}/audit2allow +%{_bindir}/audit2why +%{_bindir}/chcat +%{_sbindir}/semanage +%{_mandir}/man1/audit2allow.1%{?ext_man} +%{_mandir}/ru/man1/audit2allow.1%{?ext_man} +%{_mandir}/man1/audit2why.1%{?ext_man} +%{_mandir}/ru/man1/audit2why.1%{?ext_man} +%{_mandir}/man8/chcat.8%{?ext_man} +%{_mandir}/ru/man8/chcat.8%{?ext_man} +%{_mandir}/man8/semanage*.8%{?ext_man} +%{_mandir}/ru/man8/semanage*.8%{?ext_man} +%{_datadir}/bash-completion/completions/semanage + +%files devel +%{_bindir}/sepolgen +%{_bindir}/sepolgen-ifgen +%{_bindir}/sepolgen-ifgen-attr-helper +%{_bindir}/sepolicy +%{_mandir}/man8/sepolicy-booleans.8%{?ext_man} +%{_mandir}/man8/sepolicy-communicate.8%{?ext_man} +%{_mandir}/man8/sepolicy-generate.8%{?ext_man} +%{_mandir}/man8/sepolicy-gui.8%{?ext_man} +%{_mandir}/man8/sepolicy-interface.8%{?ext_man} +%{_mandir}/man8/sepolicy-manpage.8%{?ext_man} +%{_mandir}/man8/sepolicy-network.8%{?ext_man} +%{_mandir}/man8/sepolicy-transition.8%{?ext_man} +%{_mandir}/man8/sepolicy.8%{?ext_man} +%{_mandir}/man8/sepolgen.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-booleans.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-communicate.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-generate.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-gui.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-interface.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-manpage.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-network.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy-transition.8%{?ext_man} +%{_mandir}/ru/man8/sepolicy.8%{?ext_man} +%{_mandir}/ru/man8/sepolgen.8%{?ext_man} +%dir %{_localstatedir}/lib/sepolgen +%{_localstatedir}/lib/sepolgen/perm_map +%{_datadir}/bash-completion/completions/sepolicy + +%files newrole +%verify(not mode) %attr(4755,root,root) %{_bindir}/newrole +%{_mandir}/man1/newrole.1%{?ext_man} +%{_mandir}/ru/man1/newrole.1%{?ext_man} +%if 0%{?suse_version} > 1500 +%{_pam_vendordir}/newrole +%else +%config(noreplace) %{_sysconfdir}/pam.d/newrole +%endif + +%if 0%{?suse_version} < 1500 +%files gui +%{_bindir}/system-config-selinux +%{_bindir}/selinux-polgengui +%{_datadir}/applications/system-config-selinux.desktop +%{_datadir}/system-config-selinux/system-config-selinux.desktop +%{_datadir}/applications/selinux-polgengui.desktop +%{_datadir}/applications/sepolicy.desktop +%{_datadir}/system-config-selinux/selinux-polgengui.desktop +%{_datadir}/system-config-selinux/sepolicy.desktop +%{_datadir}/icons/hicolor/24x24/apps/system-config-selinux.png +%{_datadir}/icons/hicolor/16x16/apps/sepolicy.png +%{_datadir}/icons/hicolor/22x22/apps/sepolicy.png +%{_datadir}/icons/hicolor/256x256/apps/sepolicy.png +%{_datadir}/icons/hicolor/32x32/apps/sepolicy.png +%{_datadir}/icons/hicolor/48x48/apps/sepolicy.png +%{_datadir}/pixmaps/sepolicy.png +%{_datadir}/pixmaps/system-config-selinux.png +%{_datadir}/polkit-1/actions/org.selinux.config.policy +%{_datadir}/polkit-1/actions/org.selinux.policy +%dir %{_datadir}/system-config-selinux +%{_datadir}/system-config-selinux/system-config-selinux.png +%{_datadir}/system-config-selinux/*.py* +%{_datadir}/system-config-selinux/*.glade +%{_mandir}/man8/selinux-polgengui.8%{?ext_man} +%{_mandir}/man8/system-config-selinux.8%{?ext_man} +%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.selinux.conf +%config(noreplace) %{_sysconfdir}/pam.d/system-config-selinux +%config(noreplace) %{_sysconfdir}/pam.d/selinux-polgengui +%dir %{_sysconfdir}/security/console.apps +%config(noreplace) %{_sysconfdir}/security/console.apps/selinux-polgengui +%config(noreplace) %{_sysconfdir}/security/console.apps/system-config-selinux +%endif + +%changelog diff --git a/reproducible-build.patch b/reproducible-build.patch new file mode 100644 index 0000000..d6f8ac9 --- /dev/null +++ b/reproducible-build.patch @@ -0,0 +1,13 @@ +Index: policycoreutils-3.5/selinux-python-3.5/sepolicy/sepolicy/manpage.py +=================================================================== +--- policycoreutils-3.5.orig/selinux-python-3.5/sepolicy/sepolicy/manpage.py ++++ policycoreutils-3.5/selinux-python-3.5/sepolicy/sepolicy/manpage.py +@@ -156,7 +156,7 @@ def get_alphabet_manpages(manpage_list): + if j.split("/")[-1][0] == i: + temp.append(j.split("/")[-1]) + +- alphabet_manpages[i] = temp ++ alphabet_manpages[i] = sorted(temp) + + return alphabet_manpages + diff --git a/run_init.pamd.patch b/run_init.pamd.patch new file mode 100644 index 0000000..020ab53 --- /dev/null +++ b/run_init.pamd.patch @@ -0,0 +1,18 @@ +Index: policycoreutils-3.4-rc3/run_init/run_init.pamd +=================================================================== +--- policycoreutils-3.4-rc3.orig/run_init/run_init.pamd ++++ policycoreutils-3.4-rc3/run_init/run_init.pamd +@@ -1,8 +1,9 @@ + #%PAM-1.0 + # Uncomment the next line if you do not want to enter your passwd every time + #auth sufficient pam_rootok.so +-auth include system-auth +-account include system-auth +-password include system-auth +-session include system-auth ++auth include common-auth ++account include common-account ++password include common-password ++session include common-session + session optional pam_xauth.so ++session optional pam_keyinit.so revoke [force] diff --git a/selinux-polgengui.console b/selinux-polgengui.console new file mode 100644 index 0000000..638293a --- /dev/null +++ b/selinux-polgengui.console @@ -0,0 +1,3 @@ +USER=root +PROGRAM=/usr/share/system-config-selinux/polgengui.py +SESSION=true diff --git a/selinux-polgengui.desktop b/selinux-polgengui.desktop new file mode 100644 index 0000000..0cb5546 --- /dev/null +++ b/selinux-polgengui.desktop @@ -0,0 +1,64 @@ +[Desktop Entry] +Name=SELinux Policy Generation Tool +Name[bn_IN]=SELinux Policy নির্মাণের সামগ্রী +Name[ca]=Eina de generació de polítiques del SELinux +Name[de]=Tool zur Erstellung von SELinux-Richtlinien +Name[es]=Generador de Políticas de SELinux +Name[fi]=SELinux-käytäntöjen generointityökalu +Name[fr]=Outil de génération de stratégies SELinux +Name[gu]=SELinux પોલિસી બનાવટ સાધન +Name[hi]=SELinux पॉलिसी जनन औजार +Name[it]=Tool di generazione della policy di SELinux +Name[ja]=SELinux ポリシー生成ツール +Name[kn]=SELinux ಪಾಲಿಸಿ ಉತ್ಪಾದನಾ ಉಪಕರಣ +Name[ko]=SELinux 정책 생성 도구 +Name[ml]=SELinux പോളിസി ഉത്പാദന പ്രയോഗം +Name[mr]=SELinux करार निर्माण साधन +Name[nl]=SELinux tactiek generatie gereedschap +Name[or]=SELinux ନୀତି ସୃଷ୍ଟି ଉପକରଣ +Name[pa]=SELinux ਪਾਲਿਸੀ ਨਿਰਮਾਣ ਜੰਤਰ +Name[pl]=Narzędzie tworzenia polityki SELinuksa +Name[pt]=Ferramenta de Geração de Políticas SELinux +Name[pt_BR]=Ferramenta de criação de políticas do SELinux +Name[ru]=Средство создания политики SELinux +Name[sv]=Genereringsverktyg för SELinuxpolicy +Name[ta]=SELinux பாலிசி உற்பத்தி கருவி +Name[te]=SELinux నిర్వహణ +Name[uk]=Утиліта генерації політики SELinux +Name[zh_CN]=SELinux 策略生成工具 +Name[zh_TW]=SELinux 政策產生工具(SELinux Policy Generation Tool) +GenericName=SELinux +Comment=Generate SELinux policy modules +Comment[bn_IN]=SELinux নিয়মনীতির মডিউল নির্মাণ করুন +Comment[ca]=Genera els mòduls de les polítiques de SELinux +Comment[de]=Tool zur Erstellung von SELinux-Richtlinien +Comment[es]=Generar módulos de política de SELinux +Comment[fi]=Generoi SELinuxin käytäntömoduuleja +Comment[fr]=Génére des modules de stratégie SELinux +Comment[gu]=SELinux પોલિસી મોડ્યુલોને ઉત્પન્ન કરો +Comment[hi]=नया पॉलिसी मॉड्यूल उत्पन्न करें +Comment[it]=Genera moduli della politica di SELinux +Comment[ja]=新しいポリシーモジュールの作成 +Comment[kn]=SELinux ಪಾಲಿಸಿ ಘಟಕಗಳನ್ನು ಉತ್ಪಾದಿಸು +Comment[ko]=SELinux 정책 모듈 생성 +Comment[ml]=SELinux യ പോളിസി ഘങ്ങള്‍ തയ്യാറാക്കുക +Comment[mr]=SELinux करार घटके निर्माण करा +Comment[nl]=Maak een SELinux tactiek module aan +Comment[or]=SELinux ନୀତି ଏକକାଂଶ ସୃଷ୍ଟିକରନ୍ତୁ +Comment[pa]=SELinux ਪਾਲਿਸੀ ਮੈਡਿਊਲ ਬਣਾਓ +Comment[pl]=Tworzenie nowych modułów polityki SELinuksa +Comment[pt]=Gerar módulos de políticas SELinux +Comment[pt_BR]=Gerar módulos de política do SELinux +Comment[ru]=Генерация модулей политики SELinux +Comment[sv]=Generera SELinux-policymoduler +Comment[ta]=SELinux கொள்கை தொகுதியை உருவாக்கவும் +Comment[te]=SELinux పాలసీ మాడ్యూళ్ళను వుద్భవింపచేయుము +Comment[uk]=Створення модулів контролю доступу SELinux +Comment[zh_CN]=生成 SELinux 策略模块 +Comment[zh_TW]=產生 SELinux 政策模組 +StartupNotify=true +Icon=system-config-selinux +Exec=selinux-polgengui +Type=Application +Terminal=false +Categories=System;Security;Settings; diff --git a/selinux-python-3.5.tar.gz b/selinux-python-3.5.tar.gz new file mode 100644 index 0000000..9531c79 --- /dev/null +++ b/selinux-python-3.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8245bb4dae59333461f19ca0c79a829081f07972fa5e3ad4c2b2b917dd71d96b +size 3604439 diff --git a/selinux-python-3.5.tar.gz.asc b/selinux-python-3.5.tar.gz.asc new file mode 100644 index 0000000..1e455fd --- /dev/null +++ b/selinux-python-3.5.tar.gz.asc @@ -0,0 +1,19 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQKTBAABCgB9FiEE4WLerRzN0RPwSz1JK77Zyxpo71UFAmP3a2ZfFIAAAAAALgAo +aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx +NjJERUFEMUNDREQxMTNGMDRCM0Q0OTJCQkVEOUNCMUE2OEVGNTUACgkQK77Zyxpo +71UkQA/+JFIqnhGfbEcqdIngI0MXQkQNlTCTiXuHS55hfVT4mxr6UFojudoO41qo +PUXIXaT8qeGVxJHNj5GS/CiKZ57/E/HFcvudV4toI0AGMXclrM1nnRfNxCep3O/g +SjHaJp/AzmiCYsMMjnl2KTHtGzVyeq5Yi0lnJ6z9Aq6EnQsgr0qEC3WBU+Lw1iBb +eLukjLHBgcj5TUW9BCmD4OdOvkpQkDhz2IISrwLuVWnIw6Mb4RqAVrYXxcNrBJia +NxqatuTnPOT3lmBiDNJAzW8S577K7JoOKP8pT9QNbPCzxqptYpIveqg/gbUiVsiV +PtiFnt54Ohy90AKV0GjIiFyaPKYwiYm5VM9Hey0lyssbYRdRr1n+BTvbVSA8MLVj +I+n4Vux+CLt5JMO1sZM9Rm3JOInAbTIcXjgXGV4f+brajooM5ggDe2AY7zLTBbXu +Ig5ZAggVgyZU6lqqvFINUhASgS0yErVSP8h9zP7zuA0k9vnT2zKP+Gk0liWDgXKw +YT5BVdJTPc8ibM/iX+mvVs+k4Yc8TqYPucDu7Xw9cWaXOr5hDZkvbcSTpszxApUj +7dIF4r0cvdLmxPhPnoMU+vf/nBz5YvjiywTWRp+J+tboOD5ZzPtxad2GeK/Bqdqp +w+i+zXR9Zpc6aYen7WZIgLhzNM8jrgXJmHLDYI1S1w8KOBSj8iU= +=226C +-----END PGP SIGNATURE----- diff --git a/semodule-utils-3.5.tar.gz b/semodule-utils-3.5.tar.gz new file mode 100644 index 0000000..c0dc5a0 --- /dev/null +++ b/semodule-utils-3.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9a550a737051ebaf2c102f665c7ec2f85e7232870980aa0067998459b414283 +size 14383 diff --git a/semodule-utils-3.5.tar.gz.asc b/semodule-utils-3.5.tar.gz.asc new file mode 100644 index 0000000..dcbba80 --- /dev/null +++ b/semodule-utils-3.5.tar.gz.asc @@ -0,0 +1,19 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQKTBAABCgB9FiEE4WLerRzN0RPwSz1JK77Zyxpo71UFAmP3a2hfFIAAAAAALgAo +aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx +NjJERUFEMUNDREQxMTNGMDRCM0Q0OTJCQkVEOUNCMUE2OEVGNTUACgkQK77Zyxpo +71Vxrw//cJShImZJnu8LHsXd+tp0apWxmgsOIPLMczRSioFPbbnAawXLXhHmWz9J +CNluGjyqzAmB1O7DDBBUeeStfvGBSVKxWwMRQPTtxT1vZC0RCJt2HGvY0wVJWXbt +7+ydLelwnJIHyJcW5N/gGrw2IUnmyl8W7fxDHAcbwzSD8Dq5bHG2+ssuWlRVF3Gj +IIRSfWRnfFgAgusU7DwB6BllNUhfFfrbTMWQjcdfgN2UVYEnfUwoRiaUzhnUT0hx +gCsyMcSHUJ5s3llneptALSUYAQUNkjp0AdPKFyuvrIkUUR7JUDMSxpT0jrb/GGWq +0ZGK1Joshe8kRRfZfw3DUeZVMYND/BA0vuMgyZ7+yJOkGQDwpyfwTRlncYMW9a+W +rXiGS7DhAwUvx+n+oRdrnHttxSP50DIr5qjbP7TUfmLsmcBEoOuRXq7+9qdfMz6E +ksmnzqUXXHJMiXrj93sqwRa26egosRTEejaay6Ckwj+d6MNGH8fNIm6vHC1Du4cZ +02ff5NUghNYkX0fI9tNLgEhLEILj1c+ehjVcF8J8H2gL2CtpRJUvJ7YSze7pRORJ +Kehzo8bXAjLA28TdfRJVqzJudmprywYYL3/MfS35D4Vp2LlKA8dHHfA1yiVEdr06 +4aBcxrqj0PiJ5YjbAY0T1O2I5gOBmUVkGVhKCFU1txip7Vb+ogQ= +=RJwB +-----END PGP SIGNATURE----- diff --git a/system-config-selinux.console b/system-config-selinux.console new file mode 100644 index 0000000..42b48a3 --- /dev/null +++ b/system-config-selinux.console @@ -0,0 +1,3 @@ +USER=root +PROGRAM=/usr/share/system-config-selinux/system-config-selinux.py +SESSION=true diff --git a/system-config-selinux.desktop b/system-config-selinux.desktop new file mode 100644 index 0000000..38765ed --- /dev/null +++ b/system-config-selinux.desktop @@ -0,0 +1,64 @@ +[Desktop Entry] +Name=SELinux Management +Name[bn_IN]=SELinux পরিচালনা +Name[de]=SELinux-Management +Name[ca]=Gestió de SELinux +Name[es]=Administración de SELinux +Name[fi]=SELinuxin ylläpito +Name[fr]=Gestion de SELinux +Name[gu]=SELinux સંચાલન +Name[hi]=SELinux प्रबंधन +Name[jp]=SELinux 管理 +Name[it]=Gestione di SELinux +Name[kn]=SELinux ವ್ಯವಸ್ಥಾಪನೆ +Name[ko]=SELinux 관리 +Name[ml]=SELinux മാനേജ്മെന്റ് +Name[mr]=SELinux मॅनेजमेंट +Name[nl]=SELinux beheer +Name[or]=SELinux ପରିଚାଳନା +Name[pa]=SELinux ਮੈਨੇਜਮੈਂਟ +Name[pl]=Zarządzanie SELinuksem +Name[pt_BR]=Gerenciamento do SELinux +Name[pt]=Gestão de SELinux +Name[ru]=Управление SELinux +Name[sv]=SELinux-hantering +Name[ta]=SELinux மேலாண்மை +Name[te]=SELinux నిర్వహణ +Name[uk]=Керування SELinux +Name[zh_CN]=SELinux 管理 +Name[zh_TW]=SELinux 管理 +GenericName=SELinux +Comment=Configure SELinux in a graphical setting +Comment[bn_IN]=গ্রাফিক্যাল পরিবেশে SELinux কনফিগার করুন +Comment[ca]=Configura SELinuc an mode de preferències gràfiques +Comment[de]=SELinux in einer grafischen Einstellung konfigurieren +Comment[es]=Defina SELinux en una configuración de interfaz gráfica +Comment[fi]=Tee SELinuxin asetukset graafisesti +Comment[fr]=Configure SELinux dans un environnement graphique +Comment[gu]=ગ્રાફિકલ સુયોજનમાં SELinux ને રૂપરેખાંકિત કરો +Comment[hi]=SELinux को आलेखी सेटिंग में विन्यस्त करें +Comment[it]=Configura SELinux in una impostazione grafica +Comment[jp]=グラフィカルな設定画面で SELinux を設定する +Comment[ko]=SELinux를 그래픽 사용자 인터페이스로 설정 +Comment[kn]=SELinux ಅನ್ನು ಒಂದು ಚಿತ್ರಾತ್ಮಕ ಸಿದ್ದತೆಯಲ್ಲಿ ಸಂರಚಿಸಿ +Comment[ml]=ഒരു ഗ്രാഫിക്കല്‍ സജ്ജീകരണത്തില്‍ SELinux ക്രമീകരിയ്ക്കുക +Comment[mr]=ग्राफिकल सेटिंगमध्ये SELinux संरचीत करा +Comment[nl]=Configureer SELinux in een grafische omgeving +Comment[or]=SELinux କୁ ଆଲେଖିକ ସଂରଚନାରେ ବିନ୍ୟାସ କରନ୍ତୁ +Comment[pa]=SELinux ਨੂੰ ਗਰਾਫੀਕਲ ਸੈਟਿੰਗ ਵਿੱਚ ਸੰਰਚਿਤ ਕਰੋ +Comment[pl]=Konfiguracja SELinuksa w trybie graficznym +Comment[pt]=Configurar o SELinux num ambiente gráfico +Comment[pt_BR]=Configure o SELinux em uma configuração gráfica +Comment[ru]=Настройка SELinux в графическом режиме +Comment[sv]=Konfigurera SELinux i en grafisk miljö +Comment[ta]=SELinuxஐ ஒரு வரைகலை அமைவில் கட்டமைக்கவும் +Comment[te]=SELinuxను గ్రాఫికల్ అమర్పునందు ఆకృతీకరించుము +Comment[uk]=Засіб для налаштування SELinux з графічним інтерфейсом +Comment[zh_CN]=在图形设置中配置 SELinux +Comment[zh_TW]=在圖形話設定中配置 SELinux +StartupNotify=true +Icon=system-config-selinux +Exec=system-config-selinux +Type=Application +Terminal=false +Categories=System;Security;Settings; \ No newline at end of file diff --git a/system-config-selinux.pam b/system-config-selinux.pam new file mode 100644 index 0000000..7425442 --- /dev/null +++ b/system-config-selinux.pam @@ -0,0 +1,8 @@ +#%PAM-1.0 +auth sufficient pam_rootok.so +auth sufficient pam_timestamp.so +auth include common-auth +session required pam_permit.so +session optional pam_xauth.so +session optional pam_timestamp.so +account required pam_permit.so diff --git a/system-config-selinux.png b/system-config-selinux.png new file mode 100644 index 0000000..2f0dd51 --- /dev/null +++ b/system-config-selinux.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1486b39b31a4b39f51c00514223cdf84a3722c625a2347ac3411ab1edc76d20a +size 1447