From: Petr Lautrbach <plautrba@redhat.com>
To: selinux@vger.kernel.org
Subject: ANN: SELinux userspace release 2020-07-10 / 3.1
Date: Fri, 10 Jul 2020 18:20:34 +0200 [thread overview]
Message-ID: <20200710162034.GC1768200@localhost.localdomain> (raw)
[-- Attachment #1: Type: text/plain, Size: 12800 bytes --]
The 2020-07-10 / 3.1 release for the SELinux userspace is now
available at:
https://github.com/SELinuxProject/selinux/wiki/Releases
Thanks to all the contributors to this release!
User-visible changes
--------------------
* selinux/flask.h, selinux/av_permissions.h and sepol/policydb/flask.h were removed
The flask.h and av_permissions.h header files were deprecated and
all selinux userspace references to them were removed in
commit 76913d8adb61b5 ("Deprecate use of flask.h and av_permissions.h.")
back in 2014 and included in the 20150202 / 2.4 release.
All userspace object managers should have been updated
to use the dynamic class/perm mapping support since that time.
Remove these headers finally to ensure that no users remain and
that no future uses are ever introduced.
Use string_to_security_class(3) and string_to_av_perm(3) to map the class and
permission names to their policy values, or selinux_set_mapping(3) to create a
mapping from class and permission index values used by the application to the
policy values.
* Removed restrictions in libsepol and checkpolicy that required all declared
initial SIDs to be assigned a context.
* Support for new policy capability genfs_seclabel_symlinks
* New `setfiles -E` option - treat conflicting specifications as errors, such
as where two hardlinks for the same inode have different contexts.
* `restorecond_user.service` - new systemd user service which runs `restorecond -u`
* `setsebool -V` reports errors from commit phase
* Improved man pages
* `semanage` uses ipaddress Python module instead of IPy
* matchpathcon related interfaces are deprecated
* selinuxfs is mounted with noexec and nosuid
* the dso wrappers for internal calls were removed and it is now strongly recommended to CFLAGS with
`-fno-semantic-interposition`
* `security_compute_user()` was deprecated
* checkpolicy treats invalid characters as an error - might break rare use cases (intentionally)
* New `restorecon -x` option which prevents it from crossing file system boundaries.
* Handle `semanage module` in semanage bash completion
* `sepolgen-ifgen` parses a gen_tunable statement as bool
* `semanage` handles getprotobyname() failure case on Debian where /etc/protocols does not contain an entry for "ipv4"
Packaging-relevant changes
--------------------------
* Setting CFLAGS during the make process will cause the omission of many defaults. While the project strives
to provide a reasonable set of default flags, custom CFLAGS could break the build, or have other undesired
changes on the build output. Thus, be very careful when setting CFLAGS. CFLAGS that are encouraged to be
set when overriding are:
- -fno-semantic-interposition for gcc or compilers that do not do this. clang does this by default. clang-10 and up
will support passing this flag, but ignore it. Previous clang versions fail.
* `setup.py` builds can be customized using PYTHON_SETUP_ARGS, e.g. to for
Debian Python layout use: `make PYTHON_SETUP_ARGS=--install-layout=deb ...`
Development-relevant changes
----------------------------
* Improved README which was renamed to README.md and converted to markdown.
* Added Travis CI job to run SELinux kernel testsuite on latest Fedora cloud image
Issues fixed
------------
* https://github.com/SELinuxProject/selinux/issues/248
* https://github.com/SELinuxProject/selinux/issues/239
* https://github.com/SELinuxProject/selinux/issues/237
* https://github.com/SELinuxProject/selinux/issues/225
* https://github.com/SELinuxProject/selinux/issues/217
* https://github.com/SELinuxProject/selinux/issues/208
* https://github.com/SELinuxProject/selinux/issues/204
* https://github.com/SELinuxProject/selinux/issues/187
* https://github.com/SELinuxProject/selinux/issues/179
* https://github.com/SELinuxProject/selinux/issues/164
* https://github.com/SELinuxProject/selinux/issues/70
* https://github.com/SELinuxProject/selinux/issues/28
A shortlog of changes since the 3.1 release
-------------------------------------------
Adam Duskett (1):
Fix building against musl and uClibc libc libraries.
Andrej Shadura (1):
checkpolicy: Minor tweaks to the names of the contributors to the manpages
Antoine Tenart (1):
policycoreutils: setfiles: do not restrict checks against a binary policy
Chris PeBenito (2):
libselinux: Add selinux_restorecon option to treat conflicting specifications as an error.
setfiles: Add -E option to treat conflicting specifications as errors.
Christian Göttsche (13):
libsepol: add support for new polcap genfs_seclabel_symlinks
libselinux: drop error return from is_selinux_enabled documentation
libsepol: set correct second argument of (t1 == t2) constraint
checkpolicy: add missing forward declaration
tree-wide: replace last occurrences of security_context_t
tree-wide: use python module importlib instead of the deprecated imp
libsemanage: clarify handle-unknown configuration setting in man page
semodule: mention ignoredirs setting in genhomedircon man page
libselinux: mark security_context_t typedef as deprecated
tree-wide: introduce PYTHON_SETUP_ARGS to customize setup.py calls on Debian
sepolgen: parse gen_tunable as bool
refparser: add missing newline after error message
sepolgen-ifgen: refactor default policy path retrieval
Daniel Burgener (2):
checkpolicy: Treat invalid characters as an error
checkpolicy: Add --werror flag to checkmodule and checkpolicy to treat warnings as errors.
Dominick Grift (1):
mcstrans: start early and stop late
James Carter (14):
libsepol/cil: Fix bug in cil_copy_avrule() in extended permission handling
libsepol/cil: Rewrite verification of map classes and classpermissionsets
libsepol: Create the macro ebitmap_is_empty() and use it where needed
libsepol/cil: Check if name is a macro parameter first
libsepol/cil: Do not check flavor when checking for duplicate parameters
Revert "libsepol/cil: raise default attrs_expand_size to 2"
libsepol/cil: Initialize the multiple_decls field of the cil db
libsepol/cil: Return error when identifier declared as both type and attribute
libsepol: Fix type alias handling in kernel_to_cil
libsepol: Fix type alias handling in kernel_to_conf
libsepol: Write CIL default MLS rules on separate lines
libsepol: Improve writing CIL sensitivity rules
libsepol: Improve writing CIL category rules
libsepol: Sort portcon rules consistently
Ji Qin (1):
libselinux: Fix NULL pointer use in selinux_restorecon_set_sehandle
Jonathan Lebon (1):
setfiles: clarify documented path resolution behaviour
Joshua Schmidlkofer (1):
python/semanage: check variable type of port before trying to split
Mikhail Novosyolov (1):
libselinux: Fix Ru translation of failsafe context
Nick Kralevich (1):
label_file.c: Fix MAC build
Nicolas Iooss (16):
libsepol: make ebitmap_cardinality() of linear complexity
libselinux: add missing glue code to grab errno in Python bindings
libselinux: copy the reason why selinux_status_open() returns 1
libselinux: make context_*_set() return -1 when an error occurs
libselinux/utils: remove unneeded variable in Makefile
libselinux,libsemanage: remove double blank lines
python/semanage: check rc after getting it
restorecond: migrate to GDbus API provided by glib-gio
restorecond: add systemd user service
restorecond/user: handle SIGTERM properly
libsepol/tests: drop ncurses dependency
README: add much useful information
scripts/env_use_destdir: fix Fedora support
scripts/env_use_destdir: propagate PREFIX, LIBDIR, BINDIR, etc.
Travis-CI: upgrade to Ubuntu 18.04 and latest releases of Python and Ruby
python/sepolicy: silence new flake8 warnings
Ondrej Mosnacek (16):
libsepol: fix CIL_KEY_* build errors with -fno-common
libsepol: remove leftovers of cil_mem_error_handler
checkpolicy: remove unused te_assertions
Makefile: always build with -fno-common
libsemanage: preserve parent Makefile's flags in debug mode
Travis-CI: test that DEBUG build works
libsepol/cil: remove unnecessary hash tables
libsepol: cache ebitmap cardinality value
libsepol, newrole: remove unused hashtab functions
libsepol: grow hashtab dynamically
Revert "libsepol: cache ebitmap cardinality value"
libsepol/cil: raise default attrs_expand_size to 2
secilc: add basic test for policy optimization
libsepol: skip unnecessary check in build_type_map()
libsepol: optimize inner loop in build_type_map()
libsepol: speed up policy optimization
Peter Whittaker (1):
Add restorecon -x option to not cross FS boundaries
Petr Lautrbach (12):
libselinux: Eliminate use of security_compute_user()
Convert README to README.md
python/semanage: Use ipaddress module instead of IPy
restorecond: Rename restorecond-user.service to restorecond_user.service
restorecond: Use pkg-config to get locations for systemd units
semanage/test-semanage.py: Return non-zero value when some of unittest tests fail
run-flake8: Filter out ./.git/ directory
secilc: Fix policy optimization test
Update VERSIONs to 3.1-rc1 for release.
python/sepolicy: Use xml.etree.ElementTree.Element.iter()
Update VERSIONs to 3.1-rc2 for release.
Update VERSIONs and Python bindings version to 3.1 for release
Richard Filo (1):
libselinux: Add missing errno setup
Stephen Smalley (9):
libselinux: remove flask.h and av_permissions.h
libselinux: update man pages for userspace policy enforcers
libselinux: export flush_class_cache(), call it on policyload
libsepol,checkpolicy: support omitting unused initial sid contexts
libselinux: deprecate security_compute_user(), update man pages
libsepol,checkpolicy: remove use of hardcoded security class values
libsemanage: fsync final files before rename
libsepol: drop broken warning on duplicate filename transitions
libselinux: fix selinux_restorecon() statfs bug
Topi Miettinen (8):
setsebool: report errors from commit phase
libselinux: mount selinuxfs noexec and nosuid
sepolicy-gui: fix columns in transitions view
sepolicy: fix some typos and port definitions
secilc/docs: fix use of TMPDIR
semanage bash completion: handle semanage module
semanage-node.8: describe netmask
semanage: handle getprotobyname() failure case
William Roberts (37):
dso: drop hidden_proto and hidden_def
Makefile: add -fno-semantic-interposition
Makefile: add linker script to minimize exports
libselinux: drop symbols from map
libsepol/dso: drop hidden_proto and hidden_def
libsepol/Makefile: add -fno-semantic-interposition
libsepol: remove wild cards in mapfile
cil: drop remaining dso.h include
libsemanage: drop hidden
libsemanage/Makefile: add -fno-semantic-interposition
libsemanage: update linker script
libsemanage: cleanup linker map file
cil: rm dead dso.h file
cil: re-enable DISABLE_SYMVER define
libsemanage: fix linker script symbol versions
libsemanage: rm semanage_module_upgrade_info from map
security_load_booleans: update return comment
security_load_booleans: annotate deprecated
selinux_booleans_path: annotate deprecated
selinux_users_path: annotate deprecated
rpm_execcon: annotate deprecated
sidget: annotate deprecated
sidput: annotate deprecated
checkPasswdAccess: annotate deprecated
matchpathcon_init: annotate deprecated
matchpathcon_fini: annotate deprecated
matchpathcon: annotate deprecated
avc_init: annotate deprecated
avc: create internal avc_init interface
matchpathcon: create internal matchpathcon_fini interface
selinux_check_passwd_access: annotate deprecated
matchpathcon: allow use of deprecated routines
utils: matchpathcon add deprecated warning
Makefile: swig build allow deprecated functions
ci: run SELinux kernel test suite
ci: dont use hardcoded project name
README: start a section for documenting CFLAGS
bauen1 (1):
mcstransd: fix memory leak in new_context_str
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
reply other threads:[~2020-07-10 16:21 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200710162034.GC1768200@localhost.localdomain \
--to=plautrba@redhat.com \
--cc=selinux@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).