diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/coreos-kernel.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/coreos-kernel.eclass index 5d59e56ddf..23fac31698 100644 --- a/sdk_container/src/third_party/coreos-overlay/eclass/coreos-kernel.eclass +++ b/sdk_container/src/third_party/coreos-overlay/eclass/coreos-kernel.eclass @@ -18,7 +18,7 @@ HOMEPAGE="http://www.kernel.org" LICENSE="GPL-2 freedist" SLOT="0/${PVR}" SRC_URI="" -IUSE="selinux" +IUSE="audit selinux" DEPEND="=sys-kernel/coreos-sources-${COREOS_SOURCE_VERSION} sys-kernel/bootengine:=" @@ -139,6 +139,10 @@ coreos-kernel_src_prepare() { } coreos-kernel_src_configure() { + if ! use audit; then + sed -i -e '/^CONFIG_CMDLINE=/s/"$/ audit=0"/' \ + "${KBUILD_OUTPUT}/.config" || die + fi if ! use selinux; then sed -i -e '/CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE/d' \ "${KBUILD_OUTPUT}/.config" || die diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/targets/generic/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/targets/generic/package.use index b8ed7f9a87..ba5b3db9e7 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/targets/generic/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/targets/generic/package.use @@ -23,7 +23,7 @@ sys-libs/pam -berkdb sys-libs/gdbm berkdb # enable journal gateway and container features, avoid pulling in gnutls -sys-apps/systemd importd http nat -ssl +sys-apps/systemd audit importd http nat -ssl net-libs/libmicrohttpd -ssl sys-boot/syslinux -custom-cflags @@ -35,3 +35,6 @@ dev-util/pkgconfig internal-glib # minimize risk removing unneeded patches and networking support app-shells/bash -net vanilla + +# enable audit subsystem by default +sys-kernel/coreos-kernel audit diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/files/amd64_defconfig-4.0 b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/files/amd64_defconfig-4.0 index 8bad3406d9..bdb2880d97 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/files/amd64_defconfig-4.0 +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/files/amd64_defconfig-4.0 @@ -97,7 +97,7 @@ CONFIG_CRASH_DUMP=y CONFIG_KEXEC_JUMP=y CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_CMDLINE_BOOL=y -CONFIG_CMDLINE="init=/usr/lib/systemd/systemd rootflags=rw mount.usrflags=ro audit=0" +CONFIG_CMDLINE="init=/usr/lib/systemd/systemd rootflags=rw mount.usrflags=ro" CONFIG_HIBERNATION=y # CONFIG_ACPI_AC is not set # CONFIG_ACPI_BATTERY is not set diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/Manifest new file mode 100644 index 0000000000..2ce946e40e --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/Manifest @@ -0,0 +1 @@ +DIST audit-2.4.3.tar.gz 998974 SHA256 9c914704fecc602e143e37152f3efbab2469692684c1a8cc1b801c1b49c7abc6 SHA512 2bbaa11ed5e2d8138711df325ec1997c4eb955123699fd330b5272b7f3475ca61c9753e1c103abfc9c49e1fc8aaf52dbd55545e3f1874214979ddece64ad79aa WHIRLPOOL 1a0c0a273fddc49d15322a2423d4038488738d6597d0641182befab91646355bbee393a5d09d446dc4cf2f4579dd7ea99928cadd77bc72c355db0a10d4964da5 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/audit-2.4.3.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/audit-2.4.3.ebuild new file mode 100644 index 0000000000..81bb48a8a6 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/audit-2.4.3.ebuild @@ -0,0 +1,195 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-process/audit/audit-2.4.3.ebuild,v 1.1 2015/07/27 18:23:11 perfinion Exp $ + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_3,3_4} ) + +inherit autotools multilib multilib-minimal toolchain-funcs python-r1 linux-info eutils systemd + +DESCRIPTION="Userspace utilities for storing and processing auditing records" +HOMEPAGE="http://people.redhat.com/sgrubb/audit/" +SRC_URI="http://people.redhat.com/sgrubb/audit/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="daemon ldap python" +# Testcases are pretty useless as they are built for RedHat users/groups and +# kernels. +RESTRICT="test" + +RDEPEND="ldap? ( net-nds/openldap ) + sys-apps/diffutils + sys-libs/libcap-ng" +DEPEND="${RDEPEND} + python? ( ${PYTHON_DEPS} + dev-lang/swig ) + >=sys-kernel/linux-headers-2.6.34" +# Do not use os-headers as this is linux specific + +REQUIRED_USE="ldap? ( daemon ) + python? ( ${PYTHON_REQUIRED_USE} )" + +CONFIG_CHECK="~AUDIT" + +pkg_setup() { + linux-info_pkg_setup +} + +src_prepare() { + epatch_user + + # Don't build static version of Python module. + epatch "${FILESDIR}"/${PN}-2.4.3-python.patch + + # glibc/kernel upstreams suck with both defining ia64_fpreg + # This patch is a horribly workaround that is only valid as long as you + # don't need the OTHER definitions in fpu.h. + epatch "${FILESDIR}"/${PN}-2.1.3-ia64-compile-fix.patch + + if ! use daemon; then + sed -e '/^SUBDIRS =/s/audisp//' \ + -i Makefile.am || die + sed -e '/${DESTDIR}${initdir}/d' \ + -e '/${DESTDIR}${legacydir}/d' \ + -i init.d/Makefile.am || die + sed -e '/^sbin_PROGRAMS =/s/auditd//' \ + -e '/^sbin_PROGRAMS =/s/aureport//' \ + -e '/^sbin_PROGRAMS =/s/ausearch//' \ + -i src/Makefile.am || die + fi + + # Regenerate autotooling + eautoreconf +} + +multilib_src_configure() { + local ECONF_SOURCE=${S} + econf \ + --sbindir=/sbin \ + --enable-systemd \ + $(use_enable ldap zos-remote) \ + --without-golang \ + --without-python \ + --without-python3 + + if multilib_is_native_abi; then + python_configure() { + mkdir -p "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + + if python_is_python3; then + econf --without-python --with-python3 + else + econf --with-python --without-python3 + fi + } + + use python && python_foreach_impl python_configure + fi +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + + python_compile() { + local pysuffix pydef + if python_is_python3; then + pysuffix=3 + pydef='USE_PYTHON3=true' + else + pysuffix=2 + pydef='HAVE_PYTHON=true' + fi + + emake -C "${BUILD_DIR}"/bindings/swig \ + VPATH="${native_build}/lib" \ + LIBS="${native_build}/lib/libaudit.la" \ + _audit_la_LIBADD="${native_build}/lib/libaudit.la" \ + _audit_la_DEPENDENCIES="${S}/lib/libaudit.h ${native_build}/lib/libaudit.la" \ + ${pydef} + emake -C "${BUILD_DIR}"/bindings/python/python${pysuffix} \ + VPATH="${S}/bindings/python/python${pysuffix}:${native_build}/bindings/python/python${pysuffix}" \ + auparse_la_LIBADD="${native_build}/auparse/libauparse.la ${native_build}/lib/libaudit.la" \ + ${pydef} + } + + local native_build="${BUILD_DIR}" + use python && python_foreach_impl python_compile + else + emake -C lib + emake -C auparse + fi +} + +multilib_src_install() { + if multilib_is_native_abi; then + emake DESTDIR="${D}" initdir="$(systemd_get_unitdir)" install + + python_install() { + local pysuffix pydef + if python_is_python3; then + pysuffix=3 + pydef='USE_PYTHON3=true' + else + pysuffix=2 + pydef='HAVE_PYTHON=true' + fi + + emake -C "${BUILD_DIR}"/bindings/swig \ + VPATH="${native_build}/lib" \ + LIBS="${native_build}/lib/libaudit.la" \ + _audit_la_LIBADD="${native_build}/lib/libaudit.la" \ + _audit_la_DEPENDENCIES="${S}/lib/libaudit.h ${native_build}/lib/libaudit.la" \ + ${pydef} \ + DESTDIR="${D}" install + emake -C "${BUILD_DIR}"/bindings/python/python${pysuffix} \ + VPATH="${S}/bindings/python/python${pysuffix}:${native_build}/bindings/python/python${pysuffix}" \ + auparse_la_LIBADD="${native_build}/auparse/libauparse.la ${native_build}/lib/libaudit.la" \ + ${pydef} \ + DESTDIR="${D}" install + } + + local native_build=${BUILD_DIR} + use python && python_foreach_impl python_install + + # things like shadow use this so we need to be in / + gen_usr_ldscript -a audit auparse + else + emake -C lib DESTDIR="${D}" install + emake -C auparse DESTDIR="${D}" install + fi +} + +multilib_src_install_all() { + dodoc AUTHORS ChangeLog README* THANKS TODO + docinto contrib + dodoc contrib/{*.rules,avc_snap,skeleton.c} + + if use daemon; then + docinto contrib/plugin + dodoc contrib/plugin/* + + newinitd "${FILESDIR}"/auditd-init.d-2.1.3 auditd + newconfd "${FILESDIR}"/auditd-conf.d-2.1.3 auditd + + [ -f "${D}"/sbin/audisp-remote ] && \ + dodir /usr/sbin && \ + mv "${D}"/{sbin,usr/sbin}/audisp-remote || die + + # audit logs go here + keepdir /var/log/audit/ + fi + + insinto /usr/share/audit/rules.d + doins "${FILESDIR}"/rules.d/*.rules + + systemd_newtmpfilesd "${FILESDIR}"/audit-rules.tmpfiles audit-rules.conf + systemd_dounit "${FILESDIR}"/audit-rules.service + systemd_enable_service multi-user.target audit-rules.service + + prune_libtool_files --modules +} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.1.3-ia64-compile-fix.patch b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.1.3-ia64-compile-fix.patch new file mode 100644 index 0000000000..3ec60fbc48 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.1.3-ia64-compile-fix.patch @@ -0,0 +1,212 @@ +diff -Nuar -X exclude audit-2.1.3.orig/configure.ac audit-2.1.3/configure.ac +--- audit-2.1.3.orig/configure.ac 2011-08-15 17:30:58.000000000 +0000 ++++ audit-2.1.3/configure.ac 2012-12-18 20:03:22.000000000 +0000 +@@ -79,6 +79,9 @@ + esac + fi + ++AC_CHECK_HEADER([asm/ptrace.h], [AC_DEFINE([HAVE_ASM_PTRACE_H],[],[Define to 1 if you have asm/ptrace.h])], []) ++AC_CHECK_HEADER([linux/ptrace.h], [AC_DEFINE([HAVE_LINUX_PTRACE_H],[],[Define to 1 if you have linux/ptrace.h])], []) ++ + #gssapi + AC_ARG_ENABLE(gssapi_krb5, + [AS_HELP_STRING([--enable-gssapi-krb5],[Enable GSSAPI Kerberos 5 support @<:@default=no@:>@])], +diff -Nuar -X exclude audit-2.1.3.orig/src/auditctl.c audit-2.1.3/src/auditctl.c +--- audit-2.1.3.orig/src/auditctl.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditctl.c 2012-12-18 20:21:21.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include /* strdup needs xopen define */ +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-config.c audit-2.1.3/src/auditd-config.c +--- audit-2.1.3.orig/src/auditd-config.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-config.c 2012-12-18 20:21:23.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-dispatch.c audit-2.1.3/src/auditd-dispatch.c +--- audit-2.1.3.orig/src/auditd-dispatch.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-dispatch.c 2012-12-18 20:21:27.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-event.c audit-2.1.3/src/auditd-event.c +--- audit-2.1.3.orig/src/auditd-event.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-event.c 2012-12-18 20:21:29.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-listen.c audit-2.1.3/src/auditd-listen.c +--- audit-2.1.3.orig/src/auditd-listen.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-listen.c 2012-12-18 20:21:31.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-reconfig.c audit-2.1.3/src/auditd-reconfig.c +--- audit-2.1.3.orig/src/auditd-reconfig.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-reconfig.c 2012-12-18 20:21:33.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd-sendmail.c audit-2.1.3/src/auditd-sendmail.c +--- audit-2.1.3.orig/src/auditd-sendmail.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd-sendmail.c 2012-12-18 20:21:34.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include // for access() + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/auditd.c audit-2.1.3/src/auditd.c +--- audit-2.1.3.orig/src/auditd.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/auditd.c 2012-12-18 20:21:38.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/autrace.c audit-2.1.3/src/autrace.c +--- audit-2.1.3.orig/src/autrace.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/autrace.c 2012-12-18 20:21:43.000000000 +0000 +@@ -21,6 +21,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/src/delete_all.c audit-2.1.3/src/delete_all.c +--- audit-2.1.3.orig/src/delete_all.c 2011-08-15 17:31:00.000000000 +0000 ++++ audit-2.1.3/src/delete_all.c 2012-12-18 20:21:48.000000000 +0000 +@@ -20,6 +20,7 @@ + * Steve Grubb + */ + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar -X exclude audit-2.1.3.orig/lib/fixup.h audit-2.1.3/lib/fixup.h +--- audit-2.1.3.orig/lib/fixup.h 1970-01-01 00:00:00.000000000 +0000 ++++ audit-2.1.3/lib/fixup.h 2012-12-18 20:21:02.000000000 +0000 +@@ -0,0 +1,17 @@ ++#ifndef _AUDIT_IA64_FIXUP_H_ ++#define _AUDIT_IA64_FIXUP_H_ ++ ++#ifdef __ia64__ /* what a pos */ ++# include ++# define _ASM_IA64_FPU_H ++#endif ++#include ++/* ++#ifdef HAVE_ASM_PTRACE_H ++# include ++#endif ++#ifdef HAVE_LINUX_PTRACE_H ++# include ++#endif ++*/ ++#endif +--- audit-2.1.3/src/ausearch.c 2012-12-22 03:09:54.000000000 +0000 ++++ audit-2.1.3/src/ausearch.c 2012-12-22 03:10:02.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar audit-2.1.3.orig/audisp/audispd.c audit-2.1.3/audisp/audispd.c +--- audit-2.1.3.orig/audisp/audispd.c 2011-08-15 17:30:59.000000000 +0000 ++++ audit-2.1.3/audisp/audispd.c 2012-12-22 03:25:15.000000000 +0000 +@@ -21,6 +21,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar audit-2.1.3.orig/audisp/plugins/prelude/audisp-prelude.c audit-2.1.3/audisp/plugins/prelude/audisp-prelude.c +--- audit-2.1.3.orig/audisp/plugins/prelude/audisp-prelude.c 2011-08-15 17:30:59.000000000 +0000 ++++ audit-2.1.3/audisp/plugins/prelude/audisp-prelude.c 2012-12-22 03:25:20.000000000 +0000 +@@ -21,6 +21,8 @@ + * + */ + ++#include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar audit-2.1.3.orig/audisp/plugins/remote/audisp-remote.c audit-2.1.3/audisp/plugins/remote/audisp-remote.c +--- audit-2.1.3.orig/audisp/plugins/remote/audisp-remote.c 2011-08-15 17:30:59.000000000 +0000 ++++ audit-2.1.3/audisp/plugins/remote/audisp-remote.c 2012-12-22 03:25:22.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + #include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar audit-2.1.3.orig/contrib/plugin/audisp-example.c audit-2.1.3/contrib/plugin/audisp-example.c +--- audit-2.1.3.orig/contrib/plugin/audisp-example.c 2011-08-15 17:31:02.000000000 +0000 ++++ audit-2.1.3/contrib/plugin/audisp-example.c 2012-12-22 03:25:27.000000000 +0000 +@@ -37,6 +37,8 @@ + */ + + #define _GNU_SOURCE ++#include "config.h" ++#include "fixup.h" + #include + #include + #include +diff -Nuar audit-2.1.3.orig/contrib/skeleton.c audit-2.1.3/contrib/skeleton.c +--- audit-2.1.3.orig/contrib/skeleton.c 2011-08-15 17:31:02.000000000 +0000 ++++ audit-2.1.3/contrib/skeleton.c 2012-12-22 03:25:40.000000000 +0000 +@@ -7,6 +7,8 @@ + * gcc skeleton.c -o skeleton -laudit + */ + ++#include "config.h" ++#include "fixup.h" + #include + #include + #include diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.4.3-python.patch b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.4.3-python.patch new file mode 100644 index 0000000000..7b9ea53e09 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-2.4.3-python.patch @@ -0,0 +1,46 @@ +diff -ur audit-2.4.3.orig/bindings/python/python2/Makefile.am audit-2.4.3/bindings/python/python2/Makefile.am +--- audit-2.4.3.orig/bindings/python/python2/Makefile.am 2015-07-22 23:35:24.315424091 +0800 ++++ audit-2.4.3/bindings/python/python2/Makefile.am 2015-07-22 23:37:16.861510504 +0800 +@@ -29,5 +29,6 @@ + + auparse_la_SOURCES = $(top_srcdir)/bindings/python/auparse_python.c + auparse_la_CPPFLAGS = -I$(top_srcdir)/auparse $(AM_CPPFLAGS) +-auparse_la_LDFLAGS = -module -avoid-version -Wl,-z,relro ++auparse_la_CFLAGS = -shared ++auparse_la_LDFLAGS = -module -avoid-version -shared -Wl,-z,relro + auparse_la_LIBADD = ${top_builddir}/auparse/libauparse.la ${top_builddir}/lib/libaudit.la +diff -ur audit-2.4.3.orig/bindings/python/python3/Makefile.am audit-2.4.3/bindings/python/python3/Makefile.am +--- audit-2.4.3.orig/bindings/python/python3/Makefile.am 2015-07-22 23:35:24.315424091 +0800 ++++ audit-2.4.3/bindings/python/python3/Makefile.am 2015-07-22 23:37:30.395400641 +0800 +@@ -28,5 +28,6 @@ + + auparse_la_SOURCES = $(top_srcdir)/bindings/python/auparse_python.c + auparse_la_CPPFLAGS = -I$(top_srcdir)/auparse $(AM_CPPFLAGS) +-auparse_la_LDFLAGS = -module -avoid-version -Wl,-z,relro ++auparse_la_CFLAGS = -shared ++auparse_la_LDFLAGS = -module -avoid-version -shared -Wl,-z,relro + auparse_la_LIBADD = ${top_builddir}/auparse/libauparse.la ${top_builddir}/lib/libaudit.la +diff -ur audit-2.4.3.orig/bindings/swig/python/Makefile.am audit-2.4.3/bindings/swig/python/Makefile.am +--- audit-2.4.3.orig/bindings/swig/python/Makefile.am 2015-07-22 23:35:24.316424083 +0800 ++++ audit-2.4.3/bindings/swig/python/Makefile.am 2015-07-22 23:35:53.244189263 +0800 +@@ -28,7 +28,7 @@ + pyexec_LTLIBRARIES = _audit.la + pyexec_SOLIBRARIES = _audit.so + _audit_la_CFLAGS = -shared +-_audit_la_LDFLAGS = -module -avoid-version -Wl,-z,relro ++_audit_la_LDFLAGS = -module -avoid-version -shared -Wl,-z,relro + _audit_la_HEADERS: $(top_builddir)/config.h + _audit_la_DEPENDENCIES =${top_srcdir}/lib/libaudit.h ${top_builddir}/lib/libaudit.la + _audit_la_LIBADD = $(top_builddir)/lib/libaudit.la +diff -ur audit-2.4.3.orig/bindings/swig/python3/Makefile.am audit-2.4.3/bindings/swig/python3/Makefile.am +--- audit-2.4.3.orig/bindings/swig/python3/Makefile.am 2015-07-22 23:35:24.316424083 +0800 ++++ audit-2.4.3/bindings/swig/python3/Makefile.am 2015-07-22 23:36:27.833908482 +0800 +@@ -29,7 +29,7 @@ + py3exec_LTLIBRARIES = _audit.la + py3exec_SOLIBRARIES = _audit.so + _audit_la_CFLAGS = -shared +-_audit_la_LDFLAGS = -module -avoid-version -Wl,-z,relro ++_audit_la_LDFLAGS = -module -avoid-version -shared -Wl,-z,relro + _audit_la_HEADERS: $(top_builddir)/config.h + _audit_la_DEPENDENCIES =${top_srcdir}/lib/libaudit.h ${top_builddir}/lib/libaudit.la + _audit_la_LIBADD = ${top_builddir}/lib/libaudit.la diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.service b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.service new file mode 100644 index 0000000000..8c54802fb5 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.service @@ -0,0 +1,16 @@ +[Unit] +Description=Load Security Auditing Rules +DefaultDependencies=no +After=local-fs.target systemd-tmpfiles-setup.service +Conflicts=shutdown.target +Before=sysinit.target shutdown.target +ConditionSecurity=audit + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/sbin/augenrules --load +ExecStop=-/sbin/auditctl -D + +[Install] +WantedBy=multi-user.target diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.tmpfiles b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.tmpfiles new file mode 100644 index 0000000000..2c15b63d23 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit-rules.tmpfiles @@ -0,0 +1,5 @@ +d /etc/audit - - - - - +d /etc/audit/rules.d - - - - - +L /etc/audit/rules.d/00-clear.rules - - - - /usr/share/audit/rules.d/00-clear.rules +L /etc/audit/rules.d/80-selinux.rules - - - - /usr/share/audit/rules.d/80-selinux.rules +L /etc/audit/rules.d/99-default.rules - - - - /usr/share/audit/rules.d/99-default.rules diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.post b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.post new file mode 100644 index 0000000000..34db08cdfc --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.post @@ -0,0 +1,13 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-process/audit/files/audit.rules.stop.post,v 1.1 2006/06/22 07:41:46 robbat2 Exp $ +# +# This file contains the auditctl rules that are loaded immediately after the +# audit deamon is stopped via the initscripts. +# The rules are simply the parameters that would be passed +# to auditctl. + +# Not used for the default Gentoo configuration as of v1.2.3 +# Paranoid security types might wish to reconfigure kauditd here. + +# vim:ft=conf: diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.pre b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.pre new file mode 100644 index 0000000000..c5fb4f9444 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/audit.rules.stop.pre @@ -0,0 +1,16 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-process/audit/files/audit.rules.stop.pre,v 1.2 2011/09/11 02:58:55 robbat2 Exp $ +# +# This file contains the auditctl rules that are loaded immediately before the +# audit deamon is stopped via the initscripts. +# The rules are simply the parameters that would be passed +# to auditctl. + +# auditd is stopping, don't capture events anymore +-D + +# Disable kernel generating audit events +-e 0 + +# vim:ft=conf: diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-conf.d-2.1.3 b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-conf.d-2.1.3 new file mode 100644 index 0000000000..b5f389eaf5 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-conf.d-2.1.3 @@ -0,0 +1,23 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-process/audit/files/auditd-conf.d-2.1.3,v 1.1 2011/09/11 02:58:55 robbat2 Exp $ + +# Configuration options for auditd +# -f for foreground mode +# There are some other options as well, but you'll have to look in the source +# code to find them as they aren't ready for use yet. +EXTRAOPTIONS='' + +# Audit rules file to run after starting auditd +RULEFILE_STARTUP=/etc/audit/audit.rules + +# Audit rules file to run before and after stopping auditd +RULEFILE_STOP_PRE=/etc/audit/audit.rules.stop.pre +RULEFILE_STOP_POST=/etc/audit/audit.rules.stop.post + +# If you want to enforce a certain locale for auditd, +# uncomment one of the next lines: +#AUDITD_LANG=none +AUDITD_LANG=C +#AUDITD_LANG=en_US +#AUDITD_LANG=en_US.UTF-8 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-init.d-2.1.3 b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-init.d-2.1.3 new file mode 100644 index 0000000000..6ac218d672 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/auditd-init.d-2.1.3 @@ -0,0 +1,97 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-process/audit/files/auditd-init.d-2.1.3,v 1.1 2011/09/11 02:58:55 robbat2 Exp $ + +extra_started_commands='reload reload_auditd reload_rules' +description='Linux Auditing System' +description_reload='Reload daemon configuration and rules' +description_reload_rules='Reload daemon rules' +description_reload_auditd='Reload daemon configuration' + +name='auditd' +pidfile='/var/run/auditd.pid' +command='/sbin/auditd' + +start_auditd() { + # Env handling taken from the upstream init script + if [ -z "$AUDITD_LANG" -o "$AUDITD_LANG" = "none" -o "$AUDITD_LANG" = "NONE" ]; then + unset LANG LC_TIME LC_ALL LC_MESSAGES LC_NUMERIC LC_MONETARY LC_COLLATE + else + LANG="$AUDITD_LANG" + LC_TIME="$AUDITD_LANG" + LC_ALL="$AUDITD_LANG" + LC_MESSAGES="$AUDITD_LANG" + LC_NUMERIC="$AUDITD_LANG" + LC_MONETARY="$AUDITD_LANG" + LC_COLLATE="$AUDITD_LANG" + export LANG LC_TIME LC_ALL LC_MESSAGES LC_NUMERIC LC_MONETARY LC_COLLATE + fi + unset HOME MAIL USER USERNAME + + ebegin "Starting ${name}" + start-stop-daemon \ + --start --quiet --pidfile ${pidfile} \ + --exec ${command} -- ${EXTRAOPTIONS} + local ret=$? + eend $ret + return $ret +} + +stop_auditd() { + ebegin "Stopping ${name}" + start-stop-daemon --stop --quiet --pidfile ${pidfile} + local ret=$? + eend $ret + return $ret +} + + +loadfile() { + local rules="$1" + if [ -n "${rules}" -a -f "${rules}" ]; then + einfo "Loading audit rules from ${rules}" + /sbin/auditctl -R "${rules}" 1>/dev/null + return $? + else + return 0 + fi +} + +start() { + start_auditd + local ret=$? + if [ $ret -eq 0 -a "${RC_CMD}" != "restart" ]; then + touch /var/lock/subsys/${name} + loadfile "${RULEFILE_STARTUP}" + fi + return $ret +} + +reload_rules() { + loadfile "${RULEFILE_STARTUP}" +} + +reload_auditd() { + [ -f ${pidfile} ] && kill -HUP `cat ${pidfile}` +} + +reload() { + reload_auditd + reload_rules +} + +stop() { + [ "${RC_CMD}" != "restart" ] && loadfile "${RULEFILE_STOP_PRE}" + stop_auditd + rm -f /var/lock/subsys/${name} + local ret=$? + [ "${RC_CMD}" != "restart" ] && loadfile "${RULEFILE_STOP_POST}" + return $ret +} + +# This is a special case, we do not want to touch the rules at all +restart() { + stop_auditd + start_auditd +} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/00-clear.rules b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/00-clear.rules new file mode 100644 index 0000000000..f43e62771c --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/00-clear.rules @@ -0,0 +1,3 @@ +# First rule - delete all +# This is to clear out old rules, so we don't append to them. +-D diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/80-selinux.rules b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/80-selinux.rules new file mode 100644 index 0000000000..f62a50267d --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/80-selinux.rules @@ -0,0 +1,2 @@ +# Enable all SELinux related events +-a exclude,never -F msgtype>=1400 -F msgtype<=1499 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/99-default.rules b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/99-default.rules new file mode 100644 index 0000000000..cc373d8406 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-process/audit/files/rules.d/99-default.rules @@ -0,0 +1,5 @@ +# Always report changes to the audit subsystem itself. +-a exclude,never -F msgtype=CONFIG_CHANGE + +# Ignore everything else. +-a exclude,always -F msgtype>0