Commit Graph

827 Commits

Author SHA1 Message Date
Anatol Belski
a5938609e1 libselinux-python: Fix build error due to missing target config
This fixes the error below:

gcc: error: unrecognized command line option
‘-fmacro-prefix-map=/path/to/build/libselinux-python/3.0-r0=/usr/src/debug/libselinux-python/3.0-r0’

Without inheriting the config, supposedly a wrong compiler is used.

Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2021-03-17 08:18:50 -04:00
Joe MacDonald
36db146d56 Final branch for gatesgarth
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-11-09 10:33:17 -05:00
Anibal Limon
be95d6f88c conf/layer.conf: Bump to gatesgarth
Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-10-24 19:39:07 -04:00
Yi Zhao
6e1100d29a refpolicy: update file context for ifconfig
The ifconfig was moved from sbin to bin with oe-core commit:
c9caff40ff61c08e24a84922f8d7c8e9cdf8883e. Update the file context for
it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-23 14:34:46 -04:00
Yi Zhao
4e7a501cb6 selinux-*.service: install to sysinit.target
The selinux-init/autorelabel/labeldev services have a constraint of
Before=sysinit.arget. So it is better to install them to sysinit.target
rather than multi-user.target.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-23 14:34:46 -04:00
Yi Zhao
c10f86479f selinux-*.bb: fix typos
Fixes:
${PN}_RDEPENDS -> RDEPENDS_${PN}

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-23 14:34:46 -04:00
Yi Zhao
547d9be873 net-tools: drop patch
The netstat-selinux-support.patch has been merged upstream. So drop it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-23 14:34:46 -04:00
Chen Qi
affabe52d9 dhcp: remove bbappend file
dhcp has been removed, thus removing its bbappend file.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-18 18:44:05 -04:00
Alex Kiernan
a604e350e7 audit: Backport gcc10 fix for common default
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-18 18:40:10 -04:00
Oleksii Miroshko
500578b2c2 setools: Add native support
Enable using setools for analyzing the built SELinux policy
during the build.

Signed-off-by: Oleksii Miroshko <miroshko@gmail.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-09-18 18:40:10 -04:00
Yi Zhao
15fed8756a refpolicy: update to 20200229+git
* Drop obsolete and unused patches.
* Rebase patches.
* Add patches to make systemd and sysvinit can work with all policy types.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-07-14 18:56:06 -04:00
Yi Zhao
7d3b1347ae sysklogd: set correct security context for /var/log in initscript
We don't need to set security context for /dev/log after syslogd daemon
startup because it is already set by udev. We just need to set the
correct security context for symbolic link /var/log before syslogd
startup.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-07-14 18:56:06 -04:00
Yi Zhao
8b79480663 audit: set correct security context for /var/log/audit
By default /var/log is a symbolic link of /var/volatile/log. But
restorecon does not follow symbolic links then we will encounter the
following error when set /var/log/audit directory:

$ /sbin/restorecon -F /var/log/audit
/sbin/restorecon: SELinux: Could not get canonical path for /var/log/audit restorecon: Permission denied.

Use readlink to find the real path before set security context.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-07-14 18:56:06 -04:00
Yi Zhao
9e986d7d79 refpolicy: remove version 2.20190201
There is no need to maintain two versions of repolicy. Drop this version
and only keep the git version.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-07-14 18:56:06 -04:00
Mingli Yu
7af62c91d7 checkpolicy: remove unused te_assertions
Backport a patch to remove unused te_assertions to fix the
build failure on fedora 32.

Fixes:
 | /build/tmp-glibc/hosttools/ld: policy_define.o:(.bss+0x28): multiple definition of `te_assertions'/build/tmp-glibc/hosttools/ld: policy_define.o:(.bss+0x28): multiple definition of `te_assertions'; y.tab.o:(.bss+0x18): first defined here
 | collect2: error: ld returned 1 exit status
 | make: *** [Makefile:33: checkpolicy] Error 1

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-07-13 19:04:46 -04:00
Yi Zhao
db2135de10 libsepol: fix build errors on Fedora 32
Backport 2 patches to fix the build errors on Fedora 32.

Fixes:
[snip]
../cil/src/cil_verify.lo:(.bss+0x4f0): multiple definition of `CIL_KEY_CONS_T3';
../cil/src/cil_verify.lo:(.bss+0x4f8): multiple definition of `CIL_KEY_CONS_T2';
../cil/src/cil_verify.lo:(.bss+0x500): multiple definition of `CIL_KEY_CONS_T1';
../cil/src/cil_verify.lo:(.bss+0x508): multiple definition of `cil_mem_error_handler';
[snip]

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-06-15 08:04:04 -04:00
Changqing Li
f677a09992 libselinux-python: Fix one invalid link
when host arch and target arch are different, the extension
suffix of host is different with target one, so there will
be a invalid link.  Fix by update the way to create the link.

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2020-04-30 10:46:24 -04:00
Yi Zhao
c014a0763a semodule-utils: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
7ee74198d2 selinux-gui: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
e7be403429 selinux-sandbox: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
70b32c88db selinux-dbus: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
cc47ebe09e selinux-python: upgrade to 3.0 (20191204)
Refresh fix-sepolicy-install-path.patch.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
b671291f7e restorecond: upgrade to 3.0 (20191204)
Fix typo in patch.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
d1e44cf90a mcstrans: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
8e76f3a098 policycoreutils: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
b09edecd92 secilc: upgrade to 3.0 (20191204)
License-Update: fix misspellings

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
c1ed59c931 checkpolicy: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
4ca0557476 libsemanage: upgrade to 3.0 (20191204)
* Refresh libsemanage-allow-to-disable-audit-support.patch
* Fix typos in patches.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
65086a9972 libselinux-python: upgrade to 3.0 (20191204)
* Inherit python3native as the libselinux uses python distutils to install
  selinux python bindings now.
* Add a patch to fix python modules install path for multilib.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:16 -04:00
Yi Zhao
a1db7a9925 libselinux: upgrade to 3.0 (20191204)
* Backport a patch to fix build failure with musl.
* Fix typos in patches.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:15 -04:00
Yi Zhao
1735987a64 libsepol: upgrade to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:15 -04:00
Yi Zhao
60126271a5 selinux: upgrade inc files to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:15 -04:00
Yi Zhao
8b3efbf23d setools: upgrade 4.2.2 -> 4.3.0
Remove __pycache__ directories when do_install.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-15 14:58:15 -04:00
Yi Zhao
9352f8604c bind: install volatiles file with correct name
Install volatiles file as 04_bind rather than volatiles.04_bind.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-07 09:28:04 -04:00
Yi Zhao
43cb7c2d1b eudev: remove udev-cache and sync the initscript to latest oe-core version
The udev-cache has been remove in oe-core commit
048f4149b8438c521e8b65a3c96d850a9b4a3e5b. So we can also remove it.

Also sync the initscript to latest oe-core version.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-07 09:28:04 -04:00
Yi Zhao
de13a3ee27 sysklogd: sync the initscript to latest oe-core version
The sysklogd has been updated to 2.1.1 in oe-core and the klogd was
removed from this version since syslogd performs logging of kernel
messages. So we update the initscript to adapt it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-07 09:28:04 -04:00
Joe MacDonald
1e2fdbe71e clean up getVar() usage
83eac4de updated the usage of getVar() in classes/selinux.bbclass to
leave out the default expand parameter. This is consistent with the
usage in the core layers.

Bring all other calls to getVar() in the layer into alignment with this
approach.

Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-03 08:48:01 -04:00
Yi Zhao
b7a4511068 layer.conf: update LAYERSERIES_COMPAT for dunfell
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-03 08:39:07 -04:00
Yi Zhao
83eac4de1a selinux.bbclass: remove True option in getVar()
The getVar() defaults to expanding by default, thus remove the True
option from all getVar() calls.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-04-03 08:39:07 -04:00
Yi Zhao
03baa60e37 linux-yocto: drop 4.x bbappend
The linux-yocto 4.x recipes have been dropped in oe-core. We can remove
the bbappend.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-02-26 08:11:16 -05:00
Mingli Yu
6257da999f audit: add clock_settime64 syscall
On 32bit system,
After upgrade glibc to 2.31
 # strace -o /tmp/test.log date -s 09:16:45
 # tail -f /tmp/test.log
 close(3)                                = 0
 stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=114, ...}) = 0
 clock_settime64(CLOCK_REALTIME, {tv_sec=1582103805, tv_nsec=0}) = 0
 fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(0x4, 0x40), ...}) = 0
 ioctl(1, TCGETS, {B115200 opost isig icanon echo ...}) = 0
 write(1, "Wed Feb 19 09:16:45 UTC 2020\n", 29) = 29
 close(1)                                = 0
 close(2)                                = 0
 exit_group(0)                           = ?
 +++ exited with 0 +++

It means the clock_settime64 syscall is used, so
add the syscall.

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-02-19 09:02:01 -05:00
Jeremy Puhlman
dc8c5e90ec findutils: make append generic
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-01-30 21:46:58 -05:00
Jeremy Puhlman
f32f21de44 python: move appends to a dynamic-layer
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2020-01-30 21:46:58 -05:00
Yi Zhao
6e18bc43d2 audit: fix host contamination for swig
The audit build uses swig to generate a python wrapper. But there is a
hardcoded include directory in auditswig.i, which causes header files on
the host to be used when building. This will cause build error on some
old systems. e.g. on CentOS7 with buildtools:
  audit_wrap.c: In function '_wrap_audit_rule_flags_set':
  audit_wrap.c:5018:19: error: dereferencing pointer to incomplete type 'struct audit_rule'
  5018  if (arg1) (arg1)->flags = arg2;
        ^~

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-30 23:10:43 -05:00
Yi Zhao
8ce3dccfda selinux-initsh.inc: install selinux-init.sh and selinux-labeldev.sh when using systemd
The commit 5fd3c5b71e introduced an issue
that selinux-init.sh and selinux-labeldev.sh are not installed when
using systemd which will cause the selinux-ini.service and
selinux-labeldev.service fail to startup. Move the do_install codes from
selinux-autorelabel to selinux-initsh.inc to make sure install these
scripts when using systemd.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-30 23:10:43 -05:00
Yi Zhao
557d807edd MAINTAINERS: update maintainer
Add Yi Zhao as the maintainer.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-24 09:30:38 -05:00
Yi Zhao
555cbd0243 refpolicy: switch to python3
* Switch to python3
* Update policy-version to 31 to match selinux 2.9

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-24 09:24:15 -05:00
Yi Zhao
c966bce553 refpolicy: add UPSTREAM_CHECK_GITTAGREGEX
Add UPSTREAM_CHECK_GITTAGREGEX to make devtool check-upgrade-status
works.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-24 09:24:15 -05:00
Yi Zhao
26169b168f libsemanage: fix race issue in parallel build
The install-pywarp target doesn't depend on swigify target because the
semanage.py is not generated by swigify target but pywrap target.
Here is the dependency chain:
  install-pywrap -> pywrap -> $(SWIGSO) -> $(SWIGLOBJ) -> $(SWIGCOUT)
  -> semanage.py

But in the recipe, the swigify target is added explicitly in do_install:
  do_install_append() {
    oe_runmake install-pywrap swigify \
    [snip]
  }

This target will regenerate the semanage.py when do_install. So there
will be a potential race issue in parallel build. The install-pywrap
target is trying to install semanage.py when swigify target is
generating the file. Then an empty semanage.py will be installed. Remove
the target swigify to fix this issue.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-24 09:16:06 -05:00
Yi Zhao
7920e470c6 libselinux-python: fix race issue in parallel build
The install-pywarp target doesn't depend on swigify target because the
selinux.py is not generated by swigify target but pywrap target.
Here is the dependency chain:
  install-pywrap -> pywrap -> $(SWIGFILES) -> $(SWIGPYOUT) -> $(SWIGCOUT)
  -> selinux.py

But in the recipe, the swigify target is added explicitly in do_install:
  do_install_append() {
    oe_runmake install-pywrap swigify \
    [snip]
  }

This target will regenerate the selinux.py when do_install. So there
will be a potential race issue in parallel build. The install-pywrap
target is trying to install selinux.py when swigify target is generating
the file. Then an empty selinux.py will be installed. Remove the target
swigify to fix this issue.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2019-12-24 09:16:06 -05:00